Технология программирования контроллеров ISaGRAF 6 как универсальный инструмент создания систем управления процессами и устройствами в области АСУ ТП и АСУЗ

Опубликовано в номере:
PDF версия
В статье рассматривается единый универсальный инструмент создания программного обеспечения для систем управления технологическими процессами и зданиями на основе интеграции технологии программирования контроллеров ISaGRAF 6 и подключаемого модуля ISaDoMooV взаимодействия с сервером данных DoMooV, который поддерживает основные протоколы систем управления зданиями — BACnet, LonWorks, KNX, M-Bus, Modbus. Интеграция ISaGRAF и DoMooV дает возможность системным интеграторам с помощью единого инструмента воспользоваться преимуществами ведущих в своем классе продуктов, значительно сократить время, трудозатраты и стоимость решений.

Конвергенция средств программирования устройств в АСУ ТП и АСУЗ: требование времени

В настоящее время системным интеграторам часто приходится осваивать два практически непересекающихся класса инструментов и языков программирования для проектов автоматизации технологических процессов (АСУ ТП) и зданий (АСУЗ, BMS). Одному из авторов статьи пришлось столкнуться с данной ситуацией еще в 2001 г. в проекте по разработке и адаптации к британским нормам модели пассажирских поездов Desiro компании Siemens современной информационной системы реального времени PIS (Passenger Information System) датской компании S.A. Viewcom, предоставляющей улучшенный сервис для пассажиров и машинистов. Основой системы была выбрана сеть интеллектуальных устройств с технологией LonWorks, а функциональное программное обеспечение реализовывалось на базе технологии программирования контроллеров ISaGRAF с целевой задачей под Linux. Решение задачи было бы значительно проще, если бы уже тогда в руках разработчиков был единый инструмент.

Остановимся несколько подробнее на текущей ситуации. В области АСУ ТП доминируют инструменты разработки приложений для программируемых логических контроллеров в стандарте IEC 61131-3, в котором определено пять языков программирования — IL (Instruction List, «Список инструкций»), ST (Structured Text, «Структурированный текст»), LD (Ladder Diagram, «Ступенчатая диаграмма»), FBD (Function Block Diagram, «Диаграмма функциональных блоков»), SFC (Sequential Function Chart, «Последовательная функциональная диаграмма»). Одной из ведущих технологий в этой области является система ISaGRAF [1–6]. На сегодня средства ISaGRAF 6 охватывают широкий спектр задач в области управления процессами различного класса, такими как управление движением (SoftMotion), станки с числовым программным управлением, энергетика (поддержка стандарта IEC 61850 «Сети и системы связи на подстанциях»), систем, связанных с безопасностью (платформа FlexiSafe на основе технологии ISaGRAF и стандартов IEC 61508 и ISO 13849) и др.

В области АСУЗ нет стандартизованных языков программирования устройств, а для каждого из протоколов, как правило, используются инструменты и API на базе универсальных языков, таких как С (например, Neuron C для LonWorks), Java, Basic либо специализированные графические языки (типа FBD). Чтобы как-то унифицировать подходы и упростить задачу автоматизации в области АСУЗ в случае мультипротокольных проектов, ряд компаний, таких как MBS Software, Engenuity, Alerton, MOXA, Kepware, Beckhoff, FieldServer Technologies и другие, предложили программные или аппаратно-программные шлюзы для сбора информации и преобразования данных между различными протоколами BMS. Кардинальное решение проблемы «зоопарка» средств разработала известная французская компания Newron System — открытую универсальную интегрированную программную платформу DoMooV для управления набором наиболее распространенных открытых протоколов BMS, таких как BACnet, Modbus, M-Bus, LonWorks и KNX (в перспективе также ZigBee, Z-Wave, Dali, C-Bus). Это позволяет значительно уменьшить финансовые затраты и требования к квалификации системных интеграторов, знаний отдельных протоколов. Напрашивался следующий логический шаг — создание единого инструмента для программирования устройств в области АСУ ТП и АСУЗ. Такой инструмент был создан специалистами компании «ФИОРД» на основе ISaGRAF 6 Workench в составе Единой Платформы Автоматизации (Automation Collaborative Platform, ACP) и DoMooV. Краткое описание этого инструмента и его составляющих приведено в статье. Но вначале напомним о компонентах предложенного решения.

 

