Содержание
Введение
1. Понятие человеко-машинного интерфейса
1.1 Текстовый (текст ориентированный) интерфейс
1.2 Смешанный (псевдографический)интерфейс
1.3 Графический интерфейс
2. Особенностиприменения человеко-машинного интерфейса в промышленности
2.1 SCADA-системы: общие понятия иструктура
3. Обзор программных средств дляразработки человеко-машинного интерфейса
4. Структура SCADA — системы GENESIS 32
4.1 GraphWorX32
4.2 TrendWorX32
4.3 AlarmWorX32
4.4 ScriptWorX32
4.5 DataWorX32
4.6 WebHMI
4.7 AlarmWorX32 Multimedia
4.8 Менеджер экрана Sreen Manager
4.9 DataSpy
4.10 Dr. DCOM
4.11 Сервер администрирования SecurityServer
4.12 GEN-OPC сервер
4.13 ActiveX ToolWorX
4.14 OPC ToolWorX
5. Среда разработки мнемосхем Graphworx32
6. Создание мнемосхемы моделидискретно-непрерывного технологического процесса
6.1 Созданиестатических объектов мнемосхемы
6.2 Создание анимационных объектов
6.3 Создание имитациинаполнения/опустошения резервуара
6.4 Создание элемента отображения уровняв резервуаре.
6.5 Настройка анимации для изображениямиксеров
Заключение
Список литературы
Введение
В настоящее время всё большесфер человеческой деятельности подвергаются автоматизации. Человек в силу своихфизических способностей не может управлять технологическим процессом, напримерядерный реактор. Так же автоматизируются те технологические процессы, в которыхошибка является катастрофой и может нанести огромный вред окружающей среде.
С ростом уровня автоматизациисфер производства выросло и число программных продуктов, управляющихтехнологическими процессами.
В данной дипломной работе пойдётречь о разработке человеко-машинного интерфейса для технологического процесса вSCADA-системе Graphworx32.
1. Понятие человеко-машинного интерфейса
Человеко-машинный интерфейсдовольно широкое понятие. Чтобы понять это понятие надо узнать, что представляетсобой понятие интерфейс. Слово интерфейс (от англ. — поверхность раздела,перегородка) определяет место или способ соединения, соприкосновения, связи. Этослово стало популярным в эпоху компьютеризации, но его значение относится клюбому сопряжению взаимодействующих систем. Например, вожжи — это главныйэлемент интерфейса между лошадью и кучером; руль, педали газа и тормоза, ручкаКПП — интерфейс водителя для управления автомобилем.
Интерфейсы являются основойвзаимодействия всех современных информационных систем. Если интерфейскакого-либо объекта (персонального компьютера, программы, функции) неизменяется (стабилен, стандартизирован), это даёт возможность модифицироватьсам объект, не перестраивая принципы его взаимодействия с другими объектами. Тоесть, научившись работать с одной программой, например, под Windows,пользователь с лёгкостью освоит и другие, потому что они имеют одинаковыйинтерфейс.
В вычислительной системевзаимодействие может осуществляться на пользовательском, программном иаппаратном уровнях. В соответствии с этой классификацией можно выделить:
интерфейс командной строки: инструкциикомпьютеру даются путём ввода с клавиатуры текстовых строк (команд);
графический интерфейспользователя: программные функции представляются графическими элементами экрана;
диалоговый интерфейс;
естественно — языковой интерфейс:пользователь «разговаривает» с программой на родном ему языке.
Из этого вытекает понятиепользовательского интерфейса. Пользовательский интерфейс — это совокупностьсредств, при помощи которых пользователь общается с различными устройствами. Разобравпонятие интерфейс можно перейти к человеко-машинному интерфейсу.
Так что же представляет собойчеловеко-машинный интерфейс. Человеко-машинный интерфейс — это широкое понятие,охватывающее инженерные решения, обеспечивающие взаимодействие оператора суправляемыми им машинами. Создание систем человеко-машинного интерфейса тесносвязано с эргономикой (Эргономика — научная дисциплина, комплексно изучающаяпроизводственную деятельность человека и ставящая целью её оптимизацию), но нетождественно ей. Проектирование ЧМИ включает в себя создание рабочего места: кресла,стола, или пульта управления, размещение приборов и органов управления,освещение рабочего места, а, возможно, и микроклимат. Далее рассматриваютсядействия оператора с органами управления, их доступность и необходимые усилия,согласованность (непротиворечивость) управляющих воздействий и «защита отдурака», расположение дисплеев и размеры надписей на них.
Сложность создания человеко-машинногоинтерфейса состоит в том, что данные, которые нужно “донести” до пользователя,нужно “донести” так, чтобы пользователю было это “донесение” удобным и понятным.
Человеко-машинный интерфейсусловно можно разделить на 3 подгруппы: текстовый (текст ориентированный) интерфейс;смешанный (псевдографический) интерфейс; графический интерфейс.1.1 Текстовый (текст ориентированный) интерфейс
Как пример к такому видучеловеко-машинного интерфейса можно привести интерфейс командной строки DOS илиShell — интерпретатор Linux. Пользователь взаимодействует с вычислительнойсистемой с помощью клавиатуры, набирая специальные команды, для заданияразличных опций служат параметры. Система как ответ на действия пользователятоже выдаёт или сообщения, или результат выполнения введенной команды, опять жев текстовом виде. Курсор может иметь вид мигающего прямоугольника или чёрточки,обозначающей место ввода. В таком режиме можно взаимодействовать лишь с однойпрограммой, хотя потенциально могут выполняться несколько различных программ. Управлятьвзаимодействием этих программ можно лишь только опять с командной строки,причём проверить результат можно только по окончанию работы.
/>
Рис. 1. Текстовый интерфейсрежима MS DOS.
Для эффективного использованияих пользователю необходимо знать синтаксис всех команд, плюс знать, какие нужноиспользовать ключи или опции для каждой из них. Это является главнымнедостатком этой подгруппы человеко-машинных интерфейсов. Кроме того, текстоваяприрода выводимых данных делает трудной, а под час и совершенно невозможнойработу с определённым классом приложений, в первую очередь графических, илитех, где используются разнородные данные, например Web-браузеры.
В основном текстовый интерфейсприменяется в таких сферах, как операционные системы, чаты и компьютерные игры.В операционных системах такой вид интерфейсов применяется как командная строка.
Единственной нишей, где подобныйтип человеко-машинных интерфейсов сохранился и имеет более или менее прочныепозиции, является удалённый доступ для администрирования или настройки сервера,когда требуется лишь shell-доступ, и в наличии есть только канал с ограниченнойпропускной способностью.
Но с другой стороныпреимуществом данного вида человеко-машинного интерфейса в том, что этот видинтерфейса требует определённой культуры поведения и чёткости мыслипользователя. Например, в Windows после нажатия Ctr-Alt-Del ошибка впозиционировании курсора на 20-30 точек влечет за собой или завершениевыполнения одной программы, или завершения работы всей системы. В режимекомандной строки такой ошибки не получится. Для выхода там как минимум нужнонабрать совсем другую последовательность, «logout», «exit» илиеще что-то столь же приметное, что с другой командой спутать не получится. Или,например, чтобы отформатировать дискету, нужно “пройти" через кучу окон изадать много опций, вместо того, чтобы набрать всем понятную команду format a: \.Получается, что текстовый вид интерфейсов останется как интерфейс там, гдеработают именно профессионалы, и где не требуется сомнительных удобств и красотв ущерб функциональности и гибкости.1.2 Смешанный (псевдографический) интерфейс
В первую очередь следуетразличать понятия “оконный” и “графический” интерфейсы. “Оконный” базируется напринципе разделения реального окна монитора (или виртуального десктопа намногобольшего размера, чем физический дисплей) на прямоугольные области, внутрикаждой из которых определенная программа направляет свой вывод и откудаполучает команды. Никто и нечто не ставит никаких ограничений на природу этихокон — это могут быть как независимые текстовые терминалы, так и окна, кудавыводиться графика (как результат работы, так и элементы интерфейса). А термин«графический» означает, что все выводиться в графическом режиме, такчто может быть как оконный графический интерфейс, когда каждое окно отображаетграфический интерфейс, так и полноэкранный режим, когда выполняется только однапрограмма, которая осуществляет вывод в графическом режиме. То есть, оконный необязательно графический, а графический не всегда оконный. Псевдографическийинтерфейс обособлен присутствием графических интерфейсных элементов, например,кнопки, индикаторы процесса выполнения, меню. Как пример можно привестиизвестную программу FAR
/>
Рис. 2. Псевдографический интерфейсоболочки FAR.
Для пользования этой системойуже не нужно наизусть помнить многочисленные команды и опции, сообщения имеютболее удобный и привычный вид. Но интерфейс все равно остается тексториентированным, а значит трудности с отображением различных данных остаются — отипе файла можно узнать только по расширению, а не как в Windows — еще и поиконке.
Псевдографическийчеловеко-машинный интерфейс является промежутком между чисто текстовыминтерфейсом и графическим. Такой вид человеко-машинного интерфейса вбольшинстве случаев обладает всеми преимуществами текстового интерфейса (использованиемощных языков, расширяемость), и устраняет некоторые недостатки (позволяетлегче управлять системой, нагляднее представить файловую систему, например). Нобольшинство недостатков практически те же — бедность вариантов представленияданных, невыразительность интерфейса, нарастающая сложность при попыткеперенести команду с множеством опций в режим, когда в окне нужно просто выбратьнужные пункты — на рис.2 видно, что в окне команды «Копировать» естьпункт «Дерево», выбор которого приведет к открытию еще одного окна, сдеревом каталогов — так что уже есть где запутаться, тем более чтопереключаться произвольным образом между окнами нельзя.1.3 Графический интерфейс
Графический человеко-машинныйинтерфейс — это система средств для взаимодействия пользователя с компьютером,основанная на представлении всех доступных пользователю системных объектов ифункций в виде графических компонентов экрана (окон, значков, меню, кнопок,списков и т.п.). При этом, в отличие от текстового интерфейса, пользовательимеет произвольный доступ (с помощью клавиатуры или устройства координатноговвода типа «мышь») ко всем видимым экранным объектам.
Впервые Графический интерфейсбыл предложен учёными из исследовательской лаборатории Xerox PARC в 1970-х. В1973 году в лаборатории Xerox PARC собирают молодых людей, недовольныхполитикой США (война во Вьетнаме) и дают свободу исследований. В результате насвет появляется концепция графического интерфейса WIMP (Windows, Icons, Menus,Point-n-Click). В рамках этой концепции создаётся компьютер Alto.
Графический интерфейс со своеймногозадачностью был использован в 1985 году в операционной системе AmigaOS.
К этому виду интерфейсовотносятся такие системы как, Mac OS, Solaris, GNU/Linux, Microsoft Windows, NeXTSTEP,
В графическом человеко-машинноминтерфейсе все элементы пользовательского интерфейса, как и сами данные вокнах, отображаются в графическом режиме, с помощью 256, 16-битной или32-битной глубины цветового буфера. Это позволяет сформировать привлекательныес точки зрения пользователя окна, кнопки, пиктограммы, ползунки, индикаторы. Втаком режиме «объемность» интерфейсных элементов достигается спомощью искусственных приемов — например, за несколько пикселей до края рамкиокна дают полоску белого толщиной в один пиксель — появляется иллюзия того, чторамка как бы выпукла.
Общим для всех систем сграфическим интерфейсом есть понятие окна. Окно — прямоугольная область экрана,куда программа выводит свои данные и откуда получает команды. Есть дваразличных подхода.
Первый — это десктоп. Десктоп — это окно, которое имеет максимальные размеры и занимает весь экран. Как примерможно рассмотреть 2 скриншота системы Microsoft Windows.
/>
Рис.3. Оконная система ОСMicrosoft Windows 98. Окно занимает максимальную область десктопа.
На рисунке 3 видно, что внизу,на панели задач, в данный момент открыто множество других окон.
Но сейчас они не активны, и чтоособенно, навигация между ними очень затруднена — панель задач имеет маленькиеразмеры, а окон много поэтому их заголовки отображаются сокращенно, и, каквидно, по ним абсолютно нельзя сказать, что открыто в том или ином окне. Вот иглавный недостаток подобной системы — при превышении некого лимита открытыхокон практически невозможно при свернутом состоянии определить, что же тамотображается. Значит, для поиска нужного окна сначала требуется по очереди открыватьвсе окна и просматривать — как минимум, эта процедура занимает много времени. Следующийвариант — держать открытыми сразу много окон (в смысле — отображать все окна,просто с разной степенью «раскрытия» и перекрытия между соседними).
/>
Рис.4. ОС Windows 98. Открыто иотображается сразу несколько окон.
Как видно, активным в каждый моментможет быть только одно окно, и разница между активным и неактивным оченьмаленькая — всего лишь в цвете заголовка окна.
Для достижения отображения всехокон, пришлось так «урезать» их размеры, что работа с такими окнамиочень утруднена, навигация между ними осталась практически такой же сложной.
Вообще графический интерфейспредставляет собой рабочий стол — экран — поверхность стола, бумаги и документы- окна. Значит проблемы “традиционных столов” остаются, ведь обычно рабочийстол всегда завален кучей разных бумаг, и отыскать в этом всем нужный документнедельной давности ох как нелегко. То же твориться и на столе виртуальном (Рис 4).Пока на столе (экране) один документ (рис.3) то можно спокойно работать, нокогда их количество переваливает за десяток… Перекрытие как метод отображениясразу нескольких документов не только не решает проблему, а наоборот, еще иусугубляет ее, так как нужно следить за тем, какой из документов/окон сейчасактивен, а поиск в “мешанине" окон тоже не очень приятен. Вот это и естьеще один существенный недостаток оконных систем с перекрытием окон — трудностьс расположением и навигацией между отдельными окнами.
Второй подход — системаформирует виртуальный десктоп гораздо большего размера, чем дисплей. Окна могутразмещаться на всей площади этого десктопа, а на экране отображается лишь теокна или их части, которые попадают в область отображения реального экрана. Такойподход обязывает постоянно и независимо от других окон держать в видимойобласти окно специальной программы — оконного менеджера, который показывает вмасштабе расположение всех окон на виртуальном десктопе и ту область, котораяотображается в данный момент.
Следует упомянуть ещё об одномскрытом минусе графических оконных систем. При их использовании возникает такзваный эффект «когнитивной перегрузки» — когда на экран выводитьсястолько различной информации, за которой нужно следить, да еще и в разныхчастях дисплея, что пользователь просто теряется, «глаза разбегаются».Нужно следить за курсором, держать во внимании панель инструментов, где и какаякнопка нажата, следить за индикатором раскладки клавиатуры, за самойклавиатурой (Caps Lock), одновременно нужно знать, какое окно активно, и чтоделает система в данный момент. Это большой поток информации, за которым сложноследить. Кроме того, чтобы выполнить любую элементарную операцию, нужно найтикурсором (значит, перевести внимание на него, но другие элементы, описанныевыше тоже нужно держать в поле зрения) пункт меню или нужную кнопку, попасть нанеё, удостовериться, что курсор находиться именно над той кнопкой, которуюнужно нажать, а если это ползунок перемещения, то не останавливая нажатия,одновременно следить за тем, как исполняется команда. Часто бывает, чтопользователь попадает по ненужной кнопке или пункту меню, вследствие чегоприложение совершает не ту команду или вообще закрывается. Стандартизация элементовпользовательского интерфейса Windows по идее ее создателей должна было навестилад среди приложений и избавить пользователей от изучения нового интерфейса припереходе на новую программу. В какой то мере Windows сделал своё дело, и покрайней мере закрыть, минимизировать, раскрыть окно сможет каждый пользовательи с любой программой. Но все другие кнопки имеют стандартный цвет и размер. Примерноодинаковое размещение и функциональное предназначение приводит к тому, чтопользователи очень часто даже не смотрят на кнопку, прежде чем ее нажать,срабатывает подсознательный рефлекс. И получается так, что разработчикинекоторых программ определяют совсем другую функциональность для кнопок, скоторыми пользователь знаком и не думает о том, что у неё совсем другаяфункциональность. Получается, что стандартизация элементов пользовательскогоинтерфейса имеет и отрицательные стороны — пользователь зачастую даже невзглянет на надпись, которая находиться на той или иной кнопке. Получается чтопрограмма, в которой разработчики определи другие функциональность для кнопок,знакомых пользователю, переходит с категории утилит в разряд вредоносныхпрограмм. Если пользователь запустит описываемую программу в своей операционнойсистеме и нажмёт не ту кнопку, то последствия могут быть не самыми лучшими,например, пользователь нажмёт кнопку с функцией форматирования жёсткого диска. Вотосновные минусы графических интерфейсов:
Затруднена работа с несколькимиокнами;
когнитивная перегрузка — наэкране находится не только много не нужных элементов, но и главным образом тех,которые нужны, и на которых нужно в идеале одновременно концентрироватьвнимание;
применение сложных команд,например, при форматировании текста, требует знания что и где нажать, всегопути к нужному пункту меню, да еще и учета того, что сейчас нажато, или былонажато незадолго до этого;
большие трудности при сменеобщего стиля оформления системы;
двухмерность интерфейсанакладывает определенные ограничения на размещение как документов, так ипиктограмм.
Но среди минусов есть большойплюс — это удобство. Ведь в графических интерфейсах можно реализовать то, чтонельзя в остальных.
2. Особенности применения человеко-машинногоинтерфейса в промышленности
Раньше, когда ещё не было автоматизированныхсистем управления технологическим процессом, человеко-машинный интерфейс былдовольно прост. Например, чтобы измерить уровень воды в резервуаре, человеккоторый выполнял эту работу, брал линейку и измерял уровень воды. В данномслучае интерфейсом служит сама линейка и шкала, расположенная на нём. Но сприходом прогресса в вычислительной технике, да и во многих сферах деятельностичеловека, человек стал стремиться к автоматизации. Это желание понятно, ведьчеловек уже не мог физически управлять такими процессами, как ядерная реакция,так как человек просто не успеет из-за своей реакции отреагировать на процесс. Еслиже выше описываемая ошибка с нажатием не той кнопки, могла привести лишь кформатированию жёсткого диска, то последствия такой ошибки в автоматизациипромышленной сферы деятельности человека могут быть самыми печальными. Получается,что стабильная работа технологического процесса во многом зависит отразработчика человеко-машинного интерфейса к этому процессу, а не отдиспетчера, который реагирует.
Для большего пониманияособенностей применения человеко-машинного интерфейса в промышленности следуетпонять, что такое автоматизация. Автоматизация — одно из направленийнаучно-технического прогресса, применение саморегулирующих технических средств,экономико-математических методов и систем управления, освобождающих человека отучастия в процессах получения, преобразования, передачи и использованияэнергии, материалов или информации, существенно уменьшающих степень этогоучастия или трудоемкость выполняемых операций. Требует дополнительногоприменения датчиков (сенсоров), устройств ввода, управляющих устройств (контроллеров),исполнительных устройств, устройств вывода, использующих электронную технику иметоды вычислений, иногда копирующие нервные и мыслительные функции человека. Нарядус термином автоматический, используется понятие автоматизированный,подчеркивающий относительно большую степень участия человека в процессе. Цельюавтоматизации является повышение производительности труда, улучшение качествапродукции, оптимизация управления, устранение человека от производств, опасныхдля здоровья. Автоматизация, за исключением простейших случаев, требуеткомплексного, системного подхода к решению задачи, поэтому решения стоящихперед автоматизацией задач обычно называются системами, например:
система автоматическогоуправления (САУ);
система автоматизации проектныхработ (САПР);
автоматизированная системауправления технологическим процессом (АСУ ТП).
автоматизируются такие сферыдеятельности, как:
производственные процессы;
проектирование;
организация, планирование иуправление;
научные исследования.
Раз при автоматизации появляютсяновые сложные устройства, значит нужно создавать такой интерфейс для этихустройств, который бы был простым, понятным и интуитивным для диспетчера. Получается,что главное в системе управления — это организация взаимодействия междучеловеком и программно-аппаратным комплексом. Обеспечение такого взаимодействияи есть задача человеко-машинного интерфейса (HMI, human machine interface). Всовременных автоматизированных системах управления технологическим процессомсуществует, как минимум, 2 подхода по реализации человеко-машинного интерфейса:
на базе специализированныхрабочих станций оператора, устанавливаемых в центральной диспетчерской;
на базе панелей локальногоуправления, устанавливаемых непосредственно в цеху по близости к контролируемымтехнологическим объектам.
Иногда эти два вариантакомбинируются, чтобы достичь наибольшей гибкости управления. Но дальше речь пойдёто первом варианте организации операторского уровня.
Аппаратно рабочая станцияоператора (OS, operator station) представляет собой ни что иное какперсональный компьютер. Как правило, станция снабжается несколькимиширокоэкранными мониторами, функциональной клавиатурой и необходимыми сетевымиадаптерами для подключения к сетям верхнего уровня (например, на базеIndustrial Ethernet). Станция оператора несколько отличается от привычных длянас офисных компьютеров, прежде всего, своим исполнением и эксплуатационнымихарактеристиками (а также ценой 4000 — 10000 долларов).
/>
Рис.5. Промышленная рабочаястанция оператора системы SIMATIC PCS7 производства Siemens
На станции оператораустанавливается программный пакет визуализации технологического процесса. Большинствопакетов визуализации работают под управлением операционных систем семействаWindows (Windows NT 4.0, Windows 2000/XP, Windows 2003 Server). Программноеобеспечение визуализации должно выполнять следующие задачи:
отображение технологическойинформации в удобной для человека графической форме (как правило, в видеинтерактивных мнемосхем) — Process Visualization;
отображение аварийныхсигнализаций технологического процесса — Alarm Visualization;
архивирование технологическихданных (сбор истории процесса) — Historical Archiving;
предоставление операторувозможности манипулировать (управлять) объектами управления — Operator Control;
контроль доступа ипротоколирование действий оператора — Access Control and Operator’s ActionsArchiving;
автоматизированное составлениеотчетов за произвольный интервал времени (посменные отчеты, еженедельные,ежемесячные и т.д.) — Automated Reporting.
Человеко-машинный интерфейс впромышленности реализуется с помощью мнемосхем. Мнемосхема — совокупностьсигнальных устройств и сигнальных изображений оборудования и внутренних связейконтролируемого объекта, размещаемых на диспетчерских пультах, операторскихпанелях или выполненных на персональном компьютере. Информация, котораявыводится на мнемосхему, может быть представлена в виде аналогового,дискретного и релейного сигнала, а также графически. На мнемосхемах отражаетсяосновное оборудование, сигналы, состояние регулирующих органов. Вспомогательныйи справочный материал должен быть расположен в дополнительных формахотображения, с возможностями максимально быстрого извлечения этихвспомогательных форм на экран.
Выше описанный программный пакетвизуализации технологического процесса называется SCADA — системой. SCADA (сокр.от англ. Supervisory Control And Data Acquisition) — диспетчерское управление исбор данных. Термин SCADA-система используют для обозначенияпрограммно-аппаратного комплекса сбора данных. SCADA-системы являются основными в настоящее время остаются наиболее перспективным методом автоматизированногоуправления сложными динамическими системами (процессами) в жизненно важных икритичных с точки зрения безопасности и надежности областях. Именно напринципах диспетчерского управления строятся крупные автоматизированные системыв промышленности и энергетике, на транспорте, в космической и военной областях,в различных государственных структурах.
За последние 10-15 лет зарубежом резко возрос интерес к проблемам построения высокоэффективных ивысоконадежных систем диспетчерского управления и сбора данных. С однойстороны, это связано со значительным прогрессом в области вычислительнойтехники, программного обеспечения и телекоммуникаций, что увеличиваетвозможности и расширяет сферу применения автоматизированных систем. С другойстороны, развитие информационных технологий, повышение степени автоматизации иперераспределение функций между человеком и аппаратурой обострило проблемувзаимодействия человека-оператора с системой управления. Расследование и анализбольшинства аварий и происшествий в авиации, наземном и водном транспорте,промышленности и энергетике, часть из которых привела к катастрофическимпоследствиям, показали, что, если в 60-х годах ошибка человека являласьпервоначальной причиной лишь 20% инцидентов (80%, соответственно, затехнологическими неисправностями и отказами), то в 90-х годах долячеловеческого фактора возросла до 80%, причем, в связи с постояннымсовершенствованием технологий и повышением надежности электронного оборудованияи машин, доля эта может еще возрасти (Рис.6).
/>
Рис.6. Тенденции причин аварий всложных автоматизированных системах.
Основной причиной такихтенденций является старый традиционный подход к построению сложныхавтоматизированных систем управления, который применяется часто и в настоящеевремя: ориентация в первую очередь на применение новейших технических (технологических)достижений, стремление повысить степень автоматизации и функциональныевозможности системы и, в то же время, недооценка необходимости построенияэффективного человеко-машинного интерфейса, то есть период появления мощных,компактных и недорогих вычислительных средств, пришёлся пик исследований в СШАпо проблемам человеческого фактора в системах управления, в том числе пооптимизации архитектуры и человеко-машинного интерфейса в SCADA — системах.
Изучение материалов по проблемампостроения эффективных и надежных систем диспетчерского управления показалонеобходимость применения нового подхода при разработке таких систем: human-centereddesign (или top-down, сверху-вниз), т.е. ориентация в первую очередь начеловека-оператора (диспетчера) и его задачи, вместо традиционного иповсеместно применявшегося hardware-centered (или bottom-up, снизу-вверх), вкотором при построении системы основное внимание уделялось выбору и разработкетехнических средств (оборудования и программного обеспечения). Применениенового подхода в реальных космических и авиационных разработках и сравнительныеиспытания систем в Национальном управлении по аэронавтике и исследованиюкосмического пространства (NASA), США, подтвердили его эффективность, позволивувеличить производительность операторов, на порядок уменьшить процедурныеошибки и свести к нулю критические (некорректируемые) ошибки операторов.2.1 SCADA-системы: общие понятия и структура
SCADA — процесс сбора информацииреального времени с удаленных точек (объектов) для обработки, анализа ивозможного управления удаленными объектами. Требование обработки реальноговремени обусловлено необходимостью доставки (выдачи) всех необходимых событий (сообщений)и данных на центральный интерфейс оператора (диспетчера). В то же время понятиереального времени отличается для различных SCADA-систем.
Прообразом современных системSCADA на ранних стадиях развития автоматизированных систем управления являлисьсистемы телеметрии и сигнализации. Все современные SCADA-системы включают 3основных структурных компонента (рис.7).
/>
Рис.7. Основные структурныекомпоненты SCADA-системы.
Remote Terminal Unit (RTU) удаленныйтерминал, осуществляющий обработку задачи (управление) в режиме реальноговремени. Спектр его воплощений широк от примитивных датчиков, осуществляющихсъем информации с объекта, до специализированных многопроцессорныхотказоустойчивых вычислительных комплексов, осуществляющих обработку информациии управление в режиме жесткого реального времени. Конкретная его реализацияопределяется конкретным применением. Использование устройств низкоуровневойобработки информации позволяет снизить требования к пропускной способностиканалов связи с центральным диспетчерским пунктом.
Master Terminal Unit (MTU),Master Station (MS) диспетчерский пункт управления (главный терминал); осуществляетобработку данных и управление высокого уровня, как правило, в режиме мягкогореального времени; одна из основных функций обеспечение интерфейса междучеловеком-оператором и системой (HMI, MMI). В зависимости от конкретной системыMTU может быть реализован в самом разнообразном виде: от одиночного компьютерас дополнительными устройствами подключения к каналам связи, до большихвычислительных систем (мэйнфреймов) или объединенных в локальную сеть рабочихстанций и серверов. Как правило, и при построении MTU используются различныеметоды повышения надежности и безопасности работы системы.
Communication System (CS) коммуникационнаясистема (каналы связи), необходима для передачи данных с удаленных точек (объектов,терминалов) на центральный интерфейс оператора-диспетчера и передачи сигналовуправления на RTU (или удаленный объект в зависимости от конкретного исполнениясистемы).
В системе диспетчерскогоуправления человек-оператор должен выполнять следующие функции:
планирование действий;
программирование компьютернойсистемы на следующие действия;
отслеживание результатов (полу) автоматическойработы системы;
человек-оператор долженвмешиваться в процесс, в случае критических событий, когда автоматика не можетсправиться, либо при необходимости подстройки (регулировки) параметров процесса;
обучение в процессе работы (получениеопыта).
Для выполнения этих функций, кSCADA системам предъявляются следующие требования:
надёжность системы (технологическаяи функциональная);
безопасность управления;
точность обработки ипредставления данных;
простота расширения системы.
В целях безопасности SCADAсистема должна обладать следующими свойствами:
никакой единичный отказоборудования не должен вызвать выдачу ложного выходного воздействия (команды) наобъект управления;
никакая единичная ошибкаоператора не должна вызвать выдачу ложного выходного воздействия (команды) наобъект управления;
все операции по управлениюдолжны быть интуитивно-понятными и удобными для оператора (диспетчера).
SCADA системы могут применятьсяв различных сферах: как в узких, так и в более широких. Они применяются вуправлении передачи и распределения электроэнергии, в промышленныхпроизводствах, в производствах электроэнергии, в водозаборах и водоочистках, вдобыче и транспортировки нефти и газа, в управлении космическими объектами, втелекоммуникациях, а так же в военной области.
В настоящее время в развитыхзарубежных странах наблюдается настоящий подъем по внедрению новых имодернизации существующих автоматизированных систем управления в различныхотраслях экономики; в подавляющем большинстве случаев эти системы строятся попринципу диспетчерского управления и сбора данных. Характерно, что виндустриальной сфере (в обрабатывающей и добывающей промышленности, энергетикеи др.) наиболее часто упоминаются именно модернизация существующих производствSCADA-системами нового поколения. Эффект от внедрения новой системы управленияисчисляется, в зависимости от типа предприятия, от сотен тысяч до миллионовдолларов в год; например, для одной средней тепловой станции он составляет, поподсчетам специалистов, от 200000 до 400000 долларов. Большое вниманиеуделяется модернизации производств, представляющих собой экологическуюопасность для окружающей среды (химические и ядерные предприятия), а такжеиграющих ключевую роль в жизнеобеспечении населенных пунктов (водопровод,канализация и пр.). С начала 90-х годов в США начались интенсивные исследованияи разработки в области создания автоматизированных систем управления наземным (автомобильным)транспортом ATMS (Advanced Traffic Management System).
3. Обзор программных средств для разработкичеловеко-машинного интерфейса
В настоящее время на рынкесуществует множество SCADA систем, но но речь пойдёт о более популярных. Перваятакая система — это SIMATIC WinCC.
SCADA система SIMATIC WinCC (WindowsControl Center) — это компьютерная система человеко-машинного интерфейса,работающая под управлением операционных систем Windows 2000/XP ипредоставляющая широкие функциональные возможности для построения системуправления различного назначения:
простое построение конфигурацийклиент-сервер;
поддержка резервированныхструктур систем автоматизации;
неограниченное расширениефункциональных возможностей благодаря использованию ActiveX элементов;
открытый OPC-интерфейс (OLE forProcess 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 forProcess control — технология связывания и внедрения объектов для промышленнойавтоматизации), которые предназначены для разработки прикладного программногообеспечения визуализации контролируемых параметров, сбора данных и оперативногодиспетчерского управления в автоматизированных системах управлениятехнологическими процессами. GENESIS32 является комплексом 32-разрядныхприложений для Windows 98, Windows NT,Windows 2000, Windows XP и Windows Vista,построенных в соответствии со спецификацией OPC. Комплекс предназначен длясоздания программного обеспечения сбора данных и оперативного диспетчерскогоуправления верхнего уровня систем промышленной автоматизации. В составGENESIS-32 также входит среда разработки и исполнения сценарных процедур VBA,обеспечивающая возможность разработки части программного обеспечения средствамиMicrosoft Visual Basic for Applications6.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 forWindows состоит из многих модулей, он является интегрированной системой,которую пользователь воспринимает как единое целое благодаря наличию общейоболочки — менеджера проекта, а также благодаря возможности использования общихсредств автоматического формирования сценария работы в каждом модуле, где онимогут понадобиться.
Прямые связи Graphworx соборудованием управляются высокопроизводительным сервером реального времени (RTS),включающем в себя интерфейс драйверов ввода-вывода и функции контроля иуправления. RTS сканирует ввод-вывод, вычисляет алгоритмы обработки сигналов,формирует сигналы тревоги и обслуживает все запросы на данные отприложений-клиентов. Благодаря использованию механизма приоритетной вытесняющеймногозадачности обеспечивается гарантированное выполнение с заданным периодомнаиболее критических функций, например обновление ввода-вывода. RTS работает свыбранным пользователем интервалом времени (50, 100, 250 миллисекунд, 1 или 2секунды), прерывая на несколько миллисекунд работу Windows.
Конфигуратор, с помощью которогодля RTS задается программа работы в режиме реального времени, это ужезарекомендовавший себя в DOSовской версии мощный графический редактор языкафункциональных блоков. Создание конфигурации сводится к рисованию потокаобработки данных с помощью связанных между собой алгоблоков. Библиотечныеалгоритмы размещаются на схеме в виде прямоугольников, выходы одних блоковсвязаны линиями со стрелкой в точке входа с другими блоками. Созданную схемуможно экспортировать в формат AutoCAD'а и использовать затем, например, вкачестве мнемосхемы. Кроме того имеется возможность экспорта в формат dBase ипоследующего импорта из этого формата, что позволяет использовать широкораспространенные программы баз данных и электронных таблиц для редактированияконфигурации. Такая технологи создания конфигурации бывает особенно удобна принеобходимости тиражирования множества однотипных блоков или при выполненииопераций поиска и замены. Кроме входов и выходов блоки имеют имя и настроечныепараметры. Библиотека содержит свыше 60 алгоритмов нескольких типов (ввод-вывод,первичная обработка сигналов, арифметика, математические функции, логика,регулирование, управление и др.). Именно обширная библиотека алгоритмовпозволят использовать Graphworx как средство прямого программного управления.
Приложения-клиенты обращаются кданным RTS, используя составное имя, включающее имя сетевого узла, имяконфигурации, имя блока и обозначение конкретного параметра в данном блоке. Серверреального времени использует существующие, хорошо проверенные драйверыDOSовского GENESIS'а для интерфейса с полевым оборудованием.
Рабочая станция GENESIS forWindows может быть связана с другими GENESIS с помощью модуля GEN-NET,позволяющего передавать по сети данные, файлы и аварийные сообщения. Удаленныеузлы GENESIS действуют как независимые серверы данных, связанные с устройствамиввода-вывода. Все данные, содержащиеся в удаленном узле GENESIS, доступны вреальном времени дл приложений-клиентов. Такая распределенная система позволяетобрабатывать огромное количество данных, не перегружая отдельные станции. Внекоторых системах бывает целесообразно для сбора и обработки данных выделитьотдельные машины, которые могут не иметь операторского интерфейса — дисплея иклавиатуры («слепой узел»). Тем самым одни узлы распределеннойсистемы оказываются специализированы на функциях сбора и обработки информации (GEN-NODE- специальная, без графики, сетевая версия Genesis'а дл DOS), другиеиспользуются исключительно для функций операторского интерфейса. Как правило,такое построение системы бывает целесообразным, когда несколько операторовдолжны иметь доступ к одним и тем же данным с объекта. При этом изменениеархитектуры системы практически не требует переделок конфигурации, посколькудрайверы устройств и конфигурация RTS полностью совместимы между GENESIS forWindows и GENESIS'ом для DOS, а ссылки на переменные связаны только с именамисетевого узла и его конфигурации
Еще один метод доступа к даннымс объекта используют серверы ввода-вывода. Каждый сервер ввода-вывода обеспечиваетинтерфейс с каким-то одним типом оборудования, например с определенным типомлогического или регулирующего контроллера какой-либо фирмы. Сервер ввода-выводасостоит из двух частей — конфигуратора и исполняемого модуля.
Конфигуратор создает базу данных,совместимую со стандартом ODBC, для определения параметров ввода-вывода (имя,тип точки — аналоговый или дискретный, расположение данных в памяти, масштаб имногое другое). Совместимость с ODBC делает возможным экспорт информации вразличные внешние базы данных, а также импорт данных из таких системпрограммирования контроллеров, которые поддерживают этот стандарт.
Исполняемый модуль сервераввода-вывода обеспечивает связь с драйверами, обновляет в реальном времени базуданных текущими значениями переменных и формирует сигналы тревоги приотклонениях параметров за заданные пределы. Данные могут обновляться какнепрерывно (например, для контроля аварийного отклонения), так и по запросу отприложения-клиента. Такой гибкий подход позволяет серверу ввода-выводаодновременно обрабатывать тысячи точек.
Сервер ввода-вывода работает какDDE-сервер, что позволяет использовать его не только в рамках GFW, но и какисточник данных дл любых Windows-приложений, поддерживающих DDE.
GENESIS for Windows поддерживаетстандартный протокол динамического обмена данными — Windows Dinamic DataExchange (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. ScriptWizard сам генерирует сценарии на основе ответов пользователя на вопросы,предлагаемые ему в диалогах и меню. Доступ к созданию сценария возможен изприложений-клиентов GraphWorX, AlarmWorX, TrendWorX, а также из программыуправления проектом. В сценариях поддерживаются глобальные переменные, которыемогут быть определены в одном сценарии, а использоваться не только в нем, но ив любом другом, а также в мнемосхемах и трендах.
Модуль разработки сценариевсодержит полнофункциональные редактор и отладчик, работающие не только в режимеконфигурации, но и непосредственно в ON-LINE. В тексте сценариев можноиспользовать фрагменты программ, заимствованные из приложений, разработанных наязыке Visual BASIC.
GFW — модульный пакет, которыйможет в конкретных применениях содержать различный набор модулей. ProjectManager (Менеджер Проекта) объединяет их в единую интегрированную систему, вкоторой есть прямой доступ к любому приложению. Менеджер Проекта позволяетзадать дл использования в режиме Runtime внешний вид экрана после старта пакета.Например, половину экрана может занимать мнемосхема, четверть — электроннаятаблица, а остальные запущенные приложения представлены в виде, свернутом досимволизирующего их значка (иконки).
Project Manager дает возможностьзадать для каждого из зарегистрированных в проекте операторов один из 256уровней доступа к системе, а также определить объем прав для каждого из этихуровней. С помощью Менеджера Проекта можно определить доступные серверы иприложения, конфигурировать действия серверов данных, например, используемыеими базы данных, контролировать в режиме реального времени их состояние и т.д.
GENESIS32 является комплексомклиентских и серверных приложений, основанных на технологии OPC (OLE forProcess control — технология связывания и внедрения объектов для промышленнойавтоматизации), которые предназначены для разработки прикладного программногообеспечения визуализации контролируемых параметров, сбора данных и оперативногодиспетчерского управления в автоматизированных системах управления технологическимипроцессами. GENESIS32 является комплексом 32-разрядных приложений для Windows98, Windows NT,Windows 2000, Windows XP и Windows Vista, построенных всоответствии со спецификацией OPC. Комплекс предназначен для созданияпрограммного обеспечения сбора данных и оперативного диспетчерского управленияверхнего уровня систем промышленной автоматизации. В состав GENESIS-32 такжевходит среда разработки и исполнения сценарных процедур VBA, обеспечивающаявозможность разработки части программного обеспечения средствами
MicrosoftVisual Basic for Applications 6.0 (Visual Basic для приложений), входящего в популярный пакет MS Office2000. Все программные компоненты реализованы на базе многопоточноймодели и поддерживают технологию ActiveX. Основные возможности GENESIS32:
соответствие стандартам OPC: ОРСData Access 3.0, ОРС A&E 1.1, OPC HDA 2.0, OPC DX и OPC XML DA;
поддержка OPCUA (Unified Archtechture);
двусторонний обмен информацией сбазами данных и электронными таблицами (MS Access, MS Excel, ORACLE, SQLServer, SAP и т.д.);
единый навигатор данных,позволяющий одновременно получать доступ к текущим и историческим данным,тревогам, псевдонимам, базам данных.
мощные средства визуализации;
разработка сценариев на языкахVBA 6.3, VBScript, JScript;
поддержка технологий OLE иActiveX;
архивирование информации воткрытых базах данных;
средства анализа архивов: генерацияотчётов в различных форматах и визуальное воспроизведение исторических данных:«обратная прокрутка» изображений, трендов и тревог с заданнойскоростью, пошаговый просмотр, сравнение данных с «идеальной моделью»,поиск критических событий и т.д.
горячее резервирование узлов,серверов текущих и исторических данных, тревог, архивных баз данных, тегов ОРС;
оперативное переключениеисточников данных;
широкий набор графиков: зависимостьот времени и от другой переменной, гистограмма, самописец, логарифмическаязависимость, круговая диаграмма. Отображениe на трендах текущих и историческихданных, значений из баз данных и электронных таблиц;
оповещение персонала о событияхи тревогах, в том числе с помощью средств мультимедиа;
широкие возможности построенияраспределённых систем, в том числе организация соединений Internet/Intranet. Передачаданных ОРС с помощью транспортных протоколов TCP/IP и SOAP/XML. Кэшированиеданных, механизмы обработки нарушения связи и переключения на резервные серверы;
поддержка интерфейса SNMP (Simple Network Management Protocol);
средства управления проектами: ведениеистории проекта, поиск и замена, Web-публикация, упаковка и развертывание,совместимость с пакетом Microsoft Source Safe, настройка параметров запускапроекта;
переключение «на лету»языка пользовательского интерфейса проекта;
система безопасности;
установка прав пользователей навыполнение операций в приложениях проекта, доступ к файлам и элементамуправления, к сигналам и тревогам, контроль исполнения сценариев, а также местаи времени регистрации пользователей;
контроль и регистрация действийоператора;
предусмотрена возможностьинтегрирования с системными настройками безопасности, а также регистрация спомощью биометрических устройств;
встроенные средства диагностики.
4. Структура SCADA — системы GENESIS 32
GENESIS 32 является комплексом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. В состав GENESIS 32 входят приложения соответствующие спецификации OPC,представленные в табл.1:
Табл.1 Приложения, входящие всостав Genesis 32.Название приложения Описание GraphWorX32 GraphWorX32 объединяет средства разработки и просмотра графических мнемосхем, автоматизированных рабочих мест оператора АСУТП. TrendWorX32 Даёт возможность высокопроизводительного построения графических зависимостей контролируемых параметров. AlarmWorX32
Мощная подсистема обнаружения
фильтрации и сортировки аварийных и других событий, связанных с контролируемым технологическим процессом и состоянием технических средств АСУТП.
Указанные приложения могутзаказываться и применяться как в составе комплекса, так и автономно. Крометого, фирма ICONICS поставляет дополнительные приложения и инструментальныесредства разработки приведённые в табл.2:
Табл.2Дополнительные приложения и инструментальные средства разработки, поставляемыефирмой ICONICSНазвание доп. приложения Описание ScriptWorX32 Позволяет выполнять одновременно вычислительные операции и любые другие действия, доступных в языке программирования VBA. AlarmWorX32 Multimedia Мультимедийное приложение, которое предназначено для локального и удаленного оповещения оперативного персонала об аварийных и других событиях, связанных с контролируемым технологическим процессом и состоянием технических средств АСУТП. WebHMI Осуществляет просмотр графических мнемосхем контролируемого технологического процесса в глобальной сети Internet или в корпоративной Intranet. DataWorX32 DataWorX32 является OPC-сервером, который предназначен для организации единого моста между множеством клиентских и серверных компонентов системы. Библиотека символов Symbols32 Library Набор символов, с помощью которых строится мнемосхема. ICONICS GEN-OPC Сервер Обеспечивает интерфейс OPC между приложениями. OPC ToolWorX Является инструментальным средством быстрой разработки серверов и клиентов OPC. ActiveX ToolWorX Предназначен для быстрой разработки управляющих элементов Activex. 4.1 GraphWorX32
GraphWorX32объединяет средства разработки и просмотра графических мнемосхем,автоматизированных рабочих мест оператора АСУТП. Мнемосхемы (экранные формы) могутсоздаваться как на основе встроенных средств рисования, так и управляющихэлементов ActiveX других производителей. Алгоритмы вторичной обработки данных ипроцедуры управления экранными формами могут разрабатываться в интегрированнойсреде разработки и исполнения сценариев Visual Basic для приложений (VBA). GraphWorX32является инструментальным средством, предназначенным для визуализацииконтролируемых технологических параметров и оперативного диспетчерскогоуправления на верхнем уровне АСУТП, который полностью соответствует требованиямк клиенту OPC и поддерживает технологии ActiveX и OLE. Основные характеристикиGraphWorX32:
многопоточное 32-разрядноеприложение;
возможность обмена данными слюбыми серверами OPC;
мощные инструменты для созданияэкранных форм и динамических элементов отображения;
возможность встраиванияэлементов управления ActiveX и объектов OLE;
встроенная среда редактированиясценарных процедур Microsoft Visual Basic for Applications;
динамизация элементовотображения со временем обновления графической информации 50 мс;
поддержка шаблонов экранныхформ, содержащих наиболее часто используемые слои графических объектов;
возможность встраивания в HTML страницыи другие контейнеры OLE (MS Word, MS Excel, MS Access и др.);
возможность просмотра браузерамиИнтернет, такими как MS Internet Explorer;
обширная библиотека элементовотображения, ориентированных на построение мнемосхем промышленных объектов;
возможность встраивания графиковTrendWorX32 и экранов AlarmWorX32;
средства импорта графическихметафайлов (WMF) и растровых изображений (BMP);
публикация экранных форм вглобальной сети Интернет;
встроенный редактор выраженийдля выполнения математических, функциональных, логических и других операций надданными.
4.2 TrendWorX32
TrendWorX32 представляет отрытоерешение по высокопроизводительному построению графических зависимостейконтролируемых параметров. Поддерживает спецификацию OPC доступа к историческимданным (OPC HDA), устанавливающую требования к подсистеме извлечения ипредставления исторических данных из баз данных архива. Пакет TrendWorX32обеспечивает накопление и представление текущих данных в виде графическихзависимостей от времени. Кроме того, TrendWorX32 является мощным средствомархивации накапливаемой информации в базах данных с возможностью последующегоизвлечения и просмотра на графиках. Полностью соответствует спецификациям OPCдоступа к текущим и историческим данным. Основные функциональные возможностиTrendWorX32: представление значений контролируемых параметров, получаемых отсерверов OPC, на графиках различных типов в реальном масштабе времени; архивированиезначений контролируемых параметров в базах данных MS Access, MS SQL Server,Oracle, Microsoft Data Engine; генерация отчетов на основе данных архива ипубликация отчетов в Интернет; вычисление статистических характеристик выборокзначений контролируемых параметров; извлечение значений контролируемых параметровиз архивов и представление в виде графиков различных типов; вывод графиков напечатающее устройство; разработка и исполнение сценарных процедур на встроенномVisual Basic для приложений; возможность вставки элементов просмотра графиковTrendWorX32 ActiveX в различные контейнеры ActiveX; встроенное средствогенерации отчетов в базах данных и MS Excel.
4.3 AlarmWorX32
AlarmWorX32 мощная подсистемаобнаружения, идентификации, фильтрации и сортировки аварийных и других событий,связанных с контролируемым технологическим процессом и состоянием техническихсредств АСУТП. AlarmWorX32 является набором программных компонентов,предназначенных для обнаружения аварийных событий, оповещения оперативногоперсонала, приема подтверждений восприятия информации об аварийных событиях ирегистрации информации об авариях в базе данных. Основные функциональныевозможности AlarmWorX32:
обнаружение аварийных событий помножеству признаков и критериев, настраиваемых пользователем;
передача информации обобнаруженных авариях клиентским приложениям, расположенным на разных узлах локальнойили глобальной сети;
анализ аварийных событий идействий ответственного персонала;
объединение всех аварийныхсобытий и подтверждений восприятия системных сообщений ответственным персоналомв сводки аварийных событий;
отображение вспомогательнойинформации для аварийных событий, позволяющей локализовать и устранить причиныаварии;
связь с аппаратными средствамисистемы через интерфейсы OPC;
возможность запуска сервераобнаружения аварий в качестве сервисного процесса (службы) Windows NT;
мощное средство конфигурированияусловий аварийных событий;
встроенная среда редактированиясценарных процедур Microsoft Visual Basic for Applications.
4.4 ScriptWorX32
ScriptWorX32 одновременноевыполнение вычислительных операций и любых других действий, доступных в языкепрограммирования VBA, управление базами данных, формирование отчетов и заданий.ScriptWorX32 является мощных средством разработки и исполнения сценарныхпроцедур Microsoft Visual Basic for Applications (VBA) версии 6.0. ScriptWorX32содержит мультизадачную среду параллельного исполнения сценариев с поддержкойсимметричных многопроцессорных архитектур. VBA сценарии, разрабатываемыепользователем, могут выполнять операции обмена данными с серверами OPC. Основныефункциональные возможности ScriptWorX32: многопоточное 32-разрядное приложение;возможность работы в операционных системах Windows NT,98/2000/XP; контейнерсценариев VBA 6.0; visual Basic for Applications 6.0входит в установочный комплект; одновременное исполнение сценариев VBA 6.0; ускорениеразработки сценариев при помощи Мастера сценариев; исполнение сценариев порасписанию или периодически; исполнение сценариев при выполнении условий,вычисляемых на основе значений тегов OPC-серверов; исполнение сценариев пособытиям от серверов OPC Alarms and Events (серверов системных и аварийных событийOPC); диагностика текущих состояний сценариев; возможность компиляции сценариевв многопоточные библиотеки динамической компоновки (DLL); наличие глобальныхсценариев для интеграции с другими приложениями; открытый интерфейс OLE Automation.4.5 DataWorX32
DataWorX32 сервер организацииединого централизованного списка контролируемых параметров с возможностьюсоздания глобальных переменных, доступных всех клиентским приложениямпрограммного комплекса, а также обладающий механизмом резервирования серверовOPC. DataWorX32 является OPC-сервером, который предназначен для организацииединого моста между множеством клиентских и серверных компонентов системы. Основныефункциональные возможности DataWorX32:
централизация параметровконтролируемого процесса, обслуживаемых множеством серверов OPC, в едином списке;
оптимизация запросов множестваклиентов OPC к одним и тем же параметрам в разных серверах OPC;
организация списка глобальныхпеременных с возможностью непосредственного обмена данными между клиентскимиприложениями GENESIS32;
возможность выполненияарифметических, функциональных, логических и других операций над глобальнымипеременными;
возможность оперативногоизменения привязки глобальных переменных к источникам данных в серверах OPC;
резервирование серверов OPC наузлах локальных и глобальных сетей с автоматическим перенаправлением запросовклиентских приложений в случае выхода из строя основных узлов.4.6 WebHMI
WebHMI средство просмотраграфических мнемосхем контролируемого технологического процесса в глобальнойсети Internet и/или в корпоративной Intranet. WebHMI предназначен дляпредоставления данных и графической информации о контролируемом технологическомпроцессе любого клиентского приложения комплекса GENESIS32 любому компьютеру,на котором установлен браузер Интернет Microsoft Internet Explorer. WebHMIосновывается на архитектуре Microsoft DNA и использует технологии ActiveX иDCOM. Помимо просмотра информации о контролируемом процесса WebHMI обеспечиваетвозможность оперативного диспетчерского управления, что позволяет строитьнедорогие распределенные системы верхнего уровня. Основные функциональныевозможности WebHMI:
возможность работы воперационных системах Windows NT,98/2000/XP;
тонкий Web-клиент позволяетиспользовать на операторских станциях бесплатный Microsoft Internet Explorerдля просмотра графических мнемосхем контролируемого процесса;
работа с графической информациейи данными GENESIS32 с «НУЛЕВОЙ инсталляцией» на операторских станциях;
публикация управляющих элементовActiveX и HTML-страниц;
требует наличияMicrosoft Internet Explorer 4 или 5;
передача данных OPC черезИнтернет;
администрирование действийпользователей и приложений на уровне NT.4.7 AlarmWorX32 Multimedia
AlarmWorX32 Multimedia являетсямультимедийным приложением, поддерживающим технологию OPC, котороепредназначено для локального и удаленного оповещения оперативного персонала обаварийных и других событиях, связанных с контролируемым технологическимпроцессом и состоянием технических средств АСУТП.
В состав AlarmWorX32 Multimediaвходит набор агентов оповещения, позволяющих выполнять следующие оповещающиедействия:
отправка сообщений об аварийныхсобытиях на пейджеры (имеется поддержка технологии SMS);
взаимодействие с пейджерами вдуплексном режиме;
отправка сообщений поэлектронной почте;
отправка сообщений по факсу;
речевое оповещение посредствомтехнологии преобразования текста в речь;
речевое оповещение при помощивоспроизведения звуковых файлов в формате wav;
видеооповещение путемвоспроизведения видеороликов и отображения фотоснимков, оцифровкавидеоинформации, поступающей от видеокамер;
оповещение во всплывающих окнах;
оповещение путем выводасообщений в окне бегущей строки (Marquee);
оповещение бегущей строкой,выводимой во внешние устройства, подключенные к последовательному портукомпьютера или к локальной вычислительной сети;
оповещение посредством отправкимгновенных сообщений через агента MS Instant Messaging;
работа с Конфигуратором сервераоповещения AlarmWorX32 существенно облегчается наличием в составе системыМастера конфигураций, а также интерактивного учебного пособия Icon-NickTutorial.4.8 Менеджер экрана Sreen Manager
Менеджер экрана являетсясервисной программой, которая позволяет управлять расположением окон приложенийна экране компьютера. Менеджер экрана обеспечивает возможность заданияконфигурации экранов одного и более мониторов для систем с несколькимимониторами.4.9 DataSpy
DataSpy является сервиснойпрограммой, которая предназначена для проверки работоспособности серверов OPC,расположенных на локальном и удаленных компьютерах. DataSpy позволяет проверятьсовместимость со спецификацией серверов OPC Data Access версий 1.0 и 2.0, атакже OPC Alarms and Events 1.0.4.10 Dr. DCOM
Dr. DCOM является сервиснойпрограммой, которая облегчает настройку взаимодействия удаленных клиентов исерверов OPC через DCOM. Dr. DCOM обеспечивает поиск удаленных серверов,подключение к ним и тестирование вызовов интерфейсов OPC.4.11 Сервер администрирования Security Server
Сервер администрированияпредназначен для управления доступом пользователей и групп пользователей кфункциям приложений, входящих в состав GENESIS32. Конфигуратор сервераадминистрирования позволяет создавать учетные записи для пользователей и групппользователей с последующим ограничением или разрешением доступа к множествуопераций в приложениях GENESIS32. Имеется возможность задания следующихограничений:
ограничение доступа к файлам;
запрещение записи значений втеги OPC;
вход пользователя в систему наограниченный промежуток времени;
вход пользователя в системутолько на определенных станциях сети;
управление политикой учетнойзаписи по аналогии с принятой в Windows NT/2000;
ограничение доступа киспользованию конфигураторов GENESIS32;
ограничение доступа к выполнениюмножества операций в приложениях GENESIS32.
4.12 GEN-OPC сервер
GEN-OPC сервер обеспечиваетинтерфейс OPC между приложениями комплекса GENESIS for Windows 3.51 всуществующих системах и клиентскими приложениями GENESIS32, что позволяет сохранитьвложения пользователей и безболезненно перейти на новую версию продукта. 4.13 ActiveX ToolWorX
ActiveX ToolWorX предназначендля быстрой разработки управляющих элементов ActiveX, являющихся клиентами OPC,с возможностью последующего использования в приложениях-контейнерах, подобныхGraphWorX32.4.14 OPC ToolWorX
OPC ToolWorX имеет в своемсоставе мастер для автоматической генерации кода клиентов и серверов OPC всреде MS Visual C++ на базе примера полнофункционального OPC-сервера дляпротокола Modbus, а также тестовое клиентское приложение. OPC ToolWorX являетсяинструментальным средством быстрой разработки серверов и клиентов OPC, которыйпозволяет производителям серийного оборудования для промышленной автоматизациив кратчайшие сроки перейти к использованию наиболее передовой технологии обменаданными и обслуживания устройств в среде Windows. OPC ToolWorX содержиткомплекты разработки серверов и клиентов OPC. Каждый комплект имеет в своемсоставе примеры исходных текстов двух серверов OPC, документацию, тестовоеклиентское приложение, а также средство генерации интерфейсов диспетчеризацииOLE Automation с тестовым примером на Visual Basic. Основные функциональныевозможности OPC ToolWorX:
модель свободных потоков;
DLLавтоматизации OLE;
мастера для генерации приложенийVisual C++;
навигатор тегов OPC;
одновременная поддержкаспецификаций OPC Data Access и OPC Alarms and Events;
возможность создания внутри задачныхсерверов для Windows CE.
5. Среда разработки мнемосхем Graphworx 32
Графические мнемосхемыавтоматизированных рабочих мест оператора, называемые экранными формами,разрабатываются при помощи GraphWorX32 и сохраняются в файлах экранных форм,имеющих расширение *. GDF.
Экранные формы могут включать всебя элементы просмотра графиков текущих и исторических данных TrendWorx32Viewer ActiveX, элементы просмотра событий и тревог AlarmWorx32 Viewer ActiveXи элементы просмотра архива событий AlarmWorx32 Reporter ActiveX. Конфигурированиеуказанных элементов просмотра может выполняться как в самом GraphworX32, так и в многооконных контейнерах TrendWorX32 и AlarmWorX32 соответственно. Подсистемаобнаружения и обработки событий строится на базе Конфигуратора серверааварийных событий AlarmWorX32. Единый список переменныхпроекта может быть создан средствами DataWorX32, который не входит в комплектпоставки GENESIS32 и должен заказываться отдельно. При этом обеспечиваетсявозможность структуризации глобальных переменных путем перемещения их вотдельные многоуровневые группы, а также выполнения простых вычислительныхопераций над переменными.
Вторичная обработка данных идругие пользовательские алгоритмы могут выполняться в многопоточных сценарияхVBA 6.0, разработка и исполнение которых осуществляется при помощи ScriptWorX32.Отдельные сценарии группируются в проект ScriptWorX32,который компилируется в многопоточную библиотеку динамической компоновки (DLL).Подсистема архивации данных реализуется на основе стандартных СУБД (MS Access,MS SQL Server, Oracle или Microsoft Data Engine), а также сервера архивацииданных TrendWorx32 SQL Data Logger и сервера архивации событий AlarmWorX32Logger. Извлечение информации из архива TrendWorx32 SQL Data Loggerможетвыполняться при помощи элемента просмотра графиковTrendWorx32 Viewer ActiveX,генератора отчётов TrendworX32 Reporting, сценариев ScriptWorX32 илиприложений, написанных на Visual Basic, Visual C++, C++ Builder сиспользованием интерфейсов OLE DB. Все компоненты комплекса открыты черезинтерфейс OLE Automation. Это значит, что каждое из приложений GENESIS32 можетбыть встроено в любую имеющуюся или создаваемую программную систему, разработкакоторой ведётся с использованием инструментальных средств общго назначения,подобных Visual C++, Visual Basic, Delphi, C-builder и т.п.
Внешний вид главного окнаGraphworx32 с его основными компонентами, включая панель инструментов, наборинструментов рисования, упорядочивания, шрифтов и динамики, показан на рис.11.
/>
Рис.9. Внешнийвид главного окна GraphWorX32
6. Создание мнемосхемы моделидискретно-непрерывного технологического процесса
Для создания данной мнемосхемынеобходимо чётко поставить задачу. Предполагается, что имеется два компонента: CompАи CompB, которые могут быть смешаны друг с другом в определённой пропорции.После смешивания будет происходить отгрузка готового продукта. Предположим, чтокомпоненты CompA и CompB являются жидкостями. Подача жидкости CompAв смесительный резервуар будет управляться задвижкой ValveA. Подачажидкости CompB будет управляться задвижкой ValveB. Задвижки ValveAи ValveB имеют два положения: Открыта и Закрыта. Запуск технологическогопроцесса производится нажатием кнопки “Пуск". В смесительномрезервуаре имеются 3 лопастных смесителя, расположенных на разных уровнях. Включениесмесителя Mixer 1 происходит при достижении 30% -ного наполнениярезервуара. Смеситель Mixer 2 включается при 50% -ном наполнениирезервуара. Смеситель Mixer 3 включается при уровне наполнения, равном70%. Остановка смесителей происходит при понижении уровня наполнения досоответствующих отметок включения. Цвет изображений смеси будет изменяться помере смешивания. Насос Pump1 будет использоваться для отгрузкиприготовленной смеси. Производительность насоса равна производительности. эквивалентнойподаче жидкости в резервуар через одну задвижку.6.1 Создание статических объектов мнемосхемы
Для создания статическихобъектов мнемосхемы будет использована встроенная библиотека символов.
/>
Рис.10 Главное окно библиотекисимволов
Для данной мнемосхемы необходимакатегория символов под названием TrainingClass. sdf. Из этой категориивыбираем нужные символы и переносим на мнемосхему, образуя нужную модель, показаннуюна рис.11.
/>
Рис.11 Расположение статическихобъектов из Библиотеки символов на мнемосхеме6.2 Создание анимационных объектов
В данном пункте будет описанопредставление изменяющегося уровня в резервуаре. Для этого следует копироватьизображение разреза в стенке резервуара. Одно из этих изображений следуетперекрасить в чёрный цвет для эффекта пустоты в резервуаре. Изображение чёрногоцвета нужно поместить на задний план, а поверх его наложить его копию синегоцвета для эффекта заполнения резервуара. Затем к этому изображению применяетсядинамика изменения размера. В поле источника данных заведётся переменная ~~tank~~,значение которой будет определять степень заполнения резервуара.
6.3 Создание имитации наполнения/опустошениярезервуара
Ниже будет описана настройкадинамического действия для графического объекта Switch On создаваемоймнемосхемы. Как следует из названия, данный графический объект представляетпереключатель с двумя фиксируемыми положениями и служит для запускадискретно-непрерывного процесса. После выполнения однократного щелчка левойклавишей мыши над объектом Switch on (переключатель зелёного цвета),переключатель перейдёт во включённое положение и будет происходить загрузказначений в локальную переменную ~~tank~~.
Данный алгоритм будет иметьследующие свойства:
уровень в резервуаре будетустановлен в 0, если значение переменной ~~tank~~ станет меньше 0;
если уровень в резервуаре большелибо равен 0, при одновременном равенстве 1 сигнала запуска процесса то уровеньв резервуаре будет представляться следующей формулой:
Уровень= Текущийуровень+ ICONICS. Simulator.1\diplom. dip. bool. out1 + ICONICS. Simulator.1\diplom.dip. bool. out2 — отгрузка, где: ICONICS. Simulator.1\diplom. dip. bool. out1 = 1, еслизадвижка ValveA (расположенаслева от резервуара) открыта (CompAпоступает в резервуар)
ICONICS. Simulator.1\diplom.dip. bool. out1 = 0, если задвижка ValveA (расположена слева от резервуара) закрыта (CompA не поступает врезервуар)
ICONICS. Simulator.1\diplom.dip. bool. out2 = 1, если задвижка ValveB (расположена справа от резервуара) открыта (CompB поступает в резервуар)
ICONICS. Simulator.1\diplom.dip. bool. out2 = 0, если задвижка ValveB (расположена справа отрезервуара) закрыта (CompB не поступает в резервуар)
Отгрузка = 1, еслиотгрузочный насос включён; Отгрузка = 0, если отгрузочный насосвыключен.
Для реализации построенногоалгоритма необходимо завести нужные переменные, приведённые ниже в табл.3:
Табл.3 Описаниепеременных, необходимых для создания дискретно-непрерывного процессаИмя переменной Тип Описание
ICONICS. Simulator.1\diplom. dip. start Boolean Сигнал запуска процесса
~~tank~~ Double Уровень в резервуаре (в диапазоне от 0 до 1000см)
ICONICS. Simulator.1\diplom. dip. bool. out1 Boolean
Положение задвижки ValveA
ICONICS. Simulator.1\diplom. dip. bool. out2 Boolean
Положение задвижки ValveB
~~disch~~ Boolean Положение отгрузочного насоса
Для создания этих переменныхбудет использоваться OPC-сервер имитации сигналов OPC Simulator изпрограммной группы ICONICS Genesis-32. Для данной мнемосхемы будет созданаотдельная группа тегов, названная diplom. dip. В нужной группе создаютсянужные теги и конфигурируются на усмотрение пользователю.
/>
Рис.12 Добавление набора тегов вOPC-сервере имитации сигналов
Теперь, когда есть нужныепеременные можно перейти непосредственно к созданию имитациизаполнения/опустошения резервуара. Для этого нужно выделить изображение SwtichOn и в панели “Динамика" выбрать свойство “Указание и щелчокмышью". После чего на экран монитора будет выведена диалоговая панель “Инспекторсвойств" с выбранной закладкой “Указание и щелчок". Ввыпадающем списке “Операция"следует выбрать действие “Передать значение".
/>
Рис.13 Внешний вид страницы “Указаниеи щелчок” диалоговой панели “Инспектор свойств" после выбораоперации “Передать значение”
В выпадающем списке “Тип”следует выбрать “С фиксацией”. Если выбрать тип без фиксации, тогдаэлемент Switch On будет подавать 1 (или True) на зависимые отнего переменные (под словом зависимые следует понимать то, что элемент Switchon управляет всей моделью, то есть если он включен, то процесс можетработать, а если выключен то процесс остановится) только при нажатии левойкнопкой мыши. Получается, что весь процесс будет работать лишь в момент нажатияклавишей мышью Switch On. Поэтому следует выбрать тип “С фиксацией"(фиксация позволяет зафиксировать положение/значение элемента до тех пор,пока пользователь не изменит положение/значение этого элемента). Теперь еслинажать левой клавишей мыши на элемент Switch On, то он станет 1 (или True)до тех пор, пока пользователь не остановит процесс, тем самым изменив Trueна False. В группе параметров “Порядок выполнения” отмечаетсяфлажок “Пока нажато”, после чего в поле “Интервал" устанавливаетсязначение 50 мс (это значит, что в переменную будет записываться значение раз в50 мс). Источником данных будет являться локальная переменная ~~tank~~.После настройки параметров остаётся ввести выражение, которое будет отображатьописанный ваше алгоритм. Для этого в инспекторе свойств есть меню “Редакторвыражений”.
При вызове редактора выраженийбудет выведена диалоговая панель, в которую и будет введёно выражение. Выражениевыглядит так: X= (if (~~tank~~>1000,1000,~~tank~~ +
{{ICONICS. Simulator.1\diplom. dip. start}}*{{ICONICS. Simulator.1\diplom. dip. bool. out1}}+{{ ICONICS. Simulator.1\diplom.dip. start}}*
{{ICONICS.Simulator.1\diplom. dip. bool. out2}} — {{ICONICS. Simulator.1\diplom. dip. start}}* ~~disch~~)) * (if (~~tank~~
Далее следует установить соединениемежду положением переключателя Switch On и переменной ICONICS. Simulator.1\diplom.dip. start. Для этого необходимо выбрать инструмент “Указание ищелчок мышью". В появившейся диалоговой панели, в списке “Операция"нужно выбрать “Передать значение” и в поле “Значение" поставить1. Далее переключатель Switch On будет настроен таким образом, что врежиме исполнения он будет видимым только в случае, если дискретно-непрерывныйпроцесс остановлен. Для этого нужно выделить элемент Switch On и выбратьинструмент “Скрыть/блокировать" в панели “Динамика”. Наэкран будет выведена диалоговая панель, которой в качестве источника данныхбудет переменная ICONICS. Simulator.1\diplom. dip. start иуказываем параметр “Скрыть/блокировать, если true”. Получается, что еслипеременная ICONICS. Simulator.1\diplom. dip. start будет равна 1,то объект Switch On не будет видимым в режиме исполнения. Теперь, когданастроен элемент Switch On, нужно настроить другой элемент — SwitchOff, который предназначен для остановки процесса. Переключатель SwitchOff должен быть видимым только в случае, если процесс запущен. В то жевремя щелчок левой клавишей мыши на данном переключателе должен приводить ксбросу в 0 значение переменной ~~tank~~.
Выделяем объект Switch Offи используем инструмент “Указание и щелчок мышью" в панели “Динамика”.В появившемся окне нужно выбрать операцию Передать значение и в поле Порядоквыполнения необходимо указать Если отпущено. Источником данных будет переменнаяICONICS. Simulator.1\diplom. dip. start и в поле значениеуказываем 0. Снова выделяем объект Switch Off и выбираем инструмент “Скрыть/блокировать"в инструментальной панели “Динамика”. В инспекторе свойств свыбранной закладкой “Скрыть" нужно выполнить нужную настройку. Источникомданных выбираем ICONICS. Simulator.1\diplom. dip. start ивыбираем опцию “Скрыть/блокировать, если False". Теперь когда всенастройки с элементами Switch On и Switch Off, следует наложить их другна друга для динамического эффекта.6.4 Создание элемента отображения уровня врезервуаре
Выбираем инструмент “Численноеотображение параметра" в инструментальной панели “Динамика”. Впоявившейся диалоговой панели в поле Источник данных следует указать локальнуюпеременную ~~tank~~. Теперь уровень в резервуаре будетотображаться не только графически, но и в текстовом виде.
6.5 Настройка анимации для изображения миксеров
Каждое изображение миксера взависимости от значения уровня в резервуаре должно представлять одно из двухсостояний: включён или выключен. Во включённом состоянии лопасть миксера должнавращаться. Данный визуальный эффект создаётся при помощи динамического действия“Анимация". Изображение лопасти каждого миксера, вставленного избиблиотеки символов, состоит из графических объектов.
/>
Рис.14 Составные частиизображения лопасти миксера
Все эти элементы данного объектав итоге будут представлять анимацию. Для начала следует выделить лопастьмиксера и разгруппировать его при помощи инструмента “Разгруппировать” винструментальной панели “Расположение". После данной операциинеобходимо выделить торец миксера и выдвинуть его на передний план. После этогонужно выделить всё изображение лопасти и выбрать инструмент “Анимация" винструментальной панели “Динамика”. Во всплывшем окне инспектора свойствс выбранной закладкой “Анимация" нужно в редакторе выражений ввестиследующее выражение: X= (~~tank~~>300) && {{ICONICS.Simulator.1\diplom. dip. start}}. Благодаря данному выражению нижняя лопастьмиксера будет вращаться, когда переменная ~~tank~~ (уровень врезервуаре) будет больше 300, но при условии, что переменная ICONICS. Simulator.1\diplom.dip. start будет равна 1 (то есть если процесс включён). Так же в инспекторесвойств следует отметить опцию “Анимация, если true". Порядок сменыкадров будет равным 50 мс. Так же следует установить опцию “Видимый, есливыкл” и “Первый кадр, если выкл”.
/>
Рис.15 Настройка свойствдинамического действия Анимация для изображения лопасти
Затем для упрощения процессаделаем ещё 2 копии настроенных лопастей и размещаем выше оригинальной лопасти. Витоге получится миксер, состоящий из 3 лопастей./> />
Рис.16 Размещение изображений лопастей на оси
Далее следует вызвать инспекторсвойств средней лопасти с вкладкой “Анимация" и в выражении,находящемся в поле Источник данных изменить 300 на 500, в результате чегоформула будет иметь следующий вид: X= (~~tank~~>500) && {{ICONICS.Simulator.1\diplom. dip. start}}.
После этого нужно проделатьаналогичную операцию с верхней лопастью, но 300 заменить на 700: X= (~~tank~~>700) &&{{ICONICS. Simulator.1\diplom. dip. start}}.
После всей проделанной работы витоге получилась мнемосхема, показанная на рис.17.
/>
Рис.17. Мнемосхемадискретно-непрерывного процесса
Заключение
В данной дипломной работе речьшла не только о распространении автоматизации во многие сферы человеческойдеятельности, но и о том, какую важную роль играет человеко-машинный интерфейсв этой автоматизации. Мною были представлены самые популярные SCADA-системына современном рынке. Но детально описана была SCADA-системаGenesis-32, так как именно в этой системе была сделанаданная дипломная работа. Так же в ходе выполнения дипломной работы была созданамодель дискретно-непрерывного процесса.
Список литературы
1. www.prosoft.ru
2. www.asutp.ru
3. www.iconics.com
4. Джеф Раскин “Интерфейс: новые направления в проектировании компьютерныхсистем” (Символ-плюс, 2005).
5. Fastwel SD Dept “Руководство пользователя ICONICS GraphWorX32" (19.05.2000).
6. Fastwel SD Dept“Начальные сведения и ускоренное ознакомление с основными подсистемами ICONICS GraphWorX32"(10.06.1997)