Вячеслав Петухов, ООО «3В Сервис»
«Использование технологии SimInTech
для проектирования и создания АСУ ТП»
Проектирование
алгоритмов
Использование технологии SimInTech для проектирования и
создания АСУ ТП
Авторы: Тимофеев К.А., Козлов О.С., Петухов В.Н.
Назначение
Автоматизация проектирования АСУ ТП и программирования приборов под
управлением операционной системы QNX Лучше (качество кода) Быстрее (сокращение сроков) Дешевле (снижение стоимости) От идеи к результату в естественной среде:
технологическое проектирование алгоритмов управления; 20% верификация алгоритмов математическим моделированием;
создание программ на языке Си для приборов на базе ОС реального времени;
отладка программ управления в контроллерах под управлением QNX.
ОС реального времени QNX ОСРВ QNX разработана для создания критически важных систем управления техническими объектами QNX используется в таких критических областях как:
медицина;
центры чрезвычайных ситуаций;
системы управления воздушным движением.
ОСРВ QNX - лучшее решение для снижения стоимости встроенных приложений:
Настоящее реальное время - гарантированное время отклика, быстрая обработка прерываний и переключения контекста. 20% Микроядерная архитектура - функциональная и самовосстанавливающаяся система;
Адаптивное управление задачами - оптимальное использование процессора для максимальной производительности.
Преимущества ОСРВ QNX Текущая версия ОСРВ QNX Neutrino обеспечивает быструю и эффективную разработку систем управления на базе программируемых контроллеров Микроядерная архитектура обеспечивает безопасное и быстрое обновление компонентов системы.
Один набор бинарных файлов может быть использован как для однопроцессорных, так и для многопроцессорных решений.
QNX разработана по стандарту POSIX, поэтому Open-source коды для UNIX, Linux и других систем могут быть портированы простой перекомпиляцией.
Разработчики могут повторно использовать код и сократить затраты на верификацию за счет использования проверенных компонентов системы драйверов, приложений, настраиваемых служб.
Поставляемые решения поддерживают широкий диапазон сетевых протоколов, плат ввода-вывода, файловых систем, что снижает общие трудозатраты разработки АСУ ТП.
Зачем нужна среда SimInTech?
Среда SimInTech обеспечивает визуальное программирование - создание программ для ОСРВ QNX в виде блок-схем алгоритмов.
Проблема Информационный разрыв между технологами, проектирующими процессы технического объекта, и программистами, реализующими программы управления.
Решение.
SimInTech обеспечивает сквозное проектирование систем управления и автоматическую генерацию исходного кода на Си для QNX непосредственно из проекта алгоритмов АСУ ТП без участия программистов.
20% SimInTech - первая российская среда проектирования алгоритмов, сертифицированная для применения в системах, важных для ядерной безопасности.
Проблема программирования для АСУ ТП Создание АСУ ТП сложного объекта требует организации итерационного взаимодействия технолога, проектировщика и программиста АСУ ТП.
Традиционная разработка программ управления интерпретация программа Си техническое задание (текст, схемы, таблицы) тестирование АСУ ТП технолог программист устранение ошибок программиста Применение SimInTech расчетная проверка алгоритмов техническое задание Мировая практика создания надежных систем Современный тренд на мировом рынке использовать системы визуального программирования в критически важных системах.
SCADE (Safety Critical Application Development Environment) Разработка алгоритма управления в графической среде в виде проверяемой математической модели и генерация кода Си непосредственно из модели.
Среда визуального проектирования SimInTech - решение для замены традиционного «ручного» программирования контроллеров SimInTech обеспечивает следующие функции:
проверка алгоритмов управления путем моделирования, в том числе совместно с моделью объекта управления;
создание документации по проекту алгоритмов управления;
взаимодействие проектировщиков алгоритмов и исполнителей аппаратной части АСУ ТП;
автоматизация контроля внесения изменений в алгоритмы управления;
отображение работы алгоритма в приборе в режиме отладки; 20% систематизация данных по алгоритмам АСУ ТП на всем протяжении жизненного цикла объекта;
сохранение и повторное использование готовых проектных решений и разработок.
Процесс создания АСУ ТП SimInTech содержит все необходимые инструменты для полной автоматизации программирования и отладки контроллеров SimInTech обеспечивает создание полностью верифицированного и документированного проекта алгоритмов Особенности:
структура проекта в виде вложенных блоков;
листы алгоритмов в виде функциональных блок-схем;
структурированная база данных сигналов.
Объектно-ориентированная база данных сигналов для создания, хранения и использования сигналов. Обеспечивает категоризацию и структурирование Содержит:
Категории – именованные наборы сигналов, относящихся к какому-либо типу объектов проекта (насосы, задвижки, датчики, алгоритмы);
Группы сигналов – сигналы, относящиеся к конкретному объекту;
Сигналы – переменные проекта для использования в алгоритмах.
SimInTech обеспечивает создание проекта АСУ ТП в виде систематизированного набора схем алгоритмов Преимущества SimInTech:
Русскоязычный интерфейс;
Возможность произвольной настройки внешнего вида схемы алгоритмов;
Создание шаблонов для структурирования проекта алгоритмов (системы, группы, листы алгоритмов);
Оформление документации согласно ГОСТ и (или) стандартов предприятия:
Обозначение блоков на схеме;
Рамки, поясняющие надписи;
Наличие визуальных слоев для разных элементов схемы алгоритма;
Автоматизация заполнения полей документа служебной информацией.
Для реализации конкретных требований создаются индивидуальные блоки обеспечивающие «интеллектуальное» поведение в проекте алгоритмов Индивидуальные блоки проекта:
отвечают требованиям проекта;
формируют содержание проекта;
содержат шаблон алгоритма;
обеспечивают связь с базой сигналов.
Векторная обработка сигналов Большинство блоков в SimInTech являются векторными, что обеспечивает независимую обработку одной схемой множества однотипных алгоритмов Один типовой блок управления обрабатывает все задвижки в проекте Технологическая схема Список в базе данных сигналов Проект в SimInTech является готовой математической моделью для расчетной проверки работоспособности алгоритмов Возможности проверки:
Расчетная проверка путем задания входных воздействий и контроля реакции системы управления;
Динамический расчет с использованием виртуальных пультов управления;
Расчет в составе комплексной модели совместно с моделью объекта.
SimInTech обеспечивает проверку проекта алгоритмов путем динамического моделирования поведения объекта (комплексное моделирование) Способы создания модели объекта:
В виде структурной схемы SimInTech «вход – выход», для описания динамики процессов, дифференциальные уравнения которых могут быть представлены в форме Коши;
С использованием специализированных библиотек блоков в составе SimInTech;
Подключение сторонних динамических программ моделирования технических объектов через специальные блоки связи (OPC, 20% для совместного расчета в режиме обмена данными;
Интеграции со сторонними моделирующими программами, включая интеграцию с созданием общего интерфейса подготовки моделей в графической среде SimInTech.
Интегрированная модель объекта Архитектура базы SimInTech позволяет обеспечить подключение проекта и модели объекта аналогично реальной АСУ ТП для тестирования алгоритмов Такой подход позволяет проверить и отладить проект алгоритма в условиях, максимально приближенных к условиям реальной работы объекта.
Система отображения верхнего уровня SimInTech содержит все необходимые компоненты для создания полноценной SCADA системы верхнего уровня Графическая система SimInTech обеспечивает создания видеокадров, мнемосхем для отображения технологического процесса, а также виртуальных панелей управления.
Возможности:
Разработка проекта в Windows;
Использование графики в Windows и Linux.
Встроенный редактор векторной графики – создание 2D изображений произвольной сложности, масштабирование, использование визуальных слоев и т.п.;
Язык программирования высокого уровня – обеспечивает создание анимации высокой степени сложности;
База сигналов - связь анимации с параметрами процесса.
Отображение и управление процессами Графическая среда SimInTech обеспечивает создание всех необходимых составных частей SCADA системы верхнего уровня Мнемосхемы\технологические диаграммы Контекстные окна управления Тестирование эргономики видеокадров Проверка эргономики видеокадров возможна уже на стадии проектирования путем имитации работы оператора и моделирования процессов Создание видеокадров на ранней стадии проектирования позволяет:
выявить и исключить ошибки эргономики человеко-машинного интерфейса;
сократить срок разработки системы отображения верхнего уровня.
Автоматизация обработки сигналов База данных сигналов SimInTech обеспечивает автоматическую привязку сигналов к элементам графического отображения и управления Анализ расчетной схемы алгоритмов SimInTech содержит в себе расчетное ядро, обеспечивающее математический анализ схемы алгоритмов для генерации кода Расчетное ядро, созданное для моделирования динамических процессов, содержит в себе математические методы анализа схемы для подготовки процесса генерации кода на языке Си.
Основные задачи подготовки генерации кода:
Анализ топологи схемы алгоритма. Определение зависимостей, связи между расчетными блоками схемы, корректность математических операции, подготовка глобального списка переменных и функций.
Развязка алгебраических петель. В случае обнаружения замыкания линий связи в алгоритмах, необходимо обеспечить корректное задание начальных значений.
Сортировка блоков по порядку расчета.
Генерация исходного кода по схеме Генерация кода в SimInTech осуществляется на основе шаблонов, что обеспечивает создание кода, совместимого с различными компиляторами
GCC QNX
Среда SimInTech создает код стандарта ANSI С.Для разных целевых платформ могут использоваться разные комментарии, названия файлов, вспомогательные файлы описания, создаваемые по специальным настраиваемым шаблонам.
Требования к исходному коду программы Автоматическое создание исходного кода программы позволяет избежать ошибок ввода данных и значительно ускорить процесс создания программ При этом выполняются следующие требования к исходному коду программы:
соответствует схеме алгоритма по выполняемым математическим операциям;
удовлетворяет требованиям к синтаксису языка программирования Си со стороны компилятора, осуществляющего формирование программ для контроллера;
содержит в себе идентификаторы, которые при необходимости позволяют осуществлять отладку программы с использованием ПО SimInTech;
позволяет осуществлять компиляцию в исполняемую программу для прибора с использованием сертифицированного компилятора;
компиляция не требует применения ПО SimInTech.
Результат работы SimInTech – код, который содержит описание на языке СИ математических блоков, оформленное согласно требованиям компилятора Компиляция исходного кода программы Автоматически сгенерированный из SimInTech код компилируется с использованием штатных средств целевой платформы Для компиляции программы используется штатная среда программирования QNX Momentics IDE, QNX Software Systems Ltd.
Файлы, подготовленные SimInTech Сквозное проектирование АСУ ТП Среда SimInTech поддерживает сквозное проектирование для создания АСУ ТП от стадии концептуального проекта до пуска Абстрактный уровень требования Детальный уровень Рекомендации международных стандартов SimInTech обеспечивает процесс создания ПО АСУ ТП, важных для безопасности АЭС согласно рекомендациям МЭК
ТП АСУ ТП
Diagram Инструментальное ПО технолога Жизненный цикл создания управляющих программ АСУ ТП в среде SimInTech, соответствует рекомендациям МЭК 60880 (Life cycle for Application Oriented Software Engineering) Уровни проектирования АСУ ТП Существуют различные виды абстрактных представлений проекта на разных стадиях жизненного цикла проектирования и создания АСУ ТП 1. Технологический алгоритм – описание работы системы автоматики без привязки к аппаратуре управления (требования, регламент работы);2. Алгоритмы обработки сигналов и управлением аппаратурой АСУ ТП;
3. Связь переменных параметров с платами ввода с датчиков и платы вывода команд на исполнительные механизм. Платы вводавывода Технологический Технологическая часть проекта АСУ ТП Среда SimInTech обеспечивает технологу все необходимые инструменты для создания технологического проекта алгоритма управления Система кодирования переменных (сигналов) принятая в проекте;
Значения параметров в принятых в проекте физических единицах измерения;
Получение значений параметров из динамической модели объекта.
Обработка аппаратных сигналов АСУ ТП Для преобразования сигналов с плат ввода–вывода из токовых параметров в технологические возможно создание специальных блоков обработки Обработка сигналов включает в себя:
Пересчет в физические единицы измерения, с заданными коэффициентами;
Фильтрацию, сглаживание сигнала;
Обработку аппаратных ошибок, проверку достоверности.
Интерфейс к платами ввода-вывода Для организации связи между аппаратурой измерения и управления агрегатами используются специальные интерфейсные блоки Каждый интерфейсный блок обеспечивает:
Графическое представление физических контактов платы ввода–вывода;
Связь между контактами и переменными в базе данных сигналов;
Создание аппаратно-специфического кода обработки сигналов с платы.
Исполнительная среда Nord Wind для QNX Корректную работу алгоритмов управления в ОСРВ QNX обеспечивает исполнительная среда Nord Wind, работающая на контроллере Исполнительная среда Nord Wind имеет модульную архитектуру, использует механизм динамически загружаемых библиотек и соответствует рекомендациям МЭК 60880.
Состав и функционально назначение:
NordWind – основной модуль диспетчера программ-алгоритмов;
GbdServer – модуль отладки алгоритмов в приборе;
Libio – библиотека обмена с платами ввода-вывода;
Libnet – библиотека настройки и реализации обмена между контроллерами;
под управлением QNX в сети Ethernet АСУ TП;
Libtrend – библиотека архивирования данных;
Libsdk – комплект разработчика.
Архитектура распределенной АСУ ТП SimInTech обеспечивает создание распределенных систем управления на нескольких контроллерах QNX, объединенных в сеть Контроллер обмен Libio карты Схема работы исполнения алгоритма Диспетчер Nord Wind DispExemod обеспечивает выполнение алгоритма с учетом конфигурации, заданной разработчиком Отладка алгоритма в контроллере В режиме удалённой отладки можно подключиться к контроллеру и получить отображение работы алгоритма на схеме SimInTech Для отладки исполняемых программ в среде QNX используется программный модуль Nord Wind GbdServer. Данный модуль обеспечивает:
доступ к исполняемым программам с клиентской рабочей станции из среды SimInTech по сети Ethernet;
доступ к переменным программы (алгоритма) во время работы, в том числе возможность изменения значения переменных, констант, коэффициентов без перекомпиляции программы;
управление выполнением программы, в том числе:
Загрузка состояния прибора;
Запуск программы на выполнение;
Пауза (продолжение) выполнения;
Остановка выполнения программы.
Схема отладки алгоритма в контроллере GbdServer обеспечивает доступ к области памяти контроллера с переменными программы (алгоритма) для графической среды SimInTech Файл конфигурации Процесс-диспетчер Программа (алгоритм) при работе Общая область памяти внутренних переменных Модуль сетевого обмена Libnеt Настройка обмена данными по сети, для распределенной АСУ ТП, происходит автоматически с помощью модуля Libnet Единая база данных сигналов в проекте SimInTech обеспечивает процесс автоматизации настройки сетевого обмена. Каждый контроллер в сети является одновременно источником и приемником сигналов.
Функции модуля Libnet:
при включении системы:
отправить запрос входных сигналов алгоритма контроллера;
обработать входящие запросы;
сформировать список выходных сигналов для отправки на контроллер приемник.
в процессе работы:
получить входные сигналы и записать в переменные (асинхронно);
отправить выходные сигналы по сети всем получателям.
Исполнение программы в контроллере Исполнительная среда Nord Wind обеспечивает работу в реальном режиме времени с учетом настройки по квантам времени старт кванта времени асинхронный процесс Исполнительная среда Nord Wind обеспечивает полную реализацию возможностей SimInTech на уровне исполнения в контроллере Использование исполнительной среды Nord Wind для создания АСУ ТП на основе ОСРВ QNX обеспечивает создание надежного решения для самых сложных и ответственных систем управления. Набор модулей Nord Wind обеспечивает на уровне контроллера работу систем управления, спроектированных в среде SimInTech. Используя Nord Wind пользователи получают:
проверенное и отлаженное ПО нижнего уровня;
полное использование всех особенностей и преимуществ QNX;
работу с графическим интерфейсом при отладке алгоритмов в контроллере;
сокращение сроков разработки;
повышение качества прикладного программного обеспечения.
ООО «ЗВ Сервис» выполнило несколько значимых проектов по автоматизации создания систем управления в разных отраслях Система проектирования и отображения для тренажеров АЭС Заказчик – Концерн «Росатом»;
Изготовитель – ОАО «ДЖЕТ», ОАО «ВНИИАЭС».
Моделирование АСУ ТП и нефтепроводоов Заказчик - ОАО «ТРАНСНЕФТЬ»;
Проектировщик - ОАО «Гипротрубопровод".
Применение SimInTech для QNX в Росси ОС реального времени QNX применяется в системах управления атомными подводными лодками, а так же для управления ядерными реакторами Системы управления атомными подводными лодками Заказчик - Министерство обороны РФ;
Проектировщик - СПМБМ "Малахит";
Изготовитель АСУ ТП – Концерн “НПО "Аврора".
Управляющая система безопасности реактора РБМК Проектировщик - ОАО "НИКИЭТ";
Изготовитель АСУ ТП - "ОКСАТ".
Виртуальный энергоблок СПбАЭП ООО «ЗВ Сервис» в 2012 году приняло участие в создании виртуального энергоблока АЭС для ОАО «Санкт-Петербургский Атомэнергопроект»
ПО SimInTech используется для создания:
Видео-стены отображения информации модели;
Графической система создания тепло-гидравлических моделей;
Системы моделирования АСУ ТП.
Выгоды применения SimInTech SimInTech в процессе проектирования алгоритмов обеспечивает расчетную проверку и исключает человеческий фактор при программировании АСУ ТП Сокращение общих сроков разработки АСУ ТП за счет ускорения программирования контроллеров;
Сокращение сроков пуско-наладочных работ за счет тестирования АСУ ТП с использованием математических моделей объекта;
Сокращение количества ошибок в АСУ ТП за счет исключения человеческого фактора интерпретации технического задания между технологами и программистами.
Упрощение сопровождения и модернизации АСУ ТП за счет наличия документированной проектной информации в виде функционально-блочных схеме алгоритмов.
Общее повышение качества АСУ ТП при снижении стоимости и уменьшении времени разработки.
Окупаемость инвестиций в SimInTech SimInTech разработан с учетом требований проектировщиков и изготовителей АСУ ТП и обеспечивает комплексное снижение затрат проекта Суммарная экономия при применении SimInTech – 48% ООО «ЗВ Сервис»
+7 (495) 221 [email protected]