Универсальная SCADA-система "Блакарт" под управлением операционной системы QNX

Автор: Благодарный Иванович Благодарный

Журнал: Проблемы информатики @problem-info

Рубрика: Автоматизированные системы управления технологическими процессами

Статья в выпуске: 3 (4), 2009 года.

Бесплатный доступ

Описывается SCADA-система "Блакарт", являющаяся обобщением нескольких проектов автоматизирован- ных систем управления технологическими процессами, разработанных в Конструкторско-технологическом институте вычислительной техники СО РАН и реализованных на ряде предприятий добывающей промыш- ленности (угольные шахты), обрабатывающей промышленности (заводы по разделению изотопов урана) и транспортировки нефти (магистральные нефтепроводы). Показано, что SCADA-система как универсальный программно-методический инструмент позволяет создавать различные конкретные проекты АСУ ТП для автоматизации управления практически любыми технологическими процессами на произвольных технологических объектах в различных отраслях промыш- ленности включая и те, которые относятся к категории пожароопасных, взрывоопасных и экологически опасных производств.

Еще

Автоматизация в промышленности, управление технологическими процессами, графический интерфейс, операционная система qnx, надежность, реальное время, автоматизированные системы управления, программное обеспечение

Короткий адрес: https://sciup.org/14320324

IDR: 14320324

Текст научной статьи Универсальная SCADA-система "Блакарт" под управлением операционной системы QNX

Постановка проблемы. Автоматизация технологических процессов на производствах, которые относятся к опасным по тем или иным критериям, предъявляет высокие требования к надежности программного обеспечения SCADA-системы, поскольку любой программный сбой может стать причиной разрушения объекта автоматизации, гибели людей и масштабной экологической катастрофы.

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

Набор заданных сервисных функций каждой конкретной АСУ ТП в существенной степени зависит от вида автоматизируемых технологических процессов. Кроме того, необходимо предусмотреть возможность интеграции с АСУ-подсистемами, разработанными различными организациями-исполнителями. Поэтому требование открытости программного обеспечения SCADA-системы (доступности программного кода для внесения требуемых изменений) является вполне обоснованным. Открытость программного обеспечения SCADA-системы должна сочетаться с максимальной защищенностью от несанкционированного доступа в системы управления технологическими объектами и базы данных.

Требование универсальности SCADA-системы предполагает хорошую структурированность программного кода, что должно позволять при разработке конкретного проекта АСУ ТП вносить необходимые изменения в наборы логических объектов с их специфическими функциями обработки.

Таким образом, в общем случае программное обеспечение разрабатываемой SCADA-системы должно удовлетворять (помимо прочих общих свойств SCADA-систем) следующим дополнительным требованиям:

  • -    максимально возможная надежность;

  • -    работа в жестком реальном времени;

  • -    возможность автоматического управления технологическими процессами;

  • -    открытость программного обеспечения;

  • -    универсальность программного обеспечения.

Следует отметить, что практически все известные SCADA-системы работают под управлением операционных систем семейства Windows Microsoft (например, Genesis или Trace Mode и т. д.) и не обладают сформулированными выше дополнительными свойствами [1]. Это относится и к SCADA-системам, работающим под управлением других операционных систем, например Realflex под QNX. В связи с этим была поставлена задача разработки новой SCADA-системы, в которой должны быть реализованы указанные выше дополнительные требования.

Основные решения проекта SCADA-системы. Требования максимальной надежности программного обеспечения и его работы в масштабе жесткого реального времени резко ограничивают круг выбора возможных операционных систем (ОС), поскольку указанные выше требования относятся, прежде всего, к используемой ОС. Наиболее полно указанным требованиям удовлетворяет сетевая многозадачная операционная система реального времени QNX 4.25xx, достоинствами которой являются многозадачность, высокая скорость межзадачного переключения, защита программ друг от друга и др. Защита программ друг от друга полностью исключает блокировку одной задачей других задач или ОС, что в значительной степени обеспечивает живучесть АСУ ТП. В сочетании с развитым межзадачным интерфейсом и доступностью всех ресурсов ОС указанные достоинства позволили полностью исключить в разработанной SCADA-системе возможность возникновения логических конфликтов и тем самым обеспечить очень высокую надежность SCADA-системы. Указанные выше свойства ОС QNX 4.25xx позволили также минимизировать временные издержки на обработку поступающей информации. Время реакции SCADA-системы на любое одиночное событие не превышает 100 мс и является допустимым в рамках технических заданий на управление большинством технологических процессов. В ближайшее время также планируется переход на более современную шестую версию QNX.

