Стартовая страница › Форумы › Вопросы без категории › Идеи для V6 и далее
- В этой теме 23 ответа, 3 участника, последнее обновление 1 год, 4 месяца назад сделано Mikhail.
-
АвторСообщения
-
17.11.2022 в 22:48 #26081manjey73Участник
Давно назревал вопрос о возможности записи нескольких переменных одним запросом.
Это поддерживают разные протоколы. Modbus, AllenBradley, вот еще облако Owen и наверняка многие другие.Как это возможно реализовать в версии 6 или в будущем?
Еще вопрос по поводу подтверждения Event, нужна возможность получать(отправлять) в драйвер команды подтверждения Event-ов со списком подтвержденных.
Например это можно использовать так же в драйвере Овен облака и возможно других.18.11.2022 в 14:52 #26120MikhailМодераторОтправляйте команду, которая в виде бинарных данных записывает несколько переменных, если драйвер поддерживает множественную запись. Формат данных в команде может быть таким, который Вам удобен. Формирование команды либо вручную оператором (что неудобно), либо с помощью Вашей собственной веб-формы.
Плагин, который реализует подобную отправку, можно разработать. Но вряд ли он появится сам по себе без конкретного заказа.
Еще вопрос по поводу подтверждения Event
События выкачиваются драйвером из устройств?
18.11.2022 в 15:49 #26130manjey73УчастникДа, события не только скачиваются при помощи API облака, но их вроде можно и подтверждать так же через API. По этому для Событий в Web было бы неплохо, если бы оно умело через Сервер дать команду Коммуникатору, что события прочитаны (подтверждены)
18.11.2022 в 15:50 #26131manjey73УчастникДрайвер Modbus на данный момент поддерживает отправку на запись нескольких переменных каким-либо способом?
Например Модулем Автоуправления?
21.11.2022 в 13:39 #26151MikhailМодераторЧтобы отловить квитирование события, потребуется написать небольшой серверный модуль, в котором сформировать команду Коммуникатору. Кроме того, события потребуется однозначно идентифицировать между Rapid SCADA и сторонним облаком.
В драйвере Модбас одна команда ТУ — один запрос. Если нужно отправить несколько запросов, то значит нужно отправить несколько команд. Это может сделать модуль автоуправления.
21.11.2022 в 14:26 #26156manjey73УчастникНет, речь идет именно об НЕСКОЛЬКО команд — Один запрос. Можно ли это выполнить на текущем драйвере при помощи Модуля Автоуправления и посылке бинарной команды или это глухой номер и надо перепахивать сам драйвер ?
И такой возможности не хватает во многих вещах уже. Один запрос и много данных.
21.11.2022 в 14:27 #26157manjey73УчастникНу вот на будущее не помешало бы чтобы Web сервер отлавливал Квитирование и отправлял бы через Сервер Коммуникатору какую-то команду типа App.Квитирование(массив квитированных тегов) соответственно только строго по Устройству.
22.11.2022 в 17:01 #26203MikhailМодераторНет, речь идет именно об НЕСКОЛЬКО команд — Один запрос.
Приведите пример, пожалуйста.
чтобы Web сервер отлавливал Квитирование
Как я уже написал, событие квитирования обрабатывается с помощью своего серверного модуля.
27.11.2022 в 11:15 #26281manjey73Участник1. банальная команда 0x10 в протоколе Modbus — ей можно записать сразу несколько регистров одним запросом, не только 2 регистра с одним значением float но и 10 регистров, в которых будет 4 float и один int
И протоколом Modbus это не ограничивается2. По поводу Квитирования. Ну есть же из Драйвера создание Event-ов?
Почему не добавить в Коммуникатор двунаправленные посылки из Сервера в Коммуникатор и обратно?
Пример, мы жмем Квитирование в Web, это попадает в Сервер, который тут же перенаправляет в Коммуникатор инфу, если Event произошел в канале, связанным с переменной Коммуникатора
Еще пример, мы отправляем в окне ввода Команду, она попадает в Коммуникатор, почему Коммуникатор не может вернуть обратно состояние выполнения команды и в том числе требуемый текст для отображения на Web ?Насколько понимаю, в целом механизмы есть, те же event. Вот просто расширить немного функционал. Тогда можно было бы обойтись без дополнительных формул в Сервере, если за какой-то частью может следить сам Коммуникатор.
Прислал статус команды «Ок» окно тут же закрылось, либо предварительно сообщило о выполнении команды. Или прислало статус «Error» + текст, который необходимо вывести в окне Команды…28.11.2022 в 10:45 #26289RomirosУчастникА что Вам сейчас мешает реализовать алгоритм с квитированием? Доступ к событиям из драйвера у Вас есть. Отслеживайте нужное событие и при необходимости отправляйте в ответ другое.
28.11.2022 в 12:02 #26294manjey73УчастникОткуда у меня доступ к нажатию «Квитирования» в RapidScada из драйвера ?
28.11.2022 в 12:15 #26299RomirosУчастникИз события этого канала.
28.11.2022 в 12:21 #26302MikhailМодератор1. Отправляйте данные в виде массива. Для удобного формирования этого массива можно разработать свой веб-плагин. Однако в драйвере Модбас адрес и размер команды заранее указывается в шаблоне. С технической точки зрения можно реализовать отправку команды с произвольного адреса и произвольной длины.
2.
Почему не добавить в Коммуникатор двунаправленные посылки из Сервера в Коммуникатор и обратно?
В реализации достаточно сложный функционал, поэтому оставим его на будущее.
28.11.2022 в 12:54 #26309manjey73Участникпо 2. И чего там сложного?
пришла команда Коммуникатору, он ее
а) выполнил и отправил Серверу — ОК + текст (если надо)
б) не выполнил и опять отправил Серверу Error + текст (если надо)Текст есть — кинуть из Сервера Exception в форму ввода команды.
Текста нет, все как обычно.Вот с Квитированием так и не понял, как драйвер, не зная номеров каналов что-то может отследить ?
Тут как раз Сервер должен ума приложить, Мы нажали Квитирование на канале, сервер получил эти данные, и сразу кинул Коммуникатору соответствующей линии, что такой-то канал был Квитирован, это попало в буфер, Началась Сессия, проверяем есть чЁ нет от Сервера и принимаем какие-то шаги… Все.Если Квитировали несколько каналов, то все от одной линии лежат в массиве.
- Этот ответ был изменен 1 год, 4 месяца назад от manjey73.
28.11.2022 в 13:01 #26311RomirosУчастника, б можете сделать в своем драйвере в виде событий. Я это ещё в пятой версии делал.
По квитированию. Когда к сигналам коммуникатора привязаны каналы, он о них знает. Кроме того сейчас есть код тега, который будет известен заранее.
-
АвторСообщения
- Вы должны авторизироваться для ответа в этой теме.