Исследовательская группа

Лаборатория методов ядерно-физических экспериментов

Controls.kt

Нозик АлександрАктивный

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

Controls.kt это проект на Kotlin-multiitplatform, разработанный для решения проблемы простого API сервера устройств. Преимуществом Kotlin-multiitplatform в данном случае является возможность создавать устройства на разных платформах на одном языке и с одним API. Кроме того, существенными являются преимущества kotlin coroutines для асинхронной передачи данных.

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

Участники

Нозик Александр
Чернов Василий