MasterSCADA КАК ЗЕРКАЛО СОВРЕМЕННЫХ ТЕНДЕНЦИЙ


Скачать

И.Е. Аблин (ООО "ИнСАТ")

Классификации и конвергенции


Разделение систем промышленной автоматизации на три основных класса: распределенные системы управления, системы "контроллер+SCADA" и телемеханические системы сохраняет актуальность с точки зрения разных требований к их возможностям. Однако по опыту применения MasterSCADA, возможно, отражающего общую тенденцию, можно утверждать, что универсальные SCADA-пакеты заняли свое место в ранее обособленных нишах, базировавшихся на специализированном ПО. В составе распределенных ПТК от них требуется прежде всего способность к тесной интеграции с техническими средствами, системами автоматизации проектирования, настройки и диагностики технических средств. Аналогичная ситуация и в телемеханике, выдвигающей специфические требования к обмену данными с удаленными устройствами по разнообразным каналам связи. В последние годы наметились еще две ниши массового применения SCADA-систем – это автоматизация (в данном контексте диспетчеризация) зданий и учет (технический и коммерческий) энергоресурсов и иных материальных потоков коммунальных и промышленных предприятий.


Объединяет эти сферы только потребность в HMI и вводе данных от объекта. По остальным позициям требования даже к одним и тем же базовым функциям, например архивированию, довольно различны. Возможность использования конкретного SCADA-пакета одновременно во всех этих задачах обусловлена не только необходимой гибкостью настройки базовых функций под специфику применения, но и наличием у него поддержки ряда стандартных интерфейсов для связи с внешним ПО, а также открытых интерфейсов программного расширения. MasterSCADA отвечает этим требованиям за счет:


• реализации OPC (DA, HDA, A&E) в ядре системы в качестве "родного" интерфейса сопряжения с внешними источниками и приемниками данных. Клиентская часть присутствует в базовом комплекте, а использование MasterSCADA в качестве сервера требует дополнительных модулей;


• поддержки работы с любым SQL-сервером через механизм встраивания в проект MasterSCADA описаний хранимых процедур, все параметры которых становятся полноправными переменными MasterSCADA. Возможно использование SQL-сервера в качестве сервера архивов MasterSCADA вместо его внутреннего хранилища;


• возможности использования MasterSCADA в качестве контейнера для серверов ActiveX-документов. Это означает, что практически любая современная Windows-программа (Word, Excel, Visio, Autocad и т.п.) может быть встроена в оболочку MasterSCADA, а оператор или сценарий проекта могут использовать их документы (просматривать, печатать, сохранять) наряду с собственными мнемосхемами или трендами;


• наличия программных интерфейсов расширения:


- интерфейса разработки библиотечных объектов (их можно создавать и без программирования, но программная реализация не только позволяет повысить эффективность, но и дает доступ к внешним программноаппаратным ресурсам компьютера или контроллера);


- интерфейса создания драйверов встраиваемых в компьютер устройств (для связи с внешними устройствами, не имеющими OPC-сервера, используется отдельный инструментарий разработки OPC-серверов – MasterOPC Toolkit);


- модуля SmartLink, предназначенного для создания драйверов протоколов связи без программирования (путем простого конфигурирования запросов и ответов);

- интерфейса стыковки платформо-независимого контроллерного ПО с ОС контроллера;


- интерфейсов автоматизации, обеспечивающих доступ к объектной модели пакета для программного создания проекта или его частей в рамках систем автоматизации проектирования.


Таким образом, отсутствуют ограничения по совместимости MasterSCADA с внешним оборудованием и ПО.

Вертикаль власти над процессом

К сожалению, в технических системах, как и в обществе, не всегда выживают горизонтальные архитектуры, построенные на равноправном взаимодействии. Именно поэтому MasterSCADA предоставляет проектировщику свободный выбор организации взаимодействия узлов в виде одноранговой или иерархической клиент-серверной структуры. Проектировщику в MasterSCADA в любой момент доступно изменение структуры системы посредством самых минимальных правок проекта (например, назначив любой части проекта другой компьютер в качестве сервера). MasterSCADA поддерживает "прозрачное" взаимодействие операторских станций без какой-либо настройки их связи, что позволяет обеспечить работу любого узла сети с данными и документами любого другого узла, включенного в проект, при наличии соответствующих прав доступа. При этом один из компьютеров является "хозяином" (сервером) этих данных и документов. Internet-клиенты в отличие от локальных могут обращаться не только к серверу, но и к любому узлу сети для получения любых данных и документов проекта. Контроллеры, модули удаленного ввода/вывода, встроенные платы, OPC-серверы, подключенные SQL-cерверы также должны иметь "хозяина", отвечающего за связь с ними. В следующей версии MasterSCADA планируется также обеспечить возможность "свободного", без "хозяина", существования в проекте контроллеров, поддерживающих связь с верхним уровнем через Ethernet, GSM или GPRS (Интернет). К таким контроллерам можно будет обратиться напрямую с любого компьютера проекта, имеющего достаточный уровень прав для этого.


