Research group

Nuclear Physics Methods Laboratory


Alexander NozikActive

Data acquisition and control software (SCADA) play a significant role in modern scientific and industrial projects. There are several existing open-source SCADA frameworks, but most of them were created 15-20 years ago, and they do not meet modern flexibility and maintainability software standards. The most sore point is the development of so-called device servers – pieces of software designed to be a bridge between the control system and the hardware. Furthermore, people frequently need to work with a lightweight control system, which does not include complicated full-scale SCADA system functions.

Controls.kt is a Kotlin-mulitplatform project designed to solve the problem of simple device server API. The benefit of Kotlin-multiplatform is the ability to create devices on different platforms with the same languages and API and coroutine support.

Contols.kt is developed as a part of Piazza initiative, which uses asynchronous paradigm and reactive streams as a means of event transport.