Рассматриваемая в настоящей работе SCAD A-система является обобщением нескольких проектов АСУ ТП, разработанных в Конструкторско-технологическом институте вычислительной техники СО РАН [2, 3]. Указанная SCADA-система реализована как распределенная вычислительная сеть, одновременно являющаяся локальной вычислительной сетью (ЛВС) на основе сетевых протоколов ОС QNX 4.25, что обеспечивает быстрый и прозрачный обмен данными между различными узлами ЛВС. Локальные вычислительные сети АСУ ТП также называются технологическими сетями. Проблема удаленного доступа на различные узлы ЛВС решается автоматически, поскольку операционная система является сетевой, т. е. фактически объединяет ресурсы вычислительных машин различных узлов ЛВС. Взаимодействие между ЛВС и другими вычислительными сетями (например, административными сетями предприятий) производится только через дополнительные сетевые адаптеры с использованием стека протоколов TCP/IP. Таким образом, защита технологических сетей от несанкционированного доступа извне осуществляется физической развязкой различных сетей и контролем используемых сервисов стека протоколов TCP/IP.

По направлению передачи и обработки потоков информации о состоянии технологического оборудования программное обеспечение (ПО) SCADA-системы разделено на подсистему верхнего уровня и подсистему нижнего уровня. Поскольку ОС QNX 4.25 является сетевой, на каких узлах технологических сетей запущено ПО того или иного уровней, не имеет значения.

Подсистема нижнего уровня образована программами сопряжения с датчиками состояния и исполнительными реле управления технологическими объектами (драйверами). Сюда входят и драйверы интерфейса с АСУ-подсистемами других организаций-исполнителей, а также вспомогательные программы буферизации данных.

Подсистема верхнего уровня представляет собой программное обеспечение интерфейса оператора и базы данных. В совокупности это называется автоматизированным рабочим местом (АРМ) оператора. Количество подключаемых АРМ ограничено лишь максимально допустимым количеством узлов в технологической сети (обычно - 255), одновременно при этом достигается цель многократного резервирования как интерфейса оператора, так и баз данных. Необходимое для этого распараллеливание потоков данных осуществляют программы подсистемы нижнего уровня. Подсистема верхнего уровня может быть также организована по модели client - server. В этом случае в роли сервера выступает база данных (продублированная необходимое количество раз). Клиентские приложения АРМ оператора могут быть доступны и из других операционных систем, например из Windows NT/2000/XP, с помощью утилиты Phindows удаленного доступа.

Настройка программного обеспечения на конкретный состав и конфигурацию автоматизируемого технологического оборудования задается конфигурационными файлами, предназначенными обеспечить независимость ПО от состава технологического оборудования и применяемых технических средств. Кроме того, в конфигурационных файлах указываются способы и методы обработки полученных данных о состоянии технологических объектов и их отображения на экране монитора АРМ оператора.

Средой исполнения в ОС QNX 4.25 является графическая оболочка Photon 1.14.xx. В качестве среды разработки выбраны графический редактор Application Builder Photon 1.14.xx и компилятор фирмы Whatcom версии 10.6. Разработка программного обеспечения осуществлялась на языке программирования высокого уровня C/C++. Разработка или модификация проекта АСУ ТП на основе указанной SCADA-системы сводится к следующим основ ным операциям:

- составление некоторого набора конфигурационных файлов подсистемы верхнего уровня, которые задают конкретную конфигурацию технологического оборудования и определяют методы отображения данных о состоя нии технологического оборудования на экране монитора АРМ оператора;

