Статья для предварительного чтения:
Урок 9
Связь между контроллерами CENTUM VP и ProSafe-RS по шине Modbus Ethernet
Vnet/IP – родная промышленная шина для связи контроллеров FCS (РСУ) и SCS (ПАЗ).
Некоторые компании для специфических приложений считают связь между FCS и SCS по сети Modbus более надёжной (несмотря на более высокие издержки на инжиниринг, оборудование, материалы, монтаж и пусконаладку).
Modbus Master (FCS) обращается к Modbus Slave (SCS) по адресам виртуальных устройств Modbus:
Виртуальное устройство Modbus | Данные | Применение | Чтение/Запись |
---|---|---|---|
Coil | Выход 1 бит | Дискретный выход | Read/Write |
Input Relay | Вход 1 бит | Дискретный вход | Read |
Input Register | Вход 16 бит | Аналоговый вход | Read |
Holding Register | Выход 16 бит | Аналоговый выход | Read/Write |
N | Этап | CENTUM VP | ProSafe-RS |
---|---|---|---|
1 | Добавление коммуникационного модуля Modbus Ethernet | System View | I/O Wiring |
2 | Параметрирование модуля Modbus Ethernet | System View | I/O Parameter Builder |
3 | Настройка каналов связи | Communication I/O Builder Word Data |
|
4 | Привязка переменных процесса к каналам связи | Communication I/O Builder Bit Data |
Modbus Address Builder |
5 | Программирование логики | Control Drawing Builder | POU |
Задание
Настроить канал связи по Modbus TCP между станциями FCS0101 (Modbus Master) и SCS0102 (Modbus Slave).
Решение
Симулировать связь по Modbus нельзя, поэтому ограничимся конфигурированием.
Инжиниринг на стороне станции управления FCS (Modbus Master)
-
Добавляем коммуникационный модуль Modbus Ethernet:
FCS0101 > IOM > NODE1 > Create New > IOM…
-
Настраиваем свойства ALE111:
-
Открываем редактор Communication I/O Builder словных данных (Word Data):
FCS0101 > SWITCH > CommDataWW
и настраиваем параметры:
Element – слово %WWnnnn, где nnnn – номер слова
Buffer – количество элементов, используемых в программе
Program Name – имя программы:
Kt-n-sProgramName
K – идентификатор FIO
t – системный номер (1)
n – номер узла
s – номер слота
ProgramName - FMODBUS
Size – длина данных, начинающихся от адреса, заданного в поле Device&Address
Port – порт (1)
IP Address – IP адрес ведомого устройства в сети Modbus TCP (SCS0102)
Station – номер станции ведомого устройства в сети Modbus TCP (SCS0102)
Device&Address – адрес виртуального устройства Modbus:
A0**** - Coil
A1**** - Input Relay
A2**** - Input Register
A4**** - Holding Register
Data Type – тип данных
Reverse – параметр задаёт нужно ли реверсировать порядок битов или слов
Scan – тип сканирования: Normal или Fast -
Открываем редактор Communication I/O Builder битовых данных:
FCS0101 > SWITCH > WBTagDef
и настраиваем параметры:
Element - бит %WWnnnnbb, где nnnn – номер слова, bb – номер бита
Tag Name – имя тега
Инжиниринг на стороне станции безопасности SCS (Modbus Slave)
-
Открываем проект SCS0102. В окне Link Architecture нажимаем на кнопку [I/O Wiring].
В открывшемся окне подключения модулей ввода-вывода нажимаем на кнопку [Add Device]
и выбираем коммуникационный модуль ALE111:
В окне I/O Wiring появляется модуль ALE111:
-
Щёлкаем дважды по элементу Parameters и в открывшемся окне задаём номер узла - 1 и номер слота – 5:
-
В меню Engineering выбираем I/O Parameter Builder и задаём IP адрес и адрес маски подсети модуля ALE111:
-
Открываем библиотеку переменных Dictionary и добавляем логические переменные:
COIL (тип ESW_B)
INPUT_RELAY (тип BOOL)
INPUT_REGISTER (тип DINT)
HOLDING_REGISTER (тип ESW_I)
-
Открываем Modbus Address Builder:
-
Задаём соответствие между адресами Modbus и логическими переменными контроллера ПАЗ:
-
Добавляем новый программный блок Modbus:
-
Редактируем программный блок Modbus:
- Компилируем проект и прогоняем через анализаторы.