PDA

Просмотр полной версии : Проблема опроса модулей Мх110 по Modbus-RTU



mir_Za
10.02.2015, 01:51
Есть ПЛК 110-24.32Р-М, связь с модулями по Modbus-RTU, скорость 115200,
МВ110-8А - адрес 16;
МВ110-8А - адрес 24;
МУ100-8И - адрес 32;
Universal Modbus Device (на OPC-сервер) - адрес 100.
Проблема в том, что в сети RS-485 опрашивается только модуль с младшим адресом, у остальных адресов Last Error 81. Если отключить от RS-485 модуль с адресом 16 - тогда успешно опрашивается адрес 24, а 32 и 100 не отвечают. Другими словами, каждый модуль по отдельности работает превосходно, а если включить их все одновременно, отвечает только первый по порядку адреса.
Пробовал разнести адреса пошире: 16, 32, 48 - ничего не изменилось.
Пробовал увеличить Polling Time до 1000ms - ничего не дало.
Программу прилагаю. Помогите, пожалуйста, что у меня не так?

Владимир Я
10.02.2015, 05:02
Может задержку ответа по RS 485 в настройках модулей большую поставили?

Sergey666
10.02.2015, 07:55
Надо сделать:
1. В существующей конфигурации добавить модуль статистики и посмотреть что с циклом программы (время) , 100% будет перегруз процессора.
2. Framing time модуля rs-485 установить по умолчанию (0).
3. Отфильтровать опросные модули модбаса и брать то, что действительно необходимо.Опрашивать аналоговые модули с периодом менее 500мс нет смысла , т.к у них показания обновляются 500мс.....
4. Для ОРС сделать не мастер , а слэйв .

Неко Оксана
10.02.2015, 11:08
Лучше для всех модулей использовать Universal Modbus Device, без использования готовых модулей

mir_Za
10.02.2015, 16:12
Всем спасибо за оперативный ответ


добавить модуль статистики и посмотреть что с циклом программы (время) , 100% будет перегруз процессора.Посмотрел, перегруза нет. Тем более обмена с модулями нет ни в пуске ни в останове технологической программы


Framing time модуля rs-485 установить по умолчанию (0).
А вот это помогло с ходу. Модули стали опрашиваться и промигивать по RS-485 все. Ранее Framing time стояло 100. Самое интересное, перерыл все руководства, везде там рекомендуют оставлять этот параметр по умолчанию 0. И только в видеоуроке 05 Подключение модуля в PLC_Config.avi там устанавливают значение 100. Вот это и сгубило :).
Но пока почему-то не пошел обмен с OPC

Для ОРС сделать не мастер , а слэйв .Вот этим и займусь, хочу вообще переделать обмен с OPC-сервером на Ethernet


Отфильтровать опросные модули модбаса и брать то, что действительно необходимо.Опрашивать аналоговые модули с периодом менее 500мс нет смысла , т.к у них показания обновляются 500мс..... Здесь тоже попробую оптимизировать
Лучше для всех модулей использовать Universal Modbus Device, без использования готовых модулейПопробую сделать именно так