Главная  /  Программа «Smacont-ESP»  /  Выполнение по расписанию (CRON)

Выполнение по расписанию (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();».

ПРИМЕЧАНИЕ
• При включении устройства, действие выполняется автоматически (Autorun).
• При изменении параметров или при удалении действия, необходимо выполнить перезагрузку устройства.


Параметры CRON     Параметры CRON

Параметры CRON

«Номер CRON»

Выбор номера задачи CRON.

«Источник данных»

Выбор источника данных для параметров «Минуты», «Час», «День недели», «День», «Месяц».

В качестве источника данных могут быт как «Постоянные значения», так и «Переменные Vx» (которые могут изменяться в процессе выполнения сценариев).

«Минуты», «Час», «День недели», «День», «Месяц»

Параметры, определяющие событие выполнения задачи CRON.

Допустимые значения:
• «Минуты» - 0...59;
• «Час» - 0...23;
• «День недели» - ПН, ВТ, СР, ЧТ, ПТ, СБ, ВС;
• «День» - 0...31;
• «Месяц» - 1...12.

ПРИМЕЧАНИЯ
1. При выборе в качестве источника данных «Переменные Vx», проверка допустимых значений производится в процессе работы на устройстве, и, если значение параметра превышает верхнее значение, то параметр игнорируется.
2. Если не выбран ни один «День недели», то задача CRON не будет выполнена.
3. Для параметра «День недели», значение в скобках соответствует десятичному значению для текущей комбинаций дней недели. Данное значение можно использовать при задании параметра при помощи «Переменные Vx».

«Время АКТИВН.сост., сек.»

Определяет время (секунды) в течении которого, параметр «Событие» будет находиться в АКТИВНОМ состоянии (в состоянии логической единицы).

Существует три способа задания параметра.

1...255 - значение задается непосредственно в окне редактирования действия. Диапазон значений от 1 до 255 секунд.

Cx - значение задается при помощи заранее определенных констант (см. вкладку «CONST»).

Vx - значение задается при помощи переменных «Vx», которые могут изменяться в процессе выполнения сценариев.

ПРИМЕЧАНИЯ
1. Параметр не может быть равен нулю.
2. Только целые числа.

«Событие»

Параметр определяет переменную «Vx», значение которой будет изменяться при старте и при окончании отсчета АКТИВНОГО времени (определяется параметром «Время АКТИВН.сост., сек.»).

Для данного параметра формируются следующие события (подробнее о событиях):
• Rising - увеличение значения. Переход значения параметра «Событие» из 0 в 1. Характерно для начала отсчета АКТИВНОГО времени.
• Falling - уменьшение значения. Переход значения параметра «Событие» из 1 в 0. Характерно для окончания отсчета АКТИВНОГО времени.
• Change - изменение значения. Переход значения параметра «Событие» из 0 в 1 или из 1 в 0.
• UpDate - обновление значения. Переход значения параметра «Событие» из 0 в 1 или из 1 в 0.



Примеры

ini_CRON(CR0; m:*; h:*; D:*; M:*; W:ПН,ВТ,СР,ЧТ,ПТ,СБ,ВС; ActTime:00:00:10; Event:V10; );
Переменная «V10» будет устанавливаться в единицу (будет формироваться событие), на десять секунд, каждую минуту.

ini_CRON(CR0; m:11; h:*; D:*; M:*; W:ПН,ВТ,СР,ЧТ,ПТ,СБ,ВС; ActTime:00:01:00; Event:V10; );
Переменная «V10» будет устанавливаться в единицу (будет формироваться событие), на одну минуту, каждый час, в 11 минут.

ini_CRON(CR0; m:*; h:6; D:*; M:*; W:ПН,ВТ,СР,ЧТ,ПТ,СБ,ВС; ActTime:00:00:30; Event:V10; );
Переменная «V10» будет устанавливаться в единицу (будет формироваться событие), на 30 секунд, каждый день, в 6 часов 00 минут.

ini_CRON(CR0; m:30; h:6; D:*; M:*; W:ПН,ВТ,СР,ЧТ,ПТ,СБ,ВС; ActTime:00:00:30; Event:V10; );
Переменная «V10» будет устанавливаться в единицу (будет формироваться событие), на 30 секунд, каждый день, в 6 часов 30 минут.

ini_CRON(CR0; m:*; h:*; D:1; M:*; W:ПН,ВТ,СР,ЧТ,ПТ,СБ,ВС; ActTime:00:00:30; Event:V10; );
Переменная «V10» будет устанавливаться в единицу (будет формироваться событие), на 30 секунд, каждый месяц, первого числа, в 00 часов 00 минут.



Программы

Прошивка «Smacont-ESP»:
скачать

«Программа Настройки»:
запусить (только браузер Firefox)
скачать zip-архив

Телеграм канал

Новости

Энергонезависимая память (EEPROM)

Переменные «Vx» (карта переменных «Vx»)

WEB-интерфейс

Действие «wifi_CheckConn()». После подключения к WiFi-сети, выполнить действие с задержкой

Обмен данными. Open Monitoring

Датчики температуры и влажности AHT10/AHT15/AHT20/AHT21/AHT25

Датчик температуры и влажности SHT30 (SHT31/SHT35)

Действие «valueToVx()», «valueToArrVx()». Отслеживание заданного уровня в диапазоне значений

Действие «termostat()». Термостат

ESP-NOW. Датчик температуры и влажности с питанием от батареек

Последовательные интерфейсы (UART, I2C, SPI)

Управление одноканальным модулем реле

Протокол MQTT

Обмен данными. NarodMon

Обмен данными. ioControl



Программы для модулей ESP     Программы     Применения     Справочник         Контакты     SMACONT. Напишите нам smacont@ya.ru