SCADA-системы, или муки выбора, PCWeek №32/33, 1998

Надежда Куцевич, ЗАО РТСофт

В статье даётся сравнительный обзор свойств и характеристик некоторых распространённых SCADA-систем. Особое внимание уделяется новым, появившимся недавно, связям SCADA-систем с окружающим миром. (OPC-серверы, расширения реального времени для Windows NT) и вопросам, которые редко находит отражение в публикациях о нише SCADA-систем в комплексе программных компонентов сквозной автоматизации производства

Обычно системный интегратор или конечный пользователь, приступая к разработке прикладного программного обеспечения (ППО) для создания системы управления, выбирает один из следующих путей:

программирование с использованием «традиционных» средств (традиционные языки программирования, стандартные средства отладки и пр.);
использование существующих, готовых (COTS Commercial Off The Shelf) инструментальных проблемно-ориентированных средств.

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

Современный бизнес в области разработки ПО всё более и более сегментируется и специализируется. Причина проста ПО становится всё более сложным и дорогостоящим. Разработчики операционных систем, разработчики инструментальных средств, разработчики прикладного ПО и т.п., по существу, говорят на разных языках. Таким образом, сама логика развития современного бизнеса в части разработки ППО для конечных систем управления требует использования всё более развитых инструментальных средств типа SCADA-систем (от Supervisory Control And Data Acquisition). Разработка современной SCADA-системы требует больших вложений и выполняется в длительные сроки. И именно поэтому в большинстве случаев разработчикам управляющего ППО, в частности ППО для АСУ ТП, представляется целесообразным идти по второму пути, приобретая, осваивая и адаптируя какой-либо готовый, уже испытанный универсальный инструментарий.

Если такой подход для Вас очевиден или Вы его принимаете, то возникает вопрос выбора SCADA-системы. Ниже перечислены только некоторые из популярных на западном и российском рынках SCADA-систем, имеющих некоторую поддержку в России:

Таблица 1. Популярные SCADA-системы, имеющие поддержку в России

На примере указанных пакетов предлагается рассмотреть некоторые основные возможности и характерные особенности SCADA-систем. Публикаций по SCADA-системам в нашей прессе достаточно много. Просматривая их, хотелось бы достаточно схематично остановиться на уже ставшем традиционном наборе свойств и характеристик SCADA-систем и заострить внимание на новых, появившихся недавно, связях SCADA-систем с окружающим миром. (OPC-серверы, расширения реального времени для Windows NT) и на моментах, которые нечасто находят отражение в публикациях о нише SCADA-систем в комплексе программных компонентов сквозной автоматизации производства. SCADA-системы закрывают цеховой уровень автоматизации, связанный, прежде всего, с получением и визуализацией информации от программируемых контроллеров, распределенных систем управления. Поставляемая на данный уровень информация недоступна на уровне управления производством. Поэтому важно отметить, что некоторые фирмы разрабатывают системы управления производством и обеспечивают обмен между этими уровнями.

Характеристики SCADA-систем

Функциональные возможности

В силу тех требований, которые предъявляются к системам SCADA, спектр их функциональных возможностей определен и реализован практически во всех пакетах. Перечислим основные возможности и средства, присущие всем системам и различающиеся только техническими особенностями реализации:

автоматизированная разработка, дающая возможность создания программного обеспечения (ПО) системы автоматизации без реального программирования;
средства сбора первичной информации от устройств нижнего уровня;
средства управления и регистрации сигналов об аварийных ситуациях;
средства хранения информации с возможностью ее пост-обработки (как правило, реализуется через интерфейсы к наиболее популярным базам данных);
средства обработки первичной информации;
средства визуализации представления информации в виде графиков, гистограмм и т.п.;
возможность работы прикладной системы с наборами параметров, рассматриваемых как единое целое (recipe, или установки).

Основу большинства SCADA-пакетов составляют несколько программных компонентов (база данных реального времени, ввода-вывода, предыстории, аварийных ситуаций) и администраторов (доступа, управления, сообщений).

Следует отметить, что технология проектирования систем автоматизации на основе различных SCADA-систем во многом схожа и включает следующие этапы. Разработка архитектуры системы автоматизации в целом. На этом этапе определяется функциональное назначение каждого узла системы автоматизации. Решение вопросов, связанных с возможной поддержкой распределенной архитектуры, необходимостью введения узлов с горячим резервированием и т.п. Создание прикладной системы управления для каждого узла. На этом этапе специалист в области автоматизируемых процессов наполняет узлы архитектуры алгоритмами, совокупность которых позволяет решать задачи автоматизации. Приведение параметров прикладной системы в соответствие с информацией, которой обмениваются устройства нижнего уровня (например, программируемые логические контроллеры ПЛ=+=) с внешним миром (датчики температуры, давления и др.). Отладка созданной прикладной программы в режиме эмуляции некоторых системах, например IGSS, режим отладки практически отсутствует) и в реальном режиме.

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

