Tag Archives: скада системы

ISaGRAF 5 – основа для создания распределенных приложений на базе стандарта IEC61499 (часть 2)

Функциональные блоки IEC61499

Различают базовые (рис. 6) и композиционные (рис. 7) функциональные блоки IEC61499. Композиционные функциональные блоки – это набор базовых функциональных блоков IEC61499. Для определения базового функционального блока IEC61499 надо задать следующие элементы: входные и выходные переменные, входные и выходные события, диаграмму управления выполнением (ECC – Execution Control Chart) и собственно алгоритм блока. Диаграмма управления выполнением – это описание реакций на внешние воздействия, в котором задается, что именно нужно сделать, если произошло конкретное событие. Входные события инициируют и управляют выполнением функционального блока IEC61499. Помимо внешних (входных) событий указывается (при необходимости), какие события будут генерироваться при окончании выполнения функций-обработчиков. Наиболее удобным языком для создания диаграмм управления выполнением является SFC (язык последовательных функциональных схем).

Рисунок 6 Пример базового функционального блока IEC61499

Рисунок 7 Формирование композиционного функционального блока IEC61499 из базового ФБ

Для описания алгоритма преобразования входных данных в выходные (алгоритма блока) используются языки стандарта IEC61131-3 (FBD, SFC, LD, ST, IL) и те же типы данных, что в IEC61131-3.

Процесс выполнения функционального блока IEC61499 описывается на основе анализа диаграммы управления выполнением следующим образом.

  • Инициализация и вызов экземпляра для проверки входного события.
  • Выполнение алгоритма функционального блока.
  • Генерация выходного события.

На рис. 8 дается пример работы функционального блока E_MERGE (слияние событий).

Рисунок 8 Пример описания работы функционального блока E_MERGE

 

Библиотека функциональных блоков в IEC61499

В стандарте определены 18 типов функциональных блоков, некоторые из которых приведены на рис. 9. ISaGRAF v.5 поддерживает все типы функциональных блоков IEC61499. Для каждого типа функционального блока в IEC61499 дается его диаграмма управления выполнением. Такой пример приведен на рис. 10. В дополнение к стандартным обозначениям на языке SFC выходной сигнал EO на этой диаграмме обозначается прямоугольником с двойной правой стороной.

Рисунок 9 Фрагмент библиотеки базовых функциональных блоков IEC61499

Рисунок 10 ФБ “Разрешающее распространение события” и его диаграмма состояний в IEC61499

Особенности и преимущества IEC61499

  • Регулирует поток управляющих решений для связанной распределенной системы управления.
  • Гарантирует целостность и непротиворечивость данных в системе.
  • Обеспечивает средства надежного синхронного взаимодействия между устройствами.
  • Проясняет отношения взаимной блокировки.
  • Устраняет потребность в отдельных схемах синхронизации алгоритмов.
  • Значительно упрощает разработку трудоемкой системы управления.
  • Радикально облегчает сопровождение распределенных систем управления.

Экспериментальная проверка построения распределенной системы из 72 контроллеров с помощью ISaGRAF 5

Для экспериментальной проверки стандарта IEC61499 и его реализации в ISaGRAF компанией ICS Triplex использовались 72 низкостоимостных контроллера NetBurner MOD5272-100CR (с микропроцессором Motorola ColdFire 5272), смонтированных в три группы. Каждый микроконтроллер оборудовался двумя кнопками и 2 переключателями в качестве входных сигналов и двумя зелеными и желтыми лампочками в качестве выходных сигналов. Эти контроллеры имеют Ethernet вход и выполняют операционную систему μC/OS. ISaGRAF был портирован на эти контроллеры, и все коммуникации осуществлялись через TCP/IP.

Для убедительной демонстрации было разработано три приложения. Все приложения использовали одни и те же аппаратные средства, описанные выше. Это были следующие приложения:

  • приложение по распространению сигнала: оно использовалось для измерения распространения сигнала и данных в приложении;
  • приложение симуляции поезда: это приложение использовалось для демонстрации использования базовых и композиционных функциональных блоков IEC61499 в симуляторе реальной системы;
  • приложение “оркестр”: оно демонстрировало мощь и гибкость IEC61499 в условиях реального мира.

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

Более подробное описание см. Julien Chouinard, An IEC 61499 configuration with 70 controllers; challenges, benefits and a discussion on technical decisions, http://www.icstriplex.ca/pages/documentation/ETFA07_SS1_Final17Oct2007.pdf

 

