Создание и использование макросов в системе программирования микропроцессорных контроллеров с открытой архитектурой "KLogic"
Макрос идеологически представляет собой законченный, отделяемый алгоритм, представленный в виде функционального блока, доступного для дальнейшего тиражирования. Применение макросов позволяет как расширить функционал существующих функциональных блоков, так и оптимизировать программы пользователя за счет выделения повторяющихся участков в подпрограммы.
Для работы с макросами перейдите на вкладку «Макросы»:
Пользовательские макросы добавляются в группу «Макросы проекта», в остальных группах располагаются предопределенные макросы, недоступные для редактирования. Контекстное меню дерева макросов выглядит следующим образом:
Для создания нового макроса выберите пункт контекстного меню «Создать макрос»:
Для макроса, как и любого другого объекта KLogic, можно задать имя и комментарий. Помимо этого на данной панели доступно редактирование внешних каналов макроса аналогично подобным операциям с каналами ФБ «Скрипт»:
Близким аналогом макроса в KLogic является задача пользователя без задания периода выполнения. Потому макрос может содержать в себе все объекты, которые могут быть в задаче пользователя: ФБ (кроме макросов), многострочный текст, тренды, группы ФБ и т.п.
В качестве примера опишем создание простого макроса, находящего решения квадратного уравнения. Сначала добавим три вещественных входа для коэффициентов квадратного уравнения и два вещественных выхода для его корней:
Сам алгоритм на ФБД выглядит следующим образом:
Первые два блока находят дискриминант квадратного уравнения. Третий блок находит корень из дискриминанта. Блоки 4 и 6, 5 и 7 находят первый и второй корень уравнения соответственно.
Внешние каналы макроса связываются с каналами ФБ с помощью их перетаскивания на поле ФБД, аналогично связыванию каналов главного дерева конфигурации. Допустимо внешний выход макроса связывать более чем с одним выходом его ФБ. В этом плане внешние выходы макроса ведут себя аналогично переменным главного дерева конфигурации.
После завершения разработки макроса можно запустить его отладку. В отличие от отладки конфигурации контроллера, перед запуском будет запрошен период выполнения макроса:
После ввода периода выполнения запустится штатный режим отладки:
Далее созданный макрос можно добавить в конфигурацию контроллера аналогично любому другому ФБ:
Как и обычные ФБ, макрос в конфигурации контроллера выглядит как «черный ящик», видны лишь его внешние каналы.
Учитывая, что конфигурации макросов не являются составной частью конфигураций контроллеров, необходимо серьезно относиться к редактированию макросов после их применения в задачах пользователя. К таким действиям редактирования относятся переименование и удаление макроса, редактирование его внешних каналов. KLogic автоматически отслеживает подобные операции и сохраняет целостность конфигураций контроллеров. Тем не менее, для синхронизации изменений в макросе необходимо подгрузить конфигурации всех контроллеров и произвести изменения в них, что может занять продолжительное время.
При удалении макроса все его экземпляры будут удалены из конфигураций контроллеров. При изменении состава внешних каналов макроса или их имен будут удалены связи с «отсутствующими» каналами экземпляров макроса.
Для каждого пользовательского макроса можно запросить статистику его использования через соответствующий пункт контекстного меню (см. рис. 2):
Инструкции и руководства
- Настройка и использование протокола Modbus в KLogic
- Настройка коннектора к облаку Microsoft Azure
- Настройка протокола GPRS в KLogic
- Общие правила настройки задачи МЭК и оперативных БД
- ПИД-А регулятор
- Реализация протокола в SoftLogic-системе "KLogic"
- Создание и использование макросов в системе программирования микропроцессорных контроллеров с открытой архитектурой "KLogic"