Стартовая страница › Форумы › Вопросы без категории › Управление com портом в рантайме.
- В этой теме 51 ответ, 6 участников, последнее обновление 7 месяцев, 1 неделя назад сделано Mikhail.
-
АвторСообщения
-
04.03.2022 в 12:41 #22124manjey73Участник
Из формулы(скрипта) можно записать файл и передать в него данные каналов. Можно считать файл и многое другое.
Вопрос в другом, были какие-то проблемы при запуске приложений, так как ядро Scada работает как сервис, и соответственно как сервис пытается запустить и приложение.
В 5-й версии по крайней мере так. Какие возможности будут в 6-й не знаю.
И тут не SimpleScada от слова совсем.
Другой вопрос, зачем Scada системе запускать сторонние приложения для доступа к своему API ? если она сама к себе имеет доступ.
Вы поставьте задачу КОРРЕКТНО, тогда возможно Михаил сможет вам сказать, реализуемо это или нет. И каким образом если да.- Этот ответ был изменен 2 года, 1 месяц назад от manjey73.
04.03.2022 в 12:46 #22126manjey73УчастникВ 6-й версии можно настроить канал на управление линией связи и управлять этим через WEB.
Открываете WEB Scada системы, останавливаете линию, запускаете свое приложение прибора, опрашиваете, настраиваете. Выключаете свое приложение, запускаете канал снова.Вы хотите это делать в автоматическом режиме? по расписанию?
Как минимум для этого приложение прибора должно уметь запускаться в автоматическом режиме, оно у вас умеет?- Этот ответ был изменен 2 года, 1 месяц назад от manjey73.
05.03.2022 в 15:06 #22160bhunУчастникmanjey73
Здравствуйте.Из формулы(скрипта) можно записать файл и передать в него данные каналов. Можно считать файл и многое другое.
Подскажите, где найти исчерпывающую информацию по всем возможностям формулы(скрипта).
Другой вопрос, зачем Scada системе запускать сторонние приложения для доступа к своему API ?
Я такого не писал. Я говорил о возможности гибкой настройки работы скады за счет написания скриптов, в которых и происходит обращение к API скады.
Вы поставьте задачу КОРРЕКТНО
В первом своем посте алгоритм описал по пунктам (не корректно?).
Вы хотите это делать в автоматическом режиме? по расписанию
2. В некоторый момент времени (по нажатию на кнопку) запускается программа-конфигуратор удаленного устройства
Про управление портом я понял, спасибо(через управление линией связи).
Остался вопрос с запуском стороннего приложения по нажатию на кнопку.
Походив по форуму я, пока что, нашел такое решение: написание своего модуля (дополнительных элементов к библиотеке компонентов) для редактора схем. Рабочий вариант?05.03.2022 в 16:06 #22161RomirosУчастникНаверное лучше написать свой модуль для скады, который по изменению данных канала например, будет запускать стороннее приложение.
А можете пояснить практический смысл периодического запуска конфигуратора. Просто мне тоже требуется распараллеливание портов, но я планировал делать это каким-то софтом до скады.
06.03.2022 в 10:49 #22172MikhailМодераторПросто мне тоже требуется распараллеливание портов
Опишите задачу, пожалуйста.
Подскажите, где найти исчерпывающую информацию по всем возможностям формулы(скрипта).
Для версии 5 https://rapidscada.net/doc/content/latest/ru/software-configuration/using-formulas.html плюс форум.
06.03.2022 в 10:51 #22173MikhailМодераторИз серверного модуля Вы, скорее всего, не сможете вызвать приложение, которое имеет пользовательский интерфейс, потому что Сервер выполняется как сервис и не имеет доступа к рабочему столу.
06.03.2022 в 13:20 #22188RomirosУчастникОпишите задачу, пожалуйста.
Опрос устройств двумя системами сбора данных (RapidScada и другая система). Обе системы будут находиться на одном сервере.
06.03.2022 в 13:31 #22189a80808УчастникА через виртуальные порты? Или например через аппаратный TCP/COM?
06.03.2022 в 13:41 #22190RomirosУчастникТут важна приоритетность доступа к портам. Виртуальные com порты итак используются, в основном Moxa NPort. Плюс tcp порты для gprs.
06.03.2022 в 13:54 #22191a80808УчастникА там в 6100 серии есть какая то хитрая функция Force Timeout — не подойдет?
https://moxa.ru/files/manuals_nport/nport_-_funkciya_force_tx_timeout.pdf06.03.2022 в 16:18 #22194RomirosУчастникНет, это не то. В 6000 серии есть функция command by command, которая как раз пересылает пакеты нужным адресатам, но к сожалению у нас в основном 5000 moxa. Да и для сложных протоколов обмена она не подойдёт. Для modbus и чего-то подобного конечно можно.
06.03.2022 в 23:25 #22196manjey73Участник@romiros двумя RapidScada это точно возможно, хоть на одном ПК хоть на разных, важно синхронизировать время опроса. Тестировал подобное на 5-й версии на RTU устройстве.
Вот с другим приложением будет зависеть от другого приложения.Через Moxa если будет опрос, надо настраивать как TCP клиент, без виртуальных COM портов. Или одно ПО на виртуальном порту, второе как TCP клиент. Но без синхронизации периодически будут ошибки.
bhun посмотрите в теме формул, я выкладывал формулы retain для использования на Raspberry. В формулах (скриптах_ используется C# но для формул надо обращаться к функциям напрямую, using не получится использовать в 5-й версии.
07.03.2022 в 17:05 #22206MikhailМодераторОпрос устройств двумя системами сбора данных (RapidScada и другая система). Обе системы будут находиться на одном сервере.
Если используется Modbus, то на мой взгляд хорошее решение — аппаратный шлюз, пример. Шлюз умеет принимать запросы от нескольких систем по TCP и синхронизировать их отправку по RS-485.
Если требуется опрашивать непосредственно по COM-порту, то можно попробовать включать и отключать линии по расписанию. Но другое ПО тоже должно так уметь.
07.03.2022 в 17:08 #22207MikhailМодераторСложный вариант — написать свой программный клюз, с которым будут общаться оба ПО.
Ну или с одного ПО предоставлять данные другому, но тогда теряется их независимость друг от друга.07.03.2022 в 17:08 #22208 -
АвторСообщения
- Вы должны авторизироваться для ответа в этой теме.