ACP и ISaGRAF 6

Концепция и технология ACP [1–4] разработана на основе ISaGRAF [5–6] и создана для обслуживания систем автоматизации. ACP представляет собой среду, управляемую с помощью открытых подключаемых модулей — плагинов (рис. 1). Она помогает проектировщикам программного обеспечения, позволяя им сосредоточиться на своей основной предметной области, а не на системных программных вопросах инфраструктуры решения. ACP поддерживает несколько Конкретных Моделей Автоматизации (Concrete Automation Model, CAM) одновременно, предоставляя возможность интеграции разнородных продуктов в единую интегрированную среду разработки. Процесс разработки заключается в создании проекта, состоящего из устройств с одним или несколькими экземплярами ресурсов. Проекты могут разрабатываться, используя различные языки программирования, включая языки стандарта IEC 61131-3 и IEC 61499. После этапа разработки ресурсы компилируются в TIC-код (Target Independent Code) или в программу на языке C.

Общий взгляд на единую платформу автоматизации

Рис. 1. Общий взгляд на единую платформу автоматизации

ACP предлагает полностью готовую к использованию оболочку (Shell), специально разработанную для систем автоматизации, используя инструментарий Microsoft Visual Studio и технологию .Net Framework (рис. 2). Другими словами, ACP — это среда для создания решений по комплексной автоматизации путем интеграции технологии ISaGRAF Workbench и компетенции OEM-производителя средств автоматизации. Именно эта возможность и позволила специалистам компании «ФИОРД» интегрировать DoMooV в среду ACP. Каждый компонент ACP разрабатывается в виде подключаемого модуля — плагина (plug-ins). Архитектурно это выглядит, как показано на рис. 2: надстройка над Visual Studio Shell (со своими возможностями по расширению) в виде ISaGRAF Shell плюс Абстрактная Модель Автоматизации (Abstract Automation Model, AAM). AAM представляет собой множество интерфейсов (более 300) для доступа к различным объектам, сервисам VS Shell, ISaGRAF Shell — решениям, проектам, ресурсам, конфигурациям, типам данных, устройствам, программам, переменным, функциям загрузки проекта, отладки, симуляции и т. д.

Системные элементы расширяемой архитектуры ISaGRAF 6

Рис. 2. Системные элементы расширяемой архитектуры ISaGRAF 6

Как одна из составляющих ACP, среда ISaGRAF 6 Workbench основана на открытой технологии подключаемых модулей. В свою очередь, каждый компонент в ISaGRAF 6 Workbench разрабатывается по технологии Единой Платформы Автоматизации. Следовательно, функциональность ISaGRAF 6 Workbench, расширяющая возможности предыдущих версий, реализуется с помощью плагинов. Каждый пользователь (OEM-производитель PLC, системный интегратор) может создавать настраиваемый Workbench, выбрав только те подключаемые модули, которые лучше всего подходят для его применения, создавать свои собственные уникальные пакеты для удовлетворения потребностей в своих сегментах рынка.

Системные элементы расширяемой архитектуры ISaGRAF 6

Рис. 2. Системные элементы расширяемой архитектуры ISaGRAF 6