Если представить архитектуру системы (схему передачи данных) в MasterSCADA в виде вертикали, то получаем (снизу вверх) следующую цепочку: интеллектуальные устройства (датчики, исполнительные механизмы, счетчики коммерческого учета, модули удаленного ввода/вывода и т.п.); контроллеры; серверы ввода/вывода; архивные серверы.

Число серверов ввода/вывода и архивных серверов в системе – произвольное. Их функции могут совмещаться друг с другом, а также с функциями операторских станций. К ним могут быть подключены локальные и Internet-клиенты.

Надежда на надежность

Любая техническая система не может быть надежной на 100%. Отсюда целая наука о надежности. Известно, что применение различных схем резервирования позволяет повысить надежность системы в разы, увеличивая ее стоимость всего лишь на десятки процентов. MasterSCADA обеспечивает резервирование контроллеров, каналов связи, операторских станций, архивных серверов. Другая важная задача – это безопасное и быстрое восстановление системы после сбоя. Для ее решения в контроллерах и операторских станциях, построенных на MasterSCADA, используется функция "горячего рестарта" – восстановления всех элементов "памяти" системы, включая внутреннюю память алгоритмов. Еще один путь повышения надежности систем – это снижение влияния человеческого фактора. Многоуровневая система разграничения прав доступа позволяет контролировать доступ к данным и управление вплоть до отдельной команды. И, наконец, если неприятности все же случились – для "разбора полетов" MasterSCADA предлагает детальное журналирование не только всех действий оператора, но и всех технических событий в системе.

Построить архитектуру системы, посадить дерево проекта, вырастить логику управления и контроля

Как сделать все перечисленное в заголовке этого раздела? Вопрос "Как?" все чаще выходит на первый план, поскольку "Что?" и "Когда?" нередко решают за нас. Таким образом, от удобства продукта для пользователя, от его гибкости не только в процессе разработки, но и в процессе неизбежных переделок и доделок зависит реальная трудоемкость (а значит, и экономическая эффективность) создания систем промышленной автоматизации. Тем самым в современных продуктах при близких в ряде отношений возможностях методика разработки все чаще выходит на первый план. Примерно 10 лет назад компания ИнСАТ предложила новый, объектно-ориентированный подход к организации проекта. Этот подход воплощен в MasterSCADA, а в последнее время стал в той или иной степени появляться и в новых версиях других SCADA-систем. Основная идея этого подхода – говорить с пользователями (технологами, "автоматчиками" и отчасти программистами) на их собственном языке.


Выше мы обсудили техническую структуру системы. Точно так же она выглядит и в проекте MasterSCADA. Дерево системы не иллюстрирует организацию взаимодействия частей системы, а напрямую задает потоки данных в ней. Подключение контроллера в качестве подчиненного узла компьютера означает опрос этого контроллера данным ПК, а включение его в общую сеть – возможность опроса с любого узла этой сети. На уровне отдельного параметра могут быть созданы индивидуальные связи: к примеру, соединив мышкой параметр хранимой процедуры SQLсервера с выходом контроллера, получим прямую передачу значения из БД на физический выход выбранного модуля.

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


Одним деревом проект MasterSCADA не ограничивается. Тот же "деревянный" подход позволяет адекватно отобразить технологию производства. Технолог или "автоматчик" на предприятии совершенно определенно представляет производственную иерархию и может отразить это понимание в проекте. Например, химический цех может быть разбит на технологические участки или стадии производства, содержащие группы аппаратов или реакторов, обслуживаемых исполнительными механизмами (мешалками, насосами, запорной и регулирующей арматурой), а также обвязанных датчиками. Такое представление непосредственно отображается в дереве проекта (рис. 1).

 

 

Рис.1

Отдельный объект в проекте содержит всю логику своего контроля и управления, сообщения, мнемосхемы, журналы, тренды, отчеты и другие документы. Это позволяет вести "пообъектную" разработку проекта, а также манипулировать объектом как единым целым в рамках разрабатываемой системы или сохраняя его в библиотеку – "копилку" проектных решений. Предложенный нами подход "от объекта" завоевывает сейчас благодаря своей наглядности всеобщую популярность.


