Применение коммерческой SCADA и ОСРВ QNX в

реклама
Применение коммерческой SCADA и ОСРВ QNX в
Автоматизированной системе управления физической
установкой для ускорения пучка заряженных частиц.
Введение ........................................................................................................................................ 1
1. Описание технологического процесса физического эксперимента на ускорительном
комплексе DRIBs........................................................................................................................... 1
2. Выбор операционной системы и инструментов разработки ПО...................................... 3
3. Функциональная схема взаимодействия модулей программного обеспечения ............. 5
Введение
В Лаборатории ядерных реакций им. Флерова Г.Н. Объединенного института
ядерных исследований, г. Дубна Московской области,
в рамках физической
исследовательской программы, была разработана и создана физическая установка для
ускорения пучков заряженных частиц (DRIBs – Dubna Radioactive Ion Beams). В данной
статье изложено краткое описание принципов выбора базового программного
обеспечения и функциональная структура прикладной программы и драйверов
аппаратного обеспечения АСУ DRIBs.
1.
Описание технологического процесса физического эксперимента на
ускорительном комплексе DRIBs.
Рис. 1. Общий вид и первая секция линии транспортировки пучка.
Назначение технологического процесса – проведение экспериментов с пучками
радиоактивных частиц, целью которых является получение новой информации по трем
основным направлениям ядерной физики:
 исследования свойств атомного ядра за пределами стабильности
 изучение особенностей динамики ядерных реакций
 синтез и изучение свойств новых химических элементов и изотопов
Если не вдаваться в подробности, то можно сказать, что физическая установка
состоит из ускорителя частиц низкой энергии, транспортировочной трассы, по которой
пучок заряженных частиц попадает в циклотрон (рис.2). В циклотроне частицы получают
дополнительную энергию, выводятся по физическим каналам и попадают на мишень.
Рис.2 Схема транспортировки пучка низкой энергии комплекса DRIBs.
Основное назначение АСУ – обеспечить надежное функционирование объекта
управления в штатных и нештатных ситуациях. Технологический процесс физического
эксперимента на ускорительной установке состоит из пяти основных процессов (рис.3).
Âêëþ ÷åí èå
î áî ðóäî âàí èÿ.
Çàãðóçêà Ï Î



Ï î ëó÷åí èå í åî áõî äèì û õ ï àðàì åòðî â
-âàêóóì à
-ÝÖÐ èñòî ÷í èêà (ï î ëó÷åí èå òî êà)
-òðàññèðî âêà ï ó÷êà ê ì èø åí è
Ï ðî öåññ
î áëó÷åí èÿ
Рис. 3. Обобщенная схема технологического процесса
2
Ï î äãî òî âêà ê
âû êëþ ÷åí èþ
î áî ðóäî âàí èÿ,
âû êëþ ÷åí èå
Ethernet
QNX4
or
WIN 98/NT
QNX 4
FlexControl
Ethernet
Ethernet
RS-485
Operator/Supervisor Node
Plant floor PC
Remote Node
Desktop PC
ADAM
ADAM
Chiller
PROFIBUS
Power Supplies System
Diagnostic System
CHILLER
SMARTBOX-3
Power Supplies System
Vacuum System
Cooling System
IN
OUT
IN
OUT
IN
OUT
IN
OUT
SMARTBOX-3
SMARTBOX-3
RF System
IN
OUT
IN
OUT
IN
OUT
IN
OUT
IN
OUT
IN
OUT
IN
OUT
IN
OUT
SMARTBOX-3
Fiber Optic
High Voltage
Platform
Heating
Cooling
System
Рис. 4. Структурная схема АСУ DRIBs
2.
Выбор операционной системы и инструментов разработки ПО
Ранее в ЛЯР использовалась самостоятельно созданная SCADA (Supervisory Control
And Data Acquisition – система оперативного диспетчерского управления и сбора данных),
написанная на Turbo Pascal и работающая под MS DOS. В 1999 году назрела
необходимость перейти на более высокий уровень технологий в области программного
обеспечения для систем управления установками Лаборатории. Первым вопросом на пути
модернизации стал выбор операционной системы, удовлетворяющей особым
требованиям, связанным со спецификой объекта управления.
Опыт разработки и эксплуатации программного обеспечения, ранее созданных АСУ
ускорителей заряженных частиц помог сформулировать следующие основные требования
к операционной системе:

