ISaGRAF

Продукт
Разработчики: ISaGRAF Inc
Технологии: Средства разработки приложений

Содержание

ISaGRAF — инструментальная графическая среда разработки прикладных программ для программируемых логических контроллеров (ПЛК) на языках стандарта IEC 61131-3 и IEC 61499, позволяющая создавать локальные или распределенные системы управления.

Основа технологии — среда разработки приложений (ISaGRAF Workbench) и адаптируемая под различные аппаратно-программные платформы исполнительная система (ISaGRAF Runtime).

2015: ISaGRAF ACP 6.4 и ISaGRAF 6 Target

Вебинар "Новые версии: ISaGRAF ACP 6.4 и ISaGRAF 6 Target" (2015)

В вебинаре дается представление об изменениях, выполненных в среде разработки приложений для контроллеров ISaGRAF ACP 6.4 и исполнительной системе ISaGRAF 6 Target, на основе версии пакета PRDK 5.50.

2014

ISaGRAF 6.1

Программный пакет ISaGRAF - встраиваемое ПО и инструментальные средства промышленной автоматизации, совместимые со стандартами IEC 61131-3 и IEC 61499. ISaGRAF 6.1 включает в себя важные новшества в среде разработки (Workbench) и новую версию 5.3 C5 среды исполнения (firmware). Имея в своей основе мощный инструментарий Microsoft Visual Studio 2010, теперь ISaGRAF 6.1 Workbench стал гораздо быстрее, предлагает новый и усовершенствованный пользовательский интерфейс и расширенное управление пакетами.

ISaGRAF 6.1 Workbench - это модульная и гибкая среда, которая дает возможность пользователям добавлять или удалять компоненты. Каждый компонент в Workbench был разработан по технологии ISaGRAF на основе Microsoft® .NET Framework, называющейся Единой Платформой Автоматизации (ACP, Automation Collaborative Platform), и осуществляет взаимодействие при помощи этой технологии. ISaGRAF ACP обеспечивает способность добавлять или удалять различные плагины для выполнения специальных требований продукта автоматизации.

ISaGRAF 6.1 включает в себя интерфейсы программных расширений (плагинов, plugins) для добавления новых возможностей, а также плагины для реализации ряда функций, которые сделали ISaGRAF 5 таким популярным среди заказчиков по всему миру. В ISaGRAF 6.1 Workbench вновь представлен редактор IEC 61499. Другие доступные языки включают языки LD, FBD, ST, SFC и SAMA.Еще одной важной и доступной теперь функцией в этом последнем выпуске является контроль версий (Version Source Control), который обеспечивает средства для совместной работы нескольких пользователей над одними и теми же элементами (например, такими как устройство, ресурс, POU) посредством регистрации входа/выхода из системы. Это также дает возможность пользователям работать с несколькими версиями проекта, создавать резервные копии и восстанавливать целые проекты или отдельные элементы проекта и сравнивать файлы, выполненные в разных версиях.К другим новым возможностям ISaGRAF 6.1 относятся прерывание пользователя (User Interrupt), восстановление после отказа (Failover), дерево зависимостей (Dependency Tree), библиотека блоков, монитор блокировок переменных (Variable Lock Monitor) и статус контроллера (Controller Status).Поскольку разные типы приложений требуют разных типов прерываний (например, время, импульс, ввод/вывод...), реализация прерываний в ISaGRAF обеспечивается с помощью набора инструментальных средств (toolkit), который позволяет изготовителям оборудования (OEM-производителям) определить и отобразить свои прерывания в приложении ISaGRAF. Toolkit также включает в себя плагины для конфигурирования и программирования прерываний конечным пользователем.

