Обзор программных средств для разработки человеко-машинного интерфейса
В настоящее время на рынке существует множество SCADA систем, но но речь пойдёт о более популярных. Первая такая система - это SIMATIC WinCC.
SCADA система SIMATIC WinCC (Windows Control Center) - это компьютерная система человеко-машинного интерфейса, работающая под управлением операционных систем Windows 2000/XP и предоставляющая широкие функциональные возможности для построения систем управления различного назначения:
простое построение конфигураций клиент-сервер;
поддержка резервированных структур систем автоматизации;
неограниченное расширение функциональных возможностей благодаря использованию ActiveX элементов;
открытый OPC-интерфейс (OLE for Process Control) интерфейс для реализации функций обмена данными;
простое и быстрое конфигурирование системы в сочетании с пакетом STEP 7.
Базовая конфигурация системы включает в свой состав набор функций, позволяющих выполнять событийно управляемую сигнализацию, архивирование результатов измерений, регистрировать технологические данные и параметры настройки конфигурации, функции управления и визуализации. Целый ряд функций может быть реализован с помощью встроенных ANSI-C компилятора и VisualBasic-script: от простейших операций до полного доступа к системным функциям SIMATIC WinCC. Кроме того, базовая система может дополняться опциональными пакетами WinCC и WinCC Add-ons.
На основе WinCC могут создаваться как простейшие системы человеко-машинного интерфейса с одной станцией оператора, так и мощные многопользовательские системы, включающие в свой состав десятки станций. Поддержка стандартных интерфейсов OLE, ODBC, OLE и SQL обеспечивает универсальность и открытость WinCC, позволяет использовать ее в сочетании с любым другим программным обеспечением. WinCC легко интегрируется во внутреннюю информационную сеть компании. Это не только снижает затраты на ее внедрение, но и повышает гибкость информационной системы.
Система SIMATIC WinCC разработана для решения задач визуализации и оперативного управления в различных областях промышленного производства. Система оснащена мощным интерфейсом для связи с процессом, пригодна для работы со всем спектром изделий SIMATIC, обеспечивает парольный доступ к управлению процессом, обладает высокой производительностью. Базовая конфигурация системы обладает высокой универсальностью и может быть использована для построения систем управления самого разнообразного назначения.
Открытая система визуализации фирмы SIEMENS WinCCTM позволяет легко и просто интегрировать компоненту визуализации и обслуживания в создаваемые или уже существующие системы технологического управления, избежав при этом непомерных затрат на проектирование и написание программного обеспечения, и конечно же она поддерживает русский язык. Ядро продукта WinCCTM образует нейтральная по отношению к отраслям промышленности и технологиям базовая система, которая оснащена всеми важнейшими функциями визуализации и обслуживания.
Так же на рынке популярна SCADA-система TRACE MODE.
Рис.8 Графическая мнемосхема процесса, созданная в SCADA-системе TRACE MODE.
TRACE MODE предназначена для разработки крупных распределенных АСУТП (автоматизированных систем управления технологическим процессом) широкого назначения. TRACE MODE создана в 1992 году фирмой AdAstra Research Group Ltd (Россия), и к настоящему времени имеет свыше 7000 инсталляций. Системы, разработанные на базе TRACE MODE, работают в энергетике, металлургии, нефтяной, газовой, химической и других отраслях промышленности и в коммунальном хозяйстве России. По числу внедрений в России TRACE MODE значительно опережает зарубежные пакеты подобного класса. TRACE MODE - основана на инновационных, не имеющих аналогов технологиях. Среди них: разработка распределенной АСУТП как единого проекта, автопостроение, оригинальные алгоритмы обработки сигналов и управления, объемная векторная графика мнемосхем, единое сетевое время, уникальная технология playback - графического просмотра архивов на рабочих местах руководителей. TRACE MODE - это первая интегрированная SCADA - и softlogic-система, поддерживающая сквозное программирование операторских станций и контроллеров при помощи единого инструмента. Разработка графического интерфейса операторских станций проекта осуществляется в объектно-ориентированном редакторе представления данных.
Графические изображения создаются в векторном формате DBG, однако возможно использовать и растровые изображения в формате BMP. Размер графического поля и число экранов не ограничены. Редактор содержит библиотеки объемных изображений мнемосхем технологических объектов, включающих баки, емкости, трубы, задвижки, а также их различные сечения и сопряжения. Формы динамизации содержат все необходимые элементы, в т. ч. гистограммы, графические, цветовые и звуковые сигнализаторы, тренды, бегущие дорожки, мультипликацию и т.д. Обширный набор библиотек технологических объектов, включающий емкости, теплообменники, электротехнические символы и др., а также панели управления, ввода заданий, регуляторов, приборов и т.д. Любая часть изображения может быть включена в объекты и анимирована произвольным образом. Для импорта изображений из других приложений Windows (например из AutoCAD) редактор поддерживает форматы WMF и EMF. Графические мнемосхемы возможно редактировать в реальном времени.
Исторические тренды TRACE MODE позволяют вводить неограниченное число переменных с неограниченной глубиной. В реальном времени пользователь может добавлять и удалять выводимые на тренд параметры, производить масштабирование и смещение трендов по осям X и Y. Тренды имеют визир и вывод значений в точке курсора. Основные функции:
модульная структура - от 128 до 64000х16 I/O. Количество тегов неограниченно;
0,001 с - минимальный цикл системы;
открытый формат драйвера для связи с любым УСО.
открытость для программирования (Visual Basic, Visual C++ и т.д.);
разработка распределенной АСУТП как единого проекта;
средства сквозного программирования АСУТП верхнего (АРМ) и нижнего (ПЛК) уровня;
встроенные библиотека из более чем 150 алгоритмов обработки данных и управления в т. ч. фильтрация, PID, PDD, нечеткое, адаптивное, позиционное регулирование, ШИМ, управление устройствами (клапан, задвижка, привод и т.д.), статистические функции и произвольные алгоритмы;
автоматическое горячее резервирование;
поддержка единого сетевого времени;
средства программирования контроллеров и АРМ на основе международного стандарта IEC 1131-3;
более 200 типов форм графического отображения информации в т. ч. тренды, мультипликация на основе растровых и векторных изображений, ActiveX;
просмотр архивной информации в реальном времени в т. ч. в виде трендов и таблиц;
сеть на основе Netbios, NetBEUI, IPX/SPX, TCP/IP;
обмен с независимыми приложениями с использованием OPC client/server, DDE/NetDDE client/server, SQL/ODBC, DCOM;
автоматическое резервирование архивов и автовосстановление после сбоя;
мониторинг и управление через Internet;
полностью русифицирована;
техническая поддержка на русском языке.
Вышеописанные SCADA-системы являются популярными на рынке SCADA-систем. Но следующая SCADA-система GENESIS32, которая будет описана подробней в данной дипломной работе, на мой взгляд, является лидером.
GENESIS32 является комплексом клиентских и серверных приложений, основанных на технологии OPC (OLE for Process control - технология связывания и внедрения объектов для промышленной автоматизации), которые предназначены для разработки прикладного программного обеспечения визуализации контролируемых параметров, сбора данных и оперативного диспетчерского управления в автоматизированных системах управления технологическими процессами. GENESIS32 является комплексом 32-разрядных приложений для Windows 98, Windows NT,Windows 2000, Windows XP и Windows Vista, построенных в соответствии со спецификацией OPC. Комплекс предназначен для создания программного обеспечения сбора данных и оперативного диспетчерского управления верхнего уровня систем промышленной автоматизации. В состав GENESIS-32 также входит среда разработки и исполнения сценарных процедур VBA, обеспечивающая возможность разработки части программного обеспечения средствами Microsoft Visual Basic for Applications 6.0 (Visual Basic для приложений), входящего в популярный пакет MS Office 2000. Все программные компоненты реализованы на базе многопоточной модели и поддерживают технологию ActiveX.
Первый пакет, выпущенный фирмой для Windows в 1992 году - WinWorX - реализовал не все функции, необходимые для пакета программ класса SCADA. Фактически в него были включены все средства операторского интерфейса - динамическа графика, тренды, аварийные сообщения, рапорты, но не было собственно средств сбора и первичной обработки параметров процесса, а также автоматического управления. Эти задачи возлагались на пакет Genesis в версии для DOS, от которого по сети получал данные WinWorX. Обмен информацией шел в стандартном для Genesis'а протоколе, а специальная программа под Windows - DDE-сервер, приняв данные из сети, отдавала их WinWorX'у через стандартный уже для Windows протокол динамического обмена данными - DDE. Впрочем в качестве источника и приемника данных могли служить и любые другие Windows-программы, поддерживающие этот протокол. Реализованный подход дал возможность предложить средства, позволяющие организовать дополнительные сетевые рабочие места операторов, которые хотя и не связаны непосредственно с объектом, но функционально решают все задачи, необходимые для верхнего уровня системы. Для обеспечения успеха нового продукта на рынке, фирма установила на него невысокую цену, которая еще снижается при приобретении групповой лицензии (в 1,5 раза при приобретении лицензии на 6 рабочих мест и в два раза при приобретении лицензии на 12 рабочих мест, в последнем случае) (стоимость одного рабочего места оказывается ниже $1000, что существенно меньше, чем цена других известных на рынке продуктов аналогичного класса). Еще один маркетинговый шаг также повышал привлекательность WinWorX'а и уменьшал его стоимость - любой из модулей пакета, в случае, если на каком-либо из рабочих мест системы не нужны все его функции, можно приобрести отдельно (WinWorX Open Seriesa).
Пакет GENESIS for Windows полностью решает вопросы автоматизации производства на всех уровнях АСУТП, он также позволяет просто и эффективно решить проблему взаимодействия АСУТП с АСУП. Graphworx является модульной системой, состоящей из полностью независимых приложений, взаимодействующих между собой в самой современной на сегодняшний день программной архитектуре клиент-сервер. При создании системы можно комбинировать модули GENESIS for Windows и любые другие Windows приложения. Клиенты получают информацию от серверов по программной магистрали передачи данных в реальном времени Talx Data Bus. Несмотря на то, что пакет программ Genesis for Windows состоит из многих модулей, он является интегрированной системой, которую пользователь воспринимает как единое целое благодаря наличию общей оболочки - менеджера проекта, а также благодаря возможности использования общих средств автоматического формирования сценария работы в каждом модуле, где они могут понадобиться.
Прямые связи Graphworx с оборудованием управляются высокопроизводительным сервером реального времени (RTS), включающем в себя интерфейс драйверов ввода-вывода и функции контроля и управления. RTS сканирует ввод-вывод, вычисляет алгоритмы обработки сигналов, формирует сигналы тревоги и обслуживает все запросы на данные от приложений-клиентов. Благодаря использованию механизма приоритетной вытесняющей многозадачности обеспечивается гарантированное выполнение с заданным периодом наиболее критических функций, например обновление ввода-вывода. RTS работает с выбранным пользователем интервалом времени (50, 100, 250 миллисекунд, 1 или 2 секунды), прерывая на несколько миллисекунд работу Windows.
Конфигуратор, с помощью которого для RTS задается программа работы в режиме реального времени, это уже зарекомендовавший себя в DOSовской версии мощный графический редактор языка функциональных блоков. Создание конфигурации сводится к рисованию потока обработки данных с помощью связанных между собой алгоблоков. Библиотечные алгоритмы размещаются на схеме в виде прямоугольников, выходы одних блоков связаны линиями со стрелкой в точке входа с другими блоками. Созданную схему можно экспортировать в формат AutoCAD'а и использовать затем, например, в качестве мнемосхемы. Кроме того имеется возможность экспорта в формат dBase и последующего импорта из этого формата, что позволяет использовать широко распространенные программы баз данных и электронных таблиц для редактирования конфигурации. Такая технологи создания конфигурации бывает особенно удобна при необходимости тиражирования множества однотипных блоков или при выполнении операций поиска и замены. Кроме входов и выходов блоки имеют имя и настроечные параметры. Библиотека содержит свыше 60 алгоритмов нескольких типов (ввод-вывод, первичная обработка сигналов, арифметика, математические функции, логика, регулирование, управление и др.). Именно обширная библиотека алгоритмов позволят использовать Graphworx как средство прямого программного управления.
Приложения-клиенты обращаются к данным RTS, используя составное имя, включающее имя сетевого узла, имя конфигурации, имя блока и обозначение конкретного параметра в данном блоке. Сервер реального времени использует существующие, хорошо проверенные драйверы DOSовского GENESIS'а для интерфейса с полевым оборудованием.
Рабочая станция GENESIS for Windows может быть связана с другими GENESIS с помощью модуля GEN-NET, позволяющего передавать по сети данные, файлы и аварийные сообщения. Удаленные узлы GENESIS действуют как независимые серверы данных, связанные с устройствами ввода-вывода. Все данные, содержащиеся в удаленном узле GENESIS, доступны в реальном времени дл приложений-клиентов. Такая распределенная система позволяет обрабатывать огромное количество данных, не перегружая отдельные станции. В некоторых системах бывает целесообразно для сбора и обработки данных выделить отдельные машины, которые могут не иметь операторского интерфейса - дисплея и клавиатуры ("слепой узел"). Тем самым одни узлы распределенной системы оказываются специализированы на функциях сбора и обработки информации (GEN-NODE - специальная, без графики, сетевая версия Genesis'а дл DOS), другие используются исключительно для функций операторского интерфейса. Как правило, такое построение системы бывает целесообразным, когда несколько операторов должны иметь доступ к одним и тем же данным с объекта. При этом изменение архитектуры системы практически не требует переделок конфигурации, поскольку драйверы устройств и конфигурация RTS полностью совместимы между GENESIS for Windows и GENESIS'ом для DOS, а ссылки на переменные связаны только с именами сетевого узла и его конфигурации
Еще один метод доступа к данным с объекта используют серверы ввода-вывода. Каждый сервер ввода-вывода обеспечивает интерфейс с каким-то одним типом оборудования, например с определенным типом логического или регулирующего контроллера какой-либо фирмы. Сервер ввода-вывода состоит из двух частей - конфигуратора и исполняемого модуля.
Конфигуратор создает базу данных, совместимую со стандартом ODBC, для определения параметров ввода-вывода (имя, тип точки - аналоговый или дискретный, расположение данных в памяти, масштаб и многое другое). Совместимость с ODBC делает возможным экспорт информации в различные внешние базы данных, а также импорт данных из таких систем программирования контроллеров, которые поддерживают этот стандарт.
Исполняемый модуль сервера ввода-вывода обеспечивает связь с драйверами, обновляет в реальном времени базу данных текущими значениями переменных и формирует сигналы тревоги при отклонениях параметров за заданные пределы. Данные могут обновляться как непрерывно (например, для контроля аварийного отклонения), так и по запросу от приложения-клиента. Такой гибкий подход позволяет серверу ввода-вывода одновременно обрабатывать тысячи точек.
Сервер ввода-вывода работает как DDE-сервер, что позволяет использовать его не только в рамках GFW, но и как источник данных дл любых Windows-приложений, поддерживающих DDE.
GENESIS for Windows поддерживает стандартный протокол динамического обмена данными - Windows Dinamic Data Exchange (DDE). Модуль DDEWorX в качестве DDE-клиента может получать данные от внешних программ и передавать их приложениям-клиентам GFW по внутренней программной магистрали передачи данных Talx Data Bus. Для связи с другими рабочими станциями Windows в сети используется NetDDE. GFW поддерживает определяемые пользователем списки DDE-имен, благодаря чему соединение осуществляется простым нажатием кнопки мыши. Не менее просто использование таких инструментов, как Cut and Paste (Вырезать и Вклеить); для установления связи достаточно этими стандартными функциями редактирования вставить имя переменной из внешнего приложения в GFW. При отладке системы возможен просмотр и фильтрация DDE вызовов, ошибок, сообщений и т.п.
Модуль GraphWorX позволяет пользователю легко и быстро создавать динамические цветные экраны-мнемосхемы. Объектно-ориентированная графика дает возможность связать любой графический объект с технологическими параметрами процесса. Например, объект может одновременно менять цвет, размер и положение на экране в соответствии со значениями различных сигналов. Среди множества средств анимации изображения есть и мультипликация. Весь процесс создания мнемосхемы сводится к рисованию и заданию в диалоге динамических свойств изображения. При создании мнемосхемы используются ставшие уже привычными в Windows'овских программах последнего поколения плавающие инструментальные линейки, которые можно расположить в любом месте экрана.
Изображение всей мнемосхемы или ее отдельных частей может быть скопировано из других Windows приложений, импортировано из AutoCAD или GENESIS for DOS. Также имеется библиотека таких часто используемых символов как задвижки, насосы, панели регуляторов и т.п. Любое изображение на экране можно сохранить в собственной библиотеке. Особенно удобно то, что наряду со статическими в библиотеках могут храниться и динамические символы. Как библиотеки символов, так и целые мнемосхемы могут использоваться без переделок в различных проектах, позволяя накапливать не только опыт работы с пакетом, но и готовые решения, тиражируемые во всех последующих системах.
GraphWorX обеспечивает возможности конфигурирования непосредственно в режиме on-line, что обеспечивает отладку динамики мнемосхемы на реальных данных с объекта.
Окно GraphWorX, как и любое окно системы Windows, имеет свойства изменения размера и перемещения по экрану, при этом, естественно, вся графика и тексты растягиваются пропорционально изменению масштаба без потери графической информации. Эта возможность позволяет Вам следить за процессом во время работы других программ или расположить на экране множество мнемосхем одновременно.
В качестве элементов мнемосхемы могут быть использованы такие GFW-приложения, как TrendWorX и AlarmWorX. Во врем конфигурирования мнемосхемы доступны все конфигурационные возможности этих приложений, а в режиме реального времени меню управления просмотром тренда или буфера сообщений вызывается простым щелчком клавиши мыши на изображении тренда или списка сообщений.
Данные из GFW могут передаваться другим Windows приложениям, таким как электронные таблицы, базы данных, VisualBASIC, С++ и др. Модуль DataSpy является DDE-сервером и с точностью до направления передачи информации функционально аналогичен описанному выше модулю DDEWorX. DataSpy совместим со стандартом встраиваемых документов OLE 2.0. Пользователь может создавать встраиваемые "документы", содержащие сотни опрашиваемых точек от DDE, RTS, Gen-Net, а также переменные сценариев. Все они могут быть не только прочитаны, но и изменены.
GENESIS for Windows обладает возможностями написания сценариев дл выполнения вычислений, последовательностей команд и других интеллектуальных функций. Visual BASIC-совместимые команды позволяют Вам задать реакцию системы на события и действия оператора. По сценарию можно менять мнемосхемы, выдавать рапорты, считывать и записывать данные, просматривать тренды, квитировать аварийные сообщения и даже запускать мультимедийные клипы. Более 300 различных команд содержится в библиотеке. Выполнение сценария может начаться после нажатия оператором какой-либо кнопки на клавиатуре или экране, периодически и по событиям. Непрограммисты без труда создадут сценарий с помощью мощного Мастера Сценариев - модуля Script Wizard. Script Wizard сам генерирует сценарии на основе ответов пользователя на вопросы, предлагаемые ему в диалогах и меню. Доступ к созданию сценария возможен из приложений-клиентов GraphWorX, AlarmWorX, TrendWorX, а также из программы управления проектом. В сценариях поддерживаются глобальные переменные, которые могут быть определены в одном сценарии, а использоваться не только в нем, но и в любом другом, а также в мнемосхемах и трендах.
Модуль разработки сценариев содержит полнофункциональные редактор и отладчик, работающие не только в режиме конфигурации, но и непосредственно в ON-LINE. В тексте сценариев можно использовать фрагменты программ, заимствованные из приложений, разработанных на языке Visual BASIC.
GFW - модульный пакет, который может в конкретных применениях содержать различный набор модулей. Project Manager (Менеджер Проекта) объединяет их в единую интегрированную систему, в которой есть прямой доступ к любому приложению. Менеджер Проекта позволяет задать дл использования в режиме Runtime внешний вид экрана после старта пакета. Например, половину экрана может занимать мнемосхема, четверть - электронная таблица, а остальные запущенные приложения представлены в виде, свернутом до символизирующего их значка (иконки).
Project Manager дает возможность задать для каждого из зарегистрированных в проекте операторов один из 256 уровней доступа к системе, а также определить объем прав для каждого из этих уровней. С помощью Менеджера Проекта можно определить доступные серверы и приложения, конфигурировать действия серверов данных, например, используемые ими базы данных, контролировать в режиме реального времени их состояние и т.д.
GENESIS32 является комплексом клиентских и серверных приложений, основанных на технологии OPC (OLE for Process control - технология связывания и внедрения объектов для промышленной автоматизации), которые предназначены для разработки прикладного программного обеспечения визуализации контролируемых параметров, сбора данных и оперативного диспетчерского управления в автоматизированных системах управления технологическими процессами. GENESIS32 является комплексом 32-разрядных приложений для Windows 98, Windows NT,Windows 2000, Windows XP и Windows Vista, построенных в соответствии со спецификацией OPC. Комплекс предназначен для создания программного обеспечения сбора данных и оперативного диспетчерского управления верхнего уровня систем промышленной автоматизации. В состав GENESIS-32 также входит среда разработки и исполнения сценарных процедур VBA, обеспечивающая возможность разработки части программного обеспечения средствами
Microsoft Visual Basic for Applications 6.0 (Visual Basic для приложений), входящего в популярный пакет MS Office 2000. Все программные компоненты реализованы на базе многопоточной модели и поддерживают технологию ActiveX. Основные возможности GENESIS32:
соответствие стандартам OPC: ОРС Data Access 3.0, ОРС A&E 1.1, OPC HDA 2.0, OPC DX и OPC XML DA;
поддержка OPC UA (Unified Archtechture);
двусторонний обмен информацией с базами данных и электронными таблицами (MS Access, MS Excel, ORACLE, SQL Server, SAP и т.д.);
единый навигатор данных, позволяющий одновременно получать доступ к текущим и историческим данным, тревогам, псевдонимам, базам данных.
мощные средства визуализации;
разработка сценариев на языках VBA 6.3, VBScript, JScript;
поддержка технологий OLE и ActiveX;
архивирование информации в открытых базах данных;
средства анализа архивов: генерация отчётов в различных форматах и визуальное воспроизведение исторических данных: "обратная прокрутка" изображений, трендов и тревог с заданной скоростью, пошаговый просмотр, сравнение данных с "идеальной моделью", поиск критических событий и т.д.
горячее резервирование узлов, серверов текущих и исторических данных, тревог, архивных баз данных, тегов ОРС;
оперативное переключение источников данных;
широкий набор графиков: зависимость от времени и от другой переменной, гистограмма, самописец, логарифмическая зависимость, круговая диаграмма. Отображениe на трендах текущих и исторических данных, значений из баз данных и электронных таблиц;
оповещение персонала о событиях и тревогах, в том числе с помощью средств мультимедиа;
широкие возможности построения распределённых систем, в том числе организация соединений Internet/Intranet. Передача данных ОРС с помощью транспортных протоколов TCP/IP и SOAP/XML. Кэширование данных, механизмы обработки нарушения связи и переключения на резервные серверы;
поддержка интерфейса SNMP (Simple Network Management Protocol);
средства управления проектами: ведение истории проекта, поиск и замена, Web-публикация, упаковка и развертывание, совместимость с пакетом Microsoft Source Safe, настройка параметров запуска проекта;
переключение "на лету" языка пользовательского интерфейса проекта;
система безопасности;
установка прав пользователей на выполнение операций в приложениях проекта, доступ к файлам и элементам управления, к сигналам и тревогам, контроль исполнения сценариев, а также места и времени регистрации пользователей;
контроль и регистрация действий оператора;
предусмотрена возможность интегрирования с системными настройками безопасности, а также регистрация с помощью биометрических устройств;
встроенные средства диагностики.