Разработка прикладного программного обеспечения СКУ выбор пути и инструментария

Разработка прикладного программного обеспечения СКУ выбор пути и инструментария. Приступая к разработке специализированного прикладного программного обеспечения ППО для создания системы контроля и управления, системный интегратор или конечный пользователь обычно выбирает один из следующих путей Программирование с использованием традиционных средств традиционные языки программирования, стандартные средства отладки и пр. Использование существующих, готовых - COTS Commercial Of The Shelf - инструментальных проблемно-ориентированных средств.

Для большинства выбор уже очевиден.

Процесс разработки ППО важно упростить, сократить временные и прямые финансовые затраты на разработку ППО, минимизировать затраты труда высококлассных программистов, по возможности привлекая к разработке специалистов-технологов в области автоматизируемых процессов.

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

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

Это несколько десятков SCADA - систем, многие из которых нашли свое применение и в России. Наиболее популярные из них приведены ниже InTouch Wonderware - США Citect CI Technology - Австралия FIX Intellution - США Genesis Iconics Co - США Factory Link United States Data Co - США RealFlex BJ Software Systems - США Sitex Jade Software - Великобритания TraceMode AdAstrA - Россия Cimplicity GE Fanuc - США САРГОН НВТ - Автоматика - Россия.

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

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

Так, FactoryLink имеет весьма широкий список поддерживаемых программно-аппаратных платформ Операционная система Компьютерная платформа DOS MS Windows IBM PC OS 2 IBM PC SCO UNIX IBM PC VMS VAX AIX RS6000 HP-UX HP 9000 MS Windows NT Системы с реализованным Windows NT, в основном на РС-платформе. В то же время в таких SCADA-системах, как RealFlex и Sitex основу программной платформы принципиально составляет единственная операционная система реального времени QNX. Подавляющее большинство SCADA-систем реализовано на MS Windows платформах.

Именно такие системы предлагают наиболее полные и легко наращиваемые MMI - средства. Учитывая позиции Microsoft на рынке операционных систем ОС , следует отметить, что даже разработчики многоплатформных SCADA-систем, такие как United States DATA Co разработчик FactoryLink, приоритетным считают дальнейшее развитие своих SCADA-систем на платформе Windows NT. Некоторые фирмы, до сих пор поддерживавшие SCADA-системы на базе операционных систем реального времени ОСРВ , начали менять ориентацию, выбирая системы на платформе Windows NT. Все более очевидным становится применение ОСРВ, в основном, во встраиваемых системах, где они действительно хороши.

Таким образом, основным полем, где сегодня разворачиваются главные события глобального рынка SCADA систем, стала MS Windows NT 2000 на фоне всё ускоряющегося сворачивания активности в области MS DOS, MS Windows 3.xx 95. Имеющиеся средства сетевой поддержки.

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

Желательно, чтобы она поддерживала работу в стандартных сетевых средах ARCNET, ETHERNET и т.д. с использованием стандартных протоколов NETBIOS, TCP IP и др а также обеспечивала поддержку наиболее популярных сетевых стандартов из класса промышленных интерфейсов PROFIBUS, CANBUS, LON, MODBUS и т.д. Этим требованиям в той или иной степени удовлетворяют практически все рассматриваемые SCADA-системы, с тем только различием, что набор поддерживаемых сетевых интерфейсов, конечно же, разный.

Встроенные командные языки. Большинство SCADA-систем имеют встроенные языки высокого уровня, VBasic-подобные языки, позволяющие генерировать адекватную реакцию на события, связанные с изменением значения переменной, с выполнением некоторого логического условия, с нажатием комбинации клавиш, а также с выполнением некоторого фрагмента с заданной частотой относительно всего приложения или отдельного окна. Поддерживаемые базы данных. Одной из основных задач систем диспетчерского контроля и управления является обработка информации сбор, оперативный анализ, хранение, сжатие, пересылка и т. д. Таким образом, в рамках создаваемой системы должна функционировать база данных. Практически все SCADA-системы, в частности, Genesis, InTouch, Citect, используют ANSI SQL синтаксис, который является независимым от типа базы данных.

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

Для специалиста-разработчика системы автоматизации, также как и для специалиста - технолога, чье рабочее место создается, очень важен графический пользовательский интерфейс. Функционально графические интерфейсы SCADA-систем весьма похожи. В каждой из них существует графический объектно-ориентированный редактор с определенным набором анимационных функций.

Используемая векторная графика дает возможность осуществлять широкий набор операций над выбранным объектом, а также быстро обновлять изображение на экране, используя средства анимации. Крайне важен также вопрос о поддержке в рассматриваемых системах стандартных функций GUI Graphic Users Interface. Поскольку большинство рассматриваемых SCADA-систем работают под управлением Windows, это и определяет тип используемого GUI. Открытость системСистема является открытой, если для нее определены и описаны используемые форматы данных и процедурный интерфейс, что позволяет подключить к ней внешние, независимо разработанные компоненты.

Разработка собственных программных модулей. Перед фирмами-разработчиками систем автоматизации часто встает вопрос о создании собственных не предусмотренных в рамках систем SCADA программных модулей и включение их в создаваемую систему автоматизации. Поэтому вопрос об открытости системы является важной характеристикой SCADA-систем.

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

Сами драйверы разрабатываются с использованием стандартных языков программирования. Вопрос, однако, в том, достаточно ли только спецификаций доступа к ядру системы, поставляемых фирмой-разработчиком в штатном комплекте система Trace Mode, или для создания драйверов необходимы специальные пакеты системы FactoryLink, InTouch, или же, вообще, разработку драйвера нужно заказывать у фирмы-разработчика. Разработки третьих фирм. Многие компании занимаются разработкой драйверов, ActiveX-объектов и другого программного обеспечения для SCADA-систем.

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

Эксплуатационные характеристикиПоказатели этой группы критериев наиболее субъективны. Это тот самый случай, когда лучше один раз увидеть, чем семь раз услышать. К этой группе можно отнести удобство интерфейса среды разработки - Windows - подобный интерфейс, полнота инструментария и функций системы качество документации - ее полнота, уровень русификации поддержка со стороны создателей - количество инсталляций, дилерская сеть, обучение, условия обновления версий и т. д. Если предположить, что пользователь справился и с этой задачей - остановил свой выбор на конкретной SCADA - системе, то далее начинается разработка системы контроля и управления, которая включает следующие этапы Разработка архитектуры системы автоматизации в целом.

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

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

В последующих главах на примере двух известных и хорошо зарекомендовавших себя SCADA-систем InTouch и Citect рассмотрены основные компоненты, функции и возможности систем диспетчерского управления и сбора данных.