PDA

Просмотр полной версии : Настройка коммуникации (2 мастера - 1 слейв) (TCP)



Roman_777
27.02.2018, 10:30
Добрый всем день!
Я совсем новичёк, объясните, пожалуйста, как правильно настроить в Codesys коммуникацию.
У меня будет технологическая автоматизация на базе контроллера ПЛК110-24.30.Р-М. В системе будет контроллер + HMI (СП310-Р), а так же рабочее место с АРМ (SCADA Trace Mode).
Установка должна будет управляться с HMI, так же на HMI должна будет выводиться сигнальная и контрольная информация. АРМ буду делать не я, но знаю, что для него требуется только передавать сигнальную и контрольную информацию, управления не будет.
1) Правильно ли я понимаю, что в такой конфигурации в сети Modbus TCP контроллер будет Slave, Панель оператора будет мастером, и АРМ(Scada) мастером?
2) В самом Codesys для ПЛК я создаю "виртуальное устройство" Modbus Slave, к нему добавляю "TCP узел", для приёма и передачи информации (и сигналов управления) я буду далее тут создавать элементы (в виде bits, bytes, float... и тд). Требуется ли мне создавать несколько Modbus Slave (каждый будет со своим TCP узлом, в котором прописано свой RemotePort), или и из HMI, и из SCADA можно будет обращаться к 1 узлу TCP (к 1 порту)?
Просто в случае добавления узла, я так понимаю, мне в разных регистрах ПЛК нужно будет дублировать значения многих переменных.
3) И ещё вопрос такой. к TCP узлу я могу добавить 8 bit 2 раза, а могу добавить сразу регистр (будет переменная WORD). Собственно, если у меня куча булевских переменных (порядка 50-60 управления и 70-100 индикации), имеет ли значение в виде bit-ов я буду их добавлять или в виде WORD? Мне лично удобно добавить в виде отдельных битов и сразу обозвать там каждую переменную, а не назначить WORD переменную, а потом отдельно функцией определять переменные по битам этого WORD.

petera
27.02.2018, 11:12
2) В самом Codesys для ПЛК я создаю "виртуальное устройство" Modbus Slave, к нему добавляю "TCP узел", для приёма и передачи информации (и сигналов управления) я буду далее тут создавать элементы (в виде bits, bytes, float... и тд). Требуется ли мне создавать несколько Modbus Slave (каждый будет со своим TCP узлом, в котором прописано свой RemotePort), или и из HMI, и из SCADA можно будет обращаться к 1 узлу TCP (к 1 порту)?
Просто в случае добавления узла, я так понимаю, мне в разных регистрах ПЛК нужно будет дублировать значения многих переменных.


Используйте в слейве два разныйх интерфейса - TCP для SCADA и RS232(RS245) для панели
и не нужно будет ничего дублировать
35844

В принципе и для панели можно в слейв добавить второй TCP. Но порты у них нужно будет делать разные. 502 оставить для панели, а для скада задать другой.

Roman_777
27.02.2018, 11:18
Благодарю за столь оперативный ответ!
Приношу прощения за глупый вопрос, порт фактически означает тот "узел общения" который будет создавать мастер? Поэтому на каждого мастера свой порт?

Ещё ньюанс, глянул на схему. И СП310-Р и ПЛК110 и АРМ подключаются (посредством RJ-45) к EDS-205 (moxa коммутатор), а через него к модему OnCell G3111-HPSA, я честно, говоря, не очень понимаю именно такую схему подключения, особенно если учитывать что шкаф с ПЛК и HMI стоят в 2 метрах от места с АРМ.

petera
27.02.2018, 12:31
Благодарю за столь оперативный ответ!
Приношу прощения за глупый вопрос, порт фактически означает тот "узел общения" который будет создавать мастер? Поэтому на каждого мастера свой порт?

Ещё ньюанс, глянул на схему. И СП310-Р и ПЛК110 и АРМ подключаются (посредством RJ-45) к EDS-205 (moxa коммутатор), а через него к модему OnCell G3111-HPSA, я честно, говоря, не очень понимаю именно такую схему подключения, особенно если учитывать что шкаф с ПЛК и HMI стоят в 2 метрах от места с АРМ.

Не вижу никакого смысла соединять СП310 и ПЛК через Ethernet если они в одном шкафу. Соединяйте их по RS232.
Тогда все будет по картинке из поста #2

про порт
Имелось в виду, что для подключения по TCP используется стандартный для Modbus_TCP номер порта -502
35848

Т.к. соединений TCP будет два, то они должны отличаться номером порта
Например второе соединение
35849

т.к. конфигуратор СП300 в "стандартном" исполнении не позволяет изменить номер TCP порта
35850
По этому и предлагал оставить 502 порт для панели.

Roman_777
27.02.2018, 12:42
Благодарю! Попробуем убедить всё выполнить по более простому пути)))

Roman_777
27.02.2018, 14:47
Не вижу никакого смысла соединять СП310 и ПЛК через Ethernet если они в одном шкафу. Соединяйте их по RS232.
Тогда все будет по картинке из поста #2

про порт
Имелось в виду, что для подключения по TCP используется стандартный для Modbus_TCP номер порта -502
35848

Т.к. соединений TCP будет два, то они должны отличаться номером порта
Например второе соединение
35849

т.к. конфигуратор СП300 в "стандартном" исполнении не позволяет изменить номер TCP порта
35850
По этому и предлагал оставить 502 порт для панели.
Благодарю))).
По порту, на самом деле, у меня ещё глупее вопрос был. Собственно, я пока не очень понимаю, что есть такое "порт" в протоколе Modbus TCP, поэтому и не могу для себя однозначно определить, могут ли 2 мастера по одному номеру порта опрашивать 1 слейв.