Рис. 1. Структура программного обеспечения SCADA-системы: стрелки розового цвета - межзадачный обмен данными через кольцевые буферы в разделяемой (общей) оперативной памяти; стрелки серого цвета - сетевой межзадачный обмен данными; стрелки зеленого цвета -пути передачи сигналов управления технологическими объектами также через механизм сетевого межзадачного обмена (системный механизм SEND - RECEIVE)

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

Структура программного обеспечения SCADA-системы. Общая схема сетевой архитектуры технологической сети, а также схема взаимодействия основных программ с указанием направлений межзадачных потоков данных программного обеспечения SCADA-системы приведены на рис. 1.

Технологическая сеть SCADA-системы представлена некоторой совокупностью вычислительных машин под управлением OC QNX 4.25, объединенных в локальную вычислительную сеть на основе сетевого протокола Ethernet. АРМ оператора реализованы на персональных компьютерах (ПК), которые подразделяются на основной и резервные ПК. В случае если в проекте АСУ ТП функции автоматического управления технологическими процессами отсутствуют, то различий между основным и резервными ПК нет. В противном случае функции автоматического управления могут быть разрешены только для одного ПК, в данном случае для основного ПК. При необходимости переключение основного ПК на резервный ПК и обратно осуществляется оператором с разрешения системного администратора, причем это переключение производится динамически, т. е. без перезагрузки ПК АРМ оператора. Остальные вычислительные машины технологической сети представлены вычислительными контроллерами в промышленном и, возможно, взрывобезопасном исполнении. На этих контроллерах реализуется подсистема нижнего уровня. В технологической сети вычислительные контроллеры могут отсутствовать - в этом случае подсистема нижнего уровня разворачивается на ПК рабочих мест оператора.

Программное обеспечение подсистемы нижнего уровня представлено набором драйверов ввода (вывода) (на рис. 1 программы драйверов обозначены как "Драйвер"), которые отвечают за сопряжение с конкретными объектами технологического оборудования и некоторой совокупностью вспомогательных программ буферизации данных - "ОПД". Исходная информация об объектах технологического оборудования, необходимая для работы драйвера, записывается в конфигурационные файлы подсистемы нижнего уровня. В подсистеме нижнего уровня с помощью программ буферизации данных реализованы механизм предотвращения блокировки драйверов по операциям приема (передачи) данных и механизм распараллеливания потоков данных на все подключенные АРМ оператора. Задача "ППУ" принимает данные телеуправления объектами технологического оборудования от подсистемы верхнего уровня. В системах управления технологическими объектами различают импульсные и непрерывные сигналы управления. Драйверы работают только с непрерывными сигналами управления. Преобразование импульсных сигналов управления в непрерывные осуществляет вспомогательная задача "ПрУ" - преобразователь управления.

В состав программного обеспечения подсистемы верхнего уровня входят следующие основные задачи (см. рис. 1):

  • -    задача интерфейса оператора "ИФ";

  • -    задача управления базой данных "БД";

  • -    вспомогательные задачи "ПКД", "ОПС", "ППС" и "ОПУ";

  • -    задача "IP-сервер" обмена данными с АСУ, функционирующими в других ОС.

Задача интерфейса оператора "ИФ" - единственная задача подсистемы верхнего уровня, подлежащая модификации и настройке при разработке проекта АСУ ТП на основе данной SCADA-системы. Основными функциями задачи являются: отображение на экране монитора состояния объектов технологического оборудования с помощью выбранной системы графических знаков; удаленное управление объектами технологического оборудования через подачу команд управления оператором; автоматическое управление объектами технологического оборудования по заданным комбинациям сигналов состояния оборудования и в пределах только технологической сети; контроль входа (выхода) персонала в систему.

Система управления базой данных предоставляет необходимый спектр услуг, в том числе множественный доступ через структуру доступа в разделяемой памяти. Исходная информация для запуска и исполнения задачи "БД" находится в тех же конфигурационных файлах верхнего уровня. Списки и форматы различных сводок о состоянии объектов технологического оборудования определяются конфигурационными файлами сводок.

