PDA

Просмотр полной версии : ПЛК-110-220.60 M02 - некорректная работа modbus



chizhik1980
07.02.2019, 15:10
Добрый день!

Имеется проблема с работой modbus на ПЛК-110 (проблема повторяется на двух контроллерах).
Modbus организован на порту 485-2, скорость 19200, режим RTU (это важно!), slave, через конфигуратор, регистры заданы как двухбайтовые, типа holding.

Суть проблемы: часто или очень часто происходят ошибки CRC. Проблема проявляется как при связи с мастером на СПК-207, так и при использовании связки "программа ModbusPoll + преобразователь MOXA".

При анализе траффика в программе ModbusPoll выяснили, что в некоторых условиях в последнем байте контрольной суммы "вырастает" лишний старший бит (см. рисунок), причём при каких-то условиях он встаёт навечно и портит 100% пакетов, при каких-то - проявляется случайным образом (кажется, есть зависимость от длины пакета)

41079

Проблема проявляется на двух ПЛК, работающих в разных условиях в смысле электрических помех
Проблема проявляется на двух ПЛК, работающих в разных условиях в смысле количества абонентов на шинах.
Проблема проявляется как в рабочем проекте (две линии modbus, работа с дискретными входами и выходами, множество POU etc), так и в специально сделанном тестовом проекте (запущен практически только modbus, работает только один порт из двух).

Кто-нибудь сталкивался? В чём может быть причина?

UPD: Прошивка 0.3.72

_Pavel_
10.02.2019, 13:23
Что то подобное у меня было. Оказалось проблема в самом ПЛк. В техподдержке сказали что с какого-то момента времени RS485-2 в ПЛК110 М02 был аппаратно доработан. У меня, действительно был ПЛК из первых поставок. Я взял свежий ПЛК и проблема исчезла.

ВиталийАТ
16.02.2023, 04:52
У меня сейчас похожая проблема. Только передо мной ПЛК 110-30 больше я о нём ничего не знаю, так как не знаю где посмотреть - собственно это первый вопрос - где посмотреть ревизию? ПЛК внутри шкафа уже смонтирован и находится в работе, снять его возможности нет. У меня задача подклчить его к АРМ оператора по МодБАС РТУ - для которой заготовлены были заранее переменные, карта которых у меня на руках. Второй вопрос - какой интерфейс первый, а какой второй? У меня нормально считываются данные с ближнего клемника и CRC error постоянный на дальнем клемнике. У меня нет проекта, и я плохо знаком с ПЛК ОВЕН (но знаком с другими ПЛК), потому третий вопрос - можно ли исправить это програмно перепрошив ПЛК и не затронув при этом основную рабочую программу?

kondor3000
16.02.2023, 08:25
У меня сейчас похожая проблема. Только передо мной ПЛК 110-30 больше я о нём ничего не знаю, так как не знаю где посмотреть - собственно это первый вопрос - где посмотреть ревизию? ПЛК внутри шкафа уже смонтирован и находится в работе, снять его возможности нет. У меня задача подклчить его к АРМ оператора по МодБАС РТУ - для которой заготовлены были заранее переменные, карта которых у меня на руках. Второй вопрос - какой интерфейс первый, а какой второй? У меня нормально считываются данные с ближнего клемника и CRC error постоянный на дальнем клемнике. У меня нет проекта, и я плохо знаком с ПЛК ОВЕН (но знаком с другими ПЛК), потому третий вопрос - можно ли исправить это програмно перепрошив ПЛК и не затронув при этом основную рабочую программу?

Если нет исходника, то вы ничего не сможете сделать. Кроме написания новой программы, со всеми нужными функциями.
Единственное можете сниффером посмотреть по каким адресам идёт обмен.
А для начала по ссылке посмотреть обучающее видео, скачать ПО и документацию, посмотреть примеры реализации https://owen.ru/product/plk110_m02/video

Если можете на время остановить процесс, можно подключиться к ПЛК ( не загружая программу) узнать его Таргет и посмотреть IP адрес , прошивку ПЛК.
Если ПЛК свежий, то таргет ПЛК 110-30М.v2, если старый то ПЛК 110-30.М

melky
16.02.2023, 09:30
ВиталийАТ ну так на ближнем слейве если все гуд, вероятно это и есть Modbus slave порт данного ПЛК?, а дальний клеммник какие ответы дает ПЛК, что у вас ошибка CRC может там вообще ответов то и нет ?