Включение ISaGRAF 6 Workbench в ACP повлекло за собой существенные изменения не только с точки зрения технологии программирования, но и в некоторых других аспектах использования продукта. Цель этих изменений — уменьшить время вывода решения на рынок и сделать его более удобным для конечного пользователя:

  • Среда программирования (Workbench) ISaGRAF 6 может поставляться производителем контроллеров конечному пользователю бесплатно.
  • Добавлена новая удобная бизнес-модель ISaGRAF 6. Производитель PLC работает на основе долгосрочных контрактов.
  • AAM ISaGRAF 6, основанная на стандартах IEC 61131-3 и IEC 61499, обеспечивает богатый набор сервисов на основе .Net-интерфейсов, которые облегчают взаимодействие внутри решения по автоматизации.
  • Обеспечивается совместимость и единообразие между различными контроллерами.

С момента выхода на рынок в рамках ACP были разработаны несколько важных подключаемых модулей (FlexiSafe, ISaView), реализована поддержка режима горячего резервирования и средства работы с прерываниями [1]. Платформа FlexiSafe [2] предназначена для облегчения сертификации OEM-производителями средств промышленной автоматизации в соответствии со стандартами IEC 61508 («Функциональная безопасность систем электрических, электронных, программируемых электронных, связанных с безопасностью») или ISO 13849 («Безопасность оборудования. Элементы систем управления, связанные с безопасностью»). Плагин ISaVIEW обеспечивает пользователя простыми, но в то же время мощными интегрированными средствами человеко-машинного интерфейса (HMI). Страницы ISaVIEW встраиваются в структуру проекта автоматизации. Упомянем еще об одном новом продукте, разработанном в компании «ФИОРД» для ISаGRAF, который будет очень полезен для BMS. Это новый модуль ISaQT, который позволяет пользователю иметь графический интерфейс на контроллере. ISaQT взаимодействует с исполнительной системой (таргетом) ISaGRAF по быстрому протоколу FDA, используя библиотеку удаленного клиента FDA. Поэтому ISaQT может выполнять визуализацию изменений данных реального времени как локально на самом контроллере, так и удаленно с другого компьютера. ISaQT может взаимодействовать с несколькими контроллерами одновременно, поэтому можно делать визуализацию не только автономной, но и распределенной системы автоматизации. ISaQT уже реализован под Linux и под Windows. Для создания мнемосхем используется программа Qt Creator, которая формирует интерфейс на языке QML 2, а на языке JavaScript формируется динамическая составляющая. Программа Qt Creator — кроссплатформенная свободная IDE для разработки на С, С++ и QML в рамках фреймворка Qt. Сформированный файл интерпретируется программой ISaQT.

 

Мультипротокольная платформа DoMooV для BMS

DoMooV — платформа, которая унифицирует данные и поведение системы независимо от протокола, устройства или изготовителя. DoMooV базируется на объектно-ориентированной модели с целью уменьшить затраты и объединить разработку решений для BMS- и для SCADA-систем. DoMooV — это framework, каркас программной системы на основе .NET (рис. 3), включающий в себя средства разработки (SDK) для создания пользователем собственных централизованных или распределенных приложений. Многопротокольный сервер данных DoMooV Dataserver может поддерживать один или несколько движков сбора данных для одного или нескольких сетевых интерфейсов [7–8]. Мультипротокольный сервер данных DoMooV Dataserver также будет доступен для OS Linux и может быть встроен в аппаратные устройства на основе OS Linux (сейчас версия для Linux проходит этап тестирования и пока не поставляется пользователям). Многопротокольные серверы DoMooV OPC и DoMooV BACnet работают с одним или несколькими централизованными или распределенными серверами данных DoMooV и обеспечивают представление данных в формате OPC или BACnet. Серверы поддерживают также функцию шлюза для обмена данными между протоколами.

Многоуровневая структура DoMooV

Рис. 3. Многоуровневая структура DoMooV

Решение на основе DoMooV включает унифицированную информацию для обмена данными: любые приложения (SCADA, корпоративные решения, HMI и т. д.) могут обмениваться информацией в едином унифицированном формате через один из серверов — BACnet, OPC или базовый сервер данных DoMooV. Платформа не только открыта на уровне сервера, она может также расширяться для работы с другими полевыми (fieldbus) протоколами. Ее внутренняя структура обеспечивает простую интеграцию устаревших или частно-фирменных протоколов с последующим включением их в законченное решение.

