УДК 681.5.017
ТЕСТИРОВАНИЕ И ОБЕСПЕЧЕНИЕ КАЧЕСТВА ПРОГРАММНО-ТЕХНИЧЕСКИХ КОМПЛЕКСОВ НА ОСНОВЕ ИСПОЛЬЗОВАНИЯ ВИРТУАЛЬНЫХ ТЕХНОЛОГИЧЕСКИХ ОБЪЕКТОВ
Бракоренко А.С.
Гомельский государственный технический университет им. П.О. Сухого, г. Гомель, Республика Беларусь e-mail: [email protected]
Разработана методика отладки автоматизированных систем управления технологическими процессами при использовании математического моделирования, заключающаяся в совместном использовании систем отладки алгоритмов для автоматизированных систем управления (АСУ) и систем математического моделирования в одном едином алгоритме отладки. В среде Matlab Simulink, при использовании инструментов Object Linking and Embedding for Process Control (OPC) toolbox и разработанной автором библиотеки виртуальных объектов управления (насосы, нагреватели, клапана и др.) предлагается создать систему, позволяющую связать работу симулятора программируемого логического контроллера и систему математического моделирования Matlab Simulink в режиме реального времени. Полученный алгоритм работы системы в точности повторяет режим работы реальной АСУ и позволяет симулировать работу объекта управления совместно с системой управления. Произведенные проверки позволяют говорить о применимости подобной методики настройки и тестирования программно-технического комплекса различной степени сложности, а использование технологии OPC позволяет применять данную методику для большого количества производителей оборудования автоматизированных систем управления.
Ключевые слова: моделирование, тестирование, АСУ, Matlab, OPC.
Введение
Cегодня подавляющая часть создаваемых или модернизируемых автоматизированных систем управления технологическими процессами (АСУ ТП) не представляется без использования современных компьютерных технологий и программного обеспечения. Использование новых разработок позволяет увеличивать производительность, повышать качество конечной продукции, снизить временные затраты и свести к минимуму возможные поломки оборудования в ходе пусконаладочных работ при вводе оборудования в эксплуатацию. Однако произошедший качественный скачок в составе решаемых задач заставляет уделять больше внимания тщательной разработке, модификации и сопровождению разработанного программного обеспечения (ПО) для АСУ ТП. В данной работе описан один из методов моделирования технологических процессов в ходе те-
стирования АСУ ТП, целью которого является определение качества разработанного ПО и повышение уровня надежности и точности работы систем автоматического регулирования.
Тестирование и обеспечение качества программно-технических комплексов на основе использования виртуальных технологических объектов
Обеспечение качества ПО - непрерывный процесс в течение всего жизненного цикла ПО, который охватывает:
- методы и средства анализа, проектирования и кодирования;
- технические отчеты, выполняющиеся на каждом шаге разработки ПО;
- процедуры обеспечения соответствия стандартам в области разработки ПО, соответствие которым определено в задании на разработку данного ПО [1].
Качество ПО можно определить как соответствие явно установленным функциональным и эксплуатационным требованиям, явно указанным стандартам разработки и неявным характеристикам, которые ожидаются от профессионально разработанного ПО.
Этап тестирования ПО на соответствие основным показателям качества является заключительным этапом жизненного цикла создания ПО. Однако довольно часто данный факт недооценивают, выделяя ограниченное число времени, ошибочно полагая, что любая программа благодаря тому, что реализует некий известный алгоритм работы, может быть полностью проверена при ограничении входного набора данных. Однако это утверждение правомерно только для тривиальных либо некоторых специальных случаев ПО. Вследствие чего ресурсы, выделяемые на тестирование, в большинстве случаев ограничены для обеспечения полного тестового покрытия программы. Очень часто тестирование совмещают с проведением пусконаладочных работ, подвергая технологическое оборудование угрозе поломки и выходу из строя.
Повышенная трудоемкость процедуры тестирования ПО для АСУ ТП является основной
причиной больших временных затрат, негативно влияющих на показатели разрабатываемого проекта. Поэтому основной задачей, направленной на уменьшение трудозатрат, является упрощение и автоматизация процедуры тестирования.
Решением подобной задачи является применение виртуальных моделей технологического оборудования, на управления которым и проектируется АСУ. Данный прием возможен при создании связи, объединяющей две независимо работающие среды: среду отладки управляющей логики программируемого логического контроллера (ПЛК) и среды моделирования с созданной виртуальной моделью объекта управления на базе компьютера, на котором выполняется процедура тестирования. Так, например, в последних версиях ПО компании Ма1Ь8ой (МаЙаЬ у7.0 и выше) появился ряд новых компонентов заметно упрощающих предложенную процедуру. Данные приложения позволяют получать доступ к данным контроллера в режиме реального времени как для их чтения, так и с возможностью записи в память контроллера. Процесс обмена данными между ПЛК и персональным компьютером (ПК) осуществляется при помощи технологии ОРС [2].
Рисунок 1 - Структурная схема автоматизированной системы управления технологическими процессами,
основанной на технологии ОРС
OPC представляет собой универсальный программный интерфейс, который может использоваться на устройствах, поставляемых различными производителями (рисунок 1). В качестве промышленного стандарта OPC описывает обмен данными для различных приложений в условиях промышленного производства. Работая на своем ПК, пользователь может наблюдать, вызывать и обрабатывать данные и события, происходящие в системах автоматизации. OPC-интерфейс является частью ПО, работающего на ПК, и платформой для систем операторского управления и визу-
ализации или других приложений. OPC-интер-фейс базируется на модели «клиент/сервер». Один компонент предоставляет свои сервисы другому компоненту через интерфейсы. Другой компонент использует эти сервисы.
Рассмотрим более подробно процесс совместной работы ПЛК (или же его симулятора) и виртуальной модели технологического объекта в среде Matlab Simulink.
Структура передачи и обработки информации между ПК и контроллером изображена на рисунке 2.
PC
OPC server
«
SCADA
л
OPC client
Matlab
Рисунок 2 - Структурная схема передачи и обработки информации между персональным компьютером
и контроллером
Для того чтобы приступить к тестированию и отладке АСУ, необходимо выполнить ряд шагов по созданию проекта тестирования.
- Шаг 1. Настройка ОРС сервера.
Необходимо создать тэги обмена данными,
подменяющие переменные, используемые в программе ПЛК для работы с реальными входными/выходными данными (датчики, сигналы обратной связи).
- Шаг 2. Настройка программы ПЛК.
В программе ПЛК необходимо заблокировать обращение к реальным входным/выходным каналам (датчики, сигналы обратной связи и др.). Далее ОРС сервер будет производить чтение/запись данных напрямую в программу ПЛК.
- Шаг 3. Подготовка проекта в Matlab Si-mulink.
В 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) в качестве входных воздействий. В симуля-торе происходит расчет логики управления АСУ и формирование новых управляющих воздействий.
Рисунок 3 - Структурная схема обработки информации в процессе тестирования
Процесс выполнения моделирования происходит в режиме реального времени, а алгоритм работы системы в точности совпадает с режимом работы реальной АСУ, поэтому пользователь может наблюдать за всеми происходя-
щими процессами и производить управляющие воздействия как внутри математической модели, так и в самой логике контроллера, что является несомненным плюсом данного метода. Также мы получаем возможность тестирования всей
программы целиком, а не её модулей в отдельности, что позволяет проверить межблочные связи - места наибольшего риска появления ошибок [4]. Приведенный алгоритм также позволяет проводить моделирование различных нештатных и аварийных событий, проверить корректность работы алгоритмов защит, блокировок, предупредительной и аварийной сигнализации.
Описанные преимущества также позволяют применять данную методику не только на этапе разработки, но и на этапах сопровождения и модификации уже согласованной и работающей АСУ, таких как:
- коррекция - работы, связанные с необходимостью исправления ошибок в ранее разработанной программе;
- адаптация - работы, связанные с изменением условий окружения, в котором выполняется программа;
- улучшение - работы, связанные с добавлением новой функциональности в программу.
Заключение
Разработана методика отладки автоматизированных систем управления технологическими процессами при использовании математического моделирования, заключающаяся в совместном использовании систем отладки алгоритмов для автоматизированных систем управления и систем математического моделирования в едином алгоритме отладки и позволяющая симулировать работу объекта управления совместно с системой управления.
Особенностью данного метода является то, что тестирование производится в режиме ре-
ального времени, поэтому пользователь может наблюдать за всеми происходящими процессами и производить управляющие воздействия как внутри математической модели, так и в логике контроллера. Это позволяет проводить проверку как межблочных связей внутри программы, так и всей программы целиком.
Один из возможных вариантов использования данного алгоритма - применение его в качестве инструмента для проверки алгоритмов аварийных защит, блокировок, предупредительной и аварийной сигнализации.
Перспективным направлением может стать создание обучающих симуляторов на основе приведенной методики для проведения тренингов обслуживающего персонала автоматизированных систем управления технологическими процессами.
Список использованных источников
1. Жарко, Е.Ф. Оценка качества программного обеспечения для систем, важных для безопасности АЭС / Е.Ф. Жарко // Информационные технологии и вычислительные системы. -2011. - № 3. - С. 38-44.
2. Руководство пользователя: OPC Toolbox 2. Read, write, and log data from OPC servers. [Электронный ресурс]. - Режим доступа: http://www.mathworks.com/products/techkitpdfs /91201.pdf (дата доступа 10.10.2014).
3. Siemens. Simatic NET. Commissioning PC Stations - Manual / Quick Start Release 1. 1/2002. C79000-G8976-C156-03.
4. Пивень, А.А. Тестирование программного обеспечения / А.А. Пивень, Ю.И. Скорин // Системы обработки информации. - 2011. - № 4. -С. 56-58.
TESTING AND QUALITY ASSURANCE OF SOFTWARE AND HARDWARE SYSTEMS BASED ON USE OF VIRTUAL TECHNOLOGICAL OBJECTS
Brakarenka A.S.
P.O. Sukhoi Gomel State Technical University, Gomel, Belarus e-mail: [email protected]
Abstract. The proposed article about debugging method of control systems using mathematical modeling is the combined use of algorithms for debugging control systems and mathematical modeling in a single
algorithm of debugging. For this transformation is proposed to produce changes in the control program for the PLC in order to use in mathematical modeling. In Matlab Simulink, using Object Linking and Embedding for Process Control (OPC) toolbox tools libraries of commonly used actuators (pumps, heaters, valves, valveand etc.), developed by the author - create a system to link the work of the PLC simulator system and mathematical modeling in Matlab Simulink in real time. In the result of manipulation we get new algorithm exactly the same as the real mode and allows control systems to simulate operation of the plant, together with PLC based control system. The results of test shows the applicability of such techniques of configuration and test software and hardware complex, and the use of OPC technology allows to apply this technique to a large number of manufacturers of control systems.
Keywords: modeling, testing, control systems, Matlab, OPC.
References
1. Zharko.E.F. [Evaluation of the quality software systems important for NPP safety]. Informatsionnye tekhnologii i komp'yuternye sistemy. 2011. № 3. Pp. 38-44 (in Russian).
2. User manual: OPC Toolbox 2. Read, write, and log data from OPC servers. Available at: http://www.mathworks.com/products/techkitpdfs/91201.pdf (accessed: 10.10.2014).
3. Siemens. Simatic NET. Commissioning PC Stations - Manual / Quick Start Release 1. 1/2002. C79000-G8976-C156-03
4. Pivem A.A., Skorin Yu.I. [Software testing]. Sistemy obrabotki informatsii. 2011. № 4. Pp. 56-58 (in Russian).
Поступила в редакцию 23.06.2014.