УДК 004.94
1 2 А.В. Вицентии , Е.В. Харионовскии
ТЕХНОЛОГИИ ДОСТУПА К ДАННЫМ В СОВРЕМЕННЫХ SCADA-СИСТЕМАХ Аннотация
В работе рассмотрены различные технологии передачи данных в среде современных SCADA-систем и проведен их сравнительный анализ с точки зрения применимости для передачи больших объемов данных. Отдельное внимание уделено возможностям импорта и экспорта данных из баз и хранилищ данных SCADA-систем.
Ключевые слова:
Scada-системы, базы данных, ODBC, OPC, туннелинг.
A.V. Vicentiy, E.V. Harionovskiy DATA ACCESS TECHNOLOGIES IN MODERN SCADA
Abstract
In this paper various technologies of data transmission in the environment of modern SCADA-systems are considered and their comparative analysis from the point of view of applicability for transfer of great volumes of data is carried out. The separate attention is given possibilities of import and export of data from bases and storehouses of the given SCADA-systems.
Keywords:
SCADA, databases, ODBC, OPC, tunneling.
Введение
SCADA (от англ. Supervisory Control And Data Acquisition, Диспетчерское управление и сбор данных) - программный пакет предназначенный для разработки или обеспечения работы в реальном времени систем сбора, обработки, отображения и архивирования информации об объекте мониторинга или управления. SCADA может являться частью АСУ ТП, АСКУЭ, системы экологического мониторинга, научного эксперимента, автоматизации здания и т.д. На сегодняшний день, различные SCADA-системы используются практически во всех отраслях промышленности, где требуется обеспечивать операторский контроль над технологическими процессами в реальном времени. Данное программное обеспечение устанавливается на компьютеры и, для связи с объектом, использует драйверы ввода-вывода или OPC/DDE серверы. Программный код может быть написан как на языке программирования (например, на C++), так и сгенерирован в среде проектирования. Список наиболее популярных SCADA-систем в нашей стране приведен на рис. 1.
1 ИИММ КНЦ РАН
2 КФ ПетрГУ
SCADA-систала Фирма-11 »готовит ель Страна
Factory Link U nited States-D АТА С о. США
InTouch Wondenrtsne США
Genesis Iconics США
RealFlex BJ-Software-Systems США
Site« Jade Software Англия
FIX Intellution США
Trace №de Ad Astra Россия
IGSS Seven Technologies Датя
Image Технолинк Россия
RSView Rockwell .Software-Inc. США
Рис.1. Scada-системы популярные в России
Целью данной работы является сравнительный анализ существующих технологий передачи данных, обеспечивающих работу с оборудованием SCADA-системы вне зависимости от его производителя.
Организация системы сбора и обработки информации
К основным задачам, решаемым при помощи SCADA-систем, можно отнести:
• обмен данными с УСО (устройства связи с объектом, то есть с промышленными контроллерами и платами ввода/вывода) в реальном времени через специальные драйверы;
• обработка информации в реальном времени;
• логическое управление;
• отображение информации на экране монитора в удобной для человека форме;
• ведение базы данных реального времени с технологической информацией;
• аварийная сигнализация и управление тревожными сообщениями;
• подготовка и генерирование отчетов о ходе технологического процесса;
• осуществление сетевого взаимодействия между компонентами SCADA-системы;
• обеспечение связи с внешними приложениями (СУБД, электронные таблицы, текстовые процессоры и т. д.). В системе управления предприятием такими приложениями чаще всего являются приложения, относимые к уровню MES. [4,5].
Блок управления SCADA-системы собирает у себя все данные с устройств, управляющих инженерными системами, и сохраняет их в базе данных для последующего анализа. Оператор контролирует параметры систем, осуществляет управление инженерными системами.
Основным узлом информационной системы является база данных (БД). Поэтому внутренние системы сбора и обработки информации строятся с учетом
специфичных особенностей конкретных БД. Вследствие этого данный компонент часто считается больше внутренним, а не внешним по отношению к интеграционной платформе. Минус данного подхода заключается в том, что в большинстве подобных систем смена БД либо невозможна, либо является очень сложной операцией. На практике часто приходится сталкиваться с тем, что покупателя по разным причинам может не устраивать выбранная в SCADA-системе БД, и потому приобретение им данного продукта становится невозможным [4].
Например, в системе сбора и обработки информации (ССОИ) Securix в качестве БД выбран Firebird Database Server. Основной причиной такого выбора стало обеспечение выполнения требований к такого рода системам (например, в технические условия одной из инсталляций Securix входило хранение данных для охрано-пожарной сигнализации (ОПС) и системы контроля и управления доступом (СКУД) объекта общей площадью более 30000 м2 с количеством хранимых учетных записей более 16000) при его бесплатности, что значительно снизило стоимость продукта в целом. При этом в Securix создан набор прокси-драйверов для работы с БД, стандартизирующих протокол взаимодействия с ней, что позволяет теоретически подключить к ССОИ любую известную БД. Важным аспектом в структурном построении сетевых систем управления является структура базы данных реального времени (централизованная или распределенная). Каждая из структур в SCADA-системах реализуется разными разработчиками по-разному. От реализации существенно зависят эффективность обеспечения единства и целостности базы данных, ее надежность, возможности модификации и т.д.
В одних случаях для доступа к данным на компьютере-клиенте создается своя копия базы данных, копируемая с удаленных серверов. Дублирование данных может привести к определенным проблемам с точки зрения целостности базы данных и производительности системы управления. При модификации базы данных с такой организацией, например, при введении дополнительной переменной потребуются изменения в каждой сетевой копии, использующей эту переменную [2].
В других случаях компьютерам-клиентам не требуются копии баз данных. Они получают необходимую им информацию по сети от сервера, в задачу которого входит подержание базы данных. Серверов может быть несколько, и любая часть данных хранится только в одном месте, на одном сервере. Поэтому и модификация базы данных производится только на одном компьютере -сервере базы данных, что обеспечивает ее единство и целостность. Такой подход к структурному построению системы снижает нагрузку на сеть и дает еще целый ряд преимуществ.
Практически любая SCADA-система имеет в своем составе базу данных реального времени и подсистему архивирования данных. Но подсистема архивирования не предназначена для длительного хранения больших массивов информации (месяцы и годы). Информация в ней периодически обновляется, иначе для нее просто не хватит места. Информация, отражающая хозяйственную деятельность предприятия (данные для составления материальных балансов установок, производств, предприятия в целом и т. п.), хранится в реляционных базах данных (РБД) типа Oracle, Sybase и т.д. В эти базы данных информация поставляется либо с помощью ручного ввода, либо автоматизированным
способом (посредством SCADA-систем). Таким образом, выдвигается еще одно требование к программному обеспечению SCADA-систем - наличие в их составе протоколов обмена с типовыми базами данных.
Механизмы обмена данными с БД
На сегодняшний день наиболее широко применимы два механизма такого обмена: ODBC и SQL. ODBC (Open Data Base Connectivity - взаимодействие с открытыми базами данных) - международный стандарт, предполагающий обмен информацией с РБД посредством ODBC-драйверов. Как стандартный протокол компании Microsoft, ODBC поддерживается и наиболее распространенными приложениями Windows. C помощью ODBC прикладные программисты могут разрабатывать приложения для использования одного интерфейса доступа к данным, не беспокоясь о тонкостях взаимодействия с несколькими источниками. Это достигается благодаря тому, что поставщики различных баз данных создают драйверы, реализующие конкретное наполнение стандартных функций из ODBC API с учётом особенностей их продукта. Приложения используют эти функции, реализованные в соответствующем конкретному источнику данных драйвере, для унифицированного доступа к различным источникам данных. SQL (Structured Query Language) - язык структурированных запросов.
Программное обеспечение SCADA должно взаимодействовать с контроллерами для обеспечения человеко-машинного интерфейса и с системой управления. К контроллерам через модули ввода/вывода подключены датчики технологических параметров и исполнительные устройства. Информация с датчика записывается в регистр контроллера. Для ее передачи в базу данных SCADA-сервера необходима специальная программа, называемая драйвером. Драйвер, установленный на сервере, обеспечивает обмен данными с контроллером по некоторому физическому каналу. Но для реализации обмена необходим и логический протокол.
После приема SCADA-сервером, сигнал попадает в базу данных, где производится его обработка и хранение. Для отображения значения сигнала на мониторе рабочей станции оператора, информация с сервера должна быть передана по сети клиентскому компьютеру. И только после этого оператор получит информацию, отображенную изменением значения, цвета, размера, положения и т.п. соответствующего объекта операторского интерфейса.
Большое количество контроллеров с разными программно-аппаратными платформами и постоянное увеличение их числа заставило разработчиков включать в состав SCADA-системы большое количество готовых драйверов (до нескольких сотен) и инструментарий для разработки собственных драйверов к новым или нестандартным устройствам нижнего уровня. Для взаимодействия драйверов ввода/вывода и SCADA-системы до недавнего времени использовались два механизма:
• DDE (Dynamic Data Exchange - динамический обмен данными);
• обмен по собственным (известным только фирме-разработчику) протоколам.
Взамен DDE компания Microsoft предложила более эффективное и надежное средство передачи данных между процессами - OLE . А вскоре на базе OLE появился новый стандарт OPC, ориентированный на рынок промышленной
автоматизации. Новый стандарт, во-первых, позволяет объединять на уровне объектов различные системы управления и контроля; во-вторых, устраняет необходимость использования различного нестандартного оборудования и соответствующих коммуникационных программных драйверов. С точки зрения SCADA-систем, появление ОРС-серверов означает разработку программных стандартов обмена с технологическими устройствами. ОРС - интерфейс допускает различные варианты обмена: получение сырых данных с физических устройств, из распределенной системы управления или из любого приложения [3]. Схема взаимодействия приложений с помощью технологии ОРС представлена на рис. 2.
Рис. 2. Иллюстрация технологии ОРС
OPC - это аббревиатура от OLE for Process Control (OLE для управления процессами). Технология OPC основана на разработанной компанией Microsoft технологии OLE (Object Linking and Embedding - встраивание и связывание объектов). Под объектами здесь подразумеваются так называемые компоненты, которые представляют собой готовые к использованию мини-приложения. Встраивая и связывая эти компоненты, можно разрабатывать приложения компонентной архитектуры. Этот подход к разработке приложений, предложенный компанией Microsoft, получил название технологии COM (Component Object Model - модель компонентных объектов). Приложение-клиент может удаленно вызывать те или иные функции этих объектов так, как будто объекты находятся в адресном пространстве самого приложения.
Рассмотрим более подробно организацию обмена данными, используемую в SCADA-системе GENESIS32. Основным инструментом данной технологии является OPC-сервер. OPC-сервер отвечает за получение данных, запрошенных клиентом, от соответствующего устройства управления процессом. На каждом сервере имеется некоторое количество OPC-групп, которые объединяют наборы данных, запрос на получение которых поступил от клиента. Группы на сервере могут быть доступны нескольким клиентам одновременно или только одному клиенту. OPC-группа содержит набор OPC-элементов, в которых хранятся
данные, поступившие от соответствующего устройства управления процессами. Клиент может произвольно объединять элементы в группы. Этот процесс
изображен на рис. 3.
Рис. 3. Структурная схема передачи и резервирования ОРС-данных
В основе стандарта ОРС лежит технология DCOM (Distributed Component Object Model). Но при передаче данных на большие расстояния, что необходимо для АСУ ТП, DCOM имеет серьезные недостатки. Один из главных недостатков
- неприспособленность для работы в глобальной сети Интернет. Основная причина - это применение межсетевых экранов, или брандмауэров, которые защищают компьютер от несанкционированного доступа извне. Для решения этой проблемы можно использовать технологию туннелинга TCP, осуществляющего передачу данных через стандартный восьмидесятый порт брандмауэра. Этот порт обычно используется для передачи данных по http-протоколу (протоколу передачи гипертекста), и поэтому он, как правило, открыт. Но для осуществления туннелинга и передачи данных требуется установка специального программного обеспечения, входящего в Windows, COM Internet Services и IIS Web-сервер (Internet Information Server). Успешный доступ через DCOM происходит в случае, когда компьютеры находятся в одном домене или в одной рабочей группе. Это указывает на возможность использования туннелинга TCP в пределах одного домена с соответствующим образом настроенными брандмауэрами. Кроме проблем, связанных с передачей данных, существуют проблемы с аутентификацией клиента [6].
Учитывая данные сложности, был разработан универсальный ОРС-сервер (OPC UA) для систем HMI/SCADA. Технология OPC UA позволяет обеспечить надежную связь клиентов, доступ к серверам данных через локальные вычислительные сети и интернет, защищенное использование Web-служб.
Компания Iranics - лидер в области приложений, базирующихся на ОРС-технологии - в новой версии SCADA-системы GENESIS32 V9 использует
встроенную поддержку технологии OPC UA и туннелинг OPC-данных (компонент DataWorX32). Архитектура туннелинга с применением DataWorX32 представлена на рис. 4.
Приложения
GraphWorX32. Alarm WorX32. TrendWorX32. и другие
GenCUent
ОРС
Данные.
ТрееогиАсобытмя
Исторические
данные
ОРС Данные Т ревсхи& события Исторические данные
Сторонние ОРС Данные. Тревогм& события Исторические данные
( ОРС туннелинг"^) ( GenClient J
ОРС Данные. Трееоси&собы ТИЯ Исторические данные
Сторонние ОРС серверы
Стандартная архитектура GENESIS32 Архитектура тунелинга ОРС DataWorX32
Рис.4. DataWorX32 OPC архитектура туннелинга
Все OPC-совместимые приложения-клиенты могут обмениваться данными с локальными устройствами или по сети. Кроме того, обмен может осуществляться более чем с одним сервером OPC одновременно.
Любое приложение-клиент OPC может обмениваться данными с любым OPC-сервером данных (OPC DA), OPC-сервером тревог и событий, и OPC-сервером исторических данных (HDA). [1]
DataWorX32 в пакете GENESIS32 V9 представлен в трех модификациях: профессиональной, стандартной и облегченной. DataWorX32 содержит большое количество принципиально новых возможностей:
• полное резервирование OPC-данных, OPC тревог и событий и OPC исторических данных;
• туннелинг для любых сторонних ОРС-серверов и ОРС-клиентов;
• утилиту MonitorWorX, обеспечивающую централизованную диагностику системы и отображающую ее производительность;
• интеграцию туннелинга в универсальном навигаторе данных;
• группировку OPC-тегов и построение мостов данных.
Технология туннелинга OPC включена во все версии DataWorX32 V9 и позволяет связывать удаленный OPC-сервер с локальными клиентами устойчивым и безопасным способом. Туннелинг OPC основан на мощной коммуникационной платформе GenBroker, которая обеспечивает высокоэффективную и устойчивую связь, заменяя протокол DCOM от Microsoft. Туннелинг OPC в DataWorX32 V9 полностью совместим с OPC-стандартом, не нарушает систему сетевой защиты IT, поддерживает связь по LAN, WAN и Интернет со всеми атрибутами встроенной безопасности. Также полностью поддерживает открытые стандарты промышленности и протоколы: OPC доступа к данным (OPC Data Access DA 3.0); OPC тревог и событий (OPC Alarm and Event); OPC доступа к историческим данным (OPC Historical Data Access); OPC единой архитектуры (UA); протоколов связи TCP/IP и XML.
Заключение
Использование технологии OPC позволяет разработчику SCADA-системы свободно выбирать оборудование независимо от того, кто его производит, что существенно расширяет возможности ее применения, так как позволяет любому OPC-совместимому клиентскому приложению получать доступ к любому устройству управления, у которого есть OPC-совместимый сервер.
Другим важным преимуществом технологии ОРС является то, что при ее использовании снижаются риски и стоимость реализации проектов АСУ ТП, так как OPC-совместимые компоненты работают на единой технологической основе.
Литература
1. SCADA-система GENESIS32 в сквозной автоматизации производства.
- Режим доступа: http://isup.ru/artides/2/243/
2. SCADA-системы: взгляд изнутри. - Режим доступа: http://www.scada.ru/publication/book/preface.html.
3. ТРЕЙС МОУД - интегрированная SCADA и softlogic-система для разработки АСУТП. - Режим доступа: http://adastra.ru/ru/tm/tm5/.
4. Эволюция SCADA: от телеметрических приложений до корпоративных систем. - Режим доступа: http://goods.marketgid.com/goods/271/1643045/
5. Меньков, А.В. Теоретические основы автоматизированного управления / А.В. Меньков, В.А. Острейковский. - М.: Оникс, 2005. - 640 с.
6. Втюрин, В.А. Автоматизированные системы управления технологическими процессами. Основы АСУТП / В.А. Втюрин. - Спб.: СГЛА им. С.М. Кирова, 2006. - 152 с.
Сведения об авторах Вицентий Александр Владимирович
к.т.н, научный сотрудник. Учреждение Российской академии наук Институт информатики и математического моделирования технологических процессов Кольского научного центра РАН.
Россия, 184209, г. Апатиты Мурманской обл., ул. Ферсмана, д. 24A. е-mail: alx 2003@mail.ru
Alexander V. Vicentiy
Ph.D. (Tech. Sci.), researcher. Institution of Russian Academy of Sciences, Institute for Informatics and Mathematical Modeling of Technological Processes, Kola Science Center оf RAS.
Russia, 184209, Apatity Murmansk region, Fersman St. 24А.
Харионовский Евгений Вячеславович
студент. Кольский филиал Петрозаводского государственного университета.
Россия, 184209, г. Апатиты Мурманской обл., ул. Космонавтов, д. 3. e-mail: vyperdota@rambler.ru
Evgeniy V. Harionovskiy
student. Kola Branch Petrozavodsk State University.
Russia, 184209, Apatity Murmansk region, Kosmonavtov St. 3.