Восстановление после отказа (Failover) - это режим работы, при котором функции системы управления принимает на себя вторичная система управления в том случае, когда главная система становится недоступной из-за отказа оборудования или при запланированном простое. Эта функция используется для того, чтобы сделать систему управления более отказоустойчивой. Функция восстановления после отказа в ISaGRAF 6.1 дает возможность пользователям модифицировать решения управления и менять условия, при которых контроллер получает или теряет управление.Плагин, реализующий дерево зависимостей (Dependency Tree), дает пользователям полный обзор всех связанных элементов в приложении, так что они могут видеть все зависимости переменных, а также восходящие и нисходящие зависимости для каждой переменной.Библиотека блоков - это усовершенствование пользовательского интерфейса, которое дает пользователям возможность перетаскивать (drag and drop ) любую функцию или функциональный блок в программу вместо осуществления выбора из селектора блоков. Функции и функциональные блоки являются контекстно-зависимыми от выбранного проекта, устройства или ресурса, они группируются по диапазону или категории, и пользователи могут также выполнять поиск названия блока.Монитор блокировок переменных (Variable Lock Monitor) выводит перечень всех блокированных переменных.Российский рынок облачных ИБ-сервисов только формируется 2.3 т

Функция статуса контроллера (Controller Status) обеспечивает пользователей основной информацией о контроллере, включая версию проекта, с которой они работают, а также время цикла и число блокированных переменных.Новая версия 5.3 C5 Firmware имеет несколько новых шаблонов, в том числе, шаблоны Microsoft Windows и Linux для новых функций пользовательского прерывания и восстановления после отказа. К числу других новых характеристик относятся приоритеты SFC для одновременного перехода в случае OR-ветвления.В ISaGRAF 6.1 по-прежнему входит бесплатная версия, состоящая из ISaGRAF Free Firmware, работающего на платформе XP Embedded, 32- и 64-битной версии Windows XP®, Windows Vista® & Windows 7®, и полностью функционирующая версия ISaGRAF 6.1 Workbench, с помощью которой разработчики могут создавать законченные приложения. ISaGRAF Free Firmware включает в себя драйверы Modbus TCP Client, а также Modbus TCP Server.

Режим резервирования и восстановления (Failover) в ISaGRAF 6.1

В ISaGRAF 6.1 реализована поддержка режима резервирования и восстановления после отказа (Failover). Восстановление после отказа – это режим работы, при котором функции системы управления принимает на себя вторичная система управления в том случае, когда главная система становится недоступной из-за отказа оборудования или при запланированном простое. Использование этой функции повышает отказоустойчивость системы управления. Функция восстановления после отказа в ISaGRAF 6.1 дает воз­можность пользователям модифицировать систему управления и менять условия, при которых контроллер получает или теряет управление. В режиме Failover среда ISaGRAF 6.1 реализует следующие ключевые возможности: безударный переход на резервную машину, работа с любым типом POU (SFC, FBD, LD, ST, 61499), автоматическая загрузка проекта (одновременно на первичную и вторичную станцию), ав­томатическое переключение из Workbench на нужную станцию в режиме отладки, автоматическое переклю­чение OPC-серверов. В данный момент не реализована поддержка хранимых (retain) переменных.

Рассмотрим реализацию режима Failover в ядре исполнительной системы ISaGRAF. После загрузки приложения на активный контроллер автоматически выполняется его передача на резервный контроллер. Оба контроллера начинают параллельно выполнять одно и то же приложение. Входные переменные пере­даются из основного контроллера в резервный контроллер перед каждым циклом выполнения. В конце каждого цикла выполняется проверка по вычисленной контрольной сумме, чтобы гарантировать це­лостность данных и результатов. В случае расхождения на резервный контроллер передается вся область данных активного (основного) контроллера. При сбое на активном контроллере резервный контроллер становится активным (основным) и начинает управлять процессом. Для связи между основным и резервным контролером по умолчанию используется сеть TCP/IP, но могут быть использованы и другие сети (последовательный канал, UDP, оптоволокно). Допускается настройка условия, при котором происходит смена основного контроллера. Конфигурирование Failover состоит из установки следующих параметров: IP-адрес, номер порта и значения тайм-аутов.

Результаты тестирования режима Failover компанией ISaGRAF Inc.