Мой блог находят по следующим фразам

ISaGRAF 5 – основа для создания распределенных приложений на базе стандарта IEC61499 (часть 1)

Рассматривается стандарт IEC61499, разработанный международной электротехнической комиссией с целью унификации правил создания и применения функциональных блоков в распределенных измерительных и управляющих системах. Предложена первая в мире реализация этого инновационного стандарта в среде программирования контроллеров ISaGRAF 5 компании ICS Triplex (www.icstriplex.com).

Что такое IEC61499?

Стандарт IEC61499 определяет распределенную, управляемую событиями архитектуру и требования к программному инструментарию для инкапсуляции, встраивания, развертывания и интеграции программного обеспечения в интеллектуальных устройствах, машинах и системах. В основу проекта были положены такие стандарты, как IEC61131-3 и IEC61158 (Fieldbus).

Разработка стандарта велась в рамках международной электротехнической комиссии МЭК (IEC, International Electrotechnical Commission) в рабочей группе WG63 технического комитета TC65. Обсуждение будущего стандарта IEC61499 началось в октябре 1990 г., активная работа над ним – в марте 1992 г., период апробации подготовленного проекта стандарта – в марте 2001 г. и, наконец, завершение разработки – в 2005 г.

Стандарт IEC61499 разделен на четыре части, но реализация стандарта IEC61499 в ISaGRAF основывается на первой и второй частях стандарта.

  • Часть 1. Архитектура и функциональные блоки.
  • Часть 2. Требования к программным средствам.

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

System (Система): набор устройств, связанных и взаимодействующих друг с другом посредством коммуникационной сети, состоящей из сегментов и соединений.

Device (Устройство): независимая физическая единица, способная к выполнению одной или более определенных функций в конкретном контексте и ограниченная интерфейсами устройства.

Resource (Ресурс): функциональная единица, имеющая независимое управление его работой и обеспечивающая различные сервисы для приложений, включая планирование и выполнение алгоритмов.

Application (Приложение): программная функциональная единица, которая является специфичной для решения проблемы в системе управления и измерения. Приложения могут быть распределены между устройствами и могут взаимодействовать с другими приложениями.

Function block (Функциональный блок, ФБ): программная функциональная единица, которая является наименьшим элементом в распределенной системе управления. Функциональный блок использует машину состояний (state machine) с диаграммой управления выполнением (execution control chart – ECC) для задания алгоритма работы ФБ.

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

Рисунок 1Общая диаграмма системы в стандарте IEC61499

Рисунок 2 показывает систему управления, имеющую много устройств, соединенных вместе с помощью управляющей сети. Также на рис. 2 показаны приложения, распределенные по нескольким устройствам.

Рисунок 2 Пример системы с распределенными приложениями

Многие устройства соединяются вместе через коммуникационную сеть. В ISaGRAF устройство – это аппаратное средство (контроллер), способное выполнять цикл управления. Устройство – это контроллер, который имеет процессор, память, а также может присоединяться к коммуникационной сети, когда оно используется в распределенном приложении. Устройства решают задачу управления или измерения и могут быть в составе интеллектуального исполнительного механизма, такого как клапан или расходометр. Любая полевая шина может работать как коммуникационная сеть. Среди часто используемых полевых шин (протоколов) – Profibus, DeviceNet, Industrial Ethernet. Некоторые сети являются более быстрыми, в то время как другие – более детерминированными. Выбор сети зависит от процесса управления.

Приложение может содержать один или более циклов управления. Например, ввод данных выполняется на одном устройстве, управление – на втором и преобразование выходных данных – на третьем устройстве. Эти совместные циклы управления разделяют данные предсказуемым и детерминированным образом, описанном в стандарте IEC61499.

