110 likes | 317 Views
Программное обеспечение системы сопровождающего контроля. Ускорительный комплекс ВЭПП-2000. Подсистемы требующие автоматизации. Вакуумные измерения, Термоконтроль, Криогенная подсистема, Контроль бинарных состояний. Требования к ПО (часть I ).
E N D
Программное обеспечение системы сопровождающего контроля Ускорительный комплекс ВЭПП-2000
Подсистемы требующие автоматизации • Вакуумные измерения, • Термоконтроль, • Криогенная подсистема, • Контроль бинарных состояний.
Требования к ПО (часть I) • Унифицированный доступ к аппаратному обеспечению, • высокая стабильность работы (24 часа, 365 дней в году), • легкая перенастройка в соответствии с изменениями в аппаратной конфигурации, • обслуживание порядка нескольких сотен каналов и нескольких десятков устройств, • масштабируемость, • мониторинг интересуемых каналов с периодом ≤ 1 с,
Требования к ПО(часть II) • одновременный доступ нескольких клиентских приложений к одним и тем же каналам, • доступ к каналам по их псевдоименам, • простата разработки клиентских приложений, • независимость от сторонних библиотек и нестандартизованных технологий, • бесплатность используемого инструментария (некоммерческие лицензии), • легкая переносимость.
Альтернативы • EPICS “… как показало дальнейшее изучение EPICS, трудозатраты на его поддержку, разработку программ и драйверов для CAMAC-аппаратуры настолько высоки, что сравнимы с затратами на создание специализированной системы управления «с нуля»”, Д.Ю. Болховитянов, «Программное обеспечение системы управления инжекционного комплекса ВЭПП-5» • TANGO, • Коммерческие системы.
Модель представления физической структуры аппаратного обеспечения
Модель представления физической структуры аппаратного обеспечения Адресация: /hardware_server/controller/device/channel Например, /atlant:12000/can1/0xfc/2
Модель функционирования сервера устройств • Полностью асинхронное функционирование ядра сервера устройств, • асинхронное /синхронное взаимодействие с контроллерами устройств, • асинхронное взаимодействие с клиентами, • реализация на базе boost::asio(asynchronous I/O model).
Модель клиент-серверных взаимодействий • Асинхронное взаимодействие с сервером(-ами), • способ взаимодействие - «издатель-подписчик», • boost::serialization • XML, текстовое, бинарное, • произвольные типы данных