проверю еще раз, если бы так было, то опрос бы и не начался, а то он идет, а потом зависает прибор
проверю еще раз, если бы так было, то опрос бы и не начался, а то он идет, а потом зависает прибор
У Меркурий много запросов/ответов, чтобы получить все. Плюс если читаются фиксированные данные, там идет команда фиксации, которая может быть отправлена как широковещательная, что и для Modbus окажется командой.
Тут я не подскажу, не смотрел реализацию библиотеки. Нет у меня устройств Овен с 3.5 CodeSys
Спасибо, поставлю флаг на одновременную работу блоков опросов, посмотрю, пересекаются ли они
Нет опросы не пересекаются, проверил, отработали всесте 5 минут без ошибок, и завис
может быть индивидуальная особенность прибора, что он не хочет видеть в сети чужие запросы и при их обработке зависает?
Ну вроде решилось. Допустил, что не справляется процессор с обработкой запросов, увеличил время между запросами до 400ms у ГА и ЭС, то есть дал ему больше времени на обработку и своих и чужих запросов, минут 20 отработал уже
нет, они программно разведены, один ждет окончания работы второго, там флажки стоят и таймеры задержки
и, похоже, проблема оказалась в том, что один запрос ГА это 2 байта (без служебных байт), а ответ максимум 8 байт, у ЭС объем передаваемых данных заметно больше, и по видимому он читая чужые запросы-ответы не справлялся с объемом данных
вроде работает, понаблюдаю
Последний раз редактировалось viktor1974; 16.10.2024 в 15:15.
Да Modbus устройство вообще должен игнорировать запросы не к своему адресу, то есть абсолютно, ему не надо даже CRC проверять, первый байт чужой, я отдыхаю
kondor3000 да лениво мне его ставить. Как бы нафик не нужен без задач.
Но сначала нужно вычленить пакет. А вот тут, если норм пауз нет и наличии кривой работы с буфером в ПО слейва (а оно бывает*) можно и получить такие эффекты.Да Modbus устройство вообще должен игнорировать запросы не к своему адресу,
*Например такое было (сейчас не знаю) у местных ПЧ. А когда-то и у МВ..-6У