EnglishУкраїнськаРocсийский
Вход/Новый

О проекте OpenSCADA

 

Основание:

июль 2002 (проектирование), январь 2003 (реализация)

Автор:

Роман Савоченко

Активные разработчики:

Роман Савоченко

Политика:

Свободное программное обеспечение (Free software)

Лицензия:

Внутренняя ссылка открывается в текущем окнеGPL v.2 основная для исходных текстов, Внешняя ссылка открывается в новом окнеGFDL v.1.3 основная для документации

Языки локализации:

Английский(en), Украинский(uk), Русский(ru), Немецкий(de)

Версия:

0.9 Work, 0.8 LTS (2012-2017)

Ресурсы:

WWW: http://oscada.org
Wiki: http://wiki.oscada.org
Форум: http://oscada.org/ru/forum
Файлы: oscada.org/oscadaArch, ftp://ftp.oscada.org/OpenSCADA
Репозиторий: svn co Внешняя ссылка открывается в новом окнеsvn://oscada.org/trunk/OpenSCADA (Subversion)
Почта: oscada@oscada.org
JID: oscada@oscada.org

 

OpenSCADA представляет собой открытую SCADA систему, построенную по принципам модульности, многоплатформенности и масштабируемости. SCADA (Supervisory Control And Data Acquisition) в переводе: «Системы диспетчерского управления и сбора данных» является термином, который часто употребляется в сфере автоматизации технологических процессов. Система OpenSCADA предназначена для: сбора, архивирования, визуализации информации, выдачи управляющих воздействий, а также других родственных операций, характерных для полнофункциональной SCADA системы.

Предпосылки

На рынке программ для АСУ-ТП (Автоматизированные системы управления технологическим процессом) сложилась ситуация, когда отсутствуют не только свободные SCADA системы, но и SCADA системы для платформ отличных от MS Windows+x86. Да, единицы есть, но про них почти ничего не слышно и выглядят они крайне блекло на фоне общей массы.

В тоже время фирмы, занимающиеся внедрением АСУ-ТП, заинтересованы в полном контроле над SCADA системой, внедряемой на объектах заказчика. Эта заинтересованность связана со спецификой работы с Заказчиком. Заказчик является последним звеном в цепочке создания программы. От качества взаимодействия Заказчика и разработчиков прямо пропорционально зависит удовлетворённость Заказчика, а также скорость совершенствования программы. Вытекая из вышесказанного, пропорционально зависит и имидж фирмы, внедряющей АСУ-ТП. Применение законченных коммерческих SCADA систем, как правило, приводит к ухудшению или же полному отсутствию взаимодействия Заказчика с разработчиками.

Реально существуют следующие варианты решения сложившейся проблемы:

  • Первым вариантом может быть налаживание тесных связей с производителем SCADA систем, т.е интеграция (явная или неявная) в подразделение по внедрению. Что, в свою очередь, равносильно полной или частичной потере самостоятельности.
  • Вторым вариантом является создание собственной коммерческой SCADA системы. Этим достигается полный контроль, однако для разработки системы, на высоком уровне, нужен огромный штат специалистов высокой квалификации. Что, в большинстве случаев, не по карману фирмам внедряющим АСУ-ТП. Как результат - квалификация специалистов довольно низка. И даже если фирма решается на подобный подвиг, то SCADA система не дотягивает до уровня самой посредственной сторонней коммерческой системы, и очень часто имеет место низкое качество кода и(или) посредственная функциональность системы.
  • Третьим вариантом является использование открытых SCADA систем, то есть - совместная разработка. Это позволяет совместить преимущества вышеперечисленных вариантов:
    • полный контроль над SCADA системой;
    • не требуется огромного штата высококвалифицированных специалистов для развития системы, достаточно специалистов для дистрибьюции системы;
    • приводит к повышению качества системы, за счёт множественной внешней экспертизы и широты поддерживаемых платформ;
    • позволяет выбирать платформу в зависимости от её преимуществ, а не по причине того, что только на ней работает SCADA система;
    • ну и прочие психологические, экономические, моральные и юридические преимущества открытых систем.

Для совместной реализации третьего варианта и был основан проект OpenSCADA!

Цели проекта

Основными целями, которые преследует проект, являются:

  • открытость;
  • надежность;
  • гибкость;
  • масштабируемость;
  • многоплатформенность;
  • безопасность;
  • финансовая доступность;
  • предоставление удобного интерфейса управления;