Технические характеристики

Перечислим характеристики, важные для оценки функциональности SCADA-систем, с кратким их анализом.


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

Таблица 2. Поддержка программно-аппаратных платформ

В то же время в таких SCADA-системах, как RealFlex и Sitex основу программной платформы принципиально составляет единственная, хотя и удовлетворяющая многим требованиям, операционная система реального времени QNX.

Подавляющее большинство SCADA-систем реализовано на платформах MS Windows. Именно такие системы предлагают наиболее полные и легко наращиваемые человеко-машинные интерфейсные (Man Machine Interface MMI) средства. Учитывая продолжающееся усиление позиций Microsoft на рынке операционных систем (ОС) следует отметить, что даже разработчики многоплатформных SCADA-систем, такие как United States DATA Co, приоритетным считают дальнейшее развитие своих SCADA-систем на платформе Windows NT. Некоторые фирмы, до сих пор поддерживавшие SCADA-системы на базе ОС реального времени (РВ), начали менять ориентацию, выбирая системы на платформе Windows NT. Все более очевидным становится применение ОС реального времени, в основном, во встраиваемых системах. Таким образом, основным полем, где сегодня разворачиваются главные события глобального рынка SCADA-систем, стала ОС MS Windows NT на фоне всё ускоряющегося сворачивания активности в области MS DOS, MS Windows 3.xx/95.

Имеющиеся средства сетевой поддержки. Одна из основных особенностей современного мира систем автоматизации высокая степень интеграции этих систем. В любой из них могут быть задействованы объекты управления, исполнительные механизмы, аппаратура, регистрирующая и обрабатывающая информацию, рабочие места операторов, серверы баз данных и т.д. Очевидно, что для эффективного функционирования в этой разнородной среде SCADA-система должна обеспечивать высокий уровень сетевого сервиса. Желательно, чтобы она поддерживала работу в стандартных сетевых средах (ARCNET, ETHERNET и т.д.) с использованием стандартных протоколов (NETBIOS, TCP/IP и др.), а также обеспечивала поддержку наиболее популярных сетевых стандартов из класса промышленных интерфейсов (PROFIBUS, CANBUS, LON, MODBUS и т.д.) Обобщенная схема подобной системы приведена на рис.1.

Рис. 1. Схема интеграции SCADA-приложений в комплексные системы управления

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

Встроенные командные языки. Большинство SCADA-систем имеют встроенные языки высокого уровня, VBasic-подобные языки, позволяющие сгенерировать адекватную реакцию на события, связанные с изменением значения переменной, с выполнением некоторого логического условия, с нажатием комбинации клавиш, а также с выполнением некоторого фрагмента с заданной частотой относительно всего приложения или отдельного окна.

Поддерживаемые базы данных. Практически все SCADA-системы, в частности, Genesis, InTouch используют синтаксис ANSI SQL, который не зависит от типа базы данных. Таким образом, приложения виртуально изолированы, что позволяет менять базу данных без серьезного изменения самой прикладной задачи, создавать независимые программы для анализа информации, использовать уже наработанное программное обеспечение, ориентированное на обработку данных.

Графические возможности. Для специалиста-разработчика системы автоматизации, также как и для специалиста- технолога, чье рабочее место создается, очень важен графический пользовательский интерфейс (Graphic Users Interface MMI). Функционально графические интерфейсы SCADA-систем очень похожи. В каждой из них существует графический объектно-ориентированный редактор с определенным набором анимационных функций. Используемая векторная графика дает возможность осуществлять широкий набор операций над выбранным объектом, а также быстро обновлять изображение на экране, используя средства анимации.

крайне важен также вопрос о поддержке в рассматриваемых системах стандартных функций GUI. Поскольку большинство рассматриваемых SCADA-систем работают под управлением Windows, это и определяет тип используемого GUI.

Открытость систем

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

Разработка собственных программных модулей. Перед фирмами-разработчиками систем автоматизации часто встает вопрос о создании собственных (не предусмотренных в рамках систем SCADA) программных модулей и включение их в создаваемую систему автоматизации. Поэтому вопрос об открытости системы является важной характеристикой SCADA-систем. Фактически открытость системы означает доступность спецификаций системных смысле SCADA) вызовов, реализующих тот или иной системный сервис. Это может быть и доступ к графическим функциям, функциям работы с базами данных и т.д.

