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

Тестирование и обеспечение качества программно технических комплексов на основе использования виртуальных технологических объектов

Обеспечение качества ПО – непрерывный процесс в течение всего жизненного цикла ПО, который охватывает:
– методы и средства анализа, проектирования и кодирования;
– технические отчеты, выполняющиеся на каждом шаге разработки ПО;
– процедуры обеспечения соответствия стандартам в области разработки ПО, соответствие которым определено в задании на разработку данного ПО.
Качество ПО можно определить как соответствие явно установленным функциональным и эксплуатационным требованиям, явно указанным стандартам разработки и неявным характеристикам, которые ожидаются от профессионально разработанного ПО.
Этап тестирования ПО на соответствие основным показателям качества является заключительным этапом жизненного цикла создания ПО. Однако, довольно часто данный факт недооценивают, выделяя ограниченное число времени, ошибочно полагая, что любая программа благодаря тому, что реализует некий известный алгоритм работы, может быть полностью проверена при ограничении входного набора данных. Однако это утверждение правомерно только для тривиальных либо некоторых специальных случаев ПО. В следствии чего ресурсы, выделяемые на тестирование, в большинстве случаев ограничены для обеспечения полного тестового покрытия программы. Очень часто тестирование совмещают с проведением пусконаладочных работ, подвергая технологическое оборудование угрозе поломки и выходу из строя.
Повышенная трудоемкость процедуры тестирования ПО для АСУ ТП является основной причиной больших временных затрат, негативно влияющих на показатели разрабатываемого проекта. Поэтому основной задачей направленной на уменьшение трудозатрат является упрощение и автоматизация процедуры тестирования.
Решением подобной задачи является применение виртуальных моделей технологического оборудования, на управления которым и проектируется АСУ. Данный прием возможен при создании связи, объединяющей две независимо работающие среды: среду отладки управляющей логики программируемого логического контроллера (ПЛК) и среды моделирования с созданной виртуальной моделью объекта управления на базе компьютера, на котором выполняется процедура тестирования. Так, например, в последних версиях ПО компании MathSoft (Matlab v7.0 и выше) появился ряд новых компонентов заметно упрощающих предложенную процедуру. Данные приложения позволяют получать доступ к данным контроллера в режиме реального времени, как для их чтения, так и с возможностью записи в память контроллера. Процесс обмена данными между ПЛК и персональным компьютером (ПК) осуществляется при помощи технологии ОРС.
Рис. 1 Структурная схема АСУ ТП основанной на технологии ОРС
Рисунок 1 – Структурная схема автоматизированной системы управления технологическими процессами, основанной на технологии ОРС

OPC представляет собой универсальный программный интерфейс, который может использоваться на устройствах, поставляемых различными производителями (см. рисунок 1). В качестве промышленного стандарта OPC описывает обмен данными для различных приложений в условиях промышленного производства. Работая на своем ПК, пользователь может наблюдать, вызывать и обрабатывать данные и события, происходящие в системах автоматизации. OPC-интерфейс является частью ПО, работающего на ПК, и является платформой для систем операторского управления и визуализации или других приложений. OPC-интерфейс базируется на модели «клиент/сервер». Один компонент предоставляет свои сервисы другому компоненту через интерфейсы. Другой компонент использует эти сервисы.
Рассмотрим более подробно процесс совместной работы ПЛК (или же его симулятора) и виртуальной модели технологического объекта в среде Matlab Simulink. Структура передачи и обработки информации между ПК и контроллером изображена на рисунке 2.
Рис. 3 Структурная схема передачи и обработки информации между персональным компьютером и контроллером
Рисунок 2 – Структурная схема передачи и обработки информации между персональным компьютером и контроллером

