Организация обмена данными между MATLAB Simulink и пользовательской программой
Введение
Для полноценного тестирования разрабатываемых программ управления необходима замена технологического процесса (объекта автоматизации) его адекватной моделью. MATLAB Simulink является мощным инструментом для исследования и моделирования сложных динамических систем, следовательно, с его помощью можно имитировать реальный процесс либо производство. Поэтому особенно интересным является вопрос об осуществлении связи между Simulink и программами пользователя (в частности, загруженной в ПЛК программой) одновременно с моделированием процесса в реальном времени. Кроме того, при отсутствии разработанного HMI-интрефейса Simulink позволяет реализовать все его функции.
Данная проблема возникает при отладке и тестировании новых алгоритмов и программных продуктов, когда доступ к реальному объекту автоматизации на стадии разработки бывает затруднен.
Использование технологии ОРС
OPC (OLE for Process Control) — технология связывания и внедрения объектов для систем промышленной автоматизации. Главной целью ее создания было предоставить разработчикам систем диспетчеризации некоторую независимость от конкретного типа контроллеров. OPC основывается на технологии OLE/COM/DCOM компании Microsoft [1].
Данная технология определяет два класса программ: ОРС-сервер (OPC server), непосредственно взаимодействующий с аппаратурой телемеханики, и ОРС-клиент (OPC client), получающий данные от ОРС-сервера для дальнейшей обработки и передающий ему команды управления.
ОРС-сервер обеспечивает сбор данных, передачу команд управления, диагностику каналов связи и т. д. Он позволяет подключать устройство к широкому кругу программного обеспечения, поддерживающего данную спецификацию.
ОРС-клиент получает данные через интерфейс сервера и выполняет их комплексную обработку: использует для визуализации, строит графики, выводит на печать, сохраняет на диске и т. д.
Возможно несколько подходов к решению проблемы взаимодействия аппаратных средств автоматизации с пакетом MATLAB. В данной работе будет показано, как указанная проблема решается с помощью пакета OPC Toolbox.
Решение поставленной задачи с использованием пакета ОРС Toolbox
Программный пакет OPC Toolbox расширяет возможности среды MATLAB. Он позволяет:
- читать и записывать данные с устройств, совместимых со стандартами OPC;
- осуществлять взаимодействие с системами распределенного управления, диспетчерского контроля, захвата данных и с контроллерами программируемой логики;
- реагировать MATLAB на события OPC-сервера (выключение, ошибка или изменение параметров);
- управлять различными внешними OPC-устройствами с помощью единого простого синтаксиса;
- импортировать промышленные данные в среду MATLAB для анализа, визуализации, имитационного моделирования и тестирования систем в связке модель-устройство.
Кроме того, пакет содержит графическое окно OPCtool для интерактивной работы и блоки Simulink для чтения/записи живых данных с OPC-серверов во время моделирования.
Основными возможностями пакета являются [2]:
- чтение/запись данных с OPC-устройств в синхронном и асинхронном режиме;
- поддержка одновременной работы с нес-колькими OPC-серверам;
- чтение и обработка данных в реальном времени.
Для решения задачи используются следующие программные средства:
- Приложения пакета программ MATLAB:
– Simulink (как среда моделирования технологического процесса);
– OPCToolbox (обеспечение интерфейса взаимодействия с OPC-сервером). - OPC-сервер (универсальное средство, обеспечивающее передачу данных между контролером и средой моделирования).
- Siemens Simatic Step 7 (разработка алгоритмов управления, программирование контроллера, конфигурирование оборудования и связей).
Общая схема взаимодействия элементов системы модель-устройство представлена на рис. 1.
OPC-сервер является основным компонентом, обеспечивающим передачу данных между средой моделирования, контроллером и внешними программами. Любой сигнал Simulink-модели может быть передан на сервер, а затем в контроллер или в любое приложение, поддерживающее стандарт OPC.
В качестве программируемого контроллера используется Siemens Simatic S7-400 CPU414-3. Данное устройство широко распространено в промышленности, имеет удобную среду разработки алгоритмов управления, легко соединяется с компьютером и при этом обладает достаточной вычислительной мощностью. Однако совершенно не важен конкретный тип выбранного оборудования, поскольку в любом случае схема моделирования остается неизменной, за исключением некоторых технических особенностей.
Использование OPC Simatic Net в качестве ОРС-сервера [3] еще более упрощает настройку и работы по имитационному моделированию в составе программно-технического комплекса, сводя ее к настройке сетевого обмена данными (рис. 2). Кроме того, он позволяет вести мониторинг и просматриватьиспользуемые данные (рис. 3).
В качестве рабочего примера в среде MATLAB реализована упрощенная модель, характеризующая работу антипомпажного регулятора при постоянных оборотах вращения вала центробежного нагнетателя в зависимости от степени закрытия антипомпажного клапана (АПК) (рис. 4).
Модель реализована в приложении Simulink как совокупность функциональных блоков из библиотеки Simulink и связей между ними. Также в модели имеется блок OPC configuration, который предназначен для настройки связи с OPC-сервером. Данный блок позволяет выбрать один из работающих в локальной сети серверов, а также настроить параметры передачи данных. Блоки OPC Read и OPC Write предназначены для получения и отправки данных на сервер соответственно [2].
Контроллер через средства, предоставляемые OPC-сервером, получает от модели текущие измеряемые параметры технологического процесса в реальном времени. К ним относятся: температура газа на входе и выходе нагнетателя; обороты вращения вала нагнетателя; измеряемый расход технологического газа; перепад давлений на сужающем устройстве нагнетателя; входное и выходное давления; атмосферное давление; имитируемые сигналы от САУ верхнего уровня — «Работа», «Открыть антипомпажный клапан», «Закрыть антипомпажный клапан», «Экстренно открыть антипомпажный клапан».
От контроллера модель получает управляющий сигнал на закрытие антипомпажного клапана, сформированный в соответствии с алгоритмами работы тестируемой системы антипомпажной защиты.
Один из графиков, полученных в ходе работы схемы моделирования, представлен на рис. 5.
Технология OPC позволяет осуществлять мониторинг технологического процесса в реальном времени, а также разработать мнемосхемы, тренды, таблицы, сформировать базу данных, информация которой может использоваться для диагностики технологического процесса, определения причин аварийных ситуаций или расчета технико-экономических показателей.
Изложенная в работе схема моделирования позволяет оценить возможности как программных средств управления объектом, так и ее аппаратной составляющей, не прибегая к натурным испытаниям.
Литература
- http://www.opcfoundation.org
- http://www.mathworks.com/help/toolbox/opc/
- Конфигурирование аппаратуры и коммуникационных соединений Step 7 v5.3. Руководство пользователя. Siemens AG департамент техники автоматизации и приводов. Нюрнберг. 2004.