Экосистема полевой шины передачи данных Колибри на прикладном уровне включает Сервер Колибри – программное обеспечение, предназначенное для предоставления информации пользователю о состоянии полевых устройств, их конфигурирование и управление.
Сервер Колибри включает подсистему хранения данных, которая представляет собой совокупность взаимосвязанных данных о работе полевых устройств на основе электронного описания устройства.
Подсистема хранения данных сервера Колибри должна обеспечивать:
· хранение большого объема данных;
· быстрый поиск требуемой информации;
· фильтрацию данных;
· добавление, удаление и изменение хранимой информации;
· резервное копирование и восстановление данных;
· контроль целостности данных;
· защищенность данных;
· миграцию данных.
Подсистема хранения данных сервера Колибри в части декомпозиции данных, должна хранить и предоставлять
:· данные для сервера Колибри с содержанием информации о командах, алгоритмах, статусах, а также сервисных данных на основе электронного описания устройства;
· данные о полевых устройствах их командах и алгоритмах с дальнейшей возможностью взаимодействия с физическим уровнем сервера Колибри посредством модемов;
· данные о правах доступа пользователей;
· историю работы полевых устройств;
· конфигурационные данные.
Алгоритм функционирования первичного и вторичного главного устройства при работе с полевым устройством должен быть идентичен и заключаться в исполнении содержимого CDD файла для конкретного устройства.
5.1.1 Электронные описания полевых устройств КолибриВ полевых устройствах с протоколом HART для реализации настройки, диагностики и обслуживания (менеджмент полевых устройств) с помощью полевых HART-коммуникаторов и host-систем (например, DeltaV, YOKOGAWA PRM, PACTWare) используются электронные описания устройств, так называемые DD и DTM файлы. Электронные описания полевых устройств (Electronic Device Description (EDD)), разрабатываемые производителями – членами сообщества FieldComm Group (FCG),
https://www.fieldcommgroup.org/, выполняется на языке программирования Electronic Device Description Language (EDDL),
https://www.fieldcommgroup.org/fdi-specifications#230548828-2803369623.
Электронные описания полевых устройств Колибри создаются аналогично.
Электронные описания полевых устройств Колибри должны быть верифицированы и размещены в системе хранения данных Колибри.
Текстовый читаемый формат CDD создается разработчиком полевого устройства и храниться у него. Текстовые электронные описания полевых устройств должны быть написаны на языке C++ версии не ниже 11 международного стандарта ISO/IEC 14882:2011 с конструкциями (Variable, Method, List, Collection, Command, Menu, Reference Array) языка электронных описаний устройств – Electronic Device Description (EDD) версии не ниже 4.
Обеспечение совместимости Колибри с HART должно обеспечиваться трансляцией электронных описаний HART устройств (EDD) в CDD. Разработчики полевых устройств могут создавать CDD непосредственно из EDD на языке EDDL. В этом случае будет использоваться конвертор EDD-CDD с языка EDDL на язык программирования C++.
Описание жизненного цикла файла электронного описания устройства Колибри
1 ЭтапРазработка электронного описания полевого устройства CDD как текстовый документ в редакторе (Visual Studio Code, Qt-Creator и т.п.)
На стороне разработчика полевого устройства2 ЭтапПреобразование текстового формата файла CDD в зашифрованный бинарный формат (без возможности сохранения в базе устройств Колибри).
На стороне разработчика полевого устройства3 ЭтапПроверка работы CDD с полевым устройством (на компьютере с программным обеспечением АРМ Колибри и на Колибри-коммуникаторе)
На стороне разработчика полевого устройства4 ЭтапОтправка файла CDD в зашифрованном бинарном формате в Сообщество Колибри.
Документация:
– Методика испытаний CDD;
– Руководство по эксплуатации полевого устройства, в том числе обязательную информацию в составе: описание применения универсальных, прикладных и специальных команд; описание специальных команд (описание передаваемых данных в рамках запроса и ответа с побайтовой разбивкой, аналогично как для универсальных и прикладных команд); описание алгоритма работы подчиненного устройства и главного устройства при выполнении CDD.
Разработчик -> сообщество Колибри5 ЭтапПроверка CDD в сообществе Колибри.
На стороне сообщества Колибри6 ЭтапБинарный файл CDD помещается в базу данных устройств Колибри с привязкой по идентификатору производителя, идентификатору устройства и версии программного обеспечения (в базе данных устройств Колибри для каждого устройства может храниться несколько CDD в зависимости от версии ПО)
На стороне сообщества КолибриБазу данных устройств предоставляет пользователям Сообщество Колибри.7 ЭтапНа host-системе программное обеспечение (АРМ Колибри и Колибри-коммуникаторов) импортирует бинарные CDD, либо из базы данных устройств Колибри (по идентификатору производителя, устройства и версии ПО) или в ручную как отдельные CDD бинарные файлы, автоматически компилирует их и исполняет.
На стороне пользователя5.1.2 Исполнение электронных описаний полевых устройств КолибриРабота программного обеспечения с полевыми устройствами должна начинаться с подключения, сканирования и последующего поиска CDD в системе хранения данных Колибри, его декодирования в исполняемую библиотеку полевого устройства.
Исполняемая библиотека содержит программу, реализующую базовый и расширенный менеджмент полевого устройства Колибри.
Сервер Колибри должен иметь в своем составе библиотеку Колибри, содержащую функции и конструкции языка программирования Electronic Device Description (Variable, Method, List, Collection, Command, Menu, Reference Array), адаптированные под использования в С++. В свою очередь в исполнимой библиотеке полевого устройства располагается код работы с устройством, вызывающий функции Electronic Device Descriptionи, и использующий его конструкции.
Сервер Колибри может использовать два способа исполнения команд:
1). Интерпретация CDD;
2). Исполнение кода конкретной аппаратной платформы, заранее скомпилированной на стадии декодирования CDD.
5.2 Алгоритм функционирования ПЛК в экосистеме КолибриОсновными требованиями к ПЛК, для интеграции в систему, является:
· Обеспечение возможности доступа прикладного уровня ПО сервера Колибри к данным прикладного уровня полевых устройств Колибри, путём создания Прозрачного транзитного канала.
· Разграничение прикладных функций ПЛК и функций полевой шины с обеспечением контроля доступа.
· Сохранение в ПЛК конфигураций, необходимых для обеспечения межуровневого взаимодействия системы с применением полевой шины Колибри.
Для «Прозрачного транзитного канала» обязательным является режим работы, обеспечивающий установку TCP/IP соединения на заданный в конфигурации ПЛК IP адрес и номер порта TCP по инициативе Сервера Колибри. Данные в этом соединении передаются в формате протокола полевой шины Колибри с предотвращением возможных конфликтов по времени доступа к шине. Возможные конфликты доступа к конечному устройству должны устранятся путём временной буферизации сообщения на уровне модулей ПЛК.
5.3 Функционирование сервера колибри в части OPC UAСервер Колибри обеспечивает:
· доступ потребителям к данным по спецификации OPC UA;
· работу с полевыми устройствами по протоколу Колибри;
· настройку и хранение параметров полевых устройств, и их историю;
· настройку прав пользователя для разграничения доступа к данным.
Описание сервера Колибри в части OPC UA должно содержать:
Конфигурирование сервера Колибри включает в себя настройку следующих параметров:
· название полевого устройства, его описание и компания производитель;
· идентификатор полевого устройства;
· поддерживаемые универсальные, прикладные и специальные команды полевого устройства;
· историю хранения данных о полевом устройстве;
· подключение к OPC UA серверу.
Конфигурирование сервера Колибри должно реализовывать:
· объектный подход, с возможностью выбора прототипа полевого устройства;
· разграничение прав доступа к конфигурированию;
· верификацию создаваемой конфигурации.
Разработка сервера Колибри осуществляться с использованием стандартных методологий функционального моделирования: IDEF0, DFD и информационного моделирования IE и IDEF1Х в рамках рекомендаций по стандартизации Р50.1.028-2001 «Информационные технологии поддержки жизненного цикла продукции. Методология функционального моделирования». Моделирование должно выполняться в рамках стандартов, поддерживаемых программными средствами моделирования ERWin 4.х и BPWin 4.х.
Функционирование сервера Колибри основывается на настройках полевых устройств, которые хранятся в подсистеме хранения данных устройств Колибри. Подсистема хранения данных устройств Колибри содержит информацию об идентификаторах полевых устройств, их универсальных, прикладных и специальных команд сервера Колибри. Сервер Колибри в части OPC UA использует конфигурационные данные устройств Колибри на основе CDD.
Сервер Колибри в части OPC UA обеспечивает:
· формирование структуры оперативных данных сервера OPCUA с содержанием информации о командах, результатах их выполнения, ошибках, а также сервисных данных;
· формирование структуры данных полевых устройств с дальнейшей возможностью взаимодействия с физическим уровнем полевой шины Колибри посредством модемов.
Сервер Колибри в части OPC UA совместим с информационной моделью OPC UA, а именно – использовать положения, термины и определения, приведенные в открытых стандартах IEC62541 часть 1 (Обзор и Концепция), IEC62541 часть 2 (Модель безопасности), IEC62541 часть 3 (Модель адресного пространства), IEC62541 часть 4 (Сервисы), IEC62541 часть 5 (Информационная модель).
Сервер Колибри в части OPC UA реализован как OPC UA сервер. Для обеспечения лучшей производительности и минимизации накладных расходов, транспортный протокол должен быть реализован как двоичный протокол
.Информационная модель сервера Колибри в части OPC UA имеет фиксированную структуру узлов для всех полевых устройств, с целью одинаковой интерпретации OPC UA клиентами. Набор объектов и связанной информации, который сервер OPC UA предоставляет OPC UA клиентам, является адресным пространством. Можно рассматривать адресное пространство как реализацию информационной модели OPC UA.
Сервер Колибри в части OPC UA имеет фиксированное адресное пространство для любого полевого устройства.
Сервер Колибри в части OPC UA предоставляет следующий функционал:
· команды сервера Колибри, представленные в виде статического дерева узлов и атрибутов OPC UA:
o универсальные и прикладные команды полевой шины Колибри;
o конструктор специальной команды в виде статического дерева узлов и атрибутов OPC UA.
· унифицированные данные о технологических переменных полевых устройств (1-ая переменная (PV), 2-ая переменная (SV), 3-ая переменная (TV), 4-ая переменная (QV), единицы измерения переменных).
· общая информация о полевом устройстве (тег, длинный тег, номер сборки, дата, дескриптор, сообщение, тип прибора, предприятие-изготовитель, заводской номер, преамбул в запросе, преамбул в ответе, версия устройства, версия встроенного программного обеспечения, расширенная версия встроенного программного обеспечения, версия оборудования, дата выпуска);
· стандартный статус устройства (неисправность полевого устройства, изменена конфигурация, холодный запуск, доступен дополнительный статус, режим фиксированного тока, ток достиг предела, неосновная переменная выходит за пределы допустимых значений, первичная переменная выходит за пределы допустимых значений);
· расширенный статус устройства (унифицированные данные), в том числе:
o предупреждение о возможных ошибках в специальном статусе устройства;
o расширенный стандартный статус (требуется техническое обслуживание, оповещение о переменной устройства, критический сбой питания, ошибка, вне спецификации, проверка функций);
o стандартизированный статус 0 (включена симуляция переменной устройства, дефект энергонезависимой памяти, дефект энергозависимой памяти, сброс сторожевого таймера выполнен, условия электропитания вне диапазона, условия окружающей среды вне допустимого диапазона, дефект электроники, конфигурация устройства заблокирована);
o стандартизированный статус 1 (статус имитации активен, переполнение уведомлений о событиях, аккумулятор или источник питания требует обслуживания);
o стандартизированный статус 2 (список дополнительных устройств изменен, обнаружен дубликат мастера, несоответствие суб-устройств, обнаружены суб-устройства с повторяющимися идентификаторами, уведомление об устаревших данных);
o статусы аналоговых каналов (вторичный аналоговый канала фиксирован, третичный аналоговый канал фиксирован, четвертичный аналоговый канал фиксирован, пятеричный аналоговый канал фиксированный).