Стандарт МЭК 61499

Научная литература

Модели функциональных блоков IEC 61499, их проверка и трансформации в проектировании распределенных систем управления «Монография» Авторы: В. Н. Дубинин, В. В. Вяткин

скачать

Введение: IEC 61499

Международный стандарт IEC 61499, касающийся функциональных блоков для систем измерения и управления промышленными процессами, был первоначально опубликован Международной электротехнической комиссией (МЭК) в 2005 году. Спецификация IEC 61499 определяет общую модель для распределенных систем управления и основана на стандарте IEC 61131. Концепции IEC 61499 также объясняются Льюисом и Зойтлом, а также Вяткиным.

  • IEC 61499-1:2012 Функциональные блоки. Часть 1: Архитектура

  • IEC 61499-2:2012 Функциональные блоки. Часть 2. Требования к программному инструменту

  • IEC TR 61499-3:2004 Функциональные блоки. Часть 3. Учебная информация (удалена в 2008 году)

  • IEC 61499-4:2013 Функциональные блоки. Часть 4. Правила для профилей соответствия

Часть 1: Архитектура

IEC 61499-1 определяет архитектуру распределенных систем. В IEC 61499 модель циклического выполнения из IEC 61131 заменена моделью выполнения, управляемой событиями. Модель выполнения, управляемая событиями, допускает явную спецификацию порядка выполнения функциональных блоков. При необходимости периодически выполняемые приложения могут быть реализованы с помощью функционального блока E_CYCLE для генерации периодических событий, как описано в Приложении A к IEC 61499-1.

IEC 61499 обеспечивает ориентированный на приложения дизайн, при котором одно или несколько приложений, определяемых сетями взаимосвязанных функциональных блоков, создаются для всей системы и впоследствии распространяются на доступные устройства. Все устройства в системе описаны в рамках модели устройства. Топология системы отражена в модели системы. Распространение приложения описано в рамках модели отображения. Следовательно, приложения системы могут распространяться, но поддерживаются совместно. IEC 61499 находится под сильным влиянием Erlang с его моделью «Ничего общего» и прозрачностью распространения. справочник | Модель приложения и устройства IEC 61499

Как и функциональные блоки IEC 61131-3, типы функциональных блоков IEC 61499 определяют как интерфейс, так и реализацию. В отличие от IEC 61131-3, интерфейс IEC 61499 содержит входы и выходы событий в дополнение к входам и выходам данных. События могут быть связаны с вводом и выводом данных с помощью С ограничениями. Стандарт IEC 61499 определяет несколько типов функциональных блоков, каждый из которых может содержать описание поведения в терминах последовательностей обслуживания: интерфейс thumb | Функционального блока

  • Функциональный блок интерфейса сервиса – SIFB: исходный код скрыт, а его функциональность описывается только сервисными последовательностями.

  • Базовый функциональный блок - BFB: Его функциональность описывается в терминах диаграммы управления выполнением (ECC), которая аналогична диаграмме состояний (UML). Каждое состояние может иметь несколько действий. Каждое действие ссылается на один или ноль алгоритмов и на одно или ноль событий. Алгоритмы могут быть реализованы так, как определено в соответствующих стандартах.

  • Составной функциональный блок - CFB: Его функциональность определяется сетью функциональных блоков.

  • Интерфейсы адаптера: Интерфейс адаптера не является реальным функциональным блоком. Он объединяет несколько событий и подключений к данным в рамках одного подключения и предоставляет концепцию интерфейса для разделения спецификации и реализации.

  • Подприложение: его функциональность также определяется как сеть функциональных блоков. В отличие от CFB, подприложения могут быть распределены.

Для обслуживания приложений на устройстве IEC 61499 предоставляет модель управления. Диспетчер устройств поддерживает жизненный цикл любого ресурса и управляет взаимодействием с программными средствами (например, средством настройки, агентом) с помощью команд управления. С помощью интерфейса программного средства и команд управления может быть реализована интерактивная реконфигурация приложений IEC 61499.[3]

Часть 2: Требования к программному обеспечению

IEC 61499-2 определяет требования к программным средствам, которые должны соответствовать стандарту IEC 61499. Сюда входят требования к представлению и переносимости элементов IEC 61499, а также формат DTD для обмена элементами IEC 61499 между различными программными средствами. Уже доступны некоторые программные средства, соответствующие стандарту IEC 61499.[4] Среди них коммерческие программные средства, программные средства с открытым исходным кодом, а также академические и исследовательские разработки. Обычно требуется среда выполнения, соответствующая стандарту IEC 61499, и среда разработки, соответствующая стандарту IEC 61499.

