Вход

Просмотр полной версии : СП3хх Макросы таймера с задержкой включения и таймера с задержкой отключения



Pavel R
20.05.2026, 17:46
В своих проектах неоднократно сталкивался с проблемой, когда непосредственно в панели СП-3хх необходимо было создать задержку по времени включения или отключения по событию. Так как в панели нет готовых функций таймеров с задержкой включения или отключения, пришлось создать макросы. Хочу поделиться ими. Если что то кому то не понравится или будут другие варианты данных макросов, с удовольствием выслушаю критику. Если это кому то пригодится, буду рад.

Валенок
20.05.2026, 18:13
Если это макросы на си, может прям сюда текстом?
Текст можно прям в телефоне посмотреть.

kondor3000
20.05.2026, 19:34
Стараюсь всё делать без макросов, чтобы работало в эмуляции, ниже 3 примера, от простого таймера (задача секунд) и таймера с задачей реального времени (час, мин, сек),
до вывода в таблице (и без) с фиксацией даты и времени начала и конца отсчёта от Petera

petera
21.05.2026, 11:54
В своих проектах неоднократно сталкивался с проблемой, когда непосредственно в панели СП-3хх необходимо было создать задержку по времени включения или отключения по событию. Так как в панели нет готовых функций таймеров с задержкой включения или отключения, пришлось создать макросы. Хочу поделиться ими. Если что то кому то не понравится или будут другие варианты данных макросов, с удовольствием выслушаю критику. Если это кому то пригодится, буду рад.
Критика...
Наверно эти примеры нужно рассматривать как тренировку в написании макросов Си.
Утверждение "Макрос не воспринимает значения ячеек PFW" неверное
89292
Оно происходит из-за не знания предмета
89293
Для для чтения уставки сразу из регистра PFW256 нужно использовать функции Read(),
Достаточно заменить строчку
TimerCounter = PSW[256];
на
Read(HMI_LOCAL_MCH, 0, TYPE_PFW, 256, 0, TYPE_WORD, &TimerCounter);
89294

в панели нет готовых функций таймеров с задержкой включения или отключения?
Это как посмотреть...
Несколько ф. областей + ГМ сравнения решают эту проблему

А в расширенном режиме и того проще делается.

petera
21.05.2026, 13:34
Делаем таймер с задержкой включения - TON. Дискретность выдержек времени - 0,1 секунды.
89297
Собственно сам таймер - выделенный красным прямоугольником графический макрос, все остальное для демонстрации работы этого ГМ и для пояснения используемых в нем регистров.
Настройки ГМ как обычно- в окне свойств дважды щелкнуть мышкой, далее стандартное окно выбора регистра
89298

https://owen.ru/forum/attachment.php?attachmentid=89296&d=1779358555