IEC 61499

Международный стандарт IEC 61499 — открытый стандарт распределенных систем управления и автоматизации, который был впервые опубликован в 2005 году. Стандарт описывает общую модель для распределенных систем управления и основан на стандарте IEC 61131. Положения стандарта также описаны в книгах Р. Льюиса и А. Цойтля,а также В. Вяткина.

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

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

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

 Интерфейсный функциональный блок (Service Interface Function Block — SIFB): программа исполнения функционального блока скрыта и его функционал описан только в виде диаграммы последовательности сервиса.
 Базовый функциональный блок (Basic function block — BFB) — функционал базового блока определяется диаграммой управления выполнением программы, которая похожа на Диаграмма состояний (теория автоматов). Каждое состояние может иметь несколько действий. Каждое действие может быть связано либо с одним алгоритмом и с одним событием (или не иметь такой привязки). Алгоритмы могут быть выполнены в соответствии с соответствующими стандартами.
 Составной функциональный блок (Composite function block — CFB): функционал составного блока определяется сетью функциональных блоков.
 Адаптеры: адаптеры — не функциональные блоки. Они объединяют несколько событийных и информационных соединений в одно и предоставляют возможность разделить определение интерфейса и его выполнение.
 Субприложение: функционал таких приложений также определяется сетью функциональных блоков. В отличие от составных функциональных блоков, выполнение составных субприложений может быть распределено между различными устройствами.

Часть 2: Требования к программному обеспечению 
IEC 61499-2 определяет требования совместимости программного обеспечения с IEC 61499. Сюда входят требования к представлению элементов IEC 61499, а также формат обмена Document type definition (DTD) между различными IEC 61499 совместимыми программами. В настоящее время уже существует несколько программных реализации IEC 61499. Среди них есть как коммерческие программы, так и открытое программное обеспечение, а также академические и исследовательские разработки. Как правило, необходимы также совместимые с IEC 61499 операционная среда и среда разработки.

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

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

Кроме того, эта часть объясняла возможность использования стандарта для реализации коммуникационных функциональных блоков, а также модель управления устройствами, посредством управления их приложений и функциональных блоков, и принцип работы функционального блока менеджер устройства (DEV_MGR).

Часть 4: Правила для профилей соответствия 
IEC 61499-4 описывает правила, которым должна следовать система, устройство или программное обеспечение, чтобы соответствовать стандарту IEC 61499. К этим правилам относятся требования «взаимной совместимости», «переносимости» и «конфигурации». Два устройства «взаимно совместимы», если они могут работать друг с другом, обеспечивая выполнение функционала, определенного в системнои конфигурации. IEC 61499 должны быть «переносимыми», то есть приложения должны быть совместимы со всеми IEC 61499 программами от различных производителей, учитывая что эти программы, в свою очередь, отвечают требованиям, определенным в IEC 61499-2. Любые IEC 61499 устройства должны обладать возможностью перестройки конфигурации (настройки) с использованием любой IEC 61499 программы.

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

«Взаимная совместимость» между устройствами различных производителей определена уровнями Сетевой модели OSI. Также должны быть определены информационные выходы со статусом коммуникации, IP-адреса, номера портов и кодирование данных функциональных блоков типа PUBLISH/SUBSCRIBE или CLIENT/SERVER, которые используются для коммуникации между устройствами. HOLOBLOC, Inc. определяет «профиль соответствия IEC 61499»,, которому, например, соответствуют IEC 61499 программы FBDK и 4diac IDE.

См. также

Литература и источники

Ссылки 
 

Стандарты IEC
Системы управления