Условия тестирования: 85 тыс. переменных пользователя, 4 тыс. входных переменных, объем TIC-кода равен 247k, размер буферов связи 64k, основной контроллер работает под управлением ОС Windows 7, резервный под управлением VMware ОС Windows XP. Результаты тестирования: время цикла 1 мс с отключенным режимом Failover, время цикла 13 мс с включенным режимом Failover и полной синхронизацией данных (88102 байта в 2 фреймах), время цикла 6 мс с включенным режимом Failover и частичной синхронизацией данных (4127 байт в одном фрейме).

Результаты тестирования режима Failover на контроллерах LinPAC (ICP DAS) специалистами компании «ФИОРД»

Исходные данные:

  • 1. Контроллер LP-5131 (ICP DAS) – 1 шт.
  • 2. Контроллер LP-8441 (ICP DAS) – 1 шт.
  • 3. Исполнительная система ISaGRAF5++ ACE Target
  • 4. Среда разработки проектов ISaGRAF Workbench v. 6.1.

Для проверки опции резервирования в среде разработки приложений ISaGRAF Workbench v 6.1 был создан проект и программа, где переменная-счётчик на каждом цикле (200мс) инкрементируется, включен режим Failover и значения таймаутов выставлены по умолчанию.

Загрузка проекта осуществлялась на первичный контроллер (`Primary Device`), после чего встроенный механизм Failover передавал код проекта на вторичный контроллер (`Secondary Device`) автоматически. Каждый из контроллеров находился в одном из трех состояний: Running (активный), Standby (резервный), Error (ошибка). Но в каждый момент времени один и только один из них находился в состоянии Running (активный).

Моделирование ситуаций.

Ситуация 1.

Остановка вторичного контроллера, его статус меняется с Standby на Error. Перезапуск вторичного контроллера – его статус снова Standby. Вывод: При работающем первичном контроллере вторичный контроллер восстанавливает свой статус после перезагрузки.

Ситуация 2:

Остановка первичного контроллера: статус первичного контроллера Running меняется на Error; статус вторичного контроллера Standby меняется на Running. Перезапуск первичного контроллера приводит к тому, что статус первичного контроллера меняется с Error на Standby, первичный контроллер становится резервным. Вывод: После выхода из строя первичного контроллера вторичный контроллер становится активным контроллером. После восстановления или перезагрузки первичного контроллера, вторичный контроллер остается активным до момента его остановки или выхода из строя.

Ситуация 3:

Разрыв физической связи(Ethernet) между контроллерами без остановки контроллеров. Статус первичного контроллера из Running переходит в Error, статус вторичного контроллера переходит из Standby в Running.

После восстановления связи между контроллерами статус вторичного контроллера из Running переходит в Standby, а статус первичного контроллера из Error переходит в Running. Вывод: При обрыве связи активным становится вторичный контроллер, но после её восстановления первичный контроллер снова становится активным, а вторичный контроллер возвращается в режим резервного.

NB. На данный момент нельзя использовать в проекте одновременно прерывания и Failover.



ПРОЕКТЫ (2) ИНТЕГРАТОРЫ (2) СМ. ТАКЖЕ (5)


Подрядчики-лидеры по количеству проектов

За всю историю
2021 год
2022 год
2023 год
Текущий год

  Солар (ранее Ростелеком-Солар) (46)
  Финансовые Информационные Системы (ФИС, FIS, Финсофт) (15)
  Форсайт (11)
  Бипиум (Bpium) (10)
  Axiom JDK (БеллСофт) ранее Bellsoft (10)
  Другие (393)

  Солар (ранее Ростелеком-Солар) (8)
  Финансовые Информационные Системы (ФИС, FIS, Финсофт) (4)
  IFellow (АйФэлл) (2)
  ЛАНИТ - Би Пи Эм (Lanit BPM) (2)
  Консом групп, Konsom Group (КонсОМ СКС) (2)
  Другие (30)

  Солар (ранее Ростелеком-Солар) (10)
  Форсайт (3)
  Banks Soft Systems, BSS (Бэнкс Софт Системс, БСС) (3)
  Cloud.ru (Облачные технологии) ранее SberCloud (2)
  КРИТ (KRIT) (2)
  Другие (13)

  Солар (ранее Ростелеком-Солар) (6)
  Unlimited Production (Анлимитед Продакшен, eXpress) (4)
  МТС Exolve (Межрегиональный ТранзитТелеком, МТТ) (4)
  Robin (Робин) (3)
  Форсайт (3)
  Другие (23)

  Unlimited Production (Анлимитед Продакшен, eXpress) (4)
  Солар (ранее Ростелеком-Солар) (3)
  МТС Exolve (Межрегиональный ТранзитТелеком, МТТ) (2)
  InfoShell, ИнфоШелл (Инфотех Интегратор) (1)
  Naumen (Наумен консалтинг) (1)
  Другие (11)