Часть 3: Учебная информация (удалена в 2008 году)

IEC 61499-3 был связан с ранней общедоступной версией стандарта спецификации (PAS) и был отозван в 2008 году. В этой части даны ответы на часто задаваемые вопросы, связанные со стандартом IEC 61499, и описано использование элементов IEC 61499 с примерами для решения распространенных проблем при проектировании систем автоматизации.

Среди других примеров, IEC 61499-3 описывает использование SIFB в качестве коммуникационных функциональных блоков для удаленного доступа к данным и параметрам функциональных блоков в реальном времени; использование интерфейсов адаптера для реализации объектно-ориентированных концепций; алгоритмы инициализации в сетях функциональных блоков; и реализацию ECCS для упрощенного управления двигателем гипотетических видеомагнитофонов. Дополнительно было объяснено влияние отображения на функциональные блоки связи, а также управление устройством приложениями управления и его функциональными блоками, а также принцип работы функционального блока диспетчера устройств (DEV_MGR).

Часть 4: Правила для профилей соответствия

IEC 61499-4 описывает правила, которым должна следовать система, устройство или программный инструмент, чтобы соответствовать стандарту IEC 61499. Эти правила относятся к функциональной совместимости, переносимости и конфигурации. Два устройства совместимы, если они могут работать вместе для обеспечения функциональности, указанной конфигурацией системы. Приложения, соответствующие стандарту IEC 61499, должны быть переносимыми, что означает, что ими можно обмениваться между программными средствами разных производителей с учетом требований к программным средствам, описанным в IEC 61499-2. Устройства любого производителя должны быть конфигурируемы любым программным средством, соответствующим стандарту IEC 61499.

Помимо этих общих правил, IEC 61499-4 также определяет структуру профилей соответствия. Профиль соответствия описывает, насколько система соответствует правилам стандарта IEC 61499. Например, возможность конфигурирования устройства программным средством определяется поддерживаемыми командами управления. Формат обмена XML, который определяет переносимость приложений, соответствующих стандарту IEC 61499, определен в части 2 и дополняется профилем соответствия, например, путем объявления поддерживаемых расширений имен файлов для обмена элементами библиотеки программного обеспечения.

Совместимость между устройствами разных производителей определяется уровнями моделей OSI. Также необходимо учитывать выходные данные состояния, IP-адреса, номера портов, а также кодировку данных функциональных блоков, таких как ПУБЛИКАЦИЯ / ПОДПИСКА и КЛИЕНТ / СЕРВЕР, которые используются для связи между устройствами. HOLOBLOC, Inc. определяет «профиль соответствия стандарту IEC 61499 для демонстрации осуществимости»,[5] который, например, поддерживается совместимыми с IEC 61499 программными средствами FBDK, 4diac IDE, и nxtSTUDIO.

Основы IEC 61499

IEC 61499 представляет собой предметно-ориентированный язык моделирования для создания решений в области промышленного управления. Он расширяет IEC 61131-3, улучшая инкапсуляцию программных компонентов для повышения возможности их повторного использования. Также этот стандарт обеспечивает независимый от производителя формат и упрощает поддержку взаимодействия между контроллерами, что важно для Индустрии 4.0 и приложений промышленного Интернета вещей.

IEC 61499 был создан для решения двух ключевых проблем, связанных с IEC 61131-3. Первая проблема касается обратных связей в приложениях, поведение которых может зависеть от реализации базового программного обеспечения. Вторая проблема возникает при интеграции ПЛК различных производителей, когда взаимодействие между ними может быть затруднено из-за отсутствия стандартизации.

IEC 61499 предлагает язык моделирования, аналогичный старым функциональным блокам, но ориентированный на децентрализованные системы. Это позволяет моделировать систему даже в случае её разделения на несколько частей. Функциональные блоки используются для инкапсуляции функциональности без использования глобальных переменных. Приложение создаётся путём соединения отдельных функциональных блоков. Стандарт также определяет модель для представления устройств и соединений в системе, что облегчает разделение приложения на несколько устройств.

Интерфейс FB

