книги / Программирование задач автоматического управления объектами на различных алгоритмических языках
..pdfВ программном пакете InTouch принятый по каналу связи пакет данных снова распаковывается на отдельные параметры, в которых устройству ADAM уже назначается обобщенное уникальное имя Access name (конкретизируется для каждого устройства, например K1), а тегам каналов под общим именем Item назначаются уникальные имена (например, iBitIn_00 или iBitOut_02). Привязка имени тега к параметру прикладной программы InTouch осуществляется через общее имя Tagname этого параметра, которое также уникально для каждого параметра (например, Kay или Pribor).
5.3.1.Программирование работы модулей ADAM-4000
впакете Adam OPC Server
Для программирования работы модулей микроконтроллера серии ADAM-4000 в программном пакете Adam OPC Server предусмотрена система команд, в которых необходимо использовать адреса модулей. Эти адреса вводятся в память каждого из модулей в процессе их конфигурации, которая была произведена для каждого из модулей стенда. В результате этой конфигурации модули стенда получили адреса, представленные в табл. 5.2.
Таблица 5 . 2
Адреса модулей стенда
№ |
|
Наименование модуля |
Адрес |
п/п |
|
модуля |
|
|
|
||
1 |
ADAM-4050 |
– первый модуль цифрового ввода-вывода |
01 |
2 |
ADAM-4050 |
– второй модуль цифрового ввода-вывода |
02 |
3 |
ADAM-4021 |
– модуль аналогового вывода |
03 |
4 |
ADAM-4017 |
– модуль аналогового ввода |
04 |
5.3.1.1. Настройка ОПС-сервера
Настройки ОПС-сервера начинается с запуска программы Adam OPC Server, который производится двойным щелчком левой клавишей мыши по соответствующей пиктограмме на рабочем столе па-
кета Windows.
131
В результате этого раскрывается главное рабочее окно config ADAM OPC этой программы, показанное на рис. 5.4. В главное меню этогоокна включены команды «Файл», «Добавить», «Правка» ... и т.д.
Рис. 5.4. Вид главного окна config ADAM OPC
в программе Adam OPC Server
Командой «Добавить» раскрываем следующее подменю, где выбираем позицию «Устройство», активизация которого вызывает появление окна «Параметры устройства». В строке «Имя» этого окна автоматически появляется надпись Device1. Это зарезервированное имя модуля ADAM, для которого необходимо выбрать параметры. В блоке «Серия устройства» необходимо точкой с помощью курсора указать ADAM-4000. В строке «Порт» автоматически появится надпись СОМ1. Значение номера этого порта определяется настройкой этого модуля и назначается преподавателем.
В блоке «Адрес» этого окна также автоматически выставляется число 01. При нажатии кнопки «Найти» сервер находит устройство с адресом 01 (это модуль ADAM-4050), после чего в окне блока «Тип модуля» появится надпись ADAM-4050. Если этого не произойдет, то необходимонажатькнопку«Определить» (т.е. выбратьнужныймодульADAM из набора имеющихся в пакете), после чего нажать ОК. При выполнении последней операции исчезнет окно «Параметры устройства», а на левом полеокнаconfig ADAM OPC появитсясловоDevice1.
132
Аналогичное описание следующего устройства ADAM-4021 с адресом 02 приведет к добавлению на левом поле оставшегося окна config ADAM OPC слова Device2. Следующие две надписи Device3 и Device4 появятся в этом окне при аналогичном описании устройств ADAM-4021 с адресом 03 и ADAM-4017 с адресом 04.
После описания вышеуказанным способом всех устройств стенда необходимо курсор установить в левом поле окна config ADAM OPC на запись Device1 и через команду «Добавить» в его главном меню выбрать в раскрывшемся подменю позицию «Создать теги автоматически», после чего нажать кнопку ОК.
После выполнения этой операции соответствующие теги каналов (регистров) запишутся на правом поле окна config ADAM OPC в соответствии с табл. 5.3.
|
|
|
Таблица 5 . 3 |
Имя и адреса каналов (регистров) для модуля ADAM-4050 |
|||
|
|
|
|
Имя |
Тип |
Адрес |
Преобразование |
BitIn_00 |
Да/Нет |
BitIn_00 |
|
BitIn_01 |
Да/Нет |
BitIn_01 |
|
. . . |
. . . |
. . . |
|
BitIn_07 |
Да/Нет |
BitIn_07 |
|
BitOut_00 |
Да/Нет |
BitOut_00 |
|
BitOut_01 |
Да/Нет |
BitOut_01 |
|
. . . |
. . . |
. . . |
|
BitOut_07 |
Да/Нет |
BitOut_07 |
|
Примечание: BitIn_NN – тег ввода по соответствующему каналу (от
00 до 07) для модуля ADAM-4050.
BitOut_NN – тег вывода по соответствующему каналу (от 00 до 06) для этого же модуля.
Аналогичную процедуру нужно совершить для устройства
Device2.
После чего установкой курсора на запись Device3 и командами «Добавить» и «Создать теги автоматически» создается тег канала для устройства ADAM-4021, при этом в соответствующем поле окна config ADAM OPC для этого модуля тег запишется в соответствии с табл. 5.4.
133
|
|
|
Таблица 5 . 4 |
Имя и адреса каналов (регистров) для модуля ADAM-4021 |
|||
|
|
|
|
Имя |
Тип |
Адрес |
Преобразовано |
R_AO_00 |
Analog |
R_AO_00 |
|
Примечание: R_AO_00 – тег вывода аналогового сигнала от модуля
ADAM-4021.
Переместив курсор в поле окна config ADAM OPC на запись Device4 и выполнив аналогичную процедуру, автоматически совершим описание тегов для этого устройства. В результате этого в окне описания тегов config ADAM OPC для этого модуля теги запишутся в соответствии с табл. 5.5.
|
|
|
Таблица 5 . 5 |
Имя и адреса каналов (регистров) для модуля ADAM-4017 |
|||
|
|
|
|
Имя |
Тип |
Адрес |
Преобразовано |
R_AI_00 |
Analog |
R_AI_00 |
|
R_AI_01 |
Analog |
R_AI_01 |
|
. . . |
. . . |
. . . |
|
R_AI_07 |
Analog |
R_AI_07 |
|
. . . |
. . . |
. . . |
|
R_AO_07 |
Analog |
R_AO_07 |
|
Примечание: R_AI – тег ввода сигнала по соответствующему аналоговому каналу для модуля ADAM-4017.
После привязки каналов всех модулей ADAM к соответствующим тегам пакета Adam OPC Server необходимо в правом верхнем углу рабочего окна этого пакета соответствующей кнопкой СВЕРНУТЬ (но не ЗАКРЫТЬ) окно config ADAM OPC, так как эта программа должна работать параллельно сработойпрограммного пакета InTouch.
5.3.1.2.Настройка протокола связи в пакете ОПСLink
Впрограммном пакете InTouch протокол связи ОПСLink (программный пакет ОПСLink) содержит три адресных компонента: Application name, Topic name и Item name.
134
Application name – это имя программы (сервера), обслуживающей микропроцессорное устройство.
Topic name – это имя устройства, конвертирующего параметры сервера, обслуживающего микропроцессорное устройство. Для одного устройства может быть несколько topic-ов.
Item nme – это имя элемента в управляющей программе (например, реле, счетчик, прибор и т.д.).
Настройка пакета ОПСLink предусматривает последовательное раскрытие оконных меню, в которые заносится необходимая информация.
Для запуска в работу пакета ОПСLink необходимо на рабочем столе монитора найти и запустить файл OPCLink.exe через соответствующую пиктограмму. В результате этого на экране монитора появится сообщение: «Стоп», «Повтор», «Пропустить». Выбрав позицию «Пропустить», запускаем этот пакет в работу. В результате чего появится первое установочное окно, показанное на рис. 5.5.
Рис. 5.5. Вид рабочего окна программного пакета ОПСLink
В главном меню этого окна нужно выбрать позицию Confiqure, после раскрытия которой появится всплывающее меню. В этом меню нужно выбрать позицию Topic Definition. В результате этого выбора раскроется очередное окно Topic Definition (рис. 5.6), рабочее поле которого первоначально остается пустым. Для заполнения это-
135
го поля нужно нажать клавишу New, после чего произойдет выход в очередное окно OPCLink Topic Definition (рис. 5.7), предназначен-
ное для привязки параметров тегов пакета Adam OPC к параметрам программы OPCLink.
Рис. 5.6. Вид рабочего окна Topic Definition
Прежде всего в строке Topic name окна OPCLink Topic Definition (см. рис. 5.7) необходимо записать adam1 как имя устройства, конвертирующего параметры OPC Server. В строке OPC Server Name, раскрыв список серверов, мы выбираем пакет Fastwel Adamopc. Далее в строке OPC Path записываем Device1. и обяза-
тельно в конце ставим точку. Device1 – это имя переменной уст-
ройства для модуля ADAM-4050. Все остальные параметры этого окна установлены изначально и их менять не надо, поэтому нажимаем клавишу ОК, после чего обратно выходим в окно Topic Definition, где появляется надпись adam1.
Для записи следующего параметра в этом окне снова нажимаем клавишу New, в результате чего опять выходим в окно OPCLink Topic Definition, где в строке Topic name запишем adam2, а в строке OPC Path
запишем Device2. (это имя переменной устройства для второго модуля ADAM-4050). Снова нажимаем клавишу ОК для выхода в окно Topic Definition, где появляетсявтораянадпись adam2.
136
Рис. 5.7. Вид рабочего окна OPCLink Topic Definition
Подобный цикл операций повторяем еще 2 раза, записав в соответствующие окна adam3 и Device3. для модуля ADAM-4021
иadam4 и Device4. для модуля ADAM-4017.
5.3.1.3.Работа с системой команд в программном пакете
Adam OPC Server
Для работы с системой команд микроконтроллеров серии ADAM необходимо в окне config ADAM OPC нажать клавишу «Консоль», после чего раскроется окно «Режим консоли», в котором расположены окна следующих позиций: «Префикс», «Адрес», «Слот», «Канал», «Команда».
Префикс – это особый символ, определяющий признак команды. В адресе команды помещают уникальный адрес модуля ADAM. Окна «Слот» и «Канал» используют для модулей, объединенных через разветвленную сеть. В окне «Команда» записывают текст команды управления модулем.
137
Командное управление модулем цифрового ввода-вывода
ADAM-4050
Из множества команд управления модулем цифрового вводавывода ADAM-4050 для практической работы нам необходимы только две:
#AABB – команда управления выводом; $AA6 – команда управления вводом.
Управление выводом цифрового сигнала для модуля ADAM-4050
Управление выводом цифрового сигнала для модуля ADAM4050 выполняется по команде #AABB(data) (запись цифрового сигнала в канал связи), где # – символ-разделитель и признак команды; AA – двухсимвольный шестнадцатеричный адрес модуля (в нашем случае 02); BB – код установки (маски) состояния каналов вывода для модуля. Если ВВ = 00, то выводится байтовый сигнал, т.е. сигнал идет одновременно на восемь каналов вывода, для побитового вывода на каждый канал значение старшего разряда ВВ должно быть равно единице, а значение младшего разряда этого параметра равно номеру канала вывода (от 0 до 7); data – шестнадцатеричный код выходного цифрового сигнала, в зависимости от значения BB может быть однобитовым или однобайтовым.
Пример вывода однобайтовых сигналов: Если в окне «Команда» набрать следующую команду: #010005, то после нажатия на клавишу Enter из шести светодиодов только светодиоды D1 и D3 загорятся, имитируя следующее число: 000101. Для того чтобы зажечь остальные светодиоды, нужно в окне «Команда» набрать #01003F.
Управление вводом цифрового сигнала для модуля
ADAM-4050
Управление вводом цифрового сигнала для модуля ADAM-4050 выполняется по команде $AA6 (чтение цифрового сигнала из канала
138
связи), где $ – символ-разделитель и признак команды; AA – двухсимвольный шестнадцатеричный адрес модуля (в нашем случае 01 или 02); 6 – код команды. Чтение цифрового входа модуля.
При выполнении команды на дисплее в информационном поле окна COM1 появляется следующая информация: !(dataOutput) (dataInput)00, где ! – признак вывода правильной информации; (dataOutput) – двухсимвольная шестнадцатеричная величина значения прочитанного сигнала (на выходных каналах модуля вводавывода); (dataInput) – двухсимвольная шестнадцатеричная величина значения на входных каналах модуля ввода-вывода.
В случае ошибки при выполнении команды в строке «Ответ устройства» появляется следующая запись: ?AA.
Пример ввода цифрового сигнала: Если в окне «Команда» на-
брать следующую команду: $016, то после нажатия на клавишу Enter в строке «Ответ устройства» появится запись !010000 только в том случае, если не будет включен ни один из тумблеров (кнопки К1–К6) на панели стенда. Если после этого включить кнопки К1 и К3, то в строке «Ответ устройства» запись изменится следующим образом: !010101.
Управление выводом аналогового сигнала для модуля
ADAM-4021
Для практической работы с модулем ADAM-4021 необходима только команда #AA(data) – вывод аналогового сигнала, где # – символ-разделитель и признак команды; AA – двухсимвольный шестнадцатеричный адрес модуля (в нашем случае 03); data – значение аналогового сигнала.
Пример вывода аналогового сигнала: Если установить переклю-
чатель 2KL на панели блока управления и сигнализации в положение 7 и в окне «Команда» набрать следующую команду: #0305.200, то после нажатия на клавишу Enter вольтметр на панели стенда покажет напряжение 5,2 В. При изменении значимости аналогового сигнала произойдет изменение показаний вольтметра.
139
Управление вводом аналогового сигнала для модуля
ADAM-4017
Для практической работы с модулем ADAM-4017 используется команда типа #AAN, где # – символ-разделитель и признак команды; AA – двухсимвольный шестнадцатеричный адрес модуля ADAM-4017 (в нашем случае 04); N – номер канала для ввода данных (от 0 до 7).
При безошибочном выполнении команды в строке «Ответ устройства» появится десятичное число. При ошибочном выполнении команды такая информация в строке будет отсутствовать.
Пример ввода аналогового сигнала по каналу 5: Если установить переключатель 2KL в положение 5, а затем потенциометром R5 установить на вольтметре напряжение 5,2 В, после чего в окне «Команда» набрать команду #045 и нажать клавишу Enter, то в строке «Ответ устройства» появится запись +5.200. При смене полярности сигнала на потенциометре эта запись изменится на –5.200.
5.3.1.4.Программирование работы модулей ADAM-4050
впакете InTouch
При программировании прикладных программ в программном пакете InTouch для модулей ADAM-4050 возникает необходимость в привязке переменных этих программ к тегам OPC Server (в нашем случае к тегам ADAM OPC Server).
Для запуска пакета InTouch необходимо раскрыть на рабочем столе соответствующую пиктограмму с надписью InTouch.exe, после чего на экране монитора всплывет окно главного меню InTouchApplication Maneqer. В главном меню этого окна необходимо выбрать позицию File и после раскрытия нового всплывающего меню выбрать в нем позицию New. В результате этого раскроется окно Create New Application, в котором в соответствующей строке указана некоторая директория для размещения будущего проекта (программы). Для подтверждения выбора этой директории нужно нажать на клавишу «Далее». Для выбора другой директории, необхо-
140