В ISaGRAF каждая система может быть распределенной, и это может быть показано средствами ISaGRAF с различных точек зрения. Например, может быть показана Модель Системы, как на рис. 3. Все пиктограммы функциональных блоков (желтые символы) справа от имени приложения указывают на распределение по устройствам. Пиктограмма, показанная ниже устройства, означает, что программа имеет часть, выполняющуюся в этом устройстве. Отсутствие пиктограммы ниже устройства означает, что программа не имеет части, выполняющейся на этом устройстве. Коммуникационная сеть соединяет вместе устройства, которые являются частью распределенной системы. Коммуникационная сеть отображается в ISaGRAF, если она сконфигурирована в системе. Причем часть устройств может использовать одну коммуникационную сеть, в то время как другие устройства – другую сеть. На рис. 3 в качестве коммуникационной сети выступает Ethernet. Элементы ISaGRAF используют коммуникационную сеть в прозрачном режиме. При построении и компиляции приложения генерируются все требуемые для связи параметры. Рисунок 3 показывает систему, состоящую из устройств, коммуникационной сети и приложений в виде Модели Системы. Приложение Application_A имеет части, работающие на первом, втором и третьем устройствах. Приложение Application_B имеет части, выполняемые на двух последних устройствах системы. Приложение Application_C работает только на первом устройстве. Каждая часть Application_A обменивается соответствующей информацией через коммуникационную сеть. Аналогично и для Application_B.

Рисунок 3 Представление Модели Системы распределенного приложения в ISaGRAF

В представлении Модели Системы двойной клик на приложении отображает его схематический вид. Схематический вид – это Модель Приложения (рис. 4). В этом виде нет границ устройств. Это одна общая схема для распределенного приложения. Каждому функциональному блоку в приложении может присваиваться ресурс, который одновременно присваивается и устройству.

Событие и сигналы данных между функциональными блоками очень просто рисовать. Генератор распределения ISaGRAF создает все требуемые связи между этими сигналами. Эти связи обмениваются информацией прозрачно по коммуникационному интерфейсу. Средства ISaGRAF заботятся обо всех аспектах распределения приложения. В частности, в коммуникационный интерфейс и в алгоритм выполнения добавляются задержки, которые должны браться в расчет во время проектирования распределенного приложения.

Рисунок 4 Представление Модели Приложения в ISaGRAF в соответствии с IEC61499

Прежде всего, вспомним, как определялись функциональные блоки в стандарте IEC61131-3 (рис. 5). В IEC61131-3 функциональный блок имел входные и выходные переменные. Входные переменные отображались слева от ФБ, выходные – справа. Были определены стандартные (элементарные) функциональные блоки для различных типов данных. Алгоритм для стандартных функциональных блоков был жестко фиксирован, и сами стандартные ФБ составляли библиотеку стандартных функциональных блоков ISaGRAF. Пользователь мог создать свой собственный функциональный блок, определив его входные и выходные переменные, а также написав алгоритм преобразования входных переменных выходные на определенном языке IEC61131-3 (например, языке структурного текста ST). В Приложении D стандарта IEC61499 описано преобразование функциональных блоков IRC61131-3 в IEC61499. Такой пример преобразования приведен на рис. 5.

Рисунок 5 Пример функционального блока в IEC61131-3 (слева) и его преобразования в ФБ IEC61499 (справа)


Мой блог находят по следующим фразам

Тенденции рынка SCADA-систем

Бизнес Citect и других компаний, предлагающих программные SCADA-пакеты, зависит от существования небольших инженерных фирм, выступающих в роли интеграторов управляющих систем.

Наиболее дальновидные представители сообщества интеграторов образовали ассоциацию Control System Integrators Association, призванную помогать интеграторам обмениваться опытом, сравнивать эффективность их решений и решать вопросы сертификации.

Интегратор управляющих систем – это новая профессия, имеющая особые черты, отличающие её от профессий инженера и конструктора. Доступность готового COTS-оборудования для оснащения удалённых станций и программного обеспечения типа SCADA для создания человеко-машинных интерфейсов и реализации другой высокоуровневой функциональности привела к тому, что компании-интеграторы всё реже работают «по старинке» с одним-двумя поставщиками. Сегодня интеграторы могут выбирать для своих клиентов лучшие продукты от разных поставщиков. В отсутствие широкого выбора программных человеко-машинных интерфейсов и SCADA-пакетов рынок интеграции управляющих систем в его нынешнем виде не мог бы существовать.

Целостность данных

Современные продукты класса SCADA позволяют создавать законченные интегрированные системы управления для работы со всеми данными, поступающими по каналам ввода-вывода. Такие системы должны поддерживать назначение глобальных временных меток для всех данных, ведение глобальной истории данных и анализ данных, а также импорт данных из разных БД и представление импортированных данных таким образом, как если бы все они хранились в одной БД. Целостность данных – это один из ключевых показателей качества функционирования современного SCADA-пакета.