удовлетворение требованиям «жесткого» реального времени (для обеспечения
безопасной работы ядерного объекта необходим максимально быстрый сбор и
обработка данных, прогнозируемость отклика системы на аварийные ситуации)
 многозадачность (требуется одновременная работа нескольких драйверов
аппаратуры сбора данных, сервера печати, визуализация и работа сервера базы
данных (RTDB server))
 развитый графический интерфейс
 сетевая поддержка (возможность контроля и/или управления из нескольких
помещений, например, двух пультов управления ускорителем)
 развитые средства разработки драйверов для уникального оборудования
 открытость для разработчика
 наличие коммерческих систем SCADA
 поддержка х86 процессоров (мы имеем успешный опыт использования в
автоматизации ПК на базе таких процессоров, кроме того парк ЭВМ
Лаборатории состоит на 100% из таких ПК, поэтому внедрение новой ОС не
потребует дополнительных затрат на приобретение нового вычислительного
оборудования)
В результате исследований рынка операционных систем реального времени (ОСРВ)
и анализа опыта использования различных ОС в аналогичных системах, мы остановились
перед выбором между Windows NT и QNX. Было отдано предпочтение QNX, т.к. QNX
наиболее
полно
удовлетворяла
вышеперечисленным
требованиям,
являлась
3
действительно ОСРВ, опережала по продажам ближайших конкурентов на рынке ОС
реального времени. Мы отказались от Windows NT с расширением для работы в реальном
времени, так как системы, разработанные для обеспечения РВ (QNX) не то же самое, что
системы, адаптированные для РВ. Разработка крупных проектов под NT, особенно
написание драйверов на низком уровне, требует одаренных, талантливых индивидуалов
(стоящих по-настоящему больших денег), которые могут работать с хитросплетениями
программного текста. После изучения QNX в течение 2 месяцев наши специалисты
смогли написать драйвер устройства, взаимодействующий со SCADA системой.
Опыт разработки SCADA систем в ЛЯР доказал необходимость использования
коммерческого программного обеспечения по следующим причинам:

сокращение времени на разработку типичных для сбора данных, управления,
автоматизации сервисов (ведение базы данных сигналов и объектов
визуализации, протоколирование, тренды, тревоги, алгоритмы автоматики,
графическая визуализация, отчеты и т.п.)
 возможность сконцентрироваться на управляющих алгоритмах и визуализации
 повышение надежности ПО за счет минимизации уникального программного
кода для данного проекта (коммерческое (фирменное), тиражируемое ПО
тщательно оттестировано большим количеством программистов перед выходом
в продажу, а также самими пользователями)
 унификация обрабатываемых данных
 выполнение требований надежности, предъявляемых для сертификации к ПО,
выполняющему специализированные задачи управления ядерными объектами и
работающему в масштабе жесткого реального времени
 возможность за минимальное время обучить специалистов, способных создавать
крупные проекты автоматизации физических процессов
В то время на рынке SCADA систем для QNX не наблюдалось большого
разнообразия. Нами было рассмотрено пять возможных вариантов: RealFlex, Sitex,
PCPVirgo, RTWin, FlexControl. Выбор осуществлялся по нескольким критериям:






работа под QNX 4
хорошая поддержка пользователей
соответствие требованиям работы системы РВ
возможность обрабатывать большое количество данных (до 10 000 параметров)
модульная структура, возможность распределенной работы по сети
открытость для подключения нестандартных интерфейсов, протоколов,
библиотек и инструментов
 поддержка стандартного языка программирования для реализации алгоритмов
автоматизации
 использование Photon microGUI для разработки и визуализации
 многоязыковая поддержка
 приемлемая цена
