Материал: Разработка модульной подсистемы контроля состояния удаленного стендового оборудования

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

ADAM-5000L/TCP предоставляет большому числу управляющих компьютеров верхнего уровня системы прямой доступ к данным о состоянии контролируемого объекта с помощью OPC-сервера или элементов управления ActiveX. При этом устройство использует популярный сетевой протокол для промышленных сетей на базе технологии Ethernet ModBus/TCP. Использование этого протокола позволяет легко интегрировать его со SCADA-системами или другими пользовательскими приложениями, которые поддерживают протокол ModBus.

Технические характеристики блока ADAM-5000L/TCP приведены в таблице 1, а его структура представлена на рисунке 4.

Таблица 1 - Возможности базового блока ADAM-5000L/TCP

Процессор

32-bit RISC-процессор Strong ARM фирмы Intel

ОЗУ

4 MB

Флэш-ПЗУ

512 KB

Операционная система

реального времени типа MS DOS

Число модулей

4

от 10 до 30 В

Диапазон рабочих температур

от -10° до +70° C

Максимальная длина линии связи

100 м без повторителя

Сетевые протоколы

Modbus/TCP, TCP, UDP, IP, ARP

Количество узлов сети

до 32

Потребляемая мощность

5 Вт

Сторожевой таймер

встроенный

Таймер реального времени

встроенный


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

Внешний вид базового блока представлен на рисунке 5.

Рисунок 4 - Структура базового блока ADAM-5000L/TCP

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

Модуль аналогового ввода ADAM-5017H.

Для реализации аналогового ввода 2 входных сигналов по напряжению и 2 сигналов по току использован модуль ADAM-5017H, так как данный модуль позволяет выбирать режим работы для каждого канала индивидуально и обеспечивает требуемую частоту дискретизации 71.2 Гц.

Приведём другие важные технические характеристики модуля:

–       Эффективное разрешение: 12 разрядов + знак

–       Диапазоны входного сигнала: ±250, ±500 мВ, ±1, ±5, ±10 В, 0…250, 0…500 мВ, 0…1, 0…5, 0…10 В, 0…20, 4…20 мА

–       Напряжение изоляции: 3000 В пост. тока

–       Частота выборки: 100 Гц (групповая)

–       Входное сопротивление 20 МОм

–       Потребляемая мощность: 1.2 Вт

Модуль аналогового вывода ADAM-5024.

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

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

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

Технические характеристики модуля ADAM-5024:

–             Эффективное разрешение: 12 разрядов

–             Выходной диапазон: 0…20, 4…20 мА, 0…10 В

–             Программируемая скорость нарастания выходного сигнала: 0.125...128 мА/с, 0.625...64 В/с

–             Сопротивление нагрузки в режиме формирования тока 0...500 Ом

–             Максимальная потребляемая мощность 2.5 Вт

Модуль дискретного ввода/вывода ADAM-5050

Модуль ADAM-5050 - модуль дискретного ввода/вывода, имеющий 16 универсальных каналов, режим работы которых устанавливается поразрядно с помощью DIP-переключателей, которые хорошо видны на рисунке 8, представляющем внешний вид модуля.

Технические характеристики модуля ADAM-5050:

–             Дискретный ввод: при контроле цепей типа «сухой контакт» уровень логического 0 - вход, замкнутый на землю (GND); уровень логической 1 - вход, разомкнутый относительно земли

–             Уровень логического 0 для дискретных входов не более 2 В

–             Уровень логической 1 для дискретных входов от 4 до 30 В

–             Дискретный вывод: открытый коллектор 30 В/ 0.1 А

–             Потребляемая мощность 0.35 Вт (максимальная - 1.2 Вт)переключателя модуля, соответствующие каналам Ch9 - Ch11, установим в состояние ON и тем самым назначим указанным каналам режим дискретного вывода, а три DIP -переключателя, соответствующие каналам Ch5 - Ch7 установим в состояние OFF, что будет соответствовать режиму работы каналов дискретного ввода.

Окончательная структура подсистемы с распределением входных и выходных сигналов по каналам модулей представлена на рисунке 9.

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

Рисунок 5 - Структура подсистемы с распределением каналов

3.3 Конфигурирование разработанной подсистемы


Конфигурирование и выполнение необходимых настроек модульной подсистемы производятся с помощью утилиты ADAM-5000TCP/6000 Utility, которая является сервисным программным обеспечением, поставляемым вместе с аппаратными средствами [9]. Подобное сервисное программное обеспечения для других аппаратно-программных комплексов часто называют программой-конфигуратором. После запуска утилиты появляется окно операций, в котором отображаются результаты автоматического поиска и идентификации устройств системы автоматизации, подключенных к хосту.

Рисунок 6 - Окно утилиты с обнаруженными устройствами

Секция Tool содержит следующие функции:

) Add Remote Ethernet Device - добавляет новый модуль ADAM-6000 или базовый блок ADAM-5000/TCP и делает его доступным в локальной сети или сети Интернет.

) Search for Ethernet Device - осуществляет поиск всех модулей ADAM-6000 и ADAM-5000/ TCP в сети Ethernet.

) Refresh a Ethernet Device - проводит обновление определенных модулей ADAM-6000 или ADAM-5000/TCP.

) Terminal - выводит в окне операций терминал для выполнения команд настройки, опроса, калибровки модулей.

Секция Setup содержит функции установки Timeout (время ожидания) и Scan Rate (частота сканирования).

Секция Help содержит интерактивную функцию справки DLL API Help, Demo program listing - список демонстрационных программ, Advantech Home Page - подключение к сайту фирмы Advantech.

Конфигурирование модуля аналогового ввода.

В модуле ADAM-5017H производим следующие настройки (рисунок 11). Для вкладках каналов Ch0 и Ch1 на панелях Configuration Setting в списках Input Range выбираем диапазон входного сигнала по току 0 to 20 mA и производим Update. Соответственно для каналов Ch2 и Ch3 выбираем диапазон входного сигнала по напряжению 0 to 10 V. На панели Channel Enable/Disable отключаем каналы Ch4 - Ch7 и делаем Update.

Чтобы выбранные каналы обеспечивали в процессе работы заявленную в документации погрешность измерения, необходимо регулярно проводить их калибровку. Для модуля предусмотрены два вида калибровки: нуля (кнопка Zero Calib.) и наибольшего значения в диапазоне (Span Calib.). При выполнении калибровки нуля необходимо на все входы подать нулевые значения входного сигнала, при другом виде калибровки - подать максимальное значение от эталонных источников.

Рисунок 7 - Каналы модуля ADAM-5017H

Конфигурирование модуля аналогового вывода.

Для модуля ADAM-5024 необходимо настроить два канала аналогового вывода Ch0 и Ch1 на режим работы по напряжению 0 to 10 V. Это делается на вкладках каналов (рисунок 8) аналогично тому, как выполнялось конфигурирования для модуля аналогового ввода. Каждый канал калибруется в соответствии с диапазоном для нуля (0 В) и для наибольшего значения. При необходимости проверки соответствия отображаемых на зелёном фоне моделируемых значений истинным на выходе каналов производят подключение к ним соответствующих измерительных приборов и с помощью инструментов панели Data Output формируют требуемые значения (на зеленом фоне) и проверяют приборами значения на выходе физических каналов модуля.

Рисунок 8 - Конфигурация модуля ADAM-5024

Конфигурирование модуля дискретного ввода/вывода

Рисунок 9 - Настройка каналов модуля ADAM-5050

Модуль дискретного ввода/вывода ADAM-5050 содержит шестнадцать цифровых каналов ввода/вывода.


3.4 Адресация каналов модулей


Каждый модуль базового блока ADAM-5000/TCP имеет определенный диапазон адресов. Для назначения адресов при выполнении каких-либо операций необходимо воспользоваться таблицами, представленными ниже на рисунке 14 (на рисунке показана адресация каналов для 8-слотового базового блока ADAM-5000/TCP, для блока ADAM-5000L/TCP количество слотов и каналов в два раза меньше, а в остальном схема адресации в пределах первых четырёх слотов сохраняется неизменной).

В разработанной подсистеме к базовому блоку подключено 3 модуля. Каждый из них будет иметь свой диапазон адресов.

