УПРАВЛЕНИЕ

Мир SCADA широк и многообразен, в него входят как простые системы, реализующие интерфейс человек-машина (ЧМИ), так и сложные, охватывающие не только традиционные задачи контроля и управления, но и интеграцию с системами верхнего уровня (ERP и MES). В коробочном исполнении на рынке представлен ряд зарубежных и отечественных продуктов - среди которых наиболее известны Trace Mode (AdAstra, Москва) и "Круг-2000" (НПФ "Круг", Пенза).

На протяжении многих лет развития класса "тяжелых" полномасштабных SCADA явно проявились две противоречивые тенденции. С одной стороны, требования многих заказчиков все более и более усложняются, программные технологии совершенствуются, что с неизбежностью приводит к необходимости при разработке каждой последующей версии добавлять все новые функции. В результате продукт становится еще "тяжелее". Это особенно относится к исполняемым модулям. Соответственно сложность продукта возрастает, время на его освоение и требования к вычислительным ресурсам увеличиваются и, главное для потребителя, стоимость последующих версий неизбежно оказывается выше цены предыдущих (ведь надо же производителю окупить затраты на производство новой версии!). С другой стороны, всегда есть большой класс клиентов, которым во многих случаях не нужна полная функциональность "тяжелого" продукта, по крайней мере на первых этапах создания АСУ ТП. Эти клиенты с ностальгией вспоминают о той золотой поре, когда SCADA были "легкими", простыми в освоении и эксплуатации: "Помните, была у вас лет 10 назад простая SCADA под DOS. Нас она вполне устроила бы и сейчас при автоматизации малой технологической установки или при создании обычной информационной подсистемы".

Рис. 1. Настройка аналоговой переменной в генераторе базы данных

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

Рис. 2. Рабочий стол генератора динамики

Как часто оказывается - выход был рядом. Стоило только повнимательнее приглядеться к стратегии развития программных продуктов из других областей деятельности, например к бухгалтерскому ПО. "Модульность" - ключевое слово этой стратегии. Каждый модуль отвечает за определенный набор функций: производство, зарплата, склад и т. д. Огромным преимуществом для пользователя является возможность постепенного наращивания числа модулей (функций), начиная с самой простой конфигурации. И вот на определенном этапе развития своей SCADA мы решили изменить ее архитектуру таким образом, чтобы в максимальной степени реализовать идеологию модульности, и особенно в том, что касается среды исполнения. Таким образом, в мае 2003 г. увидела свет принципиально новая по идеологии версия 2.4 SCADA "Круг-2000" с модульным принципом построения среды исполнения. Ее пользователь может собрать из предлагаемых модулей собственный программный комплекс, который и станет средой исполнения с требуемым именно ему набором функций.

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

Как известно, любая SCADA состоит из среды разработки (development system) и среды исполнения (run-time system).

Среда разработки

Основными компонентами среды разработки являются генератор базы данных (ГБД), генератор динамики (ГД) и интегрированная среда разработки программ пользователя КРУГОЛ.

Генератор базы данных - инструмент для конфигурирования, настройки и верификации баз данных реального времени (БД) и архивов (АБД). Пример окна ГБД для настройки входной аналоговой переменной приведен на рис. 1.

В качестве СУБД используется база данных "Круг-2000" - единая СУБД для SCADA "Круг-2000" и среды исполнения "Круг" для РС-совместимых контроллеров. Это, с одной стороны, обеспечивает однократный набор атрибутов базы, что минимизирует количество ошибок при подготовке данных, с другой - позволяет применять полностью совместимые программные средства (SCADA и ПО контроллеров) одной фирмы, что повышает надежность и эффективность системы контроля и управления.

Генератор динамики - гибкий инструмент для создания объектно-ориентированного графического интерфейса пользователя и генерации отчетов. Объектами ГД (см. рис. 2) являются мнемосхемы (графические примитивы, виртуальные приборы, тренды, анимация и другие объекты), рабочие столы, переходы и библиотеки.

