Показать сообщение отдельно
Старый 07.03.2023, 21:22   #45
alf999
Senior Member
 
Аватара для alf999
 
Регистрация: Feb 2023
Адрес: Московская область
Сообщения: 106
Благодарил(а): 2 раз(а)
Поблагодарили: 7 раз(а) в 7 сообщениях
По умолчанию Ответ: Китайское modbus реле

Как тут все сложно... Запись должна быть нециклической... Время в вашем примере 0А - 10 сек. В моем приеме была не циклическая запись, а именно по команде. В вашем случае контроллер постоянно раз в 1 сек отправляет команду включить реле на (10 сек) каждый раз заново выставляя этот интервал.

У меня на практике было устройство, плата аналогового вывода RS-485 -> 0..10В, так вот значения регистра в памяти после отключения питания сохранялись. Интервал записи выставлял 100 мс.
Через пол года плата переставала работать, поменял 3 шт. Все компоненты на плате рабочие, под подозрения попадает сам микроконтроллер... Подозреваю что производитель не предусмотрел защиту памяти, и я запросами тупо убивал флеш память контроллера... Но это не точно...

По поводу отслеживания ответа выполнило реле или нет, я не знаю как у вас регистры реагируют на команды. (Могут сбрасываться в 0, могут оставаться в том же состоянии после записи и т.д... каждый случай нужно рассматривать отдельно).
Для отслеживания ошибок связи используйте блок Slave (Link) устройства.
Для отслеживания выполнения нецикличной записи используйте "выход "rdv" - подтверждение получения запроса слейвом".
Для отслеживания более детально COM порта можно воспользоваться блоком Device (Link) из группы FBD "Диагностика".

Все это описано в справке (нажали на любой блок в программе, нажали F1, читаем описание).

Последний раз редактировалось alf999, 07.03.2023 в 21:51
alf999 вне форума   Ответить с цитированием
Благодарность от: