Логические выражения (обновлено: 15 Dec 2021, 10:16:43)

Логические выражения позволяют использовать логику и математику внутри текста опций:  Конструктор строк, TCP/UDP Клиент, Текстовые шаблоны, Конструктор main page, Конструктор main page 2, Interpreter (функции вывода), SD логгер и любые другие, использующие шаблоны.

Поддерживается работа с числами только с одним знаком после запятой !


Математические выражения

Текст в скобках [..] заменяется на результат математического действия.

Текст вида [6+4] заменяется на 10. Вместо чисел может быть любая метрика датчика.

Поддерживается умножение, деление, сложение и вычитание, Допускается вложенная математика, например [[_DSW1_+_DSW2_]/2] - выдаст среднее значение двух датчиков.

В начале открытой скобки восклицательный знак означает, что произойдет математическое округление , например [!22.5] вернет 23. [!_DSW1_] выведет без дробной части.

Логические выражения

Текст в скобках {условие?"правда":"ложь"} в определенном формате заменяется на одно из двух значений в зависимости от результата условия.

Доступные виды условий: ==, >, >=, <, <=,&

Текст вида {5>1?"правда":"ложь"} заменяется в данном случае на правда. Вместо чисел могут использоваться метрики датчиков, GPIO или математические выражения.

В условии могут быть и текстовые значения, они должны быть заключены в кавычки, например отображение погоды на завтра у gismeteo только если она есть:  {"_GYT_"=="-"?"Погоды на завтра пока нет":"Завтра _GYT_°C"}

Подробнее про побитовое "И" (знак &): Это стандартная логика в языках программирования. Оставляет биты включенные в обеих числах, если на выходе значение не равно нулю, то условие выполняется. Опция актуальна например для чтения битовых параметров в опции Modbus.

Пример: 130&128 - ответ 128, 2&64 - ответ 0.

Доступные метрики:

Внимание ! Имена некоторых метрик поменялись с 6.02.21 !! Новые имена можно посмотреть на вкладке Metrics на самом модуле. 

%%%%esp8266_macros%%%%