Общие
понятия и структура SCADA-систем
Рассматриваемые вопросы:
1. Введение.
2. Определение
и общая структура SCADA.
3. Функциональная
структура SCADA.
4. Особенности
SCADA как процесса управления.
Введение
В
настоящее время SCADA (Supervisory Control And Data Acquisition -
диспетчерское управление и сбор данных) является наиболее перспективной
технологией автоматизированного управления во многих отраслях промышленности.
В
последние несколько десятилетий за рубежом резко возрос интерес к проблемам
построения высокоэффективных и высоконадежных систем диспетчерского управления
и сбора данных.
С одной
стороны, это связано со значительным прогрессом в области вычислительной
техники, программного обеспечения и телекоммуникаций, что увеличивает
возможности и расширяет сферу применения автоматизированных систем.
С
другой стороны, развитие информационных технологий, повышение степени
автоматизации и перераспределение функций между человеком и аппаратурой
обострило проблему взаимодействия человека-оператора с системой управления.
Расследование и анализ большинства аварий и происшествий в промышленности и на
транспортен, часть из которых привела к катастрофическим последствиям,
показали, что, если в 60-х годах ХХ века ошибка человека являлась
первоначальной причиной лишь 20% инцидентов, то в 90-х годах доля
«человеческого фактора» возросла до 80%, причем, в связи с постоянным
совершенствованием технологий и повышением надежности электронного оборудования
и машин, доля эта может еще возрасти (рис.1).
Рис.1
Тенденции причин аварий в сложных
автоматизированных системах.
Основной
причиной таких тенденций является старый традиционный подход к построению АСУ,
который применяется часто и в настоящее время: ориентация в первую очередь на
применение новейших технических (технологических) достижений, стремление
повысить степень автоматизации и функциональные возможности системы и, в то же
время, недооценка необходимости построения эффективного человеко-машинного
интерфейса (HMI - Human-Machine Interface), т.е.
интерфейса, ориентированного на оператора.
Возникла
необходимость применения нового подхода при разработке таких систем, а именно,
ориентация в первую очередь на человека-оператора (диспетчера) и его задачи.
Реализацией такого подхода и являются SCADA-системы,
которые иногда даже называют SCADA/HMI.
Управление
технологическими процессами на основе SCADA-систем
стало осуществляться в передовых западных странах в 80-е годы ХХ века. В России
переход к управлению на основе SCADA-систем
стал осуществляться несколько позднее, в 90-е годы.
SCADA-системы наилучшим образом применимы для автоматизации
управления непрерывными и распределенными процессами, какими являются
нефтегазовые технологические процессы. Кроме нефтяной и газовой промышленности,
SCADA-системы применяются в следующих областях:
n управление
производством, передачей и распределением электроэнергии;
n промышленное
производство;
n водозабор,
водоочистка и водораспределение;
n управление
космическими объектами;
n управление
на транспорте (все виды транспорта: авиа, метро, железнодорожный,
автомобильный, водный);
n телекоммуникации;
n военная
область.
В мире
насчитывается не один десяток компаний, активно занимающихся разработкой и
внедрением SCADA-систем. Программные продукты
многих из этих компаний представлены на российском рынке. Кроме того, в России
существуют компании, которые занимаются разработкой отечественных SCADA-систем.
Определение и общая структура SCADA
SCADA - это процесс сбора информации реального времени с
удаленных объектов для обработки, анализа и возможного управление этими
объектами.
В SCADA-системах в большей или меньшей степени реализованы
основные принципы, такие, как работа в режиме реального времени, использование
значительного объема избыточной информации (высокая частота обновления данных),
сетевая архитектура, принципы открытых систем и модульного исполнения, наличие
запасного оборудования, работающего в «горячем резерве» и др.
Все современные SCADA-системы включают три основных структурных компонента (рис.2).

