Конструктор строк (Designer lines)
Описание опции
Конструктор строк — это специальный инструмент, который позволяет создавать шаблоны строк, которые будут выводиться на дисплей. Шаблоны строк могут включать в себя:
- обычный текст
- метрики (при выводе строки подставляются соответствующие значения)
- логические и математические выражения
Для использования логических и математических выражений должна быть подключена опция «Логические выражения».
Конструктор строк находится в соответствующем пункте меню Designer_lines:
На странице конструктора строк можно задать текст для каждой из доступных строк. В этом примере доступно 4 строки. Конструктор подсказывает длину шаблона и длину выводимого текста. Ниже области ввода текста отображается сам текст в том виде как он будет выводиться на дисплей.
Количество строк по умолчанию (4) можно изменить в «Конструкторе прошивок». Доступные значения от 1 до 10 (при большем количестве могут возникнуть проблемы со свободной памятью).
Пример формирования строки
Ниже представлен пример формирования строки №3 с текущей датой и днём недели и выводом температуры в доме:
Максимальная длина строки может составлять 99 байт (русские буквы занимают 2 байта). названия доступных метрик (наименований данных) можно посмотреть в разделе "Метрики" ниже, а также на вкладке "Metrics" в веб-интерфейсе устройства.
Логические выражения
!!! Для работы выражений должна быть активна опция "Логические выражения" в конструкторе.
Выражения позволяют использовать логику и математику внутри текста опций: Конструктор строк, TCP/UDP Клиент, Текстовые шаблоны, Конструктор main page, Конструктор main page 2, Interpreter (функции вывода), SD логгер и любые другие, использующие шаблоны.
Поддерживается работа с числами только с одним знаком после запятой!
Математические выражения
Текст в скобках [..]
заменяется на результат математического действия.
Например, [6+4]
заменяется на 10. Вместо чисел может быть любая метрика датчика.
Поддерживаются операции умножения, деления, сложения и вычитания.
Допускается вложенная математика.
Например [[_DSW1_+_DSW2_]/2]
- выдаст среднее значение двух датчиков.
Округление до целых: поставьте в начале открытой скобки восклицательный знак
[!_DSW1_]
- выведет без дробной части
[!22.5]
- вернет 23.
Подробнее см. примеры.
Логические выражения
Текст в скобках {условие?"правда":"ложь"}
в определенном формате заменяется на одно из двух значений в зависимости от результата условия.
Доступные виды условий: ==, >, >=, <, <=, &
Например, текст вида {5>1?"правда":"ложь"}
заменяется в данном случае на правда
.
Вместо чисел могут использоваться метрики датчиков, GPIO или математические выражения.
Текстовые значения должны быть заключены в кавычки.
Подробнее про побитовое "И" (знак &): Это стандартная логика в языках программирования. Оставляет биты включенные в обеих числах, если на выходе значение не равно нулю, то условие выполняется. Актуально, например, для чтения битовых параметров в опции ModBus.
Пример: 130&128
- ответ 128, 2&64
- ответ 0.
Примеры
Пример 1 - Вывод (округление до) одного знака после запятой
Источник данных: значение метрики с двумя знаками после запятой.
Метрика: _DSW1_
- вывод температуры с первого датчика DS18B20.
Пример 2 - Расчёт среднего значения
Метрика 1: _DSW1_
- вывод температуры с первого датчика DS18B20.
Метрика 2: _DSW2_
- вывод температуры со второго датчика DS18B20.
Пример 3 - Фильтрация ошибочного значения
По-умолчанию когда нет данных от LoRa, вместо значения датчика появляется надпись ERR4
В примере показано, как отфильтровать эту надпись и заменить её на пустое место.
Метрика: _LORS0103_
- первый датчик LoRa, третье значение по шаблону
[!_LORS0103_]
, а также добавляются единицы измерения °C
Пример 4 - Отображение погоды
Отображение температуры на завтра c gismeteo.ru только если данные есть на сайте
Метрики
Метрики могут использоваться для вывода данных от датчиков и других доступных переменных в конструкторе строк.
Для вывода используется шаблон _МЕТРИКА_
или _МЕТРИКАxy_
- имя метрики печатается большими буквами со знаками подчёркивания
- если метрик одного типа много, то вместо
x
,y
подставляются конкретные числовые значения
Примеры метрик:
_DSW1_
- датчик температуры_LORS0103_
- метрика под номером 3, принятая от первого LoRa датчика
Примечание. Имена некоторых метрик могут меняться в новых версия прошивок. Точные имена можно посмотреть на вкладке Metrics в веб-интерфейсе устройства. Вкладку Metrics удобно использовать в качестве краткой справки по метрикам конкретного устройства.
Список доступных метрик
Метрика | Описание |
---|---|
_IP_ |
IP адрес устройства |
_MEM_ |
Свободное ОЗУ |
_UPTIME_ / _UPTIMES_ |
Время работы |
_RSSI_ |
Уровень сигнала (нет на старых SDK) |
_TIME_ |
Время |
_TIMES_ |
Время с секундами |
_WEEK_ |
День недели |
_RADIO_ |
Имя текущей интернет станции |
_APDSC_ |
APDS9960 Освещенность |
_APDSR_ |
APDS9960 Освещенность красный |
_APDSG_ |
APDS9960 Освещенность зеленый |
_APDSB_ |
APDS9960 Освещенность синий |
_TSSETx_ |
Установка термостата |
_TSONx_ |
Состояние термостата вкл/выкл |
_CCSCO2_ |
CO2 датчика CCS811 |
_CCSTVOC_ |
TVOC датчика CCS811 |
_LORSxy_ |
Метрики LORA |
_RTD_ |
MAX31865 Температура |
_HDCT_ |
Температура датчика HDC1080 |
_HDCH_ |
Влажность датчика HDC1080 |
_PMS10_ |
PM1.0 |
_PMS25_ |
PM2.5 |
_PMS100_ |
PM1.00 |
_VL53L0X_ |
Расстояние VL53L0X |
_MByyxx_ |
ModBus метрики |
_OWT_ |
Температура воздуха OpenWeatherMap |
_OWH_ |
Влажность воздуха OpenWeatherMap |
_OWP_ |
Давление воздуха OpenWeatherMap |
_OWWIND_ |
Скорость ветра OpenWeatherMap |
_OWD_ |
Описание погоды OpenWeatherMap |
_OWC_ |
Облачность OpenWeatherMap |
_OWF_ |
Температура по ощущениям OpenWeatherMap |
_OWR3_ |
Количество осадков 3 часа OpenWeatherMap |
_OWR1_ |
Количество осадков 1 часа OpenWeatherMap |
_OWV_ |
Видимость OpenWeatherMap |
_SUNDW_ |
Восход солнца OpenWeatherMap |
_SUNUP_ |
Заход солнца OpenWeatherMap |
_SUNDAY_ |
Продолжительность дня OpenWeatherMap |
_AS5600_ |
Угол AS5600 |
_GPSLAT_ |
Широта GPS приемник |
_GPSLON_ |
Долгота GPS приемник |
_GPSH_ |
Высота GPS приемник |
_GPSS_ |
Скорость GPS приемник |
_GPSC_ |
Курс GPS приемник |
_GPSN_ |
Количество спутиков GPS приемник |
_BTxR_ |
BT HUB RSSI |
_BTxT_ |
BT HUB Температура |
_BTxL_ |
BT HUB Освещенность |
_BTxF_ |
BT HUB Плодородие |
_BTxM_ |
BT HUB Влажность(почвы) |
_BTxH_ |
BT HUB Влажность |
_BTxB_ |
BT HUB Заряд батареи |
_GTR_ |
Осадки gismeteo.ru |
_GTC_ |
Облачность gismeteo.ru |
_GTWIND_ |
Ветер gismeteo.ru |
_SHTC3T_ |
Температура SHTC3 |
_SHTC3H_ |
Влажность SHTC3 |
_D2Dxxyy_ |
Данные с Device to Device(D2D) |
_CSEV_ |
Напряжение на CSE7766 |
_CSEC_ |
Ток на CSE7766 |
_CSEE_ |
Потребление суммарно CSE7766 |
_CSEAP_ |
Apparent Power CSE7766 |
_CSEA_ |
Active Power CSE7766 |
_CSPF_ |
Power Factor CSE7766 |
_ADC_ |
Внутренний АЦП (ESP8266) |
_IADCx_ |
Внутренние АЦП (ESP32) |
_LM_ |
Температура с датчика LM75 или DS1621 |
_INAV_ |
Напряжение с датчика INA219 |
_INAC_ |
Ток с датчика INA219 |
_DHTTx_ |
Температура датчиков DHT22 DHT11 |
_DHTHx_ |
Влажность датчиков DHT22 DHT11 |
_BMPT_ |
Температура датчиков BMP180/085 |
_BMPP_ |
Давление датчиков BMP180/085 |
_CNTxI_ |
Данные с счетчика 60 |
_BH_ |
Освещенность с датчика BH1750 |
_AMT_ |
Температура с датчика AM2321 |
_AMH_ |
Влажность с датчика AM2321 |
_DSWx_ |
Температура датчиков DS18B20 |
_BMET_ |
Температура с датчика BME280 |
_BMEH_ |
Влажность с датчика BME280 |
_BMEP_ |
Давление с датчика BME280 |
_SHTT_ |
Температура с датчика SHT21 |
_SHTH_ |
Влажность с датчика SHT21 |
_SHT30T_ |
Температура с датчика SHT30 |
_SHT30H_ |
Влажность с датчика SHT30 |
_HEAT_ |
Температура с термопары MAX6675 |
_CVV_ |
Напряжение с устройства CC/CV |
_CVC_ |
Ток с устройства CC/CV |
_PMV_ |
Напряжение с устройства Power Monitor |
_PMC_ |
Ток с устройства Power Monitor |
_PMW_ |
Мощность с устройства Power Monitor |
_PMWH_ |
Расход с устройства Power Monitor |
_RFID_ |
Данные с RFID |
_SHT10T_ |
Температура SHT1x |
_SHT10H_ |
Влажность SHT1x |
_CO2_ |
Датчики CO2 MH-Z1x |
_PING_ |
ping тест статус |
_VSyx_ |
Данные с датчиков Virtual SENS |
_GTT_ |
Температура с gismeteo.ru на сегодня |
_GTH_ |
Влажность с gismeteo.ru на сегодня |
_GYT_ |
Температура с gismeteo.ru на завтра |
_GYH_ |
Влажность с gismeteo.ru на завтра |
_GTP_ |
Давление с gismeteo.ru на сегодня |
_GYP_ |
Давление с gismeteo.ru на завтра |
_GTWIND_ |
Скорость и направление ветра gismeteo.ru сегодня |
_GYWIND_ |
Скорость и направление ветра gismeteo.ru завтра |
_NMx_ |
Принятые данные с датчиков narodmon.ru |
_ADCx_ |
Данные с АЦП PCF8591 |
_RTCT_ |
Температура DS3231 |
_NRFxCy_ |
Счетчик с модулей NRF24 |
_NRFxTy_ |
Температура с модулей NRF24 |
_NRFxHy_ |
Влажность с модулей NRF24 |
_NRFxAy_ |
АПЦ с модулей NRF24 |
_NRFxGy_ |
Состояние GPIO с модулей NRF24 |
_NRFxBy_ |
Другие данные с модулей NRF24 |
_RSSIGSM_ |
RSSI GSM |
_PCFCx_ |
Счетчик импульсов PCF8583 |
_PCFCTx_ |
Счетчик импульсов PCF8583 на сегодня |
_PCFCYx_ |
Счетчик импульсов PCF8583 на вчера |
_RSx_ |
Температура с модулей RC датчик |
_RSx_ |
Влажность с модулей RC датчик |
_RSx_ |
АЦП с модулей RC датчик |
_CNTx_ |
Счетчики импульсов. |
_INTx_ |
Событие прерывания |
_PWMx_ |
Состояние ШИМ |
_GPIOx_ |
Состояние GPIO входа |
_DATE_ |
Дата. Требуется поддержка календаря |
_VALDESx_ |
Глобальные переменные конструктора кода |
_SCALE_ |
Весы HX711 |
_MCPA_ |
Данные с АЦП MCP3201 |
_ADSx_ |
Данные с АЦП ADS1115 |
_VZCO2_ |
Датчик VZ-89T CO2 |
_VZTV_ |
Датчик VZ-89T tvoc |
_NLxT_ |
Температура с датчиков NooLite |
_NLxH_ |
Влажность с датчиков NooLite |
_HCSR_ |
HC-SR04 |
_TSL_ |
Данные с TSL2561 |
_MCMSG_ |
Количество сообщений в электронном ящике |
_MCUNS_ |
Количество непрочитанных сообщений в электронном ящике |
_UPSI_ |
Данные с UPS Монитора. Напряжение на входе. |
_UPSF_ |
Данные с UPS Монитора. Напряжение на входе. |
_UPSO_ |
Данные с UPS Монитора. Напряжение на выходе. |
_UPSH_ |
Данные с UPS Монитора. Частота сети |
_UPST_ |
Данные с UPS Монитора. Температура в корпусе |
_UPSB_ |
Данные с UPS Монитора. Напряжение батареи. |
_UPSS_ |
Данные с UPS Монитора. Нагрузка |
_MLXO_ |
Температура объекта MLX90614 |
_MLXA_ |
Температура окружающая MLX90614 |
_VALx_ |
Переменные Interpreter |
_VWTxy_ |
Температура с VirtualWire |
_VWHxy_ |
Влажность с VirtualWire |
_VWCxy_ |
Счетчики с VirtualWire |
_VWAxy_ |
АЦП с VirtualWire |
_VWBxy_ |
Один байт с VirtualWire |
_HLWW_ |
HLW8012 (Sonoff POW) Мощность |
_HLWV_ |
HLW8012 (Sonoff POW) Напряжение |
_HLWC_ |
HLW8012 (Sonoff POW) Ток |
_HLWWH_ |
HLW8012 (Sonoff POW) Ватт/ч |
Связанные темы
Настройка опций
ModBus
LoRa
MCP23008
Где купить
Купить оборудование Lavritech можно в официальном интернет-магазине.