Всем привет. Может кто сталкивался. Пытаюсь опросить плк овен 210 по modbus tcp через регистры временного хранения. В этих регистрах лежат значения, но не во всех . при опросе через сторонний софт - они пустые. Через тот же модбас пол пишу в один из пустых регистров значение, и оно записывается в ПО, но в модбас пол уходит сразу в 0. При этом, значение, записанное в ПО остается Slave device в ПО активен Переменные всегда обновляются При этом запись в пустые регистры происходит, значит Id устройства верный
Комментарии: 12
Vyacheslav
Там встречались подобная ерунда при использовании штатных средств. Использую для модулей шаблоны, а для всего остального использую библиотеку OwenCommunication. У них на сайте
Evgeniy
То же самое) При этом, если делать без библиотеки, то с областью входных регистров - все окей Может ли быть такое, что проблема в плк?
Sergej
А еще 300, 400, 200 и 200 смарт) Стоп у плк может быть как программный так и аппаратный, надо смотреть лог. Скорей всего программер лошара не добавил об обработки ошибок и плк падает в панику от мелочи
Evgeniy
Я создал пустой проект, где опрашиваю лишь 2 регистра одного слейва. Все то же самое Плк не в стопе Опрос идет корректно, значения изменяются
Vyacheslav
Все может быть, но это редкость. Обратить стоит внимание на Task manager. Для упрощения и разделения задачи стоит опросить что то попроще, например ПК с Modbus pool/slave Модулей много. Система большая, нужно смотреть дебаг, циклы, джитер
Zhenya
Modbus TCP slave удалить, сделать через OwenCommunication, не забыть про pragma.
Nick
Можно ткнуть носом про прагму ?
Zhenya
{attribute 'pack_mode' := '1'}
Nick
Это типа он по байтно пакует
Zhenya
Биты побитно если bit использовать
Simmmr
чревато https://content.helpme-codesys.com/en/CODESYS%20Development%20System/_cds_pragma_attribute_pack_mode.html packmode это не про BITы
Nick
Про байт