|
Примеры работы по Modbus Примеры работы с частотниками, панелями и любыми другими устройствами, использующими Modbus-RTU/ASCII/TCP |
|
Опции темы | Поиск в этой теме |
16.10.2023, 12:23 | #1 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 117
Благодарил(а): 15 раз(а)
Поблагодарили:
660 раз(а) в 604 сообщениях
|
Запись собственных holding registers и coil status
Иногда алгоритм работы с верхним уровнем построен так, что требуется работа только через "входные" переменные или же верхний уровень ожидает, что изменение уставки будет отражено и на входной переменной для этой уставки.
Для этого в контроллерах Segnetics доступно обращение к самим себе через IP-адрес, доступных контроллеру. В качестве универсального решения можно обращаться к IP 0.0.0.0, который доступен всегда вне зависимости, вставлен сетевой модуль Ethernet в контроллер или нет. Вставлен ли кабель в порт Ethernet или не вставлен. Решение работает всегда. Для этого нажимаем Ctrl+M, открывая карту памяти программы как слейва, сохраняем её и подключаем к порту Ethernet в дереве. Далее прописываем настройки как на скриншоте, прописываем нулевые периоды опроса и дело сделано. Особо отмечу, прописывание нулевых периодов опроса обязательно, иначе программа будет циклически перезаписывать переменные, внося немалую сумятицу в обмен с верхним уровнем. На скриншоте представлен вариант, когда действие производится записью единички с верхнего уровня, а в нолик переменную контроллер скидывает самостоятельно: запись единички вызывает срабатывание блока raise, который отдаёт команду на отправку переменной. Вход данных у переменной равен нуля, поэтому отправляется ноль. В следующем цикле входная переменная уже будет обнулена. PS. Данная функциональность недоступна для контроллеров Pixel и SMH2G. Для SMH2G(i) адрес 0.0.0.0 недоступен. Для остальных контролеров ограничения отсутствуют. __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. Последний раз редактировалось Arsie, 19.04.2024 в 17:14 |