Новый тип функциональных блоков (FB) в соответствии со стандартом IEC 61499 позволяет инкапсулировать желаемую функциональность системы. Входы расположены слева, а выходы — справа, но теперь интерфейс разделяет события (показаны красным) и данные (показаны синим). События инициируют работу FB, использующих доступные данные на входах. Соединения событий и данных неразрывны. Разрешено разветвление соединений для данных, но не для событий. Это означает, что выход может быть подключён к нескольким входам данных следующего уровня, но объединение событий невозможно.

Каждый вход события связан с несколькими входами данных через линии и квадраты, аналогично каждый выход события подключён к нескольким выходам данных. Это соединение определяет, какие входные и выходные данные обновляются при возникновении события ввода/вывода. Поведение FB определяется его управлением выполнением событий (ECC), представляющим собой конечный автомат, получающий входные события. В зависимости от текущего состояния, ECC выполняет определённую часть инкапсулированной функциональности.

../_images/IEC61499-2.png

Рисунок: FB в соответствии со стандартом МЭК 61499

На следующем изображении показана последовательность шагов, выполняемых FB при запуске его функций. Последовательность начинается, когда событие поступает в FB.

../_images/IEC61499-3.png

Рисунок: Последовательность шагов в соответствии со стандартом IEC 61499

  1. Входные события поступают в FB.

  2. Вводные данные, относящиеся к входящему событию, обновляются.

  3. Событие передается в ECC.

  4. В зависимости от типа FB и управления выполнением для выполнения запускаются внутренние функции.

  5. Внутренние функции завершают выполнение и предоставляют новые выходные данные.

  6. Выходные данные, связанные с выходным событием, обновляются.

  7. Отправляется выходное событие.

Примечание

ECC (Execution Condition Chart) в контексте IEC 61499 — это диаграмма состояний, которая используется для определения поведения функциональных блоков. Она похожа на диаграмму состояний (UML) и описывает различные состояния функционального блока и действия, которые могут выполняться в каждом состоянии.

Шаги с 4 по 7 могут повторяться несколько раз. Несмотря на то, что выходное событие может быть запущено (не является обязательным).

Распределенное приложение

На следующем изображении показан пример приложения, созданного в соответствии со стандартом IEC 61499. Как видно, данные и события не связаны между собой.

../_images/IEC61499-4.png

Рисунок: Приложение в соответствии со стандартом IEC 61499

Поскольку стандарт позволяет моделировать распределённые системы, приложение не обязательно должно запускаться на одном устройстве. Его можно разделить и развернуть на нескольких устройствах. Можно даже распределить множество приложений по множеству устройств. Модель системы помогает пользователю проектировать такое распределение. Устройство может включать несколько ресурсов, представляемых как потоки внутри устройства. FB загружаются в ресурсы, а не в сами устройства.

../_images/IEC61499-5.png

Рисунок: Запуск приложений в соответствии со стандартом IEC 61499

На изображении видно, что не все FB приложения запускаются на одном устройстве. На устройстве можно запускать одновременно множество приложений или частей приложений. Важно отметить, что FB нельзя разделить между несколькими устройствами.

Типы функциональных блоков

IEC 61499 определяет три типа функциональных блоков (FB), которые можно использовать при разработке приложений:

  1. Базовый функциональный блок (Basic Function Block, BFB): В BFB можно создать конечный автомат с помощью ECC (диаграммы управления выполнением). ECC определяет алгоритм на основе состояния и входных событий. Пример ECC показан на рисунке: серые блоки (Alg1–Alg3) — алгоритмы, розовые блоки (EO1, EO2) — выходные события, коричневые блоки — переходы между состояниями. Управление переключается в следующее состояние при выполнении условия (если оно есть). События используются только один раз.

../_images/IEC61499-8.png

Рисунок: Базовый функциональный блок (BFB)

  1. Составной функциональный блок (Compound Function Block, CFB) просто содержит внутреннюю сеть других функциональных блоков.

../_images/IEC61499-9.png

Рисунок: Составной функциональный блок (CFB)

  1. Сервисный функциональный блок (Service Function Block, SFB) – это функциональный блок, необходимый для доступа к определённым частям оборудования. Как показано выше, одно приложение может быть развёрнуто на нескольких устройствах. После этого приложению потребуется доступ к входам и выходам и для связи с оборудованием. Для этих целей используются SFB.

Они используются для всего, что требует доступа к аппаратной платформе, что не могут делать BFB или CFB. Такие типы FB активируются не только входными событиями, но и самим оборудованием. Таким образом, функциональный блок-ответчик может инициировать событие всякий раз, когда поступает пакет данных.

../_images/IEC61499-10.png

Рисунок: Составной функциональный блок (CFB)