И еще раз о SCADA - общие характеристики
Статья от Олег А. Иванов |  2010-09-16 15:26:44
SCADA системы существенно изменились на протяжении последних лет в плане функциональности, масштабируемости, быстродействии и открытости. Уже согласно названию SCADA это не полноценная система управления, а больше система наблюдения, позиционируемое в качестве программного обеспечения верхнего уровня, взаимодействующего с PLC контроллерами или другими устройствами сбора данных.

SCADA системы используются не только в системах контроля производством в сталелитейной промышленности, энергетике, но и на экспериментальных объектах типа ядерных станций. Такие объекты имеют от 1000 до десятков тысяч каналов ввода-вывода. В самом начале SCADA системы разрабатывались и работали под DOS, VMS и UNIX, а затем плавно переместились на Windows XP, Windows Server 2003 и Linux.

Архитектура

Аппаратная архитектура
Архитектура системы состоит из двух основных частей: «клиентской» для реализации человеко-машинного интерфейса и «сервера данных» для взаимодействия с источниками данных уровня оборудования. Контроллеры типа PLC, PAC или даже PC-совместимые подключаются к серверу данных либо напрямую через сеть или с помощью полевых шин – собственных (Siemens H1) или общих (Profibus). Серверы данных соединяются между собой и с клиентами с помощью Ethernet LAN.

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

Коммуникации

Внутренние коммуникации:
Сервер-клиент и клиент-серверные коммуникации происходят с помощью стандартных механизмов («публикации-подписки» и «событий-обработчиков») и используют TCP/IP протокол для передачи данных. Если подробнее, то выглядит это так – клиентское приложение «подписывается» на параметр и получает уведомление только в случае его изменения. Серверы данных опрашивают контроллеры с определенной пользователем частотой, которая может быть разной для различных параметров. Каждый параметр сопровождается временной меткой и статусом. Все пакеты поставляются с коммуникационными драйверами для большинства известных PLC и основных протоколов типа Modbus. Один сервер данных может работать сразу по нескольким протоколам и ограничивается лишь количеством COM-портов, интерфейсных плат или другими аппаратными ограничениями.
Интерфейс

Наиболее простым способом взаимодействия с оборудованием сбора данных остается стандарт OPC. Стандарт развился от классических OPC DA, OPC HDA и OPC AE, которые базировались на COM/DCOM до введенных в последние годы OPC UA и OPC XML-DA. OPC UA это уже один унифицированный стандарт, который объединил в себе все остальные, отвязался от платформы Microsoft (и соответственно от Windows) и предоставил разработчикам-интеграторам более гибкую информационную модель.

Также почти все SCADA для Windows предоставляют интерфейс ODBC для доступа к логам, архивам и текущим данным. Кроме того они поддерживают DDE, который позволяет динамически визуализировать данные в электронные таблицы Excel и динамические библиотеки (DLL).
База данных
Конфигурационные данные сохраняются в базе данных, которая физически может быть расположена на разных серверах, но логически является одним целым. Формат хранимых данных собственный для каждой SCADA системы и зависит от логической структуры данных.
Масштабируемость

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

Функциональность
Пользователи системы распределяются по группам, каждая из которых имеет свои привилегии в плане чтения/записи переменных и параметров в системе, доступа к различным экранам, формировании событий итд. Любая система поддерживает набор мнемосхем – экранов оператора, между которыми можно переключаться и которые можно структурировать иерархически. Все они также поддерживают концепцию привязки графических объектов мнемосхемы к переменным состояния или управления. Стандартная SCADA система имеет библиотеку графических элементов для визуализации процессов, как собственной разработки, так и свободно распространяемые (в несколько тысяч элементов). Рабочий стол оператора с мнемосхемой можно масштабировать, скролить, а в некоторых случаях и изменять элементы не выходя из режима исполнения. Практически все SCADA системы обладают возможность строить тренды, на которых переменные процесса отображаются в динамике. Архивные тренды позволяют также визуализировать состояние переменной в прошлом, отображая данные из БД за определенный промежуток времени. На одном графике можно вывести и несколько параметров, а сами тренды могут быть не только линейными, но и, например, барграфическими.
Обработка тревог
Обработка тревог основывается на анализе отдельных значений (выход за пределы, анализе статуса и метки времени) или совокупном анализе нескольких переменных (по заранее заложенным алгоритмам). Тревоги имеют различные уровни важности, определяющие приоритет сообщений, и могут распределяться и выводиться для разных операторов. Их также можно фильтровать, сводить в группы, отправлять на удаленные машины, на е-мэйл или посредством SMS.

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

Веб доступ

Почти все современные SCADA системы имеют встроенный веб-сервер, который позволяет удаленно получать доступ к информации о происходящих на объекте процессах, а при определенных полномочиях и влиять на них. Это самый удобный из всех вариантов решения типа клиент-сервер, поскольку не требуется никаких дополнительных усилий на клиентской стороне. Более того, на текущий момент все больше SCADA систем разрабатывается как «web-based», то есть полностью построенными на базе веб-технологий типа AJAX,Silverlight.
Средства разработки
В стандартной поставке SCADA системы обычно идут следующие приложения: графический редактор (включающий в себя стандартные методы построения изображений); библиотека элементов (вентили, шкалы, индикаторы, трубы); редактор трендов; утилита для работы и настройки базы данных; редактор скриптов на встроенном языке программирования; редактор источников данных (драйверов, ODBC клиентов); OPC клиент для чтения данных с серверов и OPC сервер для публикации собственных; среда исполнения.