Правила, алгоритмы управления
Платформа поддерживает несколько типов Правил:
- Правило, которое работает в рамках параметров Типовой конфигурации. Такие Правила могут быть отправлены на исполнение на EDGE.
- Расписания - вырожденный вариант Правл, который изменяем значение параметра по временному графику. Расписание задается тоже для параметров Типовой конфигурации и может испольняться как на EDGE, так и на сервер.
- Глобальные правила - правила,, которые могут описывать алгоритмы изменения значений вне зависимости от их принадлежности к Типовой конфигурации. Такие правила могут выполняться только на сервере.
Правила, цепочки правил
Любое правило содержит «Триггер», в виде логического условия, при удовлетворении которого должна выполнятся цепочка Действий.
Каждое Действие содержит:
- действие над параметром, установку значения;
- условие перехода на следующее действие;
- задержку в секундах перед тем как перейти на следующее действие.
Действия, которые связаны с Триггером правила помечается признаком root. Их выполнение начинается параллельнно.
Условие перехода - это последовательный шаг на следующее действие при его значении true. Переходное условие может быть не задано, либо его значение false, тогда цепочка правил заканчивается на таком действии.
Атрибуты правил
«Описание» – заголовок для группы следующих атрибутов правила:
- «ПРАВИЛО» – название правила (произвольный текст);
- «КОММЕНТАРИЙ» – текст комментария;
- «МЕСТОПОЛОЖЕНИЕ» – переключатель, обязательно принимающий одно из значений: «КОНТРОЛЛЕР» или «СЕРВЕР»;
- «ИНТЕРВАЛ ВРЕМЕНИ (МИН)» – допустимое время задержки выполнения правила (в минутах), главное условие правила должно быть true на всем интервале времени;
- «БЛОКИРОВКА» – флажок, при установке которого блокируется выполнение правила;
- «ТИПОВАЯ КОНФИГУРАЦИЯ» – название ТК, с которой связано правило;
- «СОБЫТИЕ» – название события, связанного с данным правилом;
«Триггер» – главное условие правила:
- «Триггер» – логическое выражение для определения применимости правила;
- «ИЗМ. ПАРАМЕТРЫ» – значение измеряемого параметра, выбираемое из списка существующих измеряемых параметров платформы;
- «Add Параметр» – кнопка для добавления выбранного измеряемого параметра в логическое выражение условия "<", ">", "<=", ">=", "==", "&&", "||", "(", ")", "%", "**", "!" – кнопки, при нажатии на которые соответствующие операнды подставляются в формулу, отображаемую в поле «УСЛОВИЕ».
Измеряемые параметры в формуле логического выражения записываются в формате:
C<ID параметра> или D<ID параметра>,
где:
D\<IdP> – идентификатор параметра типовой конфигурации;
C\<IdC> – идентификатор вычисляемого параметра.
«Действие» – задание для параметров нового занчения. Новое значение может быть числом, либо значением другого параметра, либо значением выражения.
«Условие действия» - условие перехода к следующему действию. Алгоритм задания условия аналогичны главному условию. Задержка задается в СЕКУНДАХ. Задержка выполняет роль паузы , после выполнения действия.
Т.е. общий порядок следующий:
- Вход в Главное условие (с учетом задержки условия)
- Переход на root Действия.
- После выполнения Действия, выполняется ЗАДЕРЖКА
- Проверка условия перехода на следующее действие.
- Далее от п.3.
Пример последовательной цепочки правил | Пример параллельного выполения двух действий |
---|---|
![]() | ![]() |
Расписание
Для типовой конфигурации можно задать несколько расписаний. Когда контроллеру назначается типовая конфигурация, все настройки пересылаются на контроллер, за исключением расписания. Расписание для контроллера назначается отдельно, но из списка расписаний типовой конфигурации.
Это удобно, по крайней мере, по двум причинам:
- Расписание меняется намного чаще, чем конфигурация контроллера;
- Одна и та же модель контроллера может иметь разные требования к управлению.
Само расписание должно быть заранее определено в отдельном справочнике Шаблон расписания
.
Шаблон расписания
Шаблоны применяются в платформе для описания режимов работы параметров. Шаблоны создаются без конкретной привязки к параметру и в дальнейшем, при формировании типовой конфигурации, к параметру назначается шаблон.
Шаблон позволяет задать режимы включения/выключения параметра по различным условиям:
- по местному времени;
- относительно графика работы объекта;
- по астрономическому времени;
- по дню недели;
- по конкретному числу в году.
Если заданы все три типа, то общий график расписания строится с учетом ОБЪЕДИНЕНИЯ/ПЕРЕСЕЧЕНИЯ шаблона.
Примечание
Важно! Алгоритм пересечения работает только между режимами, но не внутри режимов.