Для того, чтобы приступить к тестированию и отладке АСУ, необходимо выполнить ряд шагов по созданию проекта тестирования.
– Шаг 1. Настройка ОРС сервера.
Необходимо создать тэги обмена данными, подменяющие переменные, используемые в программе ПЛК для работы с реальными входными/выходными данными (датчики, сигналы обратной связи).
– Шаг 2. Настройка программы ПЛК.
В программе ПЛК необходимо заблокировать обращение к реальным входным/выходным каналам (датчики, сигналы обратной связи и др.). Далее ОРС сервер будет производить чтение/запись данных напрямую в программу ПЛК.
– Шаг 3. Подготовка проекта в Matlab Simulink.
В Matlab Simulink необходимо создать виртуальную модель исследуемого объекта. Также необходимо создать точки чтения/записи данных по ОРС, используя стандартные инструменты из Matlab OPC Toolbox. Для минимизации трудозатрат и ошибок при моделировании была разработана специализированная библиотека стандартных блоков упрощённых виртуальных моделей различных объектов управления в Matlab Simulink. Каждый блок обладает дополнительным удобным интерфейсом ввода параметров модели, позволяющих настраивать модель под различные условия и требования системы.
В результате выполнения всех шагов, описанных выше, мы получаем систему, объединяющую в себе сразу несколько методов тестирования и отладки АСУ. Цикл выполнения алгоритма данной системы можно разделить на следующие этапы:
I. Опрос и запись в область памяти ПЛК входных данных (состояния объекта управления в данный момент времени – всевозможные датчики, сигналы задания и др.). В нашем случае происходит передача данных от среды математического моделирования в область памяти ПЛК по технологии OPC.
II. Обработка полученных входных данных согласно управляющих алгоритмов в ПЛК.
III. Формирование управляющих воздействий на объект управления (воздействия на управляющие механизмы – задвижки, клапаны и др.). В нашем же случае происходит передача данных от ПЛК назад в систему математического регулирования по тому же принципу, что и на первом этапе цикла.
IV. Реакция объекта управления на произведенные АСУ управляющие воздействия. В нашем случае происходит расчет математической модели объекта управления в системе моделирования с последующим сохранением данных о новом состоянии объекта.
Так как алгоритм является циклическим, по окончании IV этапа мы снова переходим на первый этап цикла и процедура повторяется заново.
Рассмотрим более подробно процесс тестирования программы управления АСУ, реализованной на базе контроллеров Simatic S7 400 фирмы Siemens, на примере использования виртуальной модели в Matlab. Переменные, созданные на этапе настройки ОРС сервера [3], в качестве выходных воздействий передаются из симулятора ПЛК в OPC сервер п.1 (см. рис. 3). Далее данные (2) передаются в Matlab Simulink и преобразуются во внутренние переменные Matlab Simulink по средствам инструментов OPC Tool (OPC read (cache)). После этого происходит расчёт виртуальной модели в Matlab Simulink и выдачей результата в качестве новых переменных (OPC write (sync)) обратно в ОРС сервер (3). Следует отметить, что в режиме симуляции в Simulink доступна возможность изменения различного рода констант и параметров модели, что делает процесс тестирование максимально гибким и приближенным к реальному процессу. Далее данные, полученные после вычислений и поступившие вновь в ОРС сервер, поступают обратно в симулятор ПЛК (4) в качестве входных воздействий. В симуляторе происходит расчет логики управления АСУ и формирование новых управляющих воздействий.
Modeling2
Рисунок 3 – Структурная схема обработки информации в процессе тестирования
Процесс выполнения моделирования происходит в режиме реального времени, а алгоритм работы системы в точности совпадает с режимом работы реальной АСУ, поэтому пользователь может наблюдать за всеми происходящими процессами и производить управляющие воздействия как внутри математической модели, так и в самой логике контроллера, что является несомненным плюсом данного метода. Также мы получаем возможность тестирования всей программы целиком, а не её модулей в отдельности, что позволяет проверить межблочные связи – места наибольшего риска появления ошибок [4]. Приведенный алгоритм также позволяет проводить моделирование различных нештатных и аварийных событий. Проверить корректность работы алгоритмов защит, блокировок, предупредительной и аварийной сигнализации.
Описанные преимущества также позволяют применять данную методику не только на этапе разработки, но и на этапах сопровождения и модификации уже согласованной и работающей АСУ, таких как:
– коррекция – работы, связанные с необходимостью исправления ошибок в ранее разработанной программе;
– адаптация – работы, связанные с изменением условий окружения, в котором выполняется программа;
– улучшение – работы, связанные с добавлением новой функциональности в программу.

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

IbaPDA проект для Simatic S7

Posted: 24 августа, 2011 in Uncategorized

В своей статье Matlab and Iba Analyzer я упоминал о программном пакете от компании Iba – IbaPDA и IbaAnalyzer, позволяющим производить обработку данных технологического процесса. Поэтому я думаю будет уместно более подробно остановиться на данном программном продукте, так как по моему мнению он будет довольно интересен специалистам занимающимся наладкой и обслуживанием систем автоматического регулирования технологических объектов. Возможности, предоставляемые данным пакетом, будут весьма полезны для анализа процессов работы оборудования как на этапе пуско-наладочных работ, так и во время текущей эксплуатации, особенно при анализе причин возникновения различных внештатных режимов работы оборудования.

Читать далее…

Simatic NET OPC Server

Posted: 24 августа, 2011 in Uncategorized

В своей статье Связь Matlab  и Simatic S7 по OPC  Я уже  упоминал о технологии ОРС, поэтому следующим этапом считаю уместным уделить немного внимания и более подробно остановиться на процессе создания проекта связи по ОРС между контроллером Simatic S7  и персональным компьютером.  Описание приведу на примере конфигурирования подключения к сети Industrial Ethernet типовых коммуникационных партнеров, доступ к которым возможен через OPC-сервер. Читать далее…

В данной статье я хочу поделится моими мыслями по поводу еще одного варианта использования программы Matlab  для анализа, синтеза и моделирования систем автоматического регулирования (САР), реализованных на базе программируемых логических контроллеров (PLC) Siemens Simatic S7. В описываемом методе основным инструментом, отвечающим за сбор и обработку данных технологического процесса, является специализированный пакет программ от компании Iba, при помощи которого можно просматривать графики процесса как в режиме реального времени,так и за отдельно взятый период времени. При помощи специально разработанных мною программных функций интересующие нас данные мы конвертируем в рабочую среду Matlab для дайнешего анализа. Рассмотрим более подробно процедуру доступа, конвертации и анализа данных технологического процесса.

Читать далее…

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

Читать далее…