Моделирование управляющих программ для астрономических ПЗС-систем на основе автоматного подхода

МОДЕЛИРОВАНИЕ УПРАВЛЯЮЩИХ ПРОГРАММ ДЛЯ АСТРОНОМИЧЕСКИХ ПЗС-СИСТЕМ НА ОСНОВЕ АВТОМАТНОГО ПОДХОДА

© Афанасьева И.В.*

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

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

Ключевые слова ПЗС-система, моделирование, UML, автоматное программирование.

Введение

Программы сбора и управления [1] для ПЗС-систем [2] относятся к классу реактивных систем (систем управления, реагирующих на внешние события), эффективное моделирование которых достигается с помощью автоматного программирования [3]. В рамках автоматного подхода сложное поведение таких программ описывается с помощью конечных детерминированных автоматов. Целью работы является разработка универсальной UML-модели управляющего комплекса программ для широкого спектра систем цифровой регистрации на основе приборов с зарядовой связью (ПЗС).

Постановка задачи

Астрономические ПЗС-системы, разрабатываемые и изготовляемые в САО РАН для оптических телескопов, состоят из криостатируемой камеры со встроенным ПЗС-детектором, контроллера и интерфейсной платы ввода-вывода данных. Основная задача, которую должно выполнять программное обеспечение - проведение астрономических наблюдений, что включает в себя загрузку задающих параметров (initialization), накопление (exposure), считывание (readout) и архивирование (writting) данных (изображений). Помимо этого, комплекс программ должен обеспечивать управление всеми параметрами системы регистрации, настройку (adjustment) и тестирование (testing) оборудования, задание и телеметрический контроль температуры приемника изображения и уровней управляющих сигналов, визуализацию и анализ данных.

* Ведущий инженер Специальной астрофизической обсерватории РАН (САО РАН), аспирант кафедры «Инфокоммуникационные технологии в астрофизике и астроприборостроении» Университета ИТМО.

Технические науки

75

Изображение представляет собой двумерный массив [1 ... n, 1 ... m] беззнаковых 16-битных чисел, размерность и скорость потока данных зависят от типа ПЗС-матрицы и режима считывания. ПЗС-система обеспечивает работу монолитных матриц, мозаичных детекторов и ПЗС-детекторов прикладного назначения (в датчиках волнового фронта и системах гидирова-ния). Ввод данных в управляющий компьютер производится посредством интерфейсной платы, в качестве которой может выступать адаптер Ethernet, фрейм-граббер или PCI-адаптер, с пропускной способностью до 1 Гб / с.

Моделирование

В настоящее время унифицированный язык моделирования UML [4, 5] является основным языком визуального программирования [6]. Три принципиальных аспекта моделирования - использование, структура, поведение -в случае реактивных систем [7] можно представить тремя типами диаграмм: вариантов использования (отвечает на вопрос, что делает система полезного?), классов (из чего состоит система?) и автомата (как работает система?).

На рис. 1 приведена диаграмма использования, построенная для рассматриваемой программы, исходя из постановки задачи. Эта диаграмма становится основополагающей для остального процесса проектирования.

Рис. 1. Диаграмма использования программы управления ПСЗ-системой

76

ФУНДАМЕНТАЛЬНЫЕ И ПРИКЛАДНЫЕ ИССЛЕДОВАНИЯ

Центральное место при моделировании программ занимает диаграмма классов, представляющая необходимые структуры и отношения и являющаяся основой для автоматической генерации программного кода в средах разработчика, реализующих CASE-концепцию [8].

В программировании с явным выделением управляющих состояний для описания структуры небольшой системы используется схема связей автоматов [9]. Для систем со сложными взаимосвязями удобнее построить диаграмму взаимодействия автоматов [10], для этого выделим основные объекты, подлежащие управлению: ПСЗ-камера, интерфейсная плата ввода-вывода (адаптер Ethernet, фрейм-граббер, PCI-адаптер), источник команд управления (клиент - графический или символьный интерфейс наблюдателя). Каждому объекту ставится в соответствие управляющий автомат (или система автоматов) с алгоритмом работы, набором состояний, входных событий, сторожевых условий и выходных воздействий. Объектами управления также являются потоки команд и данных. Диаграмма взаимодействия автоматов представлена на рис. 2.