В результате решили, что наибольшему количеству требований удовлетворяет
FlexControl компании BitCtrl Systems GmbH.
Процесс освоения QNX 4.25 и FlexControl не вызвал больших затруднений –
наличие специализированных кратковременных обучающих курсов позволило нам
быстро и всесторонне ознакомиться с новым ПО. Для более детального самостоятельного
изучения возможностей доступно достаточное количество обучающей литературы,
описаний и статей, специализированных серверов в Интернете.
К сожалению, мы обнаружили, что имеющаяся в FlexControl версия визуализации не
сможет удовлетворить нашим потребностям – довольно скудный выбор объектов и их
4
свойств не соответствует современным требованиям разработки графического
интерфейса. Также визуализация FC не дает возможности работать с объектами и их
свойствами в процессе исполнения программы, нельзя использовать объекты как
генераторы событий, которые можно обрабатывать в программе. В результате был создан
и протестирован собственный сервер визуализации (HMI), работающий под ОС QNX 4.25,
для чего мы использовали PhAB (Photon Application Builder).
3.
Функциональная схема взаимодействия модулей программного
обеспечения
Программное обеспечение системы автоматизации создано на языке ‘С’ с помощью
Application builder и языке структурированного текста structured text (ST) (стандарт IEC
1331-3) для FlexControl SCADA. Photon Application builder использовался для разработки
визуализации в системе автоматизации управления ускорительным комплексом. На языке
‘C’ разработаны программы, работающие в системе как драйверы внешних устройств и
как драйверы FlexControl. Язык структурированного текста ST используется для
реализации алгоритмов автоматического управления подсистемами установки, а также
для перевода кодов АЦП во входные физические величины и обратно, выходные
величины в коды ЦАП.
На рис. 5 изображены программные модули и их функциональные связи между
собой.
FlexControl
RTDB
Historical DB Long term DB
SMART
FXRUN
HARDWARE PVs
(SMARTBOX-3)
Error messages,
Log messages,
Trends,
etc.
HARDWARE PVs
(SMARTBOX-3)
Algorythms,
Automatic control
Sequence
Control
with
IEC 1131-3
VISUALIZATION
PVs
VISUALIZATION
PVs
DEV.ser32
Hardware/
Protocol
Driver
RS-485
Hardware
Driver
PHVIS
MQUEUE
Visualization
Server
Message
Queue
Driver
VISUALIZE
HISTORY
HMI
Process
Monitoring
and Control
Saving selected
PVs to
historical DB
- Process Variables (PV) Area
Message
Queue
- Data Flow
Рис. 5. Направление потоков данных между модулями ПО
Одна часть внешнего оборудования подключена к двум интерфейсам
RS-485 периферийной карты МОХА. Это усилитель мощности и источники питания
фирмы DanFysik. Интерфейс RS-422 карты MOXA используется для связи через ADC,
DAC, I/O REGISTERS модулей SmartBox с другой частью внешнего оборудования –
клапаны, магниты, насосы и т.д. Карта MOXA установлена в слот ISA и со стороны
операционной системы QNX она доступна через стандартные коммуникационные порты –
COM1, COM2, COM3, COM4.
5
Три программных модуля SMART, Amplifier, DanFysik написанные на языке ‘С’
непрерывно периодически сканируют состояние всех внешних устройств. Если есть
изменения во входных данных, то они сразу записываются в базу данных FlexControl
RTDB.
Новые данные в RTDB распаковываются, нормализуются, обрабатываются
созданным программным обеспечением ST software работающим под управлением
FlexControl. Результаты обработки данных программы ST software записываются в набор
входных переменных FlexControl RTDB. При занесении новых данных в этот набор
FlexControl генерирует сообщение программному модулю Phvis. Он написан на языке ‘C’
как драйвер FlexControl. Phvis, получив очередное сообщение от FlexControl, считывает
обновленные входные данные из RTDB и помещает их в системные очереди для
визуализаций.
Каждый модуль визуализации имеет свою очередь, которую периодически
проверяет и считывает новые входные данные по мере их поступления. Эти данные
используются для отображения на экране текущего состояния внешних устройств. В
системе управления ускорительным комплексом может одновременно работать несколько
модулей визуализации. Модуль визуализации реализует:
 многооконный графический интерфейс с пользователем
 отображение входной информации в графическом и текстовом виде
 прием управляющих команд от пользователя
Модуль визуализации принимает команды управления от пользователя и записывает
их в выходные переменные FlexControl RTDB.
Новые выходные данные в RTDB распаковываются, калибруются, обрабатываются
программным обеспечением FX software работающим под управлением FlexControl.
Результаты обработки данных программы FX software записываются в набор выходных
переменных FlexControl RTDB. При занесении новых данных в этот набор FlexControl
генерирует сообщение соответствующим программным модулям SMART, Amplifier или
DanFisik.
6
Power amplifier
Smart boxes:
ADC, DAC, I/O REGISTERS
DanFysik powers
MOXA board
RS-422
RS-485
External
hardware
Computer com ports
Hardware drivers &
FlexControl drivers
FlexControl
driver
Phvis
Amplifier
DanFysik
Input PV
Out. PV
FlexControl: RTDB, FXsoft, History
Queue
Queue
Out. PV
Out. PV
ST software
Input PV
Queue
Smart
Output PV
Visualization 1
Visualization 2
Visualization i
Рис. 5. Модульная структура программного обеспечения системы управления
ускорителем.
Эти модули работают одновременно как драйверы FlexControl и как драйверы
внешних устройств. Модули SMART, Amplifier, DanFisik получив очередное сообщение
от FlexControl, считывают обновленные выходные данные из FlexControl RTDB. Далее
эти данные интерпретируются программным модулем для подачи соответствующей
управляющей команды на внешнее устройство через периферийную карту MOXA.
7
В основу реализации графического интерфейса положена мнемосхема установки
DRIBs (рис.6), разделенная на секции в соответствии с реальным делением (Section
0..Section 4). Визуализация обеспечивает функции управления оборудованием, индикацию
параметров и статусов, сигнализации нарушений нормального режима работы.
Системные
сообщения
выдаются
в
окно
“System”,
“Trend”……………………………………………………………………………………………
……………………………………………………………………………………………………
…………………..
Пользователю предоставлена возможность конфигурации работы программы,
создания отчетов, перезагрузки программы с сохранением управляющих параметров.
Опыт разработки АСУ DRIBs и ее модули успешно используются и в других
проектах,
разрабатываемых
в
ЛЯР
им.
Флерова.
……………………………………………………………………………………………………
……………………………………………………………………………………………………
……………………………………………………………………………………………
8
Скачать