From OpenSCADAWiki
Архитектурно, OpenSCADA состоит из подсистем:
- Безопасность — содержит списки пользователей и групп пользователей, обеспечивает проверку прав на доступ к элементам программы и т.д.
- Диспетчер модулей — обеспечивает контроль над модулями.
- Базы данных (модульная) — обеспечивает доступ к базам данных.
- Транспорты (модульная) — обеспечивает коммуникацию с внешней средой посредством различных коммуникационных интерфейсов.
- Транспортные протоколы (модульная) — тесно связана с подсистемой транспортов и обеспечивает поддержку различных протоколов обмена с внешними системами.
- Сбор данных (модульная) — обеспечивает сбор данных от внешних источников: контроллеров (ПЛК), датчиков и т.д. Кроме этого, подсистема может предоставлять среду для написания генераторов данных: модели, регуляторы, ... .
- Архивы-История (модульная) — содержит архивы-историю двух типов: архивы сообщений и архивы значений. Способ архивирования определяется алгоритмом, который заложен в модуле архивирования.
- Интерфейсы пользователя (модульная) — содержит функции пользовательских интерфейсов.
- Специальные (модульная) — содержит функции не вошедшие в остальные подсистемы. В настоящий момент к этим функциям относятся и функции тестирования и библиотеки статических функций пользовательского API.