КРУГОЛ предназначен для программирования и отладки программ на языках, соответствующих стандарту IEC 61131-3. Основными компонентами его являются: редактор языка структурированного текста; редактор языка функциональных блочных диаграмм (рис. 3); компилятор; отладчик; библиотека функций (всего около 150) процедур управления и обработки данных.

Среда исполнения

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

Очень кратко опишем основные модули среды исполнения.

Рис. 3. Окно редактора языка функциональных блочных диаграмм

Сервер БД обеспечивает выполнение функций обработки переменных БД, ведения оперативных трендов, программного перезапуска, обработку событий, статистики, ядра технологического языка КРУГОЛ, OPC-сервера, драйвера ODBC.

Сервер АБД выполняет функции обработки и хранения архивов трендов, протокола событий, печатных документов, OPC-сервера, драйвера ODBC.

Сервер ввода-вывода организует связи различных УСО со SCADA через подключаемые драйверы. Графический интерфейс оператора может быть сконфигурирован как с привлечением механизмов управления, так и без них. Данные из основного сервера периодически копируются в режиме online в резервный - этот процесс назван нами "зеркализация". Сеть, по которой осуществляется зеркализация, назначается пользователем на этапе конфигурации системы контроля и управления. Основной и резервный серверы БД устанавливаются на двух разных АРМ. Зеркалируется, как правило, информация из оперативной БД, тренды, печатные документы, протокол событий. Аналогично отображается и архивная база данных - зеркализируются архивы исторических трендов, печатных документов и протоколов событий.

Рис. 4. Графический интерфейс станции оператора

Для автоматического перезапуска ОС и приложений в случаях "зависания" и "зацикливания" в компьютер (АРМ) устанавливается специальная плата автоматического перезапуска.

Построение отказоустойчивых решений обеспечивается резервированием участков сетей контроллер - сервер БД/АБД и сервер БД/АБД - клиенты.

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

Пример графического интерфейса на станции оператора приведен на рис. 4.

Для упрощения заказа мы предлагаем три типовых варианта исполнения программного комплекса: базовый, профессиональный и пользовательский.

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

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

Дополнительные продукты

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

"Web-Контроль" обеспечивает просмотр текущей информации в виде мнемосхем, печатных документов, трендов, протокола событий на любом персональном компьютере с MS Internet Explorer. Он взаимодействует с серверами БД, АБД и станциями операторов и реализует защиту от несанкционированного доступа.

Универсальный конвертер данных преобразует данные (печатные документы, тренды, протоколы сообщений и другие) из формата "Круг-2000" в формат MS Excel и XML, а также позволяет производить выборку по параметрам и по времени с последующим созданием твердой копии (печать).

Для сбора архивных и других данных от различных АСУ ТП, построенных на базе "Круг-2000", с дальнейшей возможностью их просмотра предназначен архивный центр. Он имеет собственный протокол событий, цветовую и звуковую сигнализацию аварийных ситуаций и способен дублировать данные.

Прикладная программа может обращаться к базе данных КРУГ, используя язык запросов SQL, для этого в состав продукта включен ODBC-драйвер. Также возможен обмен с приложениями через API, OPC-сервер, OPC-клиент.

Система работает более чем с 60 контроллерами и УСО, а также со всеми устройствами, поддерживающими стандарт OPC. Если в библиотеке драйверов отсутствует ПО для конкретного модуля, то соответствующий SDK поможет справиться с этой проблемой.

Все базовое ПО работает в среде Windows NT/2000/XP, Web-контроль может осуществляться из любой ОС, поддерживающей Internet Explorer, а ПО для контроллеров управляется QNX, Linux или DOS.

Демонстрационный диск с полнофункциональной средой разработки можно заказать на сайте www.krug2000.ru или по адресу: krug@penza.com.ru.

С автором, генеральным директором НПФ "Круг", можно связаться по e-mail: shehtman@penza.com.ru.