Разработка человеко-машинного интерфейса в GraphWorX32

Тип работы:
Дипломная
Предмет:
Программирование


Узнать стоимость

Детальная информация о работе

Выдержка из работы

Содержание

  • Введение
    • 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 Сервер администрирования Security Server
    • 4. 12 GEN-OPC сервер
    • 4. 13 ActiveX ToolWorX
    • 4. 14 OPC ToolWorX
    • 5. Среда разработки мнемосхем Graphworx 32
    • 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 — 10 000 долларов).

Рис. 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 Actions Archiving;

автоматизированное составление отчетов за произвольный интервал времени (посменные отчеты, еженедельные, ежемесячные и т. д.) — Automated Reporting.

Человеко-машинный интерфейс в промышленности реализуется с помощью мнемосхем. Мнемосхема — совокупность сигнальных устройств и сигнальных изображений оборудования и внутренних связей контролируемого объекта, размещаемых на диспетчерских пультах, операторских панелях или выполненных на персональном компьютере. Информация, которая выводится на мнемосхему, может быть представлена в виде аналогового, дискретного и релейного сигнала, а также графически. На мнемосхемах отражается основное оборудование, сигналы, состояние регулирующих органов. Вспомогательный и справочный материал должен быть расположен в дополнительных формах отображения, с возможностями максимально быстрого извлечения этих вспомогательных форм на экран.

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

За последние 10−15 лет за рубежом резко возрос интерес к проблемам построения высокоэффективных и высоконадежных систем диспетчерского управления и сбора данных. С одной стороны, это связано со значительным прогрессом в области вычислительной техники, программного обеспечения и телекоммуникаций, что увеличивает возможности и расширяет сферу применения автоматизированных систем. С другой стороны, развитие информационных технологий, повышение степени автоматизации и перераспределение функций между человеком и аппаратурой обострило проблему взаимодействия человека-оператора с системой управления. Расследование и анализ большинства аварий и происшествий в авиации, наземном и водном транспорте, промышленности и энергетике, часть из которых привела к катастрофическим последствиям, показали, что, если в 60-х годах ошибка человека являлась первоначальной причиной лишь 20% инцидентов (80%, соответственно, за технологическими неисправностями и отказами), то в 90-х годах доля человеческого фактора возросла до 80%, причем, в связи с постоянным совершенствованием технологий и повышением надежности электронного оборудования и машин, доля эта может еще возрасти (Рис. 6).

Рис. 6. Тенденции причин аварий в сложных автоматизированных системах.

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

Изучение материалов по проблемам построения эффективных и надежных систем диспетчерского управления показало необходимость применения нового подхода при разработке таких систем: human-centered design (или 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-системами нового поколения. Эффект от внедрения новой системы управления исчисляется, в зависимости от типа предприятия, от сотен тысяч до миллионов долларов в год; например, для одной средней тепловой станции он составляет, по подсчетам специалистов, от 200 000 до 400 000 долларов. Большое внимание уделяется модернизации производств, представляющих собой экологическую опасность для окружающей среды (химические и ядерные предприятия), а также играющих ключевую роль в жизнеобеспечении населенных пунктов (водопровод, канализация и пр.). С начала 90-х годов в США начались интенсивные исследования и разработки в области создания автоматизированных систем управления наземным (автомобильным) транспортом ATMS (Advanced Traffic Management System).

3. Обзор программных средств для разработки человеко-машинного интерфейса

В настоящее время на рынке существует множество 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 до 64 000×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 вызовов, ошибок, сообщений и т. п.

ПоказатьСвернуть
Заполнить форму текущей работой