Политика разработки. Лицензия.

В качестве политики реализации данного проекта выбраны «OPEN SOURCE» принципы разработки ПО. Данная политика позволит привлечь к разработке, тестированию, развитию, распространению и использованию продукта значительное количество разработчиков, энтузиастов и других заинтересованных лиц при минимальных финансовых затратах. Программа распространяется на условиях лицензии GPL v2.

Области применения

Система OpenSCADA предназначена для выполнения как обычных функций SCADA систем, так и для использования в смежных областях информационных технологий.

Система OpenSCADA может использоваться:

  • на промышленных объектах, в качестве полнофункциональной SCADA системы;
  • во встраиваемых системах, в качестве среды исполнения (в том числе и PLC);
  • для построения различных моделей (технологических, химических, физических, электрических процессов);
  • на персональных компьютерах, серверах и кластерах для сбора, обработки, представления и архивации информации о системе и её окружении.

В качестве базовой (хостовой) операционной системы (ОС) для разработки и использования выбрана ОС Linux, которая является стандартной POSIX совместимой ОС. Кроме того, ОС Linux является оптимальным решением в вопросах:

  • надёжности;
  • гибкости/масштабируемости;
  • доступности;
  • популярности и распространенности.

Поскольку система OpenSCADA разрабатывается на стандартной POSIX ОС, по принципам кроссплатформенности, то её адаптация на остальные ОС не составит проблемы.

Архитектура

Сердцем системы является модульное ядро.

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

Для достижения высокого быстродействия, за счёт сокращения времени коммуникаций, архитектура позволяет объединять функции распределённых систем в одной программе.

Архитектурно, система OpenSCADA состоит из подсистем:

  • Подсистема безопасности. Содержит списки пользователей и групп пользователей, обеспечивает проверку прав на доступ к элементам системы и т.д.
  • Модульная подсистема баз данных. Обеспечивает доступ к базам данных.
  • Модульная подсистема транспортов. Обеспечивает коммуникацию с внешней средой, посредством различных коммуникационных интерфейсов.
  • Модульная подсистема коммуникационных протоколов обмена. Тесно связана с подсистемой транспортов и обеспечивает поддержку различных протоколов обмена с внешними системами.
  • Модульная подсистема сбора данных (DAQ). Обеспечивает сбор данных от внешних источников: контроллеров, датчиков и т.д. Кроме этого, подсистема может предоставлять среду для написания генераторов данных(модели, регуляторы ... ).
  • Модульная подсистема архивов. Содержит архивы двух типов: архивы сообщений и архивы значений. Способ архивирования определяется алгоритмом, который заложен в модуле архивирования.
  • Модульная подсистема пользовательских интерфейсов. Содержит функции пользовательских интерфейсов.
  • Подсистема управление модулями. Обеспечивает контроль над модулями.
  • Модульная подсистема специальных функций. Содержит функции не вошедшие в остальные подсистемы. В настоящий момент к этим функциям относятся функции тестирования.

Исходя из принципа модульности, указанные выше модульные подсистемы могут расширять свою функциональность путём подключения модулей соответствующего типа.

Модульное ядро системы OpenSCADA выполняется в виде статической и совместно используемой библиотек. Это позволяет встраивать функции системы в существующие программы, а также создавать новые программы на основе модульного ядра системы OpenSCADA.

Однако модульное ядро является самодостаточным и может использоваться посредством простой запускающей программы.

Модули системы OpenSCADA хранятся в динамических библиотеках. Каждая динамическая библиотека может содержать множество модулей различного типа. Наполнение динамических библиотек модулями определяется функциональной связностью самих модулей. Динамические библиотеки допускают горячую замену, что позволяет, в процессе работы, производить обновление модулей. Метод хранения кода модулей в динамических библиотеках является основным для системы OpenSCADA, поскольку поддерживается практически всеми современными ОС. Это не исключает возможности разработки других методов хранения кода модулей.

Помощь проекту

Если вы заинтересованы в развитии проекта, и у вас есть мысли опыт и знания для совершенствования данной разработки, то добро пожаловать к участию в разработке. Проект разрабатывается на открытых основаниях, следовательно все его наработки являются общественным достоянием, а значит совершенствуя его мы помогаем друг другу, создавая всё более совершенный инструмент для решения наших задач! Для помощи в разработке проекта перейдите по этой ссылке.

2845