Для модуля аналогового ввода ADAM-5017H, который находится в слоте 1 базового блока, определен диапазон адресов [40009-40016]. Задействованы 2 адреса - 9 и 10 - для ввода сигналов по току и 2 адреса - 11 и 12 - для ввода сигналов по напряжению.

Для каналов модуля аналогового вывода ADAM-5024, размещенного в слоте 2, определен диапазон адресов [40017-40024]. В этом слоте заняты адреса 40017 и 40018 для вывода аналоговых сигналов напряжения.

Модуль дискретного ввода/вывода ADAM-5050 установлен в слот 0 базового блока. Его каналам соответствует диапазон адресов [00001-00016]. Задействованы адреса 00006 - 00008 для дискретного ввода сигналов, в том числе два последних адреса - для каналов типа «сухой контакт» и адреса 00010 - 00012 будут использоваться для каналов дискретного вывода.

Рисунок 10 - Таблицы диапазонов адресов модулей

4. Разработка HMI приложения

.1 Описание среды InduSoft Web Studio

При разработке используется версией 6.1 среды. Среда проектирования состоит из следующих основных областей [10]:(Окно рабочей области проекта) - содержит четыре вкладки, компоненты на каждой из которых размещены в виде дерева:

Database (База данных) - содержит доступные пользователю теги Advantech Studio;

Graphics (Графика) - содержит готовые экраны и библиотеку объектов;

Tasks (Задачи) - позволяет создавать файлы тревог, трендов и др.;

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

Инструменты создания экрана - содержит инструментальные средства для конструирования внешнего облика экрана.

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

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

Среда имеет обширную библиотеку, объекты которой можно использовать при разработке приложения, также можно создавать свои объекты.

.2 Разработка приложения

Целью разработки приложения является создание комфортной среды для оператора подсистемы контроля стендового оборудования.

Для создания проекта выполняют команду меню File/New. В открывшемся окне на вкладке Project (рисунок 11) вводят имя создаваемого проекта. Платформу реализации проекта (Target platform) можно не выбирать (останется действующая по умолчанию WebOIT for WinCE). После нажатия Ok появится окно диалога Project Wizard (рисунок 12), в котором в списке Template выбирают Empty Application и задают разрешение (Resolution) экрана.

Рисунок 11 - Окно создания проекта

Рисунок 12 - Задание разрешения экрана

Далее реализуем экранные формы проекта (screen). Целесообразно построить главную форму проекта в стиле главного меню (рисунок 13). Главное меню содержит пункты, каждый из которых открывает экран, отражающий решение соответствующей функциональной задачи подсистемы. Новый экран создается с помощью контекстного меню, вызываемого щелчком правой клавишей мыши по папке Screens, находящейся на вкладке Graphics области Workspace, и выполнения команды Insert. Заполнив нужные позиции в окне диалога, нажимаем Ok. Затем размещаем на экранной форме необходимые элементы, выбрав их из инструментов среды.

Рисунок 13 - Главная форма приложения

Каждый из пунктов меню необходимо связать с соответствующей командой. Для этого выделяют инструмент Command и производят двойной щелчок по пункту меню, наделяя его тем самым одноимённым свойством (рисунок 14). Для пункта "Выход" в колонке Expression в окне его свойств прописываем команду ShutDown(), взятую из команд встроенного языка пакета, которая закрывает работающее приложение.

Рисунок 14 - Окно свойств пункта "ВЫХОД" главного меню

.2.1 Экран тестового сигнала

Аналогично созданию главной формы, создадим экран для представления тестового сигнала. По заданию он должен иметь изменяемую амплитуду и частоту. Поэтому на форме необходимо разместить два ползунка с возможностью изменения значений названных параметров сигнала, а также виртуальный измерительный прибор и тренд для более наглядного представления о характере изменения сигнала (рисунок 15).

Рисунок 15 - Экран тестового сигнала

Модель сигнала создаем на вкладке задач Tasks. После щелчка правой кнопкой мыши по папке Math выполняем команду Insert. В результате открывается лист для моделирования некоторого процесса (рисунок 16). В строке Description вводят его описание. В строке Execution - целое не равное нулю число. В нижней части листа описывают сам процесс, описывая необходимые теги. В описании сигнала участвуют теги A и F. Их объявляют, как показано на рисунке 17 (показан тег A, тег F создают аналогично).