Задача "IP-сервер" работает в паре с задачей "IP-клиент", которая запускается в другой операционной среде Windows NT/2000/XP и предназначена для организации обмена данными с АСУ по технологии ОРС [4]. Обмен данными между задачами "IP-сервер" и "IP-клиент" осуществляется на основе транспортного протокола ТСР, список передаваемых данных задается соответствующим конфигурационным файлом. На рис. 1 задача "IP-сервер" указана только на основном ПК, однако указанная задача запускается и на резервных ПК, но активизируется только при переключении резервного ПК на основной ПК.

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

Рис. 2. Пример графического интерфейса оператора

тами и непосредственно локальной вычислительной сети. Указанная диагностика выводится на экраны мониторов всех АРМ оператора и записывается во все базы данных. Сетевая конфигурация технологической сети и распределение программного обеспечения SCADA-системы по узлам ЛВС задается конфигурационными файлами.

Общие замечания по разработке графического интерфейса оператора. Построение графического интерфейса оператора осуществляется с помощью системного построителя приложений (графического редактора) Application Builder Photon 1.14.xx. Графический интерфейс оператора представляет собой набор видеокадров, каждый из которых является мнемосхемой некоторой части технологического оборудования или всего технологического обо рудования (главный видеокадр). Главный видеокадр постоянно находится на экране монитора. Остальные видеокадры вызываются по мере необходимости. Кроме видеокадров существуют панели состояния и управления технологическим оборудованием, отличающиеся от видеокадров тем, что на них отображается состояние только одного технологического объекта и они вызываются на экран монитора в любом количестве и независимо друг от друга. Ограничений на общее количество видеокадров и распределение технологического оборудования по видеокадрам не существует, но главный видеокадр должен быть обязательно.

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

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

Заключение. В течение пяти последних лет на основе разработанной SCADA-системы [5, 6] создан ряд АСУ ТП горно-шахтных предприятий. Эти АСУ ТП охватывают управлением разнородные производственные процессы: надземное и подземное электроснабжение, контроль перемещений и поиск персонала в шахте, автома- тическое управление протяженными цепочками ленточных конвейеров, оборудование автоматического пожаротушения, водоотлив и т. д. Получены сертификат соответствия N РОСС RU.ME92.BO1656 и разрешение N РРС ОО-34924 на применение на предприятиях горнодобывающей промышленности. За указанный период значимого программного сбоя не зафиксировано ни на одном предприятии, что доказывает правильность выбора основных решений, положенных в основу SCADA-системы "Блакарт".

Список литературы Универсальная SCADA-система "Блакарт" под управлением операционной системы QNX

  • КУЦЕВИЧ И. В. SCADA-системы, или Mуки выбора. [Электрон. ресурс]. htpp://asutp.ru/.
  • БЛАГОДАРНЫЙ А. И., ЗЕНЗИН А. С., МИХАЛЬЦОВ Э. Г. И ДР. Программируемая информационно-управляющая система -инструмент создания АСУ ТП магистральных нефтепроводов//Нефть и капитал. 2002. № 6. Спец. прил. IT-решения в нефтегазовой отрасли. С. 51-57.
  • ЗОЛОТУХИН Е. П., МИХАЛЬЦОВ Э. Г., СТАРШИНОВ А. Ф. И ДР. Модернизация АСУ ТП магистральных нефтепроводов//Современные технологии автоматизации. 1997. № 4. С. 18-26.
  • КУЦЕВИЧ И. В., ГРИГОРЬЕВ А. Б. Стандарт ОРС путь к интеграции разнородных систем. [Электрон. ресурс]. htpp://asutp.ru/.
  • БЛАГОДАРНЫЙ А. И., ГУСЕВ О. З., ЖУРАВЛЕВ С. С. И ДР. Автоматизированная система контроля управления ленточными конвейерами на угольных шахтах//Горн. промышленность. 2008. № 6. С. 38-44.
  • БЛАГОДАРНЫЙ А. И., ГУСЕВ О. З., ЖУРАВЛЕВ С. С. И ДР. Система наблюдения и оповещения персонала шахты//Добывающая промышленность. 2008. № 4. С. 34-38.
Статья научная