Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Занятие_607_003.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
3.26 Mб
Скачать

Автопостроение каналов из табличного редактора аргументов. Автопривязка аргументов программы к атрибутам каналов

Откроем дополнительную панель Навигатора проекта, на верхней панели оставим слой шаблонов программ, на нижней - группу Каналы узла контроллера. Изменим имя группы с Каналы на REGUL. С помощью мыши перетащим шаблон программы PID из слоя шаблонов в группу REGUL узла EmbeddedRTM_1. Выделим ЛК созданный канал класса Вызов PID и с помощью ПК откроем окно его свойств:

В открывшемся бланке перейдем к закладке Аргументы. Для аргументов Сигнал_ОС и Управляющее_воздействие в столбце Флаги установим значения NP. При процедуре автопостроения каналов по аргументам шаблонов каналы для указанных аргументов созданы не будут, поскольку они уже были созданы на предыдущем занятии:

Для запуска процедуры автопостроения произведем щелчок ЛК по иконке , в результате будут созданы каналы в группе REGUL и их атрибуты будут связаны с аргументами программы PID:

и

Свяжем аргументы Сигнал_ОС и Управляющее_воздействие с атрибутами каналов вручную, используя ЛК в столбце Привязка данных аргументов:

и

Таким образом, аргументы канала класса Вызов PID после всех манипуляций будут следующими:

  • Для того, чтобы при привязке атрибутов каналов к аргументам шаблона не происходило переименование аргументов, необходимо в разделе Редактор аргументов Настроек ИС снять флажок с пункта Переименовывать аргументы при привязке.

Задание начальных значений каналов

С помощью процедуры группового редактирования группы компонентов REGUL узла контроллера зададим начальные значения:

На этом закончим работу с узлом контроллера EmbeddedRTM_1 и сосредоточимся на формировании базы каналов узла АРМ RTM_2.

Формирование базы каналов арм

С помощью дополнительно открытой панели Навигатора проекта перетащим из узла контроллера в узел АРМ группу компонентов REGUL. Переименуем вновь созданную в узле АРМ группу в REGUL_from_WinPAC, кроме того, удалим из этой группы компонент – канал класса CALL. Созданным канал зададим соответствующее имена. Результирующий состав группы каналов, получающих соответствующие данные от одноименных каналов узла контроллера.

Переименуем группу Каналы узла АРМ в Упр_WinPAC . Для того чтобы иметь возможность формировать значения параметров регулятора в контроллере от АРМ, создадим в группе Упр_WinPAC каналы типа Output:

Вызовем группу на редактирование и зададим каналам начальные значения:

С помощью дополнительной панели Навигатора проекта установим связи между каналами узлов, последовательно накладывая с помощью ЛК мыши источник на приемник данных:

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

Для автоматического формирования значений дискретных выходов модуля удаленного ввода/вывода I-7044 создадим специальную программу, последовательно устанавливающую в состояние «1» дискретные выходы (всего их восемь), а затем также последовательно сбрасывающую их в состояние «0». В слое шаблонов программ создадим компонент Программа#2, изменим ее имя на Discrete и зададим аргументы:

Для реализации программы нам потребуется две статических переменных, значения которых будут сохраняться в промежутках между вызовами программы – Е0 и Е1.

В качестве языка программирования выберем Техно-ST. Введем текст программы в следующем виде:

Примененная в тексте программы функция FUN() предназначенная для выделения целой части числа имеет один входной и один выходной аргумент типа REAL и оформляется как:

Непосредственно программа, реализующая функции разработана на языке Техно-FBD и содержит один функциональный блок из библиотеки арифметических операций:

Не забудем откомпилировать по клавише F7 функцию и саму программу Discret. Откроем окно переменных и запустив программу посмотрим ход ее выполнения:

Убедившись в правильности работы программы, остановим ее выполнение и закроем редактор шаблонов программ.