logo
Ответы по курсу ПМС

48. Система программирования контроллеров IsaGraf

ISaGRAF — инструмент разработки прикладных программ для программируемых логических контроллеров на языках стандарта IEC 61131-3 и IEC 61499, который позволяет создавать локальные или распределенные системы управления. Основа технологии — среда разработки приложений (ISaGRAF Workbench) и адаптируемая под различные аппаратно-программные платформы исполнительная система (ISaGRAF Runtime). В настоящее время ISaGRAF производится и распространяется компанией ICS Triplex ISaGRAF. В ISaGRAF поддерживаются все пять языков стандарта IEC 61131-3 (International Electrotechnical Commission, МЭК):

В версии ISaGRAF 5.0 реализована поддержка нового типа функциональных блоков, определяемых стандартом IEC 61499. В ISaGRAF реализован ряд расширений спецификации стандартаIEC 61131-3, в частности язык Flow Chart. На основе вычислительного ядра ISaGRAF разработаны расширения, которые позволяют рассматривать ISaGRAF в качестве универсальной среды для создания интегрированных решений в области АСУ ТП. Основные расширения ISaGRAF:

Заключение: особенности и преимущества стандарта IEC61499

 Обзор возможностей ISaGRAF

Что мешает Вам воспринимать Ваш проект как одно единственное приложение промышленной автоматизации? Вероятно тот факт, что, как правило, это набор совершенно разных контроллеров, операционных систем, устройств ввода/вывода и коммуникационных протоколов. Конечно, тут возникает еще много вопросов. Какую информацию должны разделять ваши устройства? Кто разрабатывает ваше приложение? Кто поддерживает его? Как воспользоваться уже существующими наработками? Какого типа эти наработки? Последовательные функциональные схемы? Функциональные блочные диаграммы? Потоковые диаграммы? Релейные диаграммы?

Ответом на все эти трудные вопросы является ISaGRAF - мощная, устойчивая, встраиваемая технология открытой автоматизации.

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

ISaGRAF - это встраиваемая, масштабируемая технология программирования контроллеров, позволяющая создавать как приложения для автономных контроллеров, так и распределенные приложения для нескольких обменивающихся данными по сети контроллеров. ISaGRAF состоит из трех взаимосвязанных компонент:

 

Как все это работает

Вы создаете приложение в Workbench ISaGRAF  , при компиляции этого проекта генерируется TIC-код (Target Independent Code - машино-независимый код), из системы разработки приложений Вы загружаете TIC-код Вашего приложения на целевую систему, которая содержит TIC-интерпретатор. Возможно генерирование С-кода приложения, однако для связывания этого кода с кодом целевой системы потребуется ISaGRAF   I/O Development Tools или ISaGRAF   Developper's Tool Kit. (Для генерирования С-исполняемых файлов потребуется С-компилятор).

Целевые системы

Целевая система ISaGRAF может исполняться под управлением любой ОС.  Целевая система ISaGRAF   - машинонезависимый механизм, который встраивается в контроллер и исполняет приложение, разработанное в системе разработки приложений ISaGRAF  . При этом приложение может быть автономным (одно приложение, исполняемое одним контроллером), или распределенным (одно приложение, исполняемое несколькими контроллерами).

 

Коммуникационный интерфейс Задача связи с HMI/SCADA Загрузка Отладка "на лету" задача связи PLC-to-PLC

Интерфейс Приложения Дополнительные функции к библиотекам  программирования

Интерфейс Ввода/Вывода Локальные карты ввода/вывода Разделяемая память

Системный интерфейс Интерфейс аппаратной платформы Управление памятью Системные часы

 

Система разработки приложений

На одной конфигурации (физическом контроллере) можно создать неограниченное число ресурсов ("виртуальных" контроллеров), запрограммированых с помощью 5 языков IEC 1131-3: SFC: Sequential Function Chart (или Grafcet), FBD: Function Block Diagram, LD: Ladder Diagram, ST: Structured Text, IL: Instuction List. Может быть использован также Flow Chart.

Для каждого ресурса декларируются переменные простого типа (boolean, integer, real, string, timer) или определенного пользoвателем типа, такого как массивы и структуры. Переменные могут быть привязаны к устройствам ввода/вывода.

Каждый ресурс может использовать переменные любого другого ресурса (в том числе ресурс другого физического контроллера - конфигурации). Обмен данными между конфигурациями осуществляется по сети Ethernet, используя механизм “биндинга”. Биндинг - это возможность установления горизонтальных связей между контроллерами на уровне "связывания" переменных разных целевых систем.

Development Kit

Подробная документация на английском языке по переносу в ОС, исходные тексты целевых систем в NT, Rtx, VxWorks, OS-9, QNX, Linux. Все необходимое для переноса целевой системы в другую ОС.

I/O Development Tools

Подробная документация на русском языке по написанию драйверов ввода/вывода, С-функций, С-функциональных блоков, С-функций преобразования. Объектные и исполнительные файлы целевой системы, утилиты и библиотеки для разработки драйверов.