ФЭА / АИТ / Отчёт на тему: «Проектирование мнемосхемы КНС с помощью комплекса инструментальных средств ICONICS GENESIS32» по дисциплине: «АСУТП»
(автор - student, добавлено - 25-01-2014, 15:43)
СКАЧАТЬ:
Отчёт на тему: «Проектирование мнемосхемы КНС с помощью комплекса инструментальных средств ICONICS GENESIS32»
по дисциплине: «АСУТП»
Введение GENESIS32 является комплексом клиентских и серверных приложений, основанных на технологии ОРС (OLE for Process Control - технология связывания и внедрения объектов для промышленной автоматизации), которые предназначены для разработки прикладного программного обеспечения визуализации контролируемых параметров, сбора данных и оперативного диспетчерского управления в автоматизированных системах управления технологическими процессами (далее, - АСУТП). Настоящий раздел содержит следующую информацию: - Сущность и назначение ОРС - Назначение GENESIS32 - Клиентские и серверные компоненты системы - Разработка специализированных приложений пользователя - Разработка проектов Назначение OLE for Process Control Технология связывания и внедрения объектов для систем промышленной автоматизации ОРС (OLE for Process Control) предназначена для обеспечения универсального механизма обмена данными между датчиками, исполнительными механизмами, контроллерами, устройствами связи с объектом и системами представления технологической информации, оперативного диспетчерского управления, а также системами управления базами данных. Производители аппаратных средств, пользуясь спецификацией ОРС, имеют возможность разрабатывать единственный сервер ОРС для обеспечения единственного и наиболее общего способа организации доступа к данным и передачи в адрес приложений-клиентов различных производителей программного обеспечения для промышленной автоматизации. ОРС основана на модели распределенных компонентных объектов Microsoft DCOM и устанавливает требования к классам объектов доступа к данным и их специализированным (custom) интерфейсам для использования разработчиками клиентских и серверных приложений. Для обмена данными с приложениями-клиентами, разработка которых ведется на языках типа MS Visual Basic, а также с популярными приложениями типа Excel, спецификация ОРС содержит дополнительные (но необязательные для реализации) требования к интерфейсу OLE-автоматизации (OLE Automation). При использовании традиционных подходов к построению систем сбора данных и управления каждое клиентское приложение взаимодействует с устройствами различных типов через отдельные драйверы, как показано на рис.1.
Рис.1. Традиционная архитектура взаимодействия между приложениями и устройствами
Устройства разных производителей имеют различные форматы драйверов ит как правило, различные протоколы обмена через интерфейсы прикладного программирования, что существенно усложняет процесс интеграции оборудования и программного обеспечения разных производителей. Так, если производитель оборудования изменяет протокол обмена с производимым им устройством, это требует внесения изменений во все взаимодействующие с данным устройством клиентские приложения. Архитектура ОРС была предложена организацией ОРС Foundation для решения указанной проблемы. В соответствии со спецификацией ОРС доступа к текущим данным устройств (ОРС Data Access), разные устройства и приложения различных производителей обмениваются данными друг с другом с использованием единого универсального программного протокола. Драйверы устройств, соответствующие спецификации ОРС, называются ОРС-серверами, а приложения, получающие доступ к данным устройств через интерфейсы ОРС, - ОРС-клиентами. В результате несколько ОРС-клиентов могут получать доступ к данным устройств через один или несколько ОРС-серверов одновременно, как показано на рис. 2.
Рис.2. Клиент-серверная архитектура, основанная на спецификации ОРС
Назначение GENESIS32 GENESIS32 является комплексом 32-разрядных приложений для Windows 95, Windows 98, Windows NT и Windows 2000, построенных в соответствии со спецификацией ОРС. Комплекс предназначен для создания программного обеспечения сбора данных и оперативного диспетчерского управления верхнего уровня систем промышленной автоматизации. В состав GENESIS-32 также входит среда разработки и исполнения сценарных процедур VBA. обеспечивающая возможность разработки части программного обеспечения средствами Microsoft Visual Basic for Applications 6.0 (Visual Basic для приложений), входящего в популярный пакет MS Office 2000. Все программные компоненты реализованы на базе многопоточной модели и поддерживают технологию ActiveX. В состав GENESIS32 входят следующие клиентские приложения, соответствующие спецификации ОРС:
Указанные приложения могут заказываться и применяться как в составе комплекса, так и автономно. Кроме того, фирма ICONICS поставляет перечисленные ниже дополнительные приложения и инструментальные средства разработки: - ScriptWorX32 - AlarmWorX32 Multimedia - WebHMI - DataWorX32 - Библиотека символов Symbols32 Library - ActiveX ToolBox - ОРС-серверы, разработанные ICONICS - ОРС-серверы, разработанные третьими фирмами - ICONICS GEN-OPC Сервер - OPCToolWorX - ActiveX ToolWorX Архитектура системы показана на рис.3.
Рис. 3
GraphWorX32 Объединяет средства разработки и просмотра графических мнемосхем автоматизированных рабочих мест оператора АСУТП. Мнемосхемы (экранные формы) могут создаваться как на основе встроенных средств рисования, так и управляющих элементов ActiveX других производителей. Алгоритмы вторичной обработки данных и процедуры управления экранными формами могут разрабатываться в интегрированной среде разработки и исполнения сценариев Visual Basic для приложений (VBA). GraphWorX32 является инструментальным средством, предназначенным для визуализации контролируемых технологических параметров и оперативного диспетчерского управления на верхнем уровне АСУТП. который полностью соответствует требованиям к клиенту ОРС и поддерживает технологии ActiveX и OLE. Основные характеристики GraphWorX32:
- Поддержка шаблонов экранных форм, содержащих наиболее часто используемые слои графических объектов - Возможность встраивания в HTML-страницы и другие контейнеры OLE (MS Word, MS Excel, MS Access и др.) - Возможность просмотра браузерами Интернет, такими как MS Internet Explorer - Обширная библиотека элементов отображения, ориентированных на построение мнемосхем промышленных объектов - Возможность встраивания графиков TrendWorX32 и экранов AlarmWorX32 - Средства импорта графических метафайлов (WMF) и растровых изображений (BMP) - Публикация экранных форм в глобальной сети Интернет - Встроенный редактор выражений для выполнения математических, функциональных, логических и других операций над данными.
TrendWorX32 Представляет открытое решение по высокопроизводительному построению графических зависимостей контролируемых параметров. Поддерживает спецификацию ОРС доступа к историческим данным (ОРС HDA}, устанавливающую требования к подсистеме извлечения и представления исторических данных из баз данных архива Пакет TrendWorX32 обеспечивает накопление и представление текущих данных в виде графических зависимостей от времени. Кроме того, TrendWorX32 является мощным средством архивации накапливаемой информации в базах данных с возможностью последующего извлечения и просмотра на графиках. Полностью соответствует спецификациям ОРС доступа к текущим и историческим данным. Основные функциональные возможности TrendWorX32: • Представление значений контролируемых параметров, получаемых от серверов ОРС, на графиках различных типов в реальном масштабе времени - Генерация отчетов на основе данных архива и публикация отчетов в Интернет - Вычисление статистических характеристик выборок значений контролируемых параметров - Извлечение значений контролируемых параметров из архивов и представление в виде графиков различных типов - Вывод графиков на печатающее устройство - Разработка и исполнение сценарных процедур на встроенном Visual Basic для приложений - Возможность вставки элементов просмотра графиков TrendWorX32 ActiveX в различные контейнеры ActiveX - Встроенное средство генерации отчетов в базах данных и MS Excel
AlarmWorX32 Мощная подсистема обнаружения, идентификации, фильтрации и сортировки аварийных и других событий, связанных с контролируемым технологическим процессом и состоянием технических средств АСУТП. AlarmWorX32 является набором программных компонентов, предназначенных для обнаружения аварийных событий, оповещения оперативного персонала, приема подтверждений восприятия информации об аварийных событиях и регистрации информации об авариях в базе данных. Основные функциональные возможности AlarmWorX32: Обнаружение аварийных событий по множеству признаков и критериев, настраиваемых пользователем Передача информации об обнаруженных авариях клиентским приложениям, расположенным на разных узлах локальной или глобальной сети Анализ аварийных событий и действий ответственного персонала Объединение всех аварийных событий и подтверждений восприятия системных сообщений ответственным персоналом в сводки аварийных событий Отображение вспомогательной информации для аварийных событий, позволяющей локализовать и устранить причины аварии Связь с аппаратными средствами системы через интерфейсы ОРС Возможность запуска сервера обнаружения аварий в качестве сервисного процесса (службы) Windows NT Мощное средство конфигурирования условий аварийных событий Встроенная среда редактирования сценарных процедур Microsoft Visual Basic for Applications
ScriptWorX32 Одновременное выполнение вычислительных операций и любых других действий, доступных в языке программирования VBA, управление базами данных, формирование отчетов и заданий. ScriptWorX32 является мощных средством разработки и исполнения сценарных процедур Microsoft Visual Basic for Applications (VBA) версии 6.О. ScriptWorX32 содержит мультизадачную среду параллельного исполнения сценариев с поддержкой симметричных многопроцессорных архитектур. VBA-сценарии, разрабатываемые пользователем, могут выполнять операции обмена данными с серверами ОРС. Основные функциональные возможности ScriptWorX32: Многопоточное 32-разрядное приложение Возможность работы в операционных системах Windows NT, 95/98 и 2000 Контейнер сценариев VBA 6.0 Visual Basic for Applications 6.0 входит в установочный комплект Одновременное исполнение сценариев VBA 6.0 Ускорение разработки сценариев при помощи Мастера сценариев Исполнение сценариев по расписанию или периодически Исполнение сценариев при выполнении условий, вычисляемых на основе значений тегов ОРС-серверов Исполнение сценариев по событиям от серверов ОРС Alarms and Events (серверов системных и аварийных событий ОРС) Диагностика текущих состояний сценариев Возможность компиляции сценариев в многопоточные библиотеки динамической компоновки (DLL) Наличие глобальных сценариев для интеграции с другими приложениями Открытый интерфейс OLE Automation
DataWorX32 Сервер организации единого централизованного списка контролируемых параметров с возможностью создания глобальных переменных, доступных всех клиентским приложениям программного комплекса, а также обладающий механизмом резервирования серверов ОРС. DataWorX32 является ОРС-сервером. который предназначен для организации единого моста между множеством клиентских и серверных компонентов системы. Основные функциональные возможности DataWorX32:
Проектная часть Цель работы: требуется создать мнемосхемы площадок КНС, подробно описать порядок выполнения работы, представить экранные формы разработанного проекта,
Постановка задачи Требуется создать мнемосхему общей площадки КНС, на которой должны быть изображены следующие объекты: насосные агрегаты ЦНС. На данном экране должно быть показано движение воды, отображаться значения давления на приеме, на выкиде, уровни воды в емкости, значения расходов по водоводам. Также необходимо выполнить настройку насосного агрегата ЦНС таким образом, чтобы при нажатии левой клавишей мыши по нему происходил переход к мнемосхеме насосного агрегата, на которой должны отображаться следующие тренды: давление на приеме и на выкиде НА, давление масла, температура подшипников и вибрация двигателя. Также на второй экранной форме должно быть реализовано аварийное отключение НА, при превышении допустимого значения давления на выкиде, что должно быть отражено на графиках.
Практическая реализация поставленной задачи Мнемосхемы процесса подготовки нефти, разработанные с помощью SCADA – пакета GENESIS 32. При создании проекта необходимо реализовать следующие основные функции, отображаемые на мнемосхеме:
Мнемосхема КНС состоит из насосных агрегатов ЦНС, резервуаров и блока гребенки. Основным объектом автоматизации выбран насосный агрегат ЦНС.
Для создания мнемосхемы КНС, и НА необходимо: Выбрать элементы из библиотеки символов, затем перенести их в окно экранной формы GraphWorX32 и разметить их так чтобы они образовали схемы изображенные на рис.4., рис5.
Рис 4. Мнемосхема КНС
Рис.5. мнемосхема НА
Установка связи между экранными формами КНС и НА: 1. Выделяем насосный агрегат №1 и выберем инструмент в инструментальной панели Динамика, после чего настроим инспектор свойств. В поле имя файла указывается адрес экранной формы агрегата ( рис.6)
Рис.6.
Создание кнопки возврата к экранной форме КНС. Создадим с помощью библиотеки символов и вставки текста кнопку: Выделим эту кнопку и выберем инструмент в панели инструментов Динамика и настроим Инспектор свойств (рис. 7). В поле Имя файла указывается адрес экранной формы КНС.
Рис. 7
Создание тегов OPC-сервера. Для выполнения поставленной перед нами задачи необходимо создать теги OPC-сервера для рассматриваемого контура. Для этого выполните следующие действия: 1. Запустите ОРС Simulator из программной группы ICONICS Genesis_32. Щелкните правой клавишей мыши на названии имитатора устройства SimulatePLC в древовидном списке, расположенном в левой области главного окна OPCZсервера, и выберите команду New Group (Создать группу) в появившемся контекстном меню.
Рис8. Добавление набора тегов в OPC-сервере имитации сигналов
2. Введите имя создаваемого набора тегов в поле Name появившейся диалоговой панели Group, как показано на рис.8 после чего нажмите кнопку OK
Рис.9 Ввод имени набора тегов
3. Щелкнем правой клавишей мыши на названии созданного набора тегов и выберем команду New Tag (Создать тег) в появившемся контекстном меню, как показано на рис.10. На экран монитора будет выведена диалоговая панель Tag Properties (Свойства тега ) показанная на рис 11.
Рис.10 Добавление тега в набор
Рис.11
4. Выполните настройку параметров создаваемого тега OPC, как показано на рис.11 Таким образом, тег будет иметь имя Start, представлять статический сигнал типа BIT. Начальное значение тега равно 0. Указанный OPC тег будет использоваться в качестве глобальной переменной, доступной всем приложениям комплекса GENESIS32 и представляющей текущее состояние дискретно непрерывного процесса (Запущен или Остановлен). 5. Таким же образом создадим все остальные теги. Все переменные, используемые в алгоритме решения поставленной задачи, отобразим в таблице 1 таблица 1
После создания всех необходимых тегов, окно ОРС Simulator примет вид:
5. Закройте диалоговую панель Tag Properties нажатием кнопки OK, после чего выберите команду Save меню File. Завершите работу OPC Simulator, для чего выберите команду Exit меню File.
Создание кнопки Вкл/Выкл Необходимо создать кнопку общего включения системы без которой процессы в нашей схеме идти не будут. 1. Выделите изображение переключателя Switch On, после чего нажмите кнопку в инструментальной панели Динамика. На экран монитора будет выведена диалоговая панель Инспектор свойств с выбранной закладкой Указание и щелчок. В выпадающем списке Операция выберите опцию Передать значение (рис. 12) . В качестве источника данных используем тег ICONICS.Simulator\SimulatePLC.ppd.START Закройте Навигатор тегов нажатием кнопки OK после чего закройте Инспектор свойств переключателя Switch On .
Рис. 12.
2. Далее переключатель Switch On будет настроен таким образом, что в режиме Исполнение он будет видимым только в случае, если дискретно непрерывный процесс остановлен. Для этого выделите переключатель Switch On и выберите инструмент (Скрыть / Блокировать ) в инструментальной панели Динамика. На экран монитора будет выведена диалоговая панель Инспектор свойств с выбранной закладкой Скрыть. Выполните настройку cвойств динамического действия Скрыть как показано на рис. 13. В качестве источника данных выберите тег ICONICS.Simulator.1 \SimulatePLC.ppd.Start.
Рис. 13 3. Аналогично производим настройку и для элемента Switch Off но только передавать значение 0 и скрывать его при значении false
Настройка анимации насосного агретата 1. Так как состояние насосного агрегата, задвижек, и анимация труб визуализируется разными цветами, то необходимо создать изображения насосного агрегата двух цветов: зеленого и серого. 2. Выдилить изображения серого и зеленого цвета и нажать кнопку Цифровой индикатор и настроить страницу свойств Цифрового индикатора аналогично рис.14, выбрав в качестве Источника данных тег ICONICS.Simulator.1 \SimulatePLC.ppd.Start. 3. Аналогично проводится операция для визуализации задвижек, и анимация течения воды в трубах.
Рис 14.
Создание объекта, с помощью которого будет возможно произвольно изменять давление на приемном коллекторе P1 . Чтобы возможно было произвольно менять давление на приемном коллекторе КНС в пределах 3-12 кгс/см2, было решено использовать стрелки направленные соответственно вверх - для увеличения давления и вниз - для уменьшения давления. Нажмите на стрелку, указывающую вверх, и нажмите кнопку . Будет произведена настройка данного элемента. Выполните всё в соответствии с рис. 15. Таким образом, при нажатии и удержании левой клавиши на данном элементе каждые 50 мс будет происходить изменение величины локальной переменной ~~P1~~ в соответствии с формулой x=(if(~~Q1~~>=12,12,(~~Q1~~+0.1)*{{ICONICS.Simulator.1\SimulatePLC.ppd.Start}})) в пункте Значение (пока нажато).
Рис 15
Таким образом, при нажатии данного элемента давление P1 будет увеличиваться на 0.1. Однако при достижении величины 12 м3/ч значение P1 перестанет изменяться, так как в формуле задается ограничение. Настройка стрелки указывающей вниз, т.е. для уменьшения расхода, аналогично, кроме выражения: x=(if(~~P1~~<=3,3,(~~P1~~-0.2)*{{ICONICS.Simulator.1\SimulatePLC.Training.Start}})). Таким образом, каждые 50 мс значения переменной P1 будет уменьшатся на 0.2 и пределом изменения будет 12 кгс/см2.
Индикация параметров
Давление на выходе насосного агрегата P2 изменяется в зависимости от давления на приемном коллекторе P1. Так как изменение давления на приемном коллекторе P1 повлечет за собой изменение давления на выходе насосного агрегата P2, найдем зависимость P2 от P1. Проанализировав ряд значений P1 и P2 можно вывести следующую зависимость: ~~P2~~=~~P1~~*16.75(1). Таким образом, при изменении значения P1 значение P2 будет меняться автоматически согласно выражению (1). Определим также следующие зависимости: расход на выходе насосного агрегата зависит от давления на входе как Q=P1*11.875, Расход в водоводе 3 Q3=(P1*11.875)*0.53, расход в водоводе 4 Q4=(P1*11.875)*0.47/ За основную переменную мы приняли давление на входе P1, так как именно от него зависят остальные переменные. Зависимость изменения давления на выходе насосного агрегата P2 от расхода на приемном коллекторе Q, расход водоводе 3 Q3, и расход в водоводе 4 Q4 отображается в следующем окне: 1. Нажмем кнопку «Элемент отображения» в панели инструментов Динамика, щелкните ЛК мыши во внутренней области экранной формы (см. рис. 4) Инспектор свойств элемента отображения Параметр процесса, как показано на рис.16. В качестве источника данных выберем ICONICS.Simulator.1\SimulatePLC.ppd.давление на приемном коллекторе. Указание щелчок. В качестве источника данных также выберем ICONICS.Simulator.1\SimulatePLC.ppd.давление на приемном коллекторе. Значение (пока нажато) введем формулу: x= if({{ICONICS.Simulator.1\SimulatePLC.ppd.Start}}==1,~~P1~~,0)
Рис. 16. Инспектор свойств элемента отображения Параметра процесса «давление на приемном коллекторе» 2. Нажмем кнопку «Элемент отображения» в панели инструментов Динамика, щелкните ЛК мыши во внутренней области экранной формы КНС и настроим появившейся Инспектор свойств элемента отображения Параметр процесса «Давление на выкиде НА», как показано на рис.17. В качестве источника данных выберем ICONICS.Simulator.1\SimulatePLC.ppd.давление на выкиде НА. Указание щелчок. В качестве источника данных также выберем ICONICS.Simulator.1\SimulatePLC.ppd. давление на выкиде НА. Значение (пока нажато) введем формулу: x=if({{ICONICS.Simulator.1\SimulatePLC.ppd.Start}}==1,~~P1~~*16,75,0)
Рис. 17. Инспектор свойств элемента отображения
Аналогично настраиваем остальные элементы отображения, по зависимостям, выведенным нами ранее, и устанавливая привязки к созданным тегам.
Настройка отображения сообщений и отключения НА при превышении допустимого значения давления на выкиде НА 1. Для того чтобы при превышении допустимого значения давления на выкиде выводилось сообщение, выделим его и нажмем на кнопку Скрыть/Блокировать в панели Динамика, настроим Инспектор свойств следующим образом рис.18. В поле источник данных запишем: ICONICS.Simulator.1\SimulatePLC.ppd.Авария. Т.о. добьемся того, что при значении давления в допустимых пределах, данное сообщение будет скрыто.
Рис.18. К сообщению о превышении давления добавим динамику, используемую для остановки процесса. Выделим и нажмем Испектор свойств элемента отображения параметра «Давление на выкиде НА» и настроим анологично рис.19. Указание щелчoк передать значение. В поле источник данных запишем: ICONICS.Simulator.1\SimulatePLC.ppd.Авария. Значение (пока нажато) введем формулу: x= if(~~P1~~ * 16.75 >= 201,1,0) Т.о добьемся что при превышении допустимого давления выйдет сообщение.
Рис. 19 Для настройки отключения НА при превышении допустимого значения давления на выкиде необходимо: Выделить и нажать Испектор свойств элемента отображения параметра «Давление на выкиде НА» и настроим анологично рис.19. Указание щелчoк передать значение. В поле источник данных запишем: ICONICS.Simulator.1\SimulatePLC.ppd.Start. Значение (пока нажато) введем формулу: x= if({{ICONICS.Simulator.1\SimulatePLC.ppd.Авария}}==1,0,1) Т.о добьемся что при появлении сообщения о превышении давления тег ICONICS.Simulator.1\SimulatePLC.ppd.Start перейдет в 0, т.е. насосный агрегат выключится.
Настройка отображения графиков: Для создания графиков протекающих процессов необходимо использовать кнопку Iconics TWXView32. В свойствах появившегося окна необходимо добавить и настроить отображаемые перья аналогично рис.20:
Рис.20
Т.О. Экранные формы примут вид :
После запуска проекта на исполнение, на второй форме получим изображения графиков входного и выкидного давлений насоса, а также вибрации двигателя. При достижении предельного значения давления, НА будет остановлен, что будет отображено как на графиках, так и на индикаторе.
Похожие статьи:
|
|