Рис. 2.
Основные структурные компоненты SCADA-системы.
Remote Terminal Unit (RTU) -
удаленный терминал, осуществляющий обработку задачи (управление) в режиме
реального времени.
Системы реального времени бывает двух
типов: системы жесткого реального времени и системы мягкого реального времени.
Системы жесткого реального времени не
допускают никаких задержек
Спектр
воплощения RTU широк - от примитивных
датчиков, осуществляющих съем информации с объекта, до специализированных
многопроцессорных отказоустойчивых вычислительных комплексов, осуществляющих
обработку информации и управление в режиме жесткого реального времени.
Конкретная его реализация определяется конкретным применением. Использование
устройств низкоуровневой обработки информации позволяет снизить требования к
пропускной способности каналов связи с центральным диспетчерским пунктом.
Master Terminal Unit (MTU) -
диспетчерский пункт управления (главный терминал); осуществляет обработку
данных и управление высокого уровня, как правило, в режиме мягкого реального
времени. Одна из основных функций - обеспечение интерфейса между
человеком-оператором и системой. MTU может
быть реализован в самом разнообразном виде - от одиночного компьютера с
дополнительными устройствами подключения к каналам связи до больших
вычислительных систем и/или объединенных в локальную сеть рабочих станций и
серверов.
Communication System (CS) -
коммуникационная система (каналы связи), необходима для передачи данных с
удаленных точек (объектов, терминалов) на центральный интерфейс
оператора-диспетчера и передачи сигналов управления на RTU.
Функциональная структура SCADA
В
названии SCADA присутствуют две основные
функции, возлагаемые на системы этого класса:
n сбор
данных о контролируемом процессе;
n управление
технологическим процессом, реализуемое ответственными лицами на основе
собранных данных и правил (критериев), выполнение которых обеспечивает
наибольшую эффективность технологического процесса.
SCADA-системы обеспечивают выполнение следующих функций:
1. Прием информации о контролируемых технологических
параметрах от контроллеров нижних уровней и датчиков.
2. Сохранение принятой информации в архивах.
3. Обработка принятой информации.
4. Графическое представление хода технологического
процесса, а также принятой и архивной информации в удобной для восприятия
форме.
5. Прием команд оператора и передача их в адрес
контроллеров нижних уровней и исполнительных механизмов.
6. Регистрация событий, связанных с контролируемым
технологическим процессом и действиями персонала, ответственного за
эксплуатацию и обслуживание системы.
7. Оповещение эксплуатационного и обслуживающего
персонала об обнаруженных аварийных событиях, связанных с контролируемым
технологическим процессом и функционированием программно-аппаратных средств
АСУТП с регистрацией действий персонала в аварийных ситуациях.
8. Формирование сводок и других отчетных документов
на основе архивной информации.
9. Обмен информацией с автоматизированной системой
управления предприятием.
10. Непосредственное автоматическое управление
технологическим процессом в соответствии с заданными алгоритмами.
Данный
перечень функций, выполняемых SCADA-системами,
не является абсолютно полным, более того, наличие некоторых функций и объем их
реализации сильно варьируется от системы к системе.
Особенности SCADA как
процесса управления
Существует два типа управления удаленными
объектами в SCADA-системах: автоматическое и
инициируемое оператором системы.
Процесс
управления в современных SCADA-системах
имеет следующие особенности:
n процесс
SCADA применяется в системах, в которых обязательно
наличие человека (оператора, диспетчера);
n процесс
SCADA был разработан для систем, в которых любое
неправильное воздействие может привести к отказу объекта управления или даже
катастрофическим последствиям;
n оператор
несет, как правило, общую ответственность за управление системой, которая при
нормальных условиях только изредка требует подстройки параметров для достижения
оптимальной производительности;
n активное
участие оператора в процессе управления происходит нечасто и в непредсказуемые
моменты времени, обычно в случае наступления критических событий (отказы,
нештатные ситуации и пр.);
n действия
оператора в критических ситуациях могут быть жестко ограничены по времени
(несколькими минутами или даже секундами).
требования к SCADA-системам
К SCADA-системам предъявляются следующие основные требования:
n надежность
системы;
n безопасность
управления;
n открытость,
как с точки зрения подключения различного контроллерного оборудования, так и
коммуникации с другими программами;
n точность
обработки и представления данных, создание богатых возможностей для реализации
графического интерфейса;
n простота
расширения системы;
n использование
новых технологий.
Требования
безопасности и надежности управления в SCADA-системах включают:
n никакой
единичный отказ оборудования не должен вызвать выдачу ложного выходного
воздействия (команды) на объект управления;
n никакая
единичная ошибка оператора не должна вызвать выдачу ложного выходного
воздействия (команды) на объект управления;
n все
операции по управлению должны быть интуитивно- понятными и удобными для
оператора (диспетчера).
Основные возможности современных SCADA-пакетов
Исходя
из требований, которые предъявляются к SCADA-системам,
большинству современных пакетов присущи следующие основные возможности:
1. Автоматизированная разработка, позволяющая
создавать ПО системы автоматизации без реального программирования.
2. Средства сбора и хранения первичной информации от
устройств нижнего уровня.
3. Средства обработки первичной информации.
4. Средства управления и регистрации сигналов об
аварийных ситуациях.
5. Средства хранения информации с возможностью ее
постобработки (как правило, реализуется через интерфейсы к наиболее популярным
базам данных).
6. Средства визуализации информации в виде графиков,
гистограмм и т.п.
Тенденции развития аппаратных и программных
средств SCADA-систем
Общие тенденции
Прогресс
в области информационных технологий обусловил развитие всех 3-х основные
структурных компонент систем диспетчерского управления и сбора данных - RTU, MTU и CS, что позволило значительно увеличить их возможности;
так, число контролируемых удаленных точек в современной SCADA-системе может достигать 100 000 и более. На настоящий
момент значение данного параметра практически не имеет ограничений.
Основная
тенденция развития технических средств (аппаратного и программного обеспечения)
SCADA - миграция в сторону полностью открытых систем.
Открытая архитектура позволяет независимо выбирать различные компоненты системы
от различных производителей; в результате - расширение функциональных
возможностей, облегчение обслуживания и снижение стоимости SCADA-систем.
Удаленные терминалы
Главная
тенденция развития удаленных терминалов (RTU) -
увеличение скорости обработки и повышение их интеллектуальных возможностей.
Современные терминалы строятся на основе микропроцессорной техники, работают
под управлением операционных систем реального времени, при необходимости
объединяются в сеть, непосредственно или через сеть взаимодействуют с
интеллектуальными электронными датчиками объекта управления и компьютерами
верхнего уровня.
Конкретная
реализация RTU зависит от области применения.
Для индустриальных и транспортных систем существует два конкурирующих направления
в технике RTU - промышленные компьютеры и
программируемые логические контроллеры (в русском переводе часто встречается
термин «промышленные контроллеры») - PLC.
Промышленные
компьютеры представляют собой, как правило, программно-совместимые с обычными
коммерческими персональными компьютерами машины, но адаптированные для жестких
условий эксплуатации - буквально для установки на производстве, в цехах,
газокомпрессорных станциях и т.п. Адаптация относится не только к
конструктивному исполнению, но и к архитектуре и схемотехнике, т.к. изменения
температуры окружающей среды приводят к дрейфу электрических параметров.
В
качестве операционной системы в промышленных РС, работающих в качестве
удаленных терминалов, все чаще начинает применяться Windows NT, в том числе различные расширения реального
времени, специально разработанные для этой операционной системы. Наиболее
известными поставщиками промышленных компьютеров являются американские фирмы Xycom, Octagon Systems и тайваньские Advantech, Axiom.
Промышленные контроллеры (PLC) представляют собой специализированные вычислительные устройства, предназначенные для управления процессами (объектами) в реальном времени. Промышленные контроллеры имеют вычислительное ядро и модули ввода-вывода, принимающие информацию (сигналы) с датчиков, переключателей, преобразователей и контроллеров и осуществляющие управление процессом или объектом путем выдачи управляющих сигналов на приводы, клапаны, переключатели и другие исполнительные устройства. Современные PLC часто объединяются в сеть с помощью промышленных (индустриальных) шин (сетей), а программные средства, разрабатываемые для них, позволяют в удобной для оператора форме программировать и управлять ими или непосредственно, или через компьютер, находящийся на верхнем уровне SCADA-системы - диспетчерском пункте управления (MTU). Исследование рынка PLC показало, что наиболее развитыми архитектурой, программным обеспечением и функциональными возможностями обладают контроллеры фирм Siemens, Fanuc Automation, Allen-Bradley, Mitsubishi.
Много
материалов и исследований по промышленной автоматизации посвящено конкуренции
двух направлений - РС и PLC;
каждый из авторов приводит большое количество доводов «за» и «против» по
каждому направлению. Тем не менее, можно выделить основную тенденцию: там, где
требуется повышенная надежность и управление в жестком реальном времени,
применяются PLC. В первую очередь это касается
применений в системах жизнеобеспечения (например, водоснабжение,
электроснабжение), транспортных системах, энергетических и промышленных
предприятиях, представляющих повышенную экологическую опасность. Индустриальные
РС применяются преимущественно в менее критичных областях.
Каналы связи
Каналы
связи для современных диспетчерских систем отличаются большим разнообразием.
Выбор конкретного решения зависит от архитектуры системы, расстояния между
диспетчерским пунктом (MTU) и RTU, числа контролируемых точек, требований по пропускной
способности и надежности канала, наличия доступных коммерческих линий связи.
Тенденцией
развития CS как структурного компонента SCADA-систем можно считать использование не только выделенных
каналов связи, но также и корпоративных компьютерных сетей и специализированных
промышленных сетей (индустриальных шин). В современных промышленных,
энергетических и транспортных системах большую популярность завоевали
промышленные сети - специализированные быстродействующие каналы связи,
позволяющие эффективно решать задачу надежности и помехоустойчивости соединений
на разных иерархических уровнях автоматизации.
Диспетчерские пункты
управления
Главной
тенденцией развития MTU является переход большинства
разработчиков SCADA-систем на архитектуру
«клиент-сервер», состоящую из 4-х функциональных компонент:
· User (Operator) Interface (интерфейс пользователя/оператора) - исключительно
важная составляющая систем SCADA. Для
нее характерны: а) стандартизация интерфейса пользователя вокруг нескольких
платформ; б) все более возрастающее влияние Widows; в)
использование стандартного графического интерфейса пользователя (GUI); г) технология объектно-ориентированного
программирования; д) стандартные средства разработки приложений, наиболее
популярные среди которых, - Visual Basic for Applications (VBA), Visual C++; е)
появление вариантов программного
обеспечения класса SCADA/HMI для
широкого спектра задач. Объектная независимость позволяет интерфейсу
пользователя представлять виртуальные объекты, созданные другими системами.
Результат - расширение возможностей по оптимизации HMI-интерфейса.
· Data Management
(управление данными) - отход от узкоспециализированных баз данных в сторону
поддержки большинства корпоративных реляционных баз данных (Microsoft SQL, Oracle). Эта независимость данных изолирует функции доступа и
управления данными от целевых задач SCADA, что
позволяет легко разрабатывать дополнительные приложения по анализу и управлению
данными.
· Networking & Services (сети
и службы) - переход к использованию стандартных сетевых технологий и
протоколов. Службы сетевого управления, защиты и управления доступом, передачи
почтовых сообщений, сканирования доступных ресурсов могут выполняться
независимо от кода целевой программы SCADA.
· Real-Time Servises (службы реального времени) - решают задачи реального и
квазиреального времени. Данные службы управляют обменом информацией с RTU, осуществляют управление базой данных реального времени,
оповещение о событиях, выполняют действия по управлению системой, передачу
информации о событиях на интерфейс оператора.
Операционные системы
Рынок
однозначно сделал выбор в пользу операционной системы Windows.
Решающими для быстрого роста популярности Windows стала
ее открытая архитектура и эффективные средства разработки приложений, что
позволило многочисленным фирмам-разработчикам создавать программные продукты
для решения широкого спектра задач.
Прикладное программное
обеспечение
Ориентация
на открытые архитектуры при построении систем диспетчерского управления и сбора
данных позволяет разработчикам этих систем сконцентрироваться непосредственно
на целевой задаче SCADA - сбор и обработка данных,
мониторинг, анализ событий, управление, реализация HMI-интерфейса.
В
последнее время на рынке появилось большое количество программных продуктов
класса SCADA/HMI,
позволяющих решать специфические задачи по управлению технологическими
процессами, выходящие за рамки целевой задачи SCADA, такие
как задачи автоматизации для дискретного производства, отдельных
производственных процессов, автоматизации с использованием новейших
информационных технологий и др.
Наибольших
успехов в этом направлении добились компании Intellution и Wonderware.
SCADA-продукты
на российском рынке
В настоящее
время на российском рынке представлено несколько десятков зарубежных и
отечественных SCADA-продуктов. Некоторые
зарубежные SCADA-системы, известные в мире, на
российском рынке пока не представлены (например, Cube, Panorama, Cimview и
др.). Но эта ситуация может в любой момент измениться, как это произошло,
например, с австралийской SCADA-системой
Citect: система завоевала рынок Юго-Восточной Азии и
Америки, в Европе рост ее продаж составил 30% в год, а в России она была
неизвестна, пока российская фирма-дистрибьютор RTSoft не
начала распространение системы на российском рынке.
В
России сегодня наиболее популярны следующие зарубежные SCADA-пакеты:
*
In Touch (Wonderware, США)
*
iFIX (Intellution, США)
*
SIMATIC WinCC (Siemens, Германия)
*
Citect (Ci technologies, Австралия)
*
RTAP/plus (HP, Канада)
*
Wizcon (PC Soft International, Израиль-США)
*
Sitex и
Phocus (Jade SoftWare, Великобритания)
*
Real Flex (BJ Software Systems, США)
*
Factory Link (US Data Corp., США)
*
View Star 750 (AEG, Германия)
*
PlantScape (SCAN 3000) (Honeywell, США)
Отечественные
SCADA-программы для персональных компьютеров появились
в нашей стране в начале 90-х годов с уже привычным 10-летним запаздыванием в
этой области, особенно усиленным долго преодолевавшимся недоверием к надежности
и «серьезности» этих систем. Вначале на ПК создавались программы под конкретный
объект и лишь затем появились универсальные решения. В настоящее время имеется
около десятка отечественных SCADA-пакетов.
Вот наиболее известные из них:
*
TRACE MODE (AdAstra, Москва))
*
СКАТ (Центрпрограммсистем,
Тверь)
*
САРГОН
(НВТ-Автоматика)
*
VNS, GARDEN, Vis-a-Vis (ИнСАТ)
*
VIORD («Фиорд»)
*
RTWin (SWD -
Системы Реального Времени)
*
ЗОНД (АСУТП
Программа).
Интегрированный пакет комплексной автоматизации FactorySuite
Главное
направление развития современных программных технологий управления промышленным
производством - органичное сочетание на новом техническом уровне, в рамках
единого «глобального» инструментария, эффективного управления промышленным
процессом как таковым и неразрывно связанным с ним общим бизнес-менеджментом
предприятия.
Широко
распространенные как на мировом, так и на отечественном рынке SCADA-системы в подавляющем большинстве ответственны лишь за
тот уровень промышленной автоматизации, который связан с получением данных от
различных датчиков и устройств ввода-вывода, визуализацией собранной информации
и ее архивированием. Доступ же к этой информации со стороны руководителя
предприятия, а также руководителей экономических подразделений до недавнего
времени был лишь опосредованным. Для анализа производства в целом,
моделирования его отдельных этапов, выявления критических участков и слабых
звеньев важен доступ к производственной информации на всех уровнях в реальном
времени.
Для
решений подобных задач автоматизации промышленных предприятий в целом на рынке
появился ряд новейших программных комплексов, в том числе пакет FactorySuite
американской компании Wonderware.
FactorySuite состоит из следующих основных, хорошо
интегрирующихся друг с другом компонентов:
InTouch -
мощная SCADA-система (о ней будет более подробно рассказано
ниже);
InControl -
инструментальная система программирования контроллеров - ПО на базе Windows NT для
управления контроллерным оборудованием и процессами. Поддерживает широкий набор
устройств ввода-вывода, двигателей, датчиков и другого промышленного
оборудования через устоявшиеся интерфейсы и открытые промышленные сети;
InTrack -
система управления производством. Позволяет наблюдать и отслеживать в реальном
времени незавершенное производство, материально-технические запасы,
использование оборудования, простои и т.п. Система позволяет определять и
моделировать производственные процессы, контролировать исполнение заказов на
продукцию;
InBatch -
система гибкого управления процессами дозирования и смешивания. При помощи InBatch пользователи в металлургической, химической, пищевой
промышленности могут моделировать свои процессы, создавать рецепты, имитировать
исполнение рецептов, сопоставляя их с моделью, управлять реальным процессом,
пользуясь моделью;
InSupport - это
программное средство для обнаружения и устранения неисправностей и ведения
технической документации. InSupport позволяет разрабатывать
процедуры нахождения и устранения неисправностей, которые выдают четкие
инструкции по обслуживанию и ремонту оборудования для операторов и
обслуживающего технического персонала.
IndustrialSQL Server -
реляционная база данных реального времени для внутризаводского применения,
является «сердцем» промышленного набора FactorySuite. IndustrialSQL Server собирает
и хранит историю о производственном процессе, позволяя работать при этом с
несколькими сотнями устройств ввода-вывода и управления, а также с множеством
узлов InTouch и InControl. Он
объединяет эту информацию с данными о конфигурации, аварийных ситуациях и
событиях, с итоговыми и статистическими данными, с историей рецептов (из InBatch), с данными о ходе производства (от InTrack) и с данными о состоянии оборудования (из InSupport);
Scout -
средство, позволяющее просматривать технологический процесс и данные
автоматизированного производства, используя удаленный доступ через сети Internet/Intranet. Может
использоваться руководителями и менеджерами для просмотра информации из любой
географической точки.
Кроме
перечисленных пакетов в FactorySuite входит
несколько специализированных приложений-клиентов, объединенных под названием FactoryOffice. Они
предназначены для создания текущих и архивных трендов, для создания
параметрических графиков X-Y и для табличного отображения текущих и архивных данных.
InTouch
SCADA-система InTouch
считается самой продаваемой в мире. Она имеет более 200 000 инсталляций.
Недавно
появилась уже восьмая версия пакета – InTouch 8.0.
InTouch
является первым продуктом, получившим сертификат соответствия на совместимость
с Windows XP ("Designed for Windows XP”) от Microsoft.
Программный пакет InTouch, как любой SCADA-пакет,
состоит из двух основных компонентов - среды разработки и среды исполнения. В
среде разработки создаются мнемосхемы, определяются и привязываются к
аппаратным средствам входные и выходные сигналы и параметры, разрабатываются
алгоритмы управления и назначаются права операторов. Созданное таким образом
приложение функционирует в среде исполнения.
Для того чтобы приложение могло обмениваться данными
с аппаратурой, необходимо использование третьего компонента - отдельной
программы, называемой сервером ввода-вывода. Как правило, сервер ввода-вывода
ориентирован на использование с конкретным видом оборудования, таким как
промышленные контроллеры. InTouch имеет большое число готовых серверов ввода-вывода -
более 600. При необходимости можно также разработать новый сервер ввода-вывода
с помощью инструментального средства FactorySuite Toolkit. Вместе с тем, используются также серверы
ввода-вывода, рассчитанные на обмен данными согласно определенным промышленным
стандартам, и которые могут работать со всеми контроллерами, удовлетворяющими
этому стандарту (например, Modbus, ProfiBus, DeviceNet и др.).
Архитектура
системы и базы данных реального времени.
InTouch можно
использовать как на отдельных машинах, так и в распределенной клиент-серверной
архитектуре.
База
данных реального времени также имеет клиент-серверную архитектуру, Она ведется
только на сервере и не копируется на клиентские станции.
Исполнительная
система InTouch поддерживает базу данных
текущих значений процесса. Эти значение могут отражать заданные точки контроля
устройств, представляющие параметры физического объекта, или точки,
представляющие расчетные значения. Значения параметров собираются и
обрабатываются на одном или большем количестве компьютеров, использующих
распределенную структуру программного обеспечения. Поддерживаются следующие
типы данных: переменные ввода-вывода, вещественные числа, целые числа,
дискретные числа, строковые переменные (представляет собой строку символов
длиной до 131 символа), суперпеременные (некоторая структура, определяющая
составную переменную; суперпеременная может содержать до 64 переменных и иметь
до 2 уровней вложенности).
Особенности
среды разработки.
Динамическая разработка сетевых приложений.
|
Динамическая
разработка обеспечивает централизованное сопровождение основной копии
приложения InTouch с помощью сетевого сервера. Каждый клиентский узел
делает локальную копию разрабатываемого приложения. Это обеспечивает полное
резервирование. Если сервер недоступен, клиентский узел продолжает работать,
используя свою локальную копию приложения. Когда сервер становиться доступным,
осуществление связи с ним происходит незаметно для пользователя или программы.
Другой
возможностью сетевой распределенной разработки является то, что пользователи
могут получать изменения на клиентских узлах без остановки запущенного
приложения InTouch. Система сигнализирует оператору о доступности изменений
в приложении, и оператор может принять их, когда это будет удобно. При приеме,
только изменившиеся компоненты приложения будут загружены и обновлены на
клиентских узлах.
Мощный редактор QuickScript
С
помощью редактора QuickScript приложения InTouch можно
расширить и настроить в соответствии со спецификацией системы. Скрипты могут
быть сконфигурированы для исполнения с многочисленными параметрами, такими как
специальные состояния процесса, изменения данных, события приложения, события
окна, нажатие на клавиатуре, события ActiveX и другие. Среда QuickScript также
поддерживает QuickFunctions, которые позволяют пользователям разработать
библиотеку скриптов для дальнейшего использования.
Редактор
QuickScript прост
в использовании, и при этом позволяет пользователям полностью настраивать
поведение приложения. При создании скриптов пользователь может использовать
кнопки с наиболее часто используемыми выражениями и структурами, такими как
“больше чем”, “меньше чем”, цикл, условные конструкции ("если-то-иначе").
Дополнительные функции, такие как, математические, строковые преобразования и
другие, доступны посредством Мастера, который запрашивает необходимые аргументы
и проверяет корректность синтаксиса функций. Встроенный механизм проверки
корректности позволяет пользователям проверять правильность скриптов перед их
развертыванием, тем самым, предотвращая появление ошибок исполнения.
Графический
интерфейс пользователя.
InTouch предоставляет набор инструментов для графического
отображения состояния процесса.
Во-первых, объектно-ориентированная
графика. Мощные средства объектно-ориентированного проектирования облегчают
рисование, расположение, выравнивание, разделение на слои, размещение в
пространстве, вращение, инвертирование, дублирование, вырезание, копирование,
вставку, стирание и многие другие операции. InTouch
допускает неограниченное количество динамических изображений в каждом окне.
Во-вторых,
анимационные связи. Эти связи обеспечивают возможность «оживления»
любых объектов и их комбинаций для создания практически неограниченного набора
мультипликационных характеристик, включая изменения размеров, цвета,
перемещений, мигания, изменения уровня и т.д.
В-третьих,
мастер-объекты. InTouch включает в себя обширную
библиотеку мастер-объектов (Wizards), то есть предварительно
сконфигурированных вспомогательных средств (таких как переключатели,
ползунковые регуляторы и счетчики), позволяющих быстро создавать прикладные
программы для конкретных условий производственного предприятия. При помощи
дополнительного набора инструментальных средств (Extensibility Toolkit)
возможно также создать свои собственные мастер-объекты, приспособленные к
нуждам отрасли.
В-четвертых,
ActiveX. InTouch
является ActiveX контейнером, что позволяет пользователям InTouch
устанавливать элементы управления ActiveX сторонних фирм и использовать
их в любом окне приложения без всякого программирования с помощью простой
технологии конфигурирования “укажи и кликни”.
InTouch позволяет организовать взаимодействие с другими
приложениями, используя следующие средства:
n стандартный DDE-обмен (Dynamic Data Exchange - динамический обмен данными. Большинство разработанных
серверов ввода/вывода поддерживают именно DDE-обмен
для передачи данных в InTouch-приложение.
Обычные приложения, самое популярное из которых Excel, также
используют DDE-механизм.
n OLE-технологию (Object Linking and Embedding - включение и встраивание
объектов). Используется для взаимодействия с некоторыми компонентами FactorySuite и другими пользовательскими приложениями.
n ОРС-программы (OLE for Process Control - OLE для управления процессами). ОРС применяется для обмена
информацией с технологическими устройствами типа ПЛК. InTouch 8.0, и
все другие FactorySuite компоненты могут быть OPC
клиентом для работы с любым из OPC серверов.
SCADA-система InTouch имеет
встроенные механизмы интеграции с другими компонентами FactorySuite. Эти
механизмы используют как указанные стандартные протоколы, так и собственный,
разработанный фирмой Wonderware,
протокол SuiteLink. В
этом протоколе введена концепция меток времени и качества информации,
выставляемых серверами ввода-вывода.
Особенности использования Citect
Разработчиком
SCADA-системы Citect
является австралийская фирма Ci Technologies (Ci – Control Instrumentation). Citect – это программный пакет, созданный на основе большого
опыта компании, которая более 20 лет является системным интегратором. Опыт
системной интеграции вложен не только в собственно ПО, но и в «базу знаний»,
которая воплотилась в help-функциях,
а также в ноу-хау в решении проблем, связанных с 300 ПЛК, поддерживаемыми этим
пакетом.
При
покупке SCADA-пакета первоначальные
вложения, как правило, достаточно высоки. Причем среда разработки, как правило,
значительно дороже, чем среда
исполнения. Удивительно, но Ci Technologies предлагает пользователям систему разработки бесплатно, цена же системы исполнения
сравнима с другими SCADA-пакетами.
Одна из
характеристик Citect – гибкость, которая проявляется в нескольких чертах. Во-первых, для Citect естественным является режим распределенной разработки приложений.
Во-вторых,
в Citect заложено огромное
многообразие подходов к разработке приложений. Так, возможна разработка
приложений без программирования вообще на основе поставляемых библиотек
графических объектов, шаблонов, драйверов и т.д. Возможна разработка приложений с использованием
программирования в большей или меньшей степени. При этом, в зависимости от
профессиональных навыков разработчика, приложение можно создавать как с помощью
языка пакета Citect, называемого Cicode, так и более знакомых, традиционных языков
программирования (Visual Basic, C).
Иногда
сложно предусмотреть детальную топологию проекта с распределением
функциональных возможностей по узлам. В Citect
предусмотрено простое наращивание дополнительных узлов проекта и возможность
перераспределения их функций. Выполняются такие процедуры в процессе
конфигурирования каждого узла.
Указанные
выше особенности данного пакета особенно важны, когда SCADA-пакет
используется впервые, поскольку не требуют больших финансовых вложений, с одной
стороны, а с другой – позволяют проанализировать все возможности системы (не
демо-версии!).
Технические возможности системы
Citect используется как 32-разрядное приложение Windows NT, Windows 95 и 98. Сбор данных, формирование алармов и построение
трендов может происходить одновременно с редактированием и компиляцией. Ядро
пакета является многозадачным ядром реального времени с вытеснением задач по
приоритетам.
База данных реального времени
Для
каждого нового проекта в Citect
автоматически создается файловая структура в формате .dbf. Для
хранения данных каждого проекта инициализируется около 60 файлов. Под каждую
задачу проекта отведен «свой» файл (например, файл дискретных алармов, файл
аналоговых алармов, файл переменных проекта, файл графических страниц и т.д.).
Эти файлы могут отдельно импортироваться в Excel для
редактирования или документирования.
Архитектура клиент-сервер Citect
Citect ориентирован на реализацию архитектуры клиент-сервер
и имеет в своем составе пять функциональных модулей (серверов или клиентов):
-
I/O - сервер ввода-вывода.
Обеспечивает передачу данных между физическими устройствами ввода-вывода и
другими модулями Citect;
-
Display – клиент визуализации. Обеспечивает
операторский интерфейс: отображение данных, поступающих от других модулей Citect, и управление выполнением команд оператора;
-
Alarms -
сервер алармов. Отслеживает данные, сравнивает их с допустимыми
пределами, проверяет выполнение заданных условий, и отображает алармы на
соответствующем узле визуализации;
-
Reports -
сервер отчетов. Генерирует отчеты по истечении определенного
времени, при возникновении определенного события или по запросу оператора;
-
Trends -
сервер трендов. Собирает и регистрирует трендовую информацию,
позволяя фиксировать развитие процесса в реальном времени или ретроспективно в
окне трендов или в файле.
Каждый
функциональный модуль Citect
исполняется как отдельная задача независимо от того, исполняются ли модули на
одном компьютере или на разных. Поэтому Citect
позволяет строить архитектуры различной сложности. Простейшая архитектура
состоит из одного компьютера (узла), на котором работают все модули. Если в
больших прикладных системах этот узел становится перегруженным, то серверы (I/O, Alarms, Trends, Reports) могут устанавливаться на разных узлах. А если задача
сервера ввода-вывода перегружает узел, то можно увеличить число серверов
ввода-вывода. Все узлы визуализации могут осуществлять доступ ко всем серверам
через сеть. Citect поддерживает NetBIOS, TCP/IP и другие сетевые протоколы. Одновременно могут
исполняться несколько протоколов.
Алармы
Citect
поддерживает аппаратные и конфигурируемые алармы.
Аппаратные
алармы призваны информировать оператора о неисправностях,
возникающих в устройствах системы управления (контроллерах, модулях
ввода-вывода, каналах связи и др.).
Алармы,
вызываемые отклонениями технологических параметров за допустимые границы,
неисправностью технологического оборудования, надо предварительно конфигурировать.
Система Citect позволяет конфигурировать
алармы по отдельным переменным, по группам переменных, по выражениям, по
результатам расчетов и т.д. Различают четыре вида конфигурируемых алармов:
-
цифровые алармы, возникают в ответ на изменение
состояния;
-
аналоговые алармы, базируются на анализе выхода за
указанные верхние и нижние пределы, отклонении от нормы, превышении пределов
скорости изменения;
-
алармы с метками времени, базируются на таймере,
который работает в контроллере и регистрирует алармы с точностью до
миллисекунд. Метка времени обычно используется для изучения тревожных ситуаций,
когда одновременно возникает целый ряд алармов. С помощью метки времени можно
выявить последовательность возникновения алармов;
-
составные алармы, возникающие в результате
комбинации событий.
Отчеты
Язык
программирования Cicode поддерживает простой набор
операторов, с помощью которых можно генерировать отчет и задавать его шаблон.
Как правило, отчеты генерируются в некоторые моменты времени, задаваемые таймерами
и счетчиками. Можно также задавать событие, которое запускает генерацию отчета
и уровень привилегированности пользователя, определяющий права пользователя на
запуск генерации отчетов. Можно также генерировать отчеты в Excel с помощью DDE-связей.
В Citect есть и электронная почта, по которой отчеты могут
посылаться.
Резервирование
Еще одним отличительным свойством Citect является то, что среди стандартных функций здесь
предусмотрено дублирование. Сервер ввода-вывода может дублироваться с помощью
резервного сервера ввода-вывода, на котором выполняется та же самая прикладная
задача. При отказе основного сервера резервный сервер продолжает работу без
какой-либо потери информации.
Могут
также дублироваться серверы трендов, отчетов и алармов. Дублирование возможно и
на уровне сети. Это делается установкой в компьютере двух сетевых карт и
организацией дублированной связи с контроллерами.
Утилита
«Computer setup»
(«Установка компьютера») позволяет конфигурировать компьютер как узел
визуализации (клиент), как основной или резервный сервер ввода-вывода, сервер
алармов, трендов или отчетов. Она также позволяет конфигурировать временную
синхронизацию и запрещение срабатывания определенных клавиш.
Язык Cicode
В Citect встроен гибкий язык программирования Cicode, сравнимый по возможности с языками Pascal, C.
Именно на нем написана сама SCADA-система.
Cicode позволяет создавать программы любой степени
сложности. Язык Cicode поддерживает, например, 40
операторов для управления алармами, 19 операторов для работы с файлами, 18 SQL-функций, 50 операторов для организации работы с трендами
и множество других. Исходный файл на Cicode
создается редактором и компилируется вместе с проектом.
Проект
всегда компилируется с системой исполнения. Во время компиляции проверяются все
dbf-файлы, транслируется Cicode.
Во
время исполнения системы может активизироваться специальное ядро, которое
поддерживает команды мониторинга контроллеров и сетевых взаимодействий,
проверки загрузки центрального процессора, проверки ошибок и т.д.
Возможности HMI в Citect
Графические
объекты на дисплеях оператора можно построить с помощью Графического редактора
(Graphics Builder). Citect
поддерживает неограниченное количество окон – «страниц». Для их создания
предлагается использовать библиотеку шаблонов. Для упрощения создания
графических объектов на странице поставляются три библиотеки – объектов, джинов
и суперджинов. Объекты – это статические картинки, классифицированные по
группам, таким как механизмы, резервуары, насосы и т.д. Джины и суперджины –
это динамические объекты, к ним могут прикрепляться различные переменные.
Часто
при разработке графического интерфейса приходится создавать типовые группы
объектов, предназначенные для решения конкретной задачи. Например, группа из
трех объектов (кнопка «ПУСК», кнопка «СТОП» и индикатор состояния – лампочка
зеленого/красного цвета) предназначена для пуска/останова насоса,
электродвигателя и т.д. с индикацией их состояния. Тогда каждый раз для решения
этой задачи разработчику придется создавать эти три объекта и конфигурировать
их (задавать свойства). Но таких задач
на одной графической странице может оказаться много. Очевидно, что время
специалиста в этом случае будет расходоваться неэффективно. Для решения
подобных задач Citect предлагает механизм, названный
джином. Несколько связанных объектов объединяются в группу, группа сохраняется
в библиотеке джинов, которая устроена аналогично библиотеке объектов. Джин
может управляться как единый объект (его можно копировать, перемещать, масштабировать
и т.д.). Теперь на решение вышеописанной задачи уйдет гораздо меньше времени.
Надо лишь выбрать требуемого джина из библиотеки и вставить в графическую
страницу.
С
помощью суперджина реализуется такой же механизм, но только по отношению не к
группе объектов, а к целой странице.
Объекты
типа джин и суперджин позволяют экономить дисковое пространство компьютера, так
как в его памяти хранится лишь одна копия.
Выводы
Главными
достоинствами Citect являются: истинная структура
клиент-сервер; открытая архитектура; богатые возможности языка Cicode; встроенное резервирование; система помощи (help), основанная на богатом опыте компании Ci Technologies как
системного интегратора. Все эти функции в сочетании с низкой стартовой ценой
обеспечивают сильные рыночные позиции пакета Citect.