PDA

Просмотр полной версии : ПЛК 110-30 нет связи по ModBus с СП307



Дмитрий951
25.06.2019, 14:46
Здравствуйте, уважаемые форумчане!
Имеется следующая проблема - не удается установить связь по ModBus RTU ПЛК 110-30 с панелью оператора СП 307.
Делал все по видеоуроку с ютуб канала ОВЕН. Производственное Объединение https://www.youtube.com/watch?v=yJkwRU33I80 Там правда была СП 310 панель, а у нас СП 307, но думаю принципиальной разницы нет. Также пробовал установить связь когда ПЛК мастер в сети - результат отрицательный.

1. Провода А и В не перепутал
2. Пробовал и через RS-485-1, и через RS-485-2
3. Панель СП 307 напрямую с частотником ПЧВ по ModBus работает прекрасно, подозреваю, что проблема в ПЛК.

Подскажите пожалуйста, где копать? Прошивка, библиотеки, заводской брак?

YuriBel
25.06.2019, 18:09
Для начала выложите сюда проекты контроллера и панели, которые вы пробовали связать между собой, может быть где-то есть примитивные ошибки, которые вы не видите.

Дмитрий951
26.06.2019, 07:15
Для начала выложите сюда проекты контроллера и панели, которые вы пробовали связать между собой, может быть где-то есть примитивные ошибки, которые вы не видите. Выложил проекты ПЛК и панели

krollcbas
26.06.2019, 07:29
Рекомендовал бы уменьшить скорость обмена с 115200 до 38400. Выставить Framing time - 10

А вообще всем, кто начинает рекомендую простой способ "есть слона частями"
Разделите (разрежте провод посередине)
Утилитой Modbus Poll и Modbus Slave проверьте соединение отдельно с контроллером и отдельно с панелью.
Позадавайте разные значения в разных регистрах.

Все получится, уверен!

lara197a
26.06.2019, 08:00
Если используете кабель для программирования. то работать не будет.
Отрежьте все лишнее. Оставьте А и В.
(Скорость не причем. работает на любой)

YuriBel
26.06.2019, 10:23
В проекте панели последний элемент (ввод числа с плавающей точкой) имеет Modbus адрес "2", а у контроллера адрес "1". Естественно, в этой ситуации будет возникать ошибка связи.
Исправьте и попробуйте еще раз.

petera
26.06.2019, 10:29
В проекте панели последний элемент (ввод числа с плавающей точкой) имеет Modbus адрес "2", а у контроллера адрес "1". Естественно, в этой ситуации будет возникать ошибка связи.
Исправьте и попробуйте еще раз.

Вы не правы
43314
У контроллера адрес регистра для float1 = 2

YuriBel
26.06.2019, 10:55
Не возражаю, у контроллера адрес регистра "2". А у самого контроллера, как устройства, адрес в сети "1". А поле ввода float настроено на опрос устройства с адресом "2" и с регистром "2"

Александандр
05.08.2019, 17:58
Не возражаю, у контроллера адрес регистра "2". А у самого контроллера, как устройства, адрес в сети "1". А поле ввода float настроено на опрос устройства с адресом "2" и с регистром "2"

есть разница адрес устройства и адрес переменной и регистр, я немножко путаюсь и что означает идент. модуля 1108? это не адрес регистра? извините а примитивный вопрос.

YuriBel
05.08.2019, 19:06
Протокол Modbus подразумевает наличие в сети устройства Master, и некоторого количества устройств Slave, каждое из которых имеет свой адрес. У каждого Slave устройства может быть некоторое количество катушек (по-сути битов) и регистров (16-разрядных слов), которые могут читаться и/или записываться соответствующими командами. У этих битов и регистров также есть свои адреса. То есть, если вы хотите построить сеть, состоящую из мастера и двух ОДИНАКОВЫХ slave-устройств, то вам нужно сконфигурировать эти устройства так, чтобы их (устройств) адреса были разными. А адреса битов и регистров в них будут одинаковыми, так как сами устройства одинаковые. Мастер в своем запросе содержит адрес устройства, к которому он обращается, номер функции и адреса регистров или битов, которые он хочет записать или прочитать. Устройство с адресом, указанным в команде, отвечает мастеру, остальные устройства игнорируют команду, так как она адресована не им. почитайте спецификацию на протокол Modbus, там все подробно расписано.