Видео презентация ПЛК MICRO:
Для начала работы в TIA Portal v14 (Siemens AG) необходимо скачать конфигурационные файлы (GSDML) и библиотеки Modbus с сайта YASKAWA VIPA Controls. Распакуйте скачанные файлы в рабочую папку.
Запустите программный пакет TIA Portal, после перейдите в Project view. Выберите в Options ‘Install general station description file (GSD)’. Перейдите в рабочую папку и выберите для установки требуемый файл GSDML. По завершении установки, будет произведено автоматическое обновление каталога оборудования и TIA Portal закроется. Для того, чтобы компоненты VIPA отображались, необходимо отключить "Filter" в каталоге оборудования TIA Portal. В конфигураторе контроллер MICRO может быть выбран в Other field devices > PROFINET > IO > VIPA GmbH > VIPA MICRO PLC.
Стойка ПЛК в ПО TIA Portal
Для добавления контроллера MICRO в проект перейдите в Project tree и выбирите ‘Add new device ...’. Так контроллеры VIPA Controls эмулируют контроллеры S7-300, для работы с MICRO, выберите в диалоговом окне ввода модуль ЦПУ SIMATIC S7-300 > CPU 314C-2 PN/DP (314-6EH04-0AB0 V3.3). После перейдите в Project area к ‘Network view’ и перетащите из раздела ‘Other field devices > PROFINET > IO > VIPA GmbH > VIPA MICRO PLC’ контроллер в поле Network view,и подключив ее виртуально к ЦПУ S7 через PROFINET.
Конфигуратор сетевых подключений Network view и добавление MICRO
В Network view кликните по линии PROFINET модуля Siemens CPU и введите требуемое значение IP-адреса в поле ‘Ethernet address’ окна ‘Properties’ раздела ‘IP protocol’. Введите в поле ‘PROFINET device name’ окна ‘PROFINET’ уникальное (в рамках подсети Ethernet) имя сетевого устройства.
Выберите в Network view устройство ввода/вывода ‘VIPA MICRO PLC’ и перейдите в Device overview. В окне станции устройства PROFINET IO ‘VIPA MICRO PLC’ модуль ЦПУ будет размещен в слоте 0. Для конфигурирования порта Ethernet PG/OP поместите в слот 4 стойки модуль Siemens CP 343-1 (6GK7 343-1EX30 0XE0 V3.0). Двойным кликом по CP 343-1EX30 откройте диалоговое окно ‘Properties’ и в поле "Ethernet address" введите требуемый IP-адрес. Предварительно необходимо получить у администратора сети допустимый IP-адрес.
Распакуйте ZIP-файл с библиотекой VIPA Modbus в рабочий каталог Siemens TIA Portal.
Перейдите в Project view в своем проекте и выберите вкладку "Libraries" из вертикального меню справа, выберите "Global library" и потом "Open global library", перейдите в рабочий каталог и загрузите файл ..._TIA.al1x. Скопируйте нужные блоки из библиотеки в раздел "Program blocks" менеджера проектов Project tree активного проекта. Теперь специализированные функциональные блоки VIPA готовы для использования в пользовательской программе проекта.
Добавление библиотек в проект в ПО TIA Portal
Для организации связи по Modbus TCP используются функциональные блоки, разработанные YASKAWA VIPA Controls для своих контроллеров. Их мы и будем использовать в нашей программе.
FB 70 - TCP_MB_CLIENT – этот функциональный блок позволяет использовать порт Ethernet PG/OP в качестве клиента Modbus/TCP.
Параметры вызова Наименование | Тип переменной | Тип данных | Описание |
REQ | ВХОД | BOOL (Двоичное значение) | Запуск работы блока по переходу 0-1. |
ID | ВХОД | WORD (16-разрядное значение) | ID из TCON. |
MB_FUNCTION | ВХОД | BYTE (Байт) | Modbus: Код функции. |
MB_DATA_ADDR | ВХОД | WORD (16-разрядное значение) | Modbus: Начальный адрес или код подфункции. |
MB_DATA_LEN | ВХОД | INT (Целое) | Modbus: Количество регистров/бит |
MB_DATA_PTR | ВХОД | ANY (любой) | Modbus: Буфер данных (допустима только область флагов или блок данных с типом данных BYTE) при использовании функций с кодами 03h, 06h и 10h. |
DONE * | ВЫХОД | BOOL (Двоичное значение) | Работа блока завершена без ошибок. |
BUSY | ВЫХОД | BOOL (Двоичное значение) | Задание выполняется. |
ERROR * | ВЫХОД | BOOL (Двоичное значение) | Работа блока завершена с ошибкой - Параметр STATUS содержит информацию об ошибке. |
STATUS * | ВЫХОД | WORD (16-разрядное значение) | Расширенная информация о состоянии и об ошибках. |
*) Параметр сохраняет свое состояние до следующего вызова FB |
Параметры DB Наименование | Тип переменной | Тип данных | Описание |
PROTOCOL_TIMEOUT | STAT | INT (Целое) | Время блокировки до того, как пользователь может отменить активное задание. Значение по умолчанию: 3 c |
RCV_TIMEOUT | STAT | INT (Целое) | Контрольное время для задания. Значение по умолчанию: 2 с |
MB_TRANS_ID | STAT | WORD (16-разрядное значение) | Modbus: Начальное значение для идентификатора транзакции. Значение по умолчанию: 1 |
MB_UNIT_ID | STAT | BYTE (Байт) | Modbus: Идентификация устройства. Значение по умолчанию: 255 |
Обратите внимание на следующее:
Обратите внимание на то, что в процессе исполнения задания изменение состояния входных параметров не воспринимается.
Исполнение задания завершается или отменяется при одном из следующих условий:
Если REQ сбрасывается до того, как установлен выход DONE или ERROR или истекло время PROTOCOL_ TIMEOUT, на выходе STATUS будет установлено значение 8200h. При этом текущее задание будет по-прежнему исполняться.
С помощью функции 03h с сервера Modbus/TCP должны быть считаны 100 регистров, начиная с адреса 2000, и сохраняться в области памяти флагов с начальным адресом MB200. Коды ошибок при их возникновении должны быть сохранены.
CALL FB 65 , DB65 REQ :=M100.0 ‘ Вызов FB 65 (TCON) для соединения с сервером
ID :=W#16#1
DONE :=M100.1
BUSY :=
ERROR :=M100.2
STATUS :=MW102 ‘ Если соединение с сервером отсутствует, то содержит код 7000h
CONNECT :=P#DB255.DBX 0.0 BYTE 64
UN M 100.2
SPB ERR1
L MW 102
T MW 104
ERR1: NOP 0 U M 100.1
R M 100.0
CALL FB 70 , DB70 ‘ Вызов блока обработки данных клиента Modbus/TCP
REQ :=M101.0
ID :=W#16#1
MB_FUNCTION :=B#16#3 MB_DATA_ADDR:=W#16#7D0 MB_DATA_LEN :=100
MB_DATA_PTR :=P#M 200.0 BYTE 200 DONE :=M101.1
BUSY :=
ERROR :=M101.2
STATUS :=MW106
UN M 101.2
SPB ERR2
L MW 106
T MW 108 ‘код 0000h – задание выполнено, 7004h FB готов к выполнению нового запроса, другие коды это ошибки
ERR2: NOP 0
U M 101.1
R M 101.0
При включении бита M100.0, если M100.0 автоматически сбрасывается, то это означает, что соединение установлено и ячейка памяти MW108 в этом случае содержит код 7004h.
При включении бита M101.0, посылается запрос Modbus и ожидается ответ. В случае если M101.0 сбрасывается автоматически, задание исполнено без ошибок, а считанные данные сохранены в ЦПУ в области памяти флагов, начиная с байта 200. MW108 содержит код 7004h, что сигнализирует о готовности к выполнению нового запроса. Если M101.0 не сбрасывается автоматически, а MW108 возвращает значение, отличное от 0, то это означает наличие ошибки обмена. Причину ошибки можно определить с помощью кода в MW108 (например, MW108 = 8382h, если начальный адрес 2000 отсутствует на сервере).
YASKAWA VIPA Control контроллер MICRO получил награду IF Award 2018