DoMooV предлагает клиент-серверную архитектуру и для SCADA-систем и для инструментов управления сетью. SCADA-система может взаимодействовать через базовый (native) интерфейс DoMooV, BACnet или OPC-сервер. Архитектура масштабируется от самых простых до очень сложных BMS-решений. Для небольших систем и систем средней размерности DoMooV поддерживает централизованное решение, используя стандартные маршрутизаторы. Для этого используется средство MooV’n’Build для управления сетью. Оно создает локальную базу данных или взаимодействует с удаленной базой данных DoMooV по сети. В этом случае SCADA-система может присоединяться через серверы DoMooV OPC или DoMooV BACnet. Кроме того, архитектура предлагает децентрализованное решение для любого рабочего места. Серверы DoMooV взаимодействуют по сети Ethernet: инструменты управления сетью удаленно поставляют данные в базу данных DoMooV, и один или несколько серверов собирают данные для управления тревогами, расписаниями, трендами и служебной информацией для SCADA.

 

Взаимодействие ISaGRAF 6 Workbench c DoMoov Dataserver

Для взаимодействия с DoMooV в составе ACP был разработан набор подключаемых модулей ISaDoMooV. При его помощи возможно создание управляющей логики в ISaGRAF с использованием сложно организованных разнородных сетей, низкоуровневый доступ к которым обеспечивается сервером данных DoMooV. В настоящее время в состав ISaDoMooV входят два модуля: ISaDoMooV Driver и ISaDoMooV Configurator. ISaDoMooV Driver обеспечивает непрерывный перенос данных из внутренних переменных проекта ISaGRAF на сервер данных DoMooV и обратно. ISaDoMooV Configurator выполняет две основные функции — автоматическое создание переменных в проекте ISaGRAF, которые будут привязаны к ранее сконфигурированным точкам данных DoMooV, и создание конфигурационного файла, содержащего необходимую для работы драйвера информацию о соответствии этих переменных и точек данных DoMooV. Пользователю предоставляется возможность выбора необходимых переменных и указания, в каком из ресурсов или POU они должны быть созданы. При запуске ISaDoMooV считывает конфигурационные файлы DoMooV переменных, узлов и сетей LON, BACnet, KNX, Modbus и сохраняет конфигурационную информацию во внутренней базе данных ISaGRAF (об этом будет сказано далее). Отметим, что формирование конфигурационных файлов DoMooV подразумевает использование специализированных сервисных программ для конкретного протокола: например, LonMaker или NL220 для LonWorks. После импорта «сетевых» переменных DoMooV в проекте ISaGRAF с ними можно делать все, что позволяет ISaGRAF. Разработанный проект исполняется целевой системой и позволяет осуществлять автоматическое регулирование и обработку данных, визуализировать и архивировать изменения значений переменных, передавать данные реального времени OPC-серверам или SCADA-пакетам. Таким образом, можно устанавливать связи между переменными (объектами) узлов разных сетей и с диспетчерскими пунктами в рамках распределенных АСУ различного назначения.

 

Универсальный формат представления данных различных протоколов BMS

При разработке DoMooV специалисты Newron System разработали общий формат данных для различных протоколов, который также используется в ISaDoMooV. В общем виде каждая точка (DataPoint) сервера данных DoMooV имеет следующий вид:

[@N<Network identifier>][@D<Device identifier>][@U<Object identifier>]@P<DataPoint identifier>[@C<Catalog identifier>][@F<Field identifier>]/options (таблица 1).

Таблица. Описание идентификаторов, используемых в IsaDoMooV

Посмотрим, как этот общий формат используется для представления данных в сетях BMS и в базе данных ISaGRAF.