Драйверы ввода-вывода. Современные SCADA-системы не ограничивают выбора аппаратуры нижнего уровня, так как предоставляют большой набор драйверов или серверов ввода-вывода и имеют хорошо развитые средства создания собственных программных модулей или драйверов новых устройств нижнего уровня. Сами драйверы разрабатываются с использованием стандартных языков программирования. Вопрос, однако, в том, достаточно ли только спецификаций доступа к ядру системы, поставляемых фирмой-разработчиком в штатном комплекте (система Trace Mode), или для создания драйверов необходимы специальные пакеты (системы FactoryLink, InTouch), или же, вообще, разработку драйвера нужно заказывать у фирмы-разработчика.

Для подсоединения драйверов ввода-вывода к SCADA используются два механизма стандартный динамический обмен данными (Dynamic Data Exchange DDE) и обмен по внутреннему (известному только фирме разработчику) протоколу. В SCADA-системах основным механизмом, используемым для связи с внешним миром, до сих пор остается механизм DDE. Но из-за своих ограничений по производительности и надежности он не совсем пригоден для обмена информацией в реальном масштабе времени. Взамен DDE компания Microsoft предложила более эффективное и надежное средство передачи данных между процессами OLE (Object Linking and Embedding включение и встраивание объектов). Механизм OLE поддерживается в RSView, Fix, InTouch, Factory Link и др. На базе OLE появляется новый стандарт OPC (OLE for Process Control OLE для АСУТП), ориентированный на рынок промышленной автоматизации. Новый стандарт, во-первых, позволяет объединять на уровне объектов различные системы управления и контроля, функционирующие в распределенной гетерогенной среде; во-вторых, устраняет необходимость использования различного нестандартного оборудования и соответствующих коммуникационных программных драйверов. С точки зрения SCADA-систем, появление OPC-серверов означает разработку программных стандартов обмена с технологическими устройствами. Поскольку производители полностью разбираются в своих устройствах, то эти спецификации являются для них руководством к разработке соответствующих драйверов. Так как эти программные драйверы уже появляются на рынке, разработчики SCADA-систем предлагают свои механизмы связи с OPC-драйверами. OPC-интерфейс допускает различные варианты обмена: получение сырых данных с физических устройств, из распределенной системы управления или из любого приложения (рис.2). На рынке появились инструментальные пакеты для написания OPC-компонентов, например, OPC-Toolkits фирмы FactorySoft Inc., включающий OPC Server Toolkit, OPC Client Toolkit, примеры OPC-программ.

Рис. 2. Варианты обмена SCADA-систем с приложениями и физическими устройствами через OPC-интерфейс


Встраиваемые объекты ActiveX. Объекты ActiveX это объекты, в основе которых лежит модель составных объектов Microsoft COM (Component Object Model). Технология COM определяет общую схему взаимодействия компонентов программного обеспечения в среде Windows и предоставляет стандартную инфраструктуру, позволяющую объектам обмениваться данными и функциями между прикладными программами. Большинство SCADA-систем являются контейнерами, которые уведомляются ActiveX о происшедших событиях. Любые ActiveX-объекты могут загружаться в систему разработки большинства SCADA-систем и использоваться при создании прикладных программ. Управление ActiveX-объектами осуществляется с помощью данных, методов и событийных функций, свойственных выбранному объекту.


Разработки третьих фирм. Многие компании занимаются разработкой драйверов, ActiveX-объектов и другого программного обеспечения для SCADA-систем. Этот факт очень важно оценивать при выборе SCADA-пакета, поскольку это расширяет область применения системы непрофессиональными программистами (нет необходимости разрабатывать программы с использованием языков С или Basic).

Для реализации вышеуказанных технологий разработаны специальные библиотеки и инструментальные системы для ОС Windows. Использование же только спецификаций стандартов для этого не только достаточно трудоемко, но и требует высокого профессионализма программистов и, следовательно, затруднительно для не-Windows платформ.

О жестком реальном времени для Windows NT