Распределение вендоров по количеству проектов внедрений (систем, проектов) с учётом партнёров

За всю историю
2021 год
2022 год
2023 год
Текущий год

  Солар (ранее Ростелеком-Солар) (2, 48)
  Microsoft (41, 47)
  Oracle (49, 26)
  Hyperledger (Open Ledger Project) (1, 23)
  IBM (33, 18)
  Другие (602, 308)

  Солар (ранее Ростелеком-Солар) (1, 8)
  Финансовые Информационные Системы (ФИС, FIS, Финсофт) (1, 4)
  Microsoft (4, 3)
  Oracle (2, 3)
  SAP SE (2, 2)
  Другие (16, 19)

  Солар (ранее Ростелеком-Солар) (1, 11)
  Форсайт (1, 3)
  Banks Soft Systems, BSS (Бэнкс Софт Системс, БСС) (1, 3)
  Сбербанк (1, 2)
  Cloud.ru (Облачные технологии) ранее SberCloud (1, 2)
  Другие (9, 9)

  Солар (ранее Ростелеком-Солар) (1, 6)
  Unlimited Production (Анлимитед Продакшен, eXpress) (1, 6)
  МТС Exolve (Межрегиональный ТранзитТелеком, МТТ) (1, 4)
  Мобильные ТелеСистемы (МТС) (1, 4)
  Форсайт (1, 3)
  Другие (14, 24)

  Unlimited Production (Анлимитед Продакшен, eXpress) (1, 4)
  Мобильные ТелеСистемы (МТС) (2, 3)
  Солар (ранее Ростелеком-Солар) (1, 3)
  МТС Exolve (Межрегиональный ТранзитТелеком, МТТ) (1, 2)
  Оператор Газпром ИД (ГИД) (1, 1)
  Другие (14, 14)

Распределение систем по количеству проектов, не включая партнерские решения

За всю историю
2021 год
2022 год
2023 год
Текущий год

  Solar appScreener (ранее Solar inCode) - 48
  Hyperledger Fabric - 23
  Windows Azure - 20
  FIS Platform - 15
  EXpress Защищенный корпоративный мессенджер - 12
  Другие 328

  Solar appScreener (ранее Solar inCode) - 8
  FIS Platform - 4
  Java - 2
  Турбо X - 2
  Парадокс: MES Builder - 2
  Другие 22

  Solar appScreener (ранее Solar inCode) - 11
  Форсайт. Мобильная платформа (ранее HyperHive) - 3
  BSS Digital2Go - 3
  Cloud ML Space - 2
  Avaya Breeze (Avaya Engagement Development Platform) - 1
  Другие 8

  Solar appScreener (ранее Solar inCode) - 6
  EXpress Защищенный корпоративный мессенджер - 6
  МТС Exolve - 4
  Форсайт. Мобильная платформа (ранее HyperHive) - 3
  РЖД и Робин: Облачная фабрика программных роботов - 3
  Другие 14

  EXpress Защищенный корпоративный мессенджер - 4
  Solar appScreener (ранее Solar inCode) - 3
  МТС Exolve - 2
  Axiom JDK (ранее Liberica JDK до 2022) - 1
  Docker Платформа распределённых приложений - 1
  Другие 11