Необходимо различать

Определение. Основные функции

Тема 7.1. SCADA-системы.

Лекция 15

Раздел 7. Специализированные системы АСУТП и промышленной автоматики

 

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

 

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

 

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

 

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

 

Следует отметить, что даже у тех, кто применяет такое программное обеспечение в своих проектах, нет единого мнения насчет того, как должна выглядеть и каким требованиям должна отвечать "идеальная" SCADA система.

 

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

 

- программное обеспечение SCADA, функционирующее в составе АСУ ТП конкретного объекта,

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

 

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

 

Тем не менее обе разновидности ПО весьма тесно связаны (например run-time компоненты инструментальной системы непосредственно используются в объектовом ПО), поэтому мы будем называть их системами SCADA.

 

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

 

Дадим определение.

"SCADA система" (Supervisory Control And Data Acquisition System) - система сбора данных и оперативного диспетчерского управления.

 

В этом названии присутствуют две основные функции, возлагаемые на SCADA-систему:

- сбор данных о контролируемом технологическом процессе;

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

 

Согласно традиционной структуре аппаратных средств АСУ ТП, показанной на рис.1, SCADA-системы в иерархии программного обеспечения систем промышленной автоматизации находятся на уровнях 2 и 3 и обеспечивают выполнение следующих основных функций.

 

1. Прием информации о контролируемых технологических параметрах от контроллеров нижних уровней и датчиков.

 

2. Сохранение принятой информации в архивах.

 

 

 
 

 


Рис.1. Традиционная структура технических средств АСУ ТП

 

3. Вторичная обработка принятой информации.

 

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

 

5. Прием команд оператора и передача их в адрес контроллеров нижних уровней и исполнительных механизмов.

 

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

 

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

 

8. Формирование сводок и других отчетных документов на основе архивной информации.

 

9. Обмен информацией с автоматизированной системой управления предприятием (или, как ее принято называть сейчас, комплексной информационной системой).

 

10. Непосредственное автоматическое управление технологическим процессом в соответствии с заданными алгоритмами.

 

Если попытаться коротко охарактеризовать основные функции, то можно сказать, что SCADA-система

- собирает информацию о технологическом процессе,

- обеспечивает интерфейс с оператором,

- сохраняет историю процесса,

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

 

Приведенный выше перечень функций, выполняемых SCADA-системами, не претендует на абсолютную полноту.

 

Более того, само наличие некоторых функций и объем их реализации сильно варьируются от системы к системе.

 

Часто программное обеспечение с ярко выраженным упором на функции взаимодействия с оператором (визуализация и т.п.) называют пакетами MMI (Man Machine Interface), или HMI (Human Machine Interface).

 

Рассмотрим особо такую функцию, как автоматическое управление.

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

 

Хотя такое совмещение позволяет экономить на аппаратных средствах, оно может иметь и ряд негативных последствий.

 

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

 

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

Хотя некоторые расширения реального времени для Windows NT декларируют защиту от подобного рода неприятностей, это справедливо только до тех пор, пока "крахом" не задета система управления памятью.

 

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

 

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

 

Для такого рода систем решение типа "все в одном компьютере" при надлежащей страховке сторожевым таймером может оказаться вполне допустимым.

 

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

 

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

 

При решении вопроса о том, писать программное обеспечение самостоятельно или использовать для этого инструментальную SCADA-систему, следует предварительно ответить на следующие вопросы.

1. Насколько велик проект?

2. Каковы сроки исполнения?

3. Сколько человек будет задействовано в создании программной части, какова квалификация разработчиков программного обеспечения и имеют ли они наработки в данной области?

4. Какова перспектива дальнейшего развития системы (в частности, по информационной емкости, по модернизации имеющихся рабочих мест оператора и добавлению новых)?

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

 

В принципе, ответы на эти вопросы и оценка затрат по пунктам 3, 4, 5 в большинстве случаев позволяют сказать, на чем писать математику для верхнего уровня АСУ ТП.

 

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

 

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

 

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

 

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

 

SCADA-система должна быть доступной не только для разработчика, но и для конечного пользователя создаваемой АСУ ТП, поскольку облик системы определяется и может подвергаться изменениям как разработчиком, так и пользователем.

 

Помимо доступности, SCADA-системе должна быть присуща максимальная открытость.

Очень часто SCADA-системы имеют весьма специфические механизмы обмена данными с аппаратурой ввода-вывода.

 

Более того, ряд SCADA-систем имеет встроенную поддержку устройств ввода-вывода, что,

- с одной стороны, ограничивает разработчика/пользователя в выборе технических средств, на базе которых строится система, а

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

 

Есть еще один неприятный момент, когда поддержка аппаратуры встроена в SCADA-систему.

 

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

 

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

 

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

 

Очевидно, что производитель SCADA-пакета должен в первую очередь своевременно устранять ошибки и улучшать функциональность самого SCADA-пакета.

 

Стоимость системы, затраты на освоение и стоимость работ по созданию, сопровождению и развитию АСУ ТП должны быть минимальными.

 

При прочих равных условиях данное требование является наиболее существенным и, пожалуй, решающим при выборе SCADA-системы.

 

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

 

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

 

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

Уже несколько лет в различных изданиях, посвященных автоматизации промышленности, обсуждение тех или иных SCADA-систем сводится к рассуждениям о том, насколько плоха операционная система DOS, ненадежна Windows, хороша QNX или OS 9.

 

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

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

 

Кроме того, нельзя не учитывать тенденции развития мирового рынка программного обеспечения.