Один из существенных недостатков SCADA-систем на платформах Windows 3.хх/95 по сравнению со SCADA-системами на платформах ОСРВ отсутствие поддержки жесткого реального времени. Ситуация стала изменяться с появлением Windows NT. Выход в свет этой ОС стимулировал разработку новых подходов в поддержке жесткого реального времени. Прежде всего, сама по себе Windows NT делает весьма успешные попытки потеснить ОСРВ. Тем не менее, Windows NT имеет ряд ограничений. Такие ее особенности, как предпочтение аппаратного прерывания программному (даже если это простое движение мыши), выполнение в подпрограмме обработки аппаратных прерываний лишь необходимых действий с выполнением последующей обработки через очередь отложенных процедур, отсутствие приоритетной обработки процессов в очереди отложенных процедур, не позволяют отнести Windows NT к категории классических ОС реального времени.

Ряд фирм (LP Elektronik, Imagination Systems, RadSys, Spectron Microsystems, VenturCom) предприняли более радикальные попытки превратить Windows NT в ОС жесткого реального времени. Рассмотрим некоторые ключевые особенности реализации такой идеи на подсистеме реального времени RTX (Real Time Extension), предложенной фирмой Ventur Com. Именно эта реализация получает в настоящее время наиболее широкое распространение. (см. Продолжая разговор о расширениях реального времени для Windows NT, А. Жданов МКА 98/2). Фирмы-разработчики SCADA-систем незамедлительно начали предлагать применение новых решений. Так, набор прикладных интерфейсов программирования RTX 4.1 (Ventur Com) в FIX позволяет:

осуществлять полный контроль над задачами реального времени;
использовать фиксированную систему из 128 приоритетов для контроля RTX-задач;
применять стандартные средства обмена данными между задачами;
обращаться к стандартным функциям из Win32 API.

Появление подобных решений, во-первых, наносит очередной удар по SCADA-системам на базе ОСРВ, поскольку отнимает (хотя и достаточно искусственно) у них очень важный козырь преимущества жесткого реального времени, заложенные в ОСРВ, и, во-вторых, теснит применение ОСРВ во встраиваемых системах.

Эксплуатационныехарактеристики

Эксплуатационные характеристики SCADA-системы имеют большое значение, поскольку от них зависит скорость освоения продукта и разработки прикладных систем. Они в конечном итоге отражаются на стоимости реализации проектов.

Удобство использования. Следует отметить, что сервис, предоставляемый SCADA-системами на этапе разработки прикладного ПО, обычно очень высок это вытекает из основных требований к таким системам. Почти все они имеют Windows-подобный пользовательский интерфейс, что во многом повышает удобство их использования, как в процессе разработки, так и в период эксплуатации прикладной задачи.

Наличие и качество поддержки. Необходимо обращать внимание не только на наличие технической поддержки SCADA-систем, как таковой, но и на ее качество. Для зарубежных систем в России возможны следующие уровни поддержки: услуги фирмы-разработчика; обслуживание региональными представителями фирмы-разработчика; взаимодействие с системными интеграторами. Судя по большому количеству установок зарубежных систем, исчисляющихся в тысячах (InTouch 80000, Genesis 30000), можно предположить, что поддержка этих системдостаточно эффективна.

Отечественные системы, несмотря на сравнительно малые количества установок по сравнению с системами ведущих зарубежных фирм (имеется в виду глобальный рынок), создавались и поддерживаются фирмами-разработчиками, содержащими штаты высокопрофессиональных программистов, которые имеют все предпосылки для качественного технического обслуживания своих продуктов. Так, для освоения Trace Mode фирма AdAstra предоставляет полную документацию на русском языке, организует периодические курсы обучения, реализует горячую линию, готова по заказу внести в систему функциональные изменения или разработать необходимые драйверы.

Русификация. Любая система управления, имеющая интерфейс с оператором, должна допускать возможность общения с человеком на его родном языке. Поэтому крайне важна возможность использования в системе различных шрифтов кириллицы, ввод/вывод системных сообщений на русском языке, перевод документации, различных информационных материалов. Для некоторых систем (Image, Trace Mode) эта проблема вообще отсутствует, так как они разрабатывались отечественными фирмами. Для многих зарубежных продуктов проблема русификации в значительной мере снимается, во всяком случае, для подсистем исполнения или подсистем исполнения (RunTime), если они используют наборы шрифтов Windows. Часть зарубежных систем имеют переводы документации на русский язык (InTouch). Нужна ли русифицированная среда разработки? Положительный ответ не очевиден. Но если да, то среда, обязательно протестированная и рекомендованная фирмой-разработчиком. Так как с технической точки зрения проблем с русификацией нет (использование редакторов ресурсов из любой среды разработки Borland C++, Visual C++), то проблема лишь в легитимности этой процедуры.

Интеграция многоуровневых систем автоматизации