Пример для LonWorks: @NNetwork 1@D2|2@P5@CSNVT_temp. Network 1: Идентификатор сети в базе данных (проекте) DoMooV = Netwrok 1, D2|2: Подсеть (subnet) LonWorks = 2, узел (node) LonWorks = 2. P5: Индекс сетевой переменной в устройстве = 5. CSNVT_temp: SNVT тип переменой = SNVT_temp. При импорте этой переменной в ISaGRAF она будет иметь имя Network_1D2_2P5CSNVT_temp и тип Real.

Таблица. Обозначения точек и устройств

В качестве примера представления данных Modbus в DoMooV и в конфигураторе ISaDoMooV рассмотрим систему управления лифтом. В базе данных DoMooV хранится конфигурация данных, представляющая из себя древовидно структурированный набор точек и устройств. В таблице 2 приведен содержательный смысл и обозначения некоторых из них.

Приведем некоторые элементы представления данных из примера для ModBus в DoMooV: @XRoot представляется как @D192.168.1.65:502|tcp|1; @XUp представляется как @Pcoil2@Cdefault. Такая организация сети сначала импортируется в DoMooV в виде CSV-файла (на рис. 4 справа вверху), а затем конфигуратор ISaDoMooV создает набор переменных в ISaGRAF, как показано на рис. 4.

Пример представления данных Modbus в конфигураторе ISaDoMooV и в DoMooV

Рис. 4. Пример представления данных Modbus в конфигураторе ISaDoMooV и в DoMooV

 

Заключение

Интеграция ISaGRAF Workbench и DoMooV в составе ACP открывает широкие возможности в области развития интегрированных решений в области систем управления процессами (технологическими процессами и зданиями) и является значительным шагом на рынке систем автоматизации. Какие же преимущества дает разработанный специалистами компании «ФИОРД» интерфейс ISaGRAF 6 Workbench и DoMooV:

  • использование единственного инструмента для проектов в области АСУ ТП и АСУЗ, используя международные стандарты IEC 61131-3 и IEC 61499;
  • поддержка основных протоколов АСУЗ — BACnet, LonWorks, KNX, M-Bus, Modbus;
    независимость от конкретного протокола или разработчика контроллеров;
  • значительное снижение требований к квалификации разработчиков, исключение необходимости глубокого изучения конкретных протоколов АСУЗ, что в результате позволяет значительно сократить время разработки и финансовые затраты;
  • открытость решения: при необходимости системный интегратор сможет самостоятельно развивать интерфейс (приобретя соответствующие SDK) применительно к своей задаче или предметной области.
Литература
  1. Колтунцев А. В., Золотарев С. В. ISaGRAF 6.1: динамичное развитие и концептуальные новшества // Автоматизация в промышленности. 2012. № 8.
  2. Золотарев С. В. ISaGRAF и функционально безопасные системы: современный тренд в развитии технологий программирования контроллеров // МКА:ВКС. 2012. № 4.
  3. Золотарев С. В. Технология программирования контроллеров ISaGRAF 6 претендует на роль единой платформы автоматизации // Автоматизация и IT в энергетике. 2011. № 4.
  4. Золотарев С. В. ISaGRAF 6: эволюция от среды программирования контроллеров к единой платформе автоматизации // Автоматизация в промышленности. 2011. № 3.
  5. Колтунцев А. В., Золотарев С. В. Стандарт IEC 61499 и система программирования контроллеров ISaGRAF 5: от теории к практике // Rational Enterprise Management. 2009. № 2.
  6. Яковлев А. В., Липовец А. В., Золотарев С. В. Расширения ISaGRAF 5: инновационные функциональные возможности, производительность и открытость // ИСУП. 2009. № 2.
  7. Золотарев С. В. Инновационная интегрированная мультипротокольная платформа DoMooV // Автоматизация зданий. 2010. № 5, 6.
  8. Золотарев С. В. Интегрированная платформа DoMooV для систем автоматизации зданий: поддержка BACnet, LonWorks, KNX, M-Bus, Modbus и OPC в одном решении // ИСУП. 2010. № 6.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *