Jeck, спасибо за ссылку. Спаяли кабель и подключили к терминалу. В самом деле была "чехарда". После установки в ПЛК параметра Polling Time равным 1200 - данные пошли по порядку. Но ПЛК всеже тупит. Сделали, новые проекты в ПЛК и в Lectus. Завели 4 переменных которые ПЛК должен считать(адреса 0000НЕХ-0003НЕХ) и две переменных отправить(адреса 0004НЕХ и 0005НЕХ). В Lectus записали значения от 1 до 4, по соответствующим адресам. Посмотрели лог общения ПЛК с модемом - данные идут по порядку. Вот он:
CONNECT 9600
:010300030001F8
:0103020004F6
:010300020001F9
:0103020003F7
:010300010001FA
:0103020002F8
:010300000001FB
:0103020001F9
:010600050036BE
:010600050036BE
:0106000400DB1A
:0106000400DB1A
Но ПЛК занес эти данные со смещением -1. То есть то что в Lectus находилось по адресу 0001НЕХ, занес в 0000НЕХ, а 0002НЕХ в 0001НЕХ и так далее. Вот скриншот.
Повторюсь, когда делаем Lectus - мастером, а ПЛК - слейвом, то все отлично. Все данные идут куда надо, более того - мы даже не заморачивались на счет таймаутов. Все было нормально.
А вот когда ПЛК - мастер...беда...![]()




Ответить с цитированием