Схематично уровни управления предприятием показаны на рис.3. SCADA-системы ответственны за получение информации с уровня Управления, снизу, т.е. от различных датчиков через устройства сопряжения, от программируемых контроллеров, поставляющих информацию для непосредственного управления производственным процессом. Далее информация с уровня Управления поступает на вход SCADA-систем. На SCADA-уровне возможно оперативное управление процессом, принятие тактических решений на основе информации, полученной на уровне Управления. Сам процесс поступления информации на производстве происходит и сверху, и снизу. Сверху формируется информация, отвечающая за работу предприятия в целом, осуществляется планирование производства. На рис.4 дана информационная модель предприятия.

Рис. 3. Уровни управления предприятием

Точная, своевременная, достоверная информация на каждом уровне производства позволяет оценить уровень издержек, качество и конкурентоспособность продукции. Для организации связи между информацией сверху и снизу необходим класс инструментальных средств управления производством, ответственный за доставку данных в реальном времени с уровня Управления наверх и в обратном направлении, с возможной обработкой этих данных. Поэтому достаточно важным критерием сравнения инструментальных средств, поддерживающих разработку АСУ ТП, является наличие средств доставки информации со SCADA-уровня наверх, на уровень планирования производства. Ряд фирм (Intellution, Wonderware) предлагает продукты (Fix BOS, InTrack, InBatch), представляющие собой системы управления производством. Основное их назначение заключается в создании прикладных программ, моделирующих и прослеживающих каждую стадию производственных процессов от загрузки сырья до выпуска готовой продукции.

Рис. 4. Информационная модель предприятия

Огромное стратегическое значение имеет то, насколько инструментальные системы АСУ ТП связаны с Microsoft BackOffice Suite, поскольку последние стали распространенными офисными программными продуктами. Поэтому, например, все продукты FactorySuite компании Wonderware легко интегрируются с такими продуктами, как Microsoft SQL Server, Windows NT Server, System Management Server, SNA Server и Mail-Server. Фирма Wonderware предлагает IndustrialSQL Server, позволяющий регистрировать данные в реальном времени. Источником данных могут быть InTouch-серверы ввода-вывода. Построен же IndustrialSQL Server на базе Microsoft SQL Server. Это существенно расширяет возможности всего производственного персонала в смысле возможности доступа к полной информации о любом этапе производства.

Все более актуальным становится требование передачи как статической определенные моменты времени), так и динамической (постоянно) информации на web-узлы. Появившиеся в некоторых web-браузерах объекты ActiveX четвертой версии Microsoft Explorer, например) позволяют передавать данные из SCADA-системы на web-страницы. Но существуют и более многофункциональные компоненты типа Scout фирмы Wonderware, обеспечивающие возможность доступа к системам автоматизации на базе InTouch через Internet/Intranet и позволяющие удаленному пользователю взаимодействовать с прикладной задачей автоматизации, как с простой WEB-страницей.

Заключение

По функциональным возможностям все рассмотренные системы в целом сравнимы. Технология программирования близка к интуитивному восприятию автоматизируемого процесса. Плюс мощное объектно-ориентированное программирование, используемое в большинстве этих пакетов, делает эти продукты легкими в освоении и доступным для широкого круга пользователей.

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

Важной особенностью всех SCADA-систем является количество поддерживаемых разнообразных ПЛК. Системы InTouch, Factory Link, GENESIS, RealFlex поддерживают десятки и сотни драйверов, что делает их безусловными лидерами по этому показателю.

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

У разработчиков SCADA-систем на платформе Windows NT появилась возможность использовать расширение реального времени (RTX), чтобы преодолеть недостатки Windows NT в задачах реального времени.

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

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

Коль скоро общее поле деятельности ведущих компаний-производителей описываемых инструментальных систем сегодня концентрируется в области MS Windows NT, коль скоро общие технические возможности систем достаточно близки, то главный упор делается на качество технической поддержки, на качество обучения пользователей, на концентрацию и качество дополнительных комплексных услуг по освоению и внедрению конечной системы управления. Другими словами на сокращение издержек системных интеграторов и конечных пользователей на инжиниринг и менеджмент своих проектов, на уменьшение стоимости сопровождения конечной системы. Именно эти показатели сегодня, в основном, влияют на рейтинг и рыночный успех той или иной SCADA-системы. Пожалуй, эти показатели даже более важны, чем абсолютные стоимостные характеристики SCADA.

С автором можно связаться по:тел. (095) 742-68-28

е-mail: nak@rtsoft.msk.ru

21.04.2014