Проект SCADA – это не только разнообразие форм отображения информации, но и обработка данных, контроль и управление, в том числе автоматическое. Все эти функции должны быть особенно развиты для вертикально-интегрированной системы, содержащей в том же "флаконе" еще и SoftLogic. В MasterSCADA логика контроля и управления задается схемой функциональных блоков, привязанной к объекту. Схема исполняется в компьютере или контроллере по усмотрению разработчика проекта. Свыше сотни разнообразных блоков обеспечивают решение всех типичных задач обработки данных и управления. Некоторые блоки являются реализацией достаточно сложных алгоритмов, например, блок "Циклограмма" решает задачу программно-логического пошагового управления неограниченным числом исполнительных механизмов с произвольной логикой смены операций и контролем времени их выполнения. Наряду с этим возможно использование формульных вычислений с включением в расчеты библиотечных функций, в том числе позволяющих задействовать в формулах архивные значения, признаки нарушения границ или недостоверности. Расписания, команды и события могут инициировать выполнение заданной последовательности действий.

О преимуществах крупноблочного проектостроения

Итак, объект в понимании и идеологии MasterSCADA – это полноценный проект для автоматизации отдельного "куска" технологии. С какого размера этот "кусок" действительно делается самодостаточным?


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


В стандартных библиотеках MasterSCADA есть множество разнообразных ВФБ, прежде всего исполнительных механизмов, дополнительно поставляются библиотеки для теплоэнергетики, вентиляции и кондиционирования и др. Переменные в проекте MasterSCADA также являются ВФБ, что позволяет, перетащив переменную из проекта на мнемосхему, получить там один из вариантов мнемонического отображения значения (например, изображение щитового прибора) или команды (кнопка, ползунок).

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

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

 


Рис.2

В обоих случаях левая клавиша мыши будет использоваться для вызова выбранного документа объекта, а правая – для предоставления оператору возможности доступа к любому другому документу, имеющемуся у данного объекта.


Созданный объект может быть "размножен" в рамках проекта либо помещен в библиотеку в качестве типового. При этом объект пытается найти связи, назначенные ему при создании. Для найденных связей он предлагает проектировщику их автоматическое восстановление, а для остальных – групповую замену или индивидуальное ручное редактирование. Например, если сигналы первого объекта связаны со входами/выходами контроллера №1, а второго объекта – с аналогичными сигналами контроллера №2, то достаточно заменить в диалоге "1" на "2" в имени контроллера, чтобы все сигналы этого объекта автоматически установили новые связи. Разумеется, проектировщик должен заранее удобно группировать источники и приемники сигналов, чтобы сократить трудоемкость своей работы на последующих этапах.

Ненавязчивый сервис

Есть такие мелочи, которые никак не отнесешь к обязательной функциональности. О них редко задумываются при выборе SCADA-пакета, но, обнаружив их в процессе работы, бывают приятно удивлены. В MasterSCADA есть целый ряд таких "бантиков" – вот только часть из них: откат/восстановление действий проектировщика на всю сессию работы; полное восстановление проекта после сбоя компьютера (теряется не более 1..2 законченных действий); документирование проекта в виде HTML с перекрестными ссылками. Отдельно стоит упомянуть средства, облегчающие создание мнемосхем и совершенствование их дизайна:


- средства создания новых элементов из нескольких существующих, включая ActiveX-контролы, при этом вновь созданный элемент будет иметь только заданный набор свойств, а не все свойства исходных элементов;


- динамизация любого свойства любого элемента "броском" переменной проекта на поле этого свойства в списке его свойств;


- встроенный редактор для создания графических спецэффектов и мультипликации;


- объемная графика (с использованием понятия "материал") и трубопроводы (прокладываемые мышкой);


- стереометрически правильная стыковка тел вращения под любым углом.

Несвойственное дело

Благодаря внутренним модулям или интеграции с внешними программами, созданными нашими партнерами, в MasterSCADA обеспечена реализация в проектах функций, ранее типичных для систем другого класса:


• метрологическая поверка измерительных каналов, вычисление расходов на сужающих устройствах (ранее только в фирменных ПТК);


• поддержка модемных пулов, разнообразие поддерживаемых каналов связи, включая GSM и GPRS, маршрутизация запросов при работе нескольких устройств по единственному каналу связи (ранее только в телемеханике и аппаратуре систем передачи данных);


• вычисление расходов газов и жидкостей, прямая запись архивов вычислителей в коммерческие БД (ранее только в системах коммерческого учета);


• отображение состояния объектов на карте с возможностью показа для элемента карты (например, водонапорной станции) мнемосхемы, тренда или иного документа с оперативными данными мониторинга (ранее только в геоинформационных системах);


• паспортизация оборудования, оптимальный расчет расписаний поставок, отгрузок, раскроя материалов, загрузки оборудования (ранее только в MESсистемах).


Каждая из этих тем заслуживает не только отдельной статьи, но возможно и широкой дискуссии специалистов. На наш взгляд, такой подход соответствует и политике гостеприимно принявшего данный текст журнала "Автоматизация в промышленности".

Аблин Илья Евгеньевич – директор компании ИнСАТ.

Контактный телефон (495) 974-00-92.

E-mail: ablin@insat.ru