Выполнение по расписанию (CRON) |
Содержание
Общие данные
Общие данныеCRON — это хронологический демон-планировщик задач, работающий в операционных системах типа Unix, включая дистрибутивы Linux. CRON запускается в фоновом режиме, а задачи, запланированные в CRON и именуемые «задачи CRON», выполняются автоматически, что делает CRON полезным для автоматизации связанных с обслуживанием задач. В прошивке «Smacont-ESP» используется упрощенная работа CRON, например, нет возможности задать в одной задаче CRON выполнение каждые 2 минуты или каждые 15 минут. Для этого рекомендуется применять таймеры «TIMER». В программе «Smacont-ESP» предусмотрено использование до 24-х задач CRON. Отличительной особенностью реализации задач CRON в прошивке «Smacont-ESP», является то, что при подаче питания на устройство или перезагрузке устройства, если время выполнения задачи CRON было до момента страта устройства, то будет сгенерировано соответствующее событие. ПараметрыДля настройки параметров CRON используется действие «cron_SetParam();».
ПРИМЕЧАНИЕ
Параметры CRON «Номер CRON»Выбор номера задачи CRON. «Источник данных»Выбор источника данных для параметров «Минуты», «Час», «День недели», «День», «Месяц». В качестве источника данных могут быт как «Постоянные значения», так и «Переменные Vx» (которые могут изменяться в процессе выполнения сценариев). «Минуты», «Час», «День недели», «День», «Месяц»Параметры, определяющие событие выполнения задачи CRON.
Допустимые значения:
ПРИМЕЧАНИЯ
«Время АКТИВН.сост., сек.»Определяет время (секунды) в течении которого, параметр «Событие» будет находиться в АКТИВНОМ состоянии (в состоянии логической единицы). Существует три способа задания параметра. 1...255 - значение задается непосредственно в окне редактирования действия. Диапазон значений от 1 до 255 секунд. Cx - значение задается при помощи заранее определенных констант (см. вкладку «CONST»). Vx - значение задается при помощи переменных «Vx», которые могут изменяться в процессе выполнения сценариев.
ПРИМЕЧАНИЯ
«Событие»Параметр определяет переменную «Vx», значение которой будет изменяться при старте и при окончании отсчета АКТИВНОГО времени (определяется параметром «Время АКТИВН.сост., сек.»).
Для данного параметра формируются следующие события (подробнее о событиях):
Примеры
ini_CRON(CR0; m:*; h:*; D:*; M:*; W:ПН,ВТ,СР,ЧТ,ПТ,СБ,ВС; ActTime:00:00:10; Event:V10; );
ini_CRON(CR0; m:11; h:*; D:*; M:*; W:ПН,ВТ,СР,ЧТ,ПТ,СБ,ВС; ActTime:00:01:00; Event:V10; );
ini_CRON(CR0; m:*; h:6; D:*; M:*; W:ПН,ВТ,СР,ЧТ,ПТ,СБ,ВС; ActTime:00:00:30; Event:V10; );
ini_CRON(CR0; m:30; h:6; D:*; M:*; W:ПН,ВТ,СР,ЧТ,ПТ,СБ,ВС; ActTime:00:00:30; Event:V10; );
ini_CRON(CR0; m:*; h:*; D:1; M:*; W:ПН,ВТ,СР,ЧТ,ПТ,СБ,ВС; ActTime:00:00:30; Event:V10; );
|
Программы
Прошивка «Smacont-ESP»:
«Программа Настройки»:
Телеграм каналНовостиЭнергонезависимая память (EEPROM) Переменные «Vx» (карта переменных «Vx») Действие «wifi_CheckConn()». После подключения к WiFi-сети, выполнить действие с задержкой Обмен данными. Open Monitoring Датчики температуры и влажности AHT10/AHT15/AHT20/AHT21/AHT25 Датчик температуры и влажности SHT30 (SHT31/SHT35) Действие «valueToVx()», «valueToArrVx()». Отслеживание заданного уровня в диапазоне значений Действие «termostat()». Термостат ESP-NOW. Датчик температуры и влажности с питанием от батареек Последовательные интерфейсы (UART, I2C, SPI) Управление одноканальным модулем реле |