(Updating to match new version of source page) |
|||
Line 2: | Line 2: | ||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
− | | '' | + | | ''Основание:'' || июль 2002 (проектирование), январь 2003 (реализация) |
|- | |- | ||
− | | '' | + | | ''Автор:'' || {{Author|[[User:RomanSavochenko|Роман Савоченко]]|Максим Лысенко (2007-2012), Максим Кочетков (2014-2016), Алмаз Каримов (2008-2009, 2011), Арсен Закоян (2017), Руслан Ярмолюк (2017), Аркадий Кысиль (2017)}} |
|- | |- | ||
− | | '' | + | | ''Участники:'' || [http://oscada.org/ru/soobshchestvo/uchastniki/ смотреть детальную информацию] |
|- | |- | ||
− | | '' | + | | ''Политика:'' || Свободное программное обеспечение (программное обеспечение с открытыми исходными текстами) |
|- | |- | ||
− | | '' | + | | ''Лицензия:'' || [[wikipedia:GNU General Public License|GPL]] v.2 в основном для исходных текстов, [[wikipedia:GNU Free Documentation License|GFDL]] v.1.3 для документации |
|- | |- | ||
− | | '' | + | | ''Языки локализации:'' || Английский(en), Украинский(uk), Немецкий(de), mRussian(ru) и [[Special:MyLanguage/Documents/FAQ#UsingCore|добавить]] |
|- | |- | ||
− | | '' | + | | ''Версия:'' || 1 Work, 0.9 LTS (2018-...), 0.8 Old LTS (2012-2018) |
|- | |- | ||
− | | '' | + | | ''Функции и требования:'' || [[Special:MyLanguage/Functions and demands|смотреть детальную информацию]] |
|- | |- | ||
− | | '' | + | | ''Контакты:'' || |
− | * EMail: [mailto:oscada@oscada.org oscada@oscada.org] | + | * Электронная почта (EMail): [mailto:oscada@oscada.org oscada@oscada.org] |
* Jabber (JID): oscada@oscada.org | * Jabber (JID): oscada@oscada.org | ||
|- | |- | ||
− | | colspan="2" align="center" | ''''' | + | | colspan="2" align="center" | '''''Ресурсы''''' |
|- | |- | ||
− | | ''WWW:'' || | + | | ''Мировая сеть (WWW):'' || |
− | * | + | * Основной сайт: http://oscada.org |
− | * | + | * База знаний (Wiki): http://oscada.org/wiki |
− | * | + | * Форум: http://oscada.org/ru/forum/ |
|- | |- | ||
− | | '' | + | | ''Файлы:'' || |
* HTTP: http://ftp.oscada.org/OpenSCADA, http://oscada.org/oscadaArch | * HTTP: http://ftp.oscada.org/OpenSCADA, http://oscada.org/oscadaArch | ||
* FTP: ftp://ftp.oscada.org/OpenSCADA | * FTP: ftp://ftp.oscada.org/OpenSCADA | ||
|- | |- | ||
− | | '' | + | | ''Репозитории:'' || |
− | * | + | * Исходных текстов (Subversion): |
** SVN: {{InLineCode|<nowiki>svn co svn://oscada.org/trunk/OpenSCADA</nowiki>}} | ** SVN: {{InLineCode|<nowiki>svn co svn://oscada.org/trunk/OpenSCADA</nowiki>}} | ||
** HTTP: {{InLineCode|<nowiki>svn co http://oscada.org/svn/trunk/OpenSCADA/</nowiki>}} | ** HTTP: {{InLineCode|<nowiki>svn co http://oscada.org/svn/trunk/OpenSCADA/</nowiki>}} | ||
− | ** [http://oscada.org/svn/trunk/OpenSCADA/ | + | ** [http://oscada.org/svn/trunk/OpenSCADA/ Файловая Система] |
** [http://oscada.org/websvn/listing.php?repname=OpenSCADA WebSVN] | ** [http://oscada.org/websvn/listing.php?repname=OpenSCADA WebSVN] | ||
− | * | + | * Пакетов: |
− | ** LTS | + | ** LTS ветвь (продолжительная поддержка): http://ftp.oscada.org/OpenSCADA/LTS/, ftp://ftp.oscada.org/OpenSCADA/LTS/ |
− | ** Work | + | ** Work ветвь (рабочая): http://ftp.oscada.org/OpenSCADA/Work/, ftp://ftp.oscada.org/OpenSCADA/Work/ |
|- | |- | ||
− | | '' | + | | ''Демонстрации:'' || |
− | * Web | + | * Web интерфейсы: [http://oscada.org:10002 АГЛКС], [http://oscada.org:10003 Котёл] |
− | * | + | * Живые диски (Linux автоматизации): [[Special:MyLanguage/Documents/How_to/Live_disk|получить с этого документа]] |
|} | |} | ||
− | OpenSCADA | + | OpenSCADA представляет собой открытую SCADA или HMI систему, построенную по принципам модульности, кросс-платформенности и масштабируемости. SCADA (диспетчерский контроль и сбор данных) или Человеко Машинный Интерфейс (HMI) являются терминами, которые часто используются в автоматизации технологических процессов. SCADA или HMI в целом предназначены для использования в оперативном и ответственном контроле человеком за работой сложного технологического оборудования различных производственных процессов. В целом, OpenSCADA предназначена для: сбора, архивации (ведения истории), визуализации информации, выдачи управляющих действий, а также других родственных операций, характерных для полнофункциональной SCADA или HMI системы. |
__TOC__ | __TOC__ | ||
== Предпосылки == | == Предпосылки == |
Latest revision as of 20:09, 2 April 2023
Основание: | июль 2002 (проектирование), январь 2003 (реализация) |
Автор: | Роман Савоченко Максим Лысенко (2007-2012), Максим Кочетков (2014-2016), Алмаз Каримов (2008-2009, 2011), Арсен Закоян (2017), Руслан Ярмолюк (2017), Аркадий Кысиль (2017) |
Участники: | смотреть детальную информацию |
Политика: | Свободное программное обеспечение (программное обеспечение с открытыми исходными текстами) |
Лицензия: | GPL v.2 в основном для исходных текстов, GFDL v.1.3 для документации |
Языки локализации: | Английский(en), Украинский(uk), Немецкий(de), mRussian(ru) и добавить |
Версия: | 1 Work, 0.9 LTS (2018-...), 0.8 Old LTS (2012-2018) |
Функции и требования: | смотреть детальную информацию |
Контакты: |
|
Ресурсы | |
Мировая сеть (WWW): |
|
Файлы: | |
Репозитории: |
|
Демонстрации: |
|
OpenSCADA представляет собой открытую SCADA или HMI систему, построенную по принципам модульности, кросс-платформенности и масштабируемости. SCADA (диспетчерский контроль и сбор данных) или Человеко Машинный Интерфейс (HMI) являются терминами, которые часто используются в автоматизации технологических процессов. SCADA или HMI в целом предназначены для использования в оперативном и ответственном контроле человеком за работой сложного технологического оборудования различных производственных процессов. В целом, OpenSCADA предназначена для: сбора, архивации (ведения истории), визуализации информации, выдачи управляющих действий, а также других родственных операций, характерных для полнофункциональной SCADA или HMI системы.
Contents
[hide]1 Предпосылки
На рынке програмного обеспечения автоматизированных систем управления технологическими процессами (АСУ ТП) 2002 года сложилась ситуация, когда отсутствуют не только свободные SCADA системы, но и SCADA системы для платформ отличных от MS Windows+x86. Да, единицы есть, но про них почти ничего не слышно и выглядят они крайне блекло на фоне общей массы.
В тоже время фирмы, занимающиеся внедрением АСУ ТП, заинтересованы в полном контроле над SCADA системой, внедряемой на объектах заказчика. Эта заинтересованность связана со спецификой работы с Заказчиком. Заказчик является последним звеном в цепочке создания программы. От качества взаимодействия Заказчика и разработчиков прямо пропорционально зависит удовлетворённость Заказчика, а также скорость совершенствования программы. Вытекая из вышесказанного пропорционально зависит и имидж фирмы, внедряющей АСУ ТП. Применение законченных коммерческих SCADA систем, как правило, приводит к ухудшению или же полному отсутствию взаимодействия Заказчика с разработчиками.
Реально существуют следующие варианты решения сложившейся проблемы:
- Первым вариантом может быть налаживание тесных связей с производителем SCADA систем, т.е. интеграция (явная или неявная) в подразделение по внедрению. Что, в свою очередь, равносильно полной или частичной потере самостоятельности.
- Вторым вариантом является создание собственной коммерческой SCADA системы. Этим достигается полный контроль, однако для разработки системы, на высоком уровне, нужен огромный штат высококвалифицированных специалистов. Что в большинстве случаев не по карману фирмам внедряющим АСУ ТП. Как результат — квалификация специалистов довольно низка. И даже если фирма решается на подобный подвиг то SCADA система не дотягивает до уровня самой посредственной сторонней коммерческой системы и очень часто имеет место — низкое качество кода и(или) посредственная функциональность системы.
- Третьим вариантом является использование открытых SCADA систем, то есть — совместная разработка. Это позволяет совместить преимущества вышеперечисленных вариантов:
- полный контроль над SCADA системой;
- не требуется огромного штата высококвалифицированных специалистов для развития системы, достаточно специалистов для дистрибуции системы;
- приводит к повышению качества системы, за счёт множественной внешней экспертизы и широты поддерживаемых платформ;
- позволяет выбирать платформу в зависимости от её преимуществ, а не по причине того, что только на ней работает SCADA система;
- ну и прочие: психологические, экономические, моральные и юридические преимущества открытых систем.
Для совместной реализации третьего варианта и был основан проект OpenSCADA!
2 Цели проекта — реальность
Основными целями, которые преследует проект, являются:
- открытость — в основном GPL v.2;
- масштабированность, гибкость, расширяемость — модульность, многопоточность и внутренняя динамичность;
- исполнительная избыточность — резервирование;
- доступность — открытые исходные тексты; автоматическая сборка архивов, пакетов, живых дисков, ...; многоязычность; динамическая многоязычность; сборка и исполнение на Linux окружениях широкого возрастного диапазона, от 2002 года по современные;
- надёжность — практические применения, быстрое решение проблем;
- безопасность — разделение прав, SSL;
- много-платформенность — x86_32, x86_64, ARM, Web, Android, QNX;
- единый, унифицированный, удобный, динамичный и развитый интерфейс пользователя — Qt, Web, прозрачное и многоуровневое удалённое динамичное управление;
- широкий круг источников данных — унифицированные, платы сбора данных и низкоуровневые шины, созданные в окружении OpenSCADA.
3 Политика разработки, лицензия
В качестве политики реализации данного проекта выбраны "OPEN SOURCE" принципы разработки ПО. Данная политика позволит привлечь к разработке, тестированию, развитию, распространению и использованию продукта значительное количество разработчиков, энтузиастов и других заинтересованных лиц при минимальных финансовых затратах. Программа распространяется на условиях лицензии GPL v2.
4 Области применения
OpenSCADA предназначена для выполнения как обычных функций SCADA систем или телемеханики, так и для использования в смежных областях информационных технологий:
- динамические модели, имитаторы и тренажеры технологических процессов в реальном времени;
- станки и промышленные роботы;
- системы сельско-хозяйственной диспетчеризации и управления, птичники;
- встроенные и мобильные системы — окружение исполнения Программируемого Логического Контролера (ПЛК), роботы, ...;
- мониторинг оборудования серверов;
- умные дома и автоматика зданий.
С некоторыми ограничениями и корректировками, в основном во внутреннем окружении, OpenSCADA может быть использована в отраслях:
- управление ресурсами предприятия (ERP);
- Geo-локация и отслеживание положения;
- торговые системы;
- медицинские диагностические системы;
- бухгалтерский учёт;
- билинговые системы.
Соответственно мы можем с уверенностью называть OpenSCADA, как — система работы с данными в реальном времени.
В качестве базовой (хостовой) операционной системы (ОС) для разработки и использования выбрана ОС Linux, которая является стандартной POSIX совместимой ОС. Кроме того, ОС Linux является оптимальным решением в вопросах:
- надёжности;
- безопасности;
- гибкости/масштабируемости;
- доступности;
- популярности и распространённости.
Поскольку OpenSCADA разрабатывается на стандартной POSIX ОС, по принципам кросс-платформенности, то её адаптация на остальные ОС не составит проблемы.
Актуальную и детальную функциональность OpenSCADA Вы можете посмотреть на странице функций.
5 Архитектура
Сердцем программы является модульное ядро.
В зависимости от того какие модули подключены, программа может выполнять как функции различных серверов, так и функции клиентов клиент-серверной архитектуры. Собственно, архитектура программы позволяет реализовывать распределённые клиент-серверные системы любой сложности.
Для достижения высокого быстродействия, за счёт сокращения времени коммуникаций, архитектура позволяет объединять функции распределённых систем в одной программе.
Архитектурно, OpenSCADA состоит из подсистем:
- Безопасность — содержит списки пользователей и групп пользователей, обеспечивает проверку прав на доступ к элементам программы и т.д.
- Диспетчер модулей — обеспечивает контроль над модулями.
- Базы данных (модульная) — обеспечивает доступ к базам данных.
- Транспорты (модульная) — обеспечивает коммуникацию с внешней средой посредством различных коммуникационных интерфейсов.
- Транспортные протоколы (модульная) — тесно связана с подсистемой транспортов и обеспечивает поддержку различных протоколов обмена с внешними системами.
- Сбор данных (модульная) — обеспечивает сбор данных от внешних источников: контроллеров (ПЛК), датчиков и т.д. Кроме этого, подсистема может предоставлять среду для написания генераторов данных: модели, регуляторы, ... .
- Архивы-История (модульная) — содержит архивы-историю двух типов: архивы сообщений и архивы значений. Способ архивирования определяется алгоритмом, который заложен в модуле архивирования.
- Интерфейсы пользователя (модульная) — содержит функции пользовательских интерфейсов.
- Специальные (модульная) — содержит функции не вошедшие в остальные подсистемы. В настоящий момент к этим функциям относятся и функции тестирования и библиотеки статических функций пользовательского API.
Исходя из принципа модульности, указанные выше модульные подсистемы могут расширять свою функциональность путём подключения модулей соответствующего типа.
Модульное ядро OpenSCADA выполняется в виде статической и совместно используемой библиотек. Это позволяет встраивать функции OpenSCADA в существующие программы, а также создавать новые программы на основе модульного ядра OpenSCADA. Однако, модульное ядро является самодостаточным и может использоваться посредством простой запускающей программы.
Модули OpenSCADA хранятся в динамических библиотеках. Каждая динамическая библиотека может содержать несколько модулей различных типов. Наполнение динамических библиотек модулями определяется функциональной связностью самих модулей. Динамические библиотеки допускают горячую замену, что позволяет, в процессе работы, производить обновление модулей. Метод хранения кода модулей в динамических библиотеках является основным для OpenSCADA, поскольку поддерживается практически всеми современными ОС. Что не исключает возможности разработки других методов хранения кода модулей и большинство модулей могут быть встроены в библиотеку ядра OpenSCADA, исключая внешние файлы этих модулей вообще.
6 Распространение
Поскольку этот проект свободный то пользователь может свободно получить исходные тексты проекта для дальнейшей сборки и использования. Готовые к использованию сборки и пакеты программы доступны для большинства известных дистрибутивов и окружений Linux на главном ресурсе проекту http://oscada.org.
7 Поддержка и услуги
Ограниченная бесплатная поддержка предоставляется на форуме проекта для свободно-полученных исходных текстов, бинарных архивов или пакетов и главным образом для проблем, которые разработчик может быстро локализовать у себя и для неспецифичных пользователю окружений. Для получения полноценной поддержки пользователь имеет возможность приобрести пакет коммерческой технической поддержки у разработчиков проекта. Кроме коммерческой поддержки пользователь может приобрести услуги по разработке решений на основе OpenSCADA как непосредственно у разработчиков, так и у сторонних интеграторов. Отсутствующие функции или расширения, которые не противоречат концепции проекта, пользователь может также заказать разработчикам OpenSCADA.
8 Помощь и участие в проекте
Если вы заинтересованы в развитии проекта, и у вас есть мысли опыт и знания для совершенствования данной разработки, то добро пожаловать к участию в проекте. Проект разрабатывается на открытых основаниях, следовательно все его наработки являются общественным достоянием, а значит совершенствуя его мы помогаем друг другу, создавая всё более совершенный инструмент для решения наших задач!