Рис. 2. Диаграмма взаимодействующих автоматов

Диаграмма автомата описывает поведение или функционирование объектов системы, включая их методы, взаимодействие и сотрудничество между ними, а также процесс изменения состояний отдельных компонентов и системы в целом. Автомат управления приложением (A1) обеспечивает взаимодействие и синхронизацию параллельно работающих автоматов (A2-A5). Автомат, отвечающий за управление наблюдениями, имеет 6 состояний: Standby, Idle, Initialize, Exposure, Readout, VideoMode, его устройство представлено на рис. 3. Поскольку система работает постоянно, в автомате нет состояния, означающего конец работы. Данный автомат тесно взаимодействует с автоматом управления интерфейсной платой. Автомат управления потоком изображений обеспечивает визуализацию и запись данных.

Технические науки

77

Рис. 3. Автомат, реализующий проведение наблюдений

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

Заключение

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

Список литературы:

1. Afanasieva I. V. Data acquisition and control system for high-performance large-area CCD systems // Astrophysical Bulletin, IET. - 2015. - Vol. 70. - № 2. -P. 232-237.

2. Markelov S.V, Murzin VA., Borisenko A.N., Ivaschenko N.G, Afanasieva I.V, Ardilanov VI. A high-sensitivity CCD camera system for observations of early universe objects // Astronomical and Astrophysical Transactions. - 2000. -Vol. 19. - P. 579-583.

3. Поликарпова Н.И., Шалыто А.А. Автоматное программирование. -СПб.: Питер, 2010. - 176 с.

78

ФУНДАМЕНТАЛЬНЫЕ И ПРИКЛАДНЫЕ ИССЛЕДОВАНИЯ

4. Object Management Group UML Superstructure, v2.4.1 [PDF, PS] [Электронный ресурс]. - Режим доступа: http://www.omg.org/cgi-bin/doc?formal/ 2011-08-06).

5. Новиков Ф.А., Иванов Д.Ю. Моделирование на UML. Теория, практика, видеокурс. - СПб.: Наука и Техника, 2010. - 640 с.

6. Новиков Ф.А. Визуальное конструирование программ // Информационно-управляющие системы. - 2005. - № 6. - С. 9-22.

7. Harel D., Pnueli A. On the development of reactive systems // In «Logic and Models of Concurrent Systems». - NATO Advanced Study Institute on Logic and Models for Verification and Specification of Concurrent Systems. Springer Verlag. - 1985. - P. 477-498.

8. Вендров А.М. Современные технологии создания программного обеспечения (обзор) // Jet Info. Информационный бюллетень. - 2004. - № 4 (131). -32 с.

9. Шалыто А.А. Switch-технология. Алгоритмизация и программирование задач логического управления. - СПб.: Наука, 1998. - 628 с.

10. Шалыто А.А., Туккель Н.И. Switch-технология - автоматный подход к созданию программного обеспечения «реактивных» систем // Программирование. - 2001. - № 5. - С. 22-28.

МАТЕМАТИЧЕСКОЕ ОПИСАНИЕ РАБОТЫ ЭФФУЗИОННОГО АНАЛИЗАТОРА ПЛОТНОСТИ ГАЗОВ С УБЫВАЮЩИМ ДАВЛЕНИЕМ ИСТЕЧЕНИЯ

© Жигулин С.Ю.*

Тверской государственный технический университет, г. Тверь

Приведено математическое описание работы эффузионного анализатора плотности газов с убывающим давлением истечения при допущении, что процесс истечения является адиабатным.

Ключевые слова: эффузионный, анализатор, плотность газов, математическое описание

Эффузионный принцип измерения плотности газов основан на измерении времени истечения некоторого объема анализируемого газа через миниатюрную диафрагму [1].

Измерение плотности газов приборами, основанными на эффузионном истечении газов - эффузиометрами - осуществляются следующим способом: Газ в ёмкости сжимается механически до давления P = P0, затем открывается диафрагма с помощью тумблера, и начинается истечение газа. Дат-

Аспирант кафедры АТП.