<< Click to Display Table of Contents >> Navigation: Библиотеки контроллеров > Руководство по работе с контроллером PLC ONI PLC-W > Подключение устройств по протоколам > Специализированные протоколы и модули ONI > Встроенный протокол WIO |
Библиотека ONI включает в себя протокол WIO. Принцип работы протокола - использование стандартных GPIO и аналоговых параметров.
Опрос контроллера ONI PLC-W-CPU-06 происходит по протоколу WIO по умолчанию. Поэтому добавлять протокол в узел не требуется. Никаких настроек протокол не имеет.
По умолчанию в протокол добавлены два модуля - Встроенные дискретные и Встроенные аналоговые:
Встроенные аналоговые модули
Модуль имеет одну настройку - Номер модуля, а так же 5 каналов с настройкой Name:
На выходы выводятся измеренные значения в вольтах.
Важно! Текущая модификация контроллера ONI PLC-W содержит 4 аналоговых канала: A1, A2, A3 и Vin.
Ссылочный файл (тип ярлыка) ссылается на директорию /sys/bus/iio/devices/iio, в котором есть определённый набор файлов.
В данном случае используются файлы: name, in_voltage0_raw, in_voltage0_scale. По файлу name определяется имя канала, которое соотносится с именем тега в MasterSCADA 4D. Файлы in_voltage0_raw и in_voltage0_scale используются для вывода напряжения в MasterSCADA 4D: содержимое файлов считывается, перемножается и делиться на 1000. Результат записывается в тег.
Если при считывании возникает ошибка - тег принимает значение uncertain.
Если не находится имя для добавленного тега, тег не опрашивается, а в MasterSCADA 4D выводится соответствующее сообщение.
Модуль имеет одну настройку - Номер модуля, а так же 7 каналов Outputs и 4 канала Inputs с настройкой Name:
Выходные каналы 5V_OUT ON, V_OUT ON и BUZZER - выходы, управляющие питанием модулей УСО и датчиков:
Название канала |
Тип данных |
Описание |
5V_OUT ON |
BOOL |
Выход, управляющий питанием датчиков. Если выход равен TRUE, то на устройстве можно померить мультиметром, что между клеммами 5V OUT и iGND будет напряжение 5V. При выходе равном FALSE, напряжение должно быть равно 0. |
V_OUT ON |
BOOL |
Выход, управляющий питанием модулей. Если выход равен TRUE, то на ПЛК загорается зеленый диод, отвечающий за питание внешних модулей. |
BUZZER |
BOOL |
Выход звукового сигнала. |
Помимо встроенных модулей в протокол WIO можно добавить дополнительные дискретные модули ввода-вывода ONI WIO.
При запуске проекта на исполнение протокол подключается к GPIO, и начинается опрос модулей.
Возможно, что модули в этот момент уже опрашиваются собственной службой ПЛК. В этом случае опроса модулей со стороны MasterSCADA 4D не происходит, при запуске проекта на исполнение появится соответствующая ошибка.
Для остановки службы нужно ввести следующую команду в терминале контроллера:
systemctl stop wb-mqtt-gpio
Для полного отключения службы опроса модулей можно воспользоваться следующей командой:
systemctl disable wb-mqtt-gpio
Для просмотра списка всех дискретных сигналов используется команда: gpioinfo
В список выводится номер "чипов" - cpiochip0, cpiochip1 и т.д. (0 - это встроенные входы), а также модули расширения.
Для модулей расширения используются имена MOD1-3, а затем TX, RX и RTS. Этими сигналами происходит управление или получение сигнала от встроенных в контроллер платок.
Модули вывода располагаются в отдельных "чипах" - cpiochip1, 2 и т.д. Т.е. первый модуль будет принадлежать чипу cpiochip1. Имя образуется следующим образом: 'EXT + номер модуля символ "_" + имя канала'.
Если подключен модуль, которого нет в списке, то можно вызвать команду gpioinfo, получить имена каналов и использовать их.
Если линия используется, то вместо unused будет выведено имя приложения.
Предопределенные каналы имеют тип данных структура. Они содержат три параметра:
•Value - читаемое или записываемое значение соответствующего типа (REAL, LREAL, BOOL, INT, DINT, STRING, BYTE,WORD, DWORD, LWORD, DT, LINT);
•SourceTime - метка времени, формируемая MasterSCADA 4D при получении и отправке данных, тип данных DT;
•StatusCode - признак качества, начальное значение которого установлено в BadWaitingForInitialData для того, чтобы до получения значения по связи не выполнялась запись начального значения в архив, а также выдача начального значения на выходные каналы. Если в дальнейшем опрос произойдет успешно, то значение параметра поменяется на Good. Если при первом опросе возникнет ошибка, то параметр установится в BadNoCommunication. Если при опросах сначала будет установлено Good, а потом возникнет ошибка, то параметр примет значение BadOutOfService (при этом в Value останется последнее полученное значение).
Вид структуры канала в дереве системы:
Для получения информации о состоянии связи с модулями ввода-вывода используются параметры Отказ и Ошибка протокола в группе Встроенные модули:
Параметр Отказ имеет тип значения BOOL. Если параметр принимает состояние TRUE, то это значит, что исполнительная система не может установить связь с данным модулем.
Параметр Ошибка имеет тип значения STRING. Если у исполнительной системы нет связи со всеми модулями ввода/вывода, то параметр принимает значение No connection.