Есть ли макросы в проектах панелей PH?
Да, в HMI Studio 2 макросы вынесены в отдельный раздел среды. Они делятся на общие макросы и вложенные, а доступ к их редактированию можно закрыть паролем макроса — чтобы чужой человек не переписал логику в готовом проекте.
Где макросы запускаются:
- при инициализации проекта — макрос указывается в глобальных настройках полем Initial Macro;
- из окна — у каждого окна есть действия и функции, привязанные к его открытию и закрытию, а также собственный таймер;
- по событию на экране — от нажатия компонента.
Прежде чем писать макрос, посмотрите, не решается ли задача настройкой. В среде уже есть готовые механизмы, которые часто заменяют код:
- передача данных по таймеру в свойствах окна — периодическое копирование значений между адресами без единой строки макроса;
- планировщик задач в системных настройках — действия по расписанию;
- выборка данных — периодический сбор значений в архив;
- управление ПЛК — операции, которые панель выполняет по команде контроллера.
Практическое правило то же, что и для панелей PH1: макрос, работающий по таймеру и лезущий в регистры контроллера на каждом цикле, замедляет и обмен, и отрисовку экрана. Если расчёт можно сделать по внутренним адресам или вообще перенести в ПЛК — перенесите.
Разбор типового макроса с примером есть в приложении с типовыми конфигурациями руководства — там же лежат примеры настройки уровней доступа и привилегий пользователя.
Прикреплённая документация
Георгий Жуков
Ведущий инженер