mirror of
https://github.com/IoTManagerProject/IoTManager.git
synced 2026-03-30 20:09:14 +03:00
105.5%
This commit is contained in:
@@ -114,8 +114,7 @@ extern AsyncEventSource events;
|
|||||||
|
|
||||||
extern int sensors_reading_map[15];
|
extern int sensors_reading_map[15];
|
||||||
|
|
||||||
enum
|
enum {
|
||||||
{
|
|
||||||
ROUTER_SEARCHING,
|
ROUTER_SEARCHING,
|
||||||
WIFI_MQTT_CONNECTION_CHECK,
|
WIFI_MQTT_CONNECTION_CHECK,
|
||||||
SENSORS,
|
SENSORS,
|
||||||
@@ -154,7 +153,7 @@ extern int udp_period;
|
|||||||
|
|
||||||
#ifdef level_enable
|
#ifdef level_enable
|
||||||
#include "GyverFilters.h"
|
#include "GyverFilters.h"
|
||||||
GMedian<10, int> medianFilter;
|
extern GMedian<10, int> medianFilter;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include <DallasTemperature.h>
|
#include <DallasTemperature.h>
|
||||||
@@ -163,23 +162,23 @@ extern OneWire *oneWire;
|
|||||||
extern DallasTemperature sensors;
|
extern DallasTemperature sensors;
|
||||||
|
|
||||||
#include <DHTesp.h>
|
#include <DHTesp.h>
|
||||||
DHTesp dht;
|
extern DHTesp dht;
|
||||||
|
|
||||||
#include <Wire.h>
|
#include <Wire.h>
|
||||||
|
|
||||||
#ifdef bmp_enable
|
#ifdef bmp_enable
|
||||||
#include <Adafruit_BMP280.h>
|
#include <Adafruit_BMP280.h>
|
||||||
Adafruit_BMP280 bmp; // use I2C interface
|
extern Adafruit_BMP280 bmp;
|
||||||
Adafruit_Sensor *bmp_temp = bmp.getTemperatureSensor();
|
extern Adafruit_Sensor *bmp_temp;
|
||||||
Adafruit_Sensor *bmp_pressure = bmp.getPressureSensor();
|
extern Adafruit_Sensor *bmp_pressure;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef bme_enable
|
#ifdef bme_enable
|
||||||
#include <Adafruit_BME280.h>
|
#include <Adafruit_BME280.h>
|
||||||
Adafruit_BME280 bme; // use I2C interface
|
extern Adafruit_BME280 bme;
|
||||||
Adafruit_Sensor *bme_temp = bme.getTemperatureSensor();
|
extern Adafruit_Sensor *bme_temp;
|
||||||
Adafruit_Sensor *bme_pressure = bme.getPressureSensor();
|
extern Adafruit_Sensor *bme_pressure;
|
||||||
Adafruit_Sensor *bme_humidity = bme.getHumiditySensor();
|
extern Adafruit_Sensor *bme_humidity;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
//#include <SoftwareSerial.h>
|
//#include <SoftwareSerial.h>
|
||||||
|
|||||||
@@ -99,6 +99,24 @@ int udp_period;
|
|||||||
// i2c
|
// i2c
|
||||||
String i2c_list;
|
String i2c_list;
|
||||||
|
|
||||||
extern OneWire *oneWire;
|
OneWire *oneWire;
|
||||||
extern DallasTemperature sensors;
|
DallasTemperature sensors;
|
||||||
|
|
||||||
|
DHTesp dht;
|
||||||
|
|
||||||
|
#ifdef level_enable
|
||||||
|
GMedian<10, int> medianFilter;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef bmp_enable
|
||||||
|
Adafruit_BMP280 bmp;
|
||||||
|
Adafruit_Sensor *bmp_temp = bmp.getTemperatureSensor();
|
||||||
|
Adafruit_Sensor *bmp_pressure = bmp.getPressureSensor();
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef bme_enable
|
||||||
|
Adafruit_BME280 bme;
|
||||||
|
Adafruit_Sensor *bme_temp = bme.getTemperatureSensor();
|
||||||
|
Adafruit_Sensor *bme_pressure = bme.getPressureSensor();
|
||||||
|
Adafruit_Sensor *bme_humidity = bme.getHumiditySensor();
|
||||||
|
#endif
|
||||||
|
|||||||
171
src/Sensors.cpp
171
src/Sensors.cpp
@@ -4,8 +4,7 @@ String perception(byte value);
|
|||||||
void bmp280T_reading();
|
void bmp280T_reading();
|
||||||
String get_comfort_status(ComfortState cf);
|
String get_comfort_status(ComfortState cf);
|
||||||
|
|
||||||
void sensors_init()
|
void sensors_init() {
|
||||||
{
|
|
||||||
ts.add(
|
ts.add(
|
||||||
SENSORS, 1000, [&](void *) {
|
SENSORS, 1000, [&](void *) {
|
||||||
static int counter;
|
static int counter;
|
||||||
@@ -16,8 +15,7 @@ void sensors_init()
|
|||||||
level_reading();
|
level_reading();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (counter > 10)
|
if (counter > 10) {
|
||||||
{
|
|
||||||
counter = 0;
|
counter = 0;
|
||||||
|
|
||||||
#ifdef analog_enable
|
#ifdef analog_enable
|
||||||
@@ -71,8 +69,7 @@ void sensors_init()
|
|||||||
//=========================================Модуль измерения уровня в баке==================================================================
|
//=========================================Модуль измерения уровня в баке==================================================================
|
||||||
#ifdef level_enable
|
#ifdef level_enable
|
||||||
//level L 14 12 Вода#в#баке,#% Датчики fill-gauge 125 20 1
|
//level L 14 12 Вода#в#баке,#% Датчики fill-gauge 125 20 1
|
||||||
void level()
|
void level() {
|
||||||
{
|
|
||||||
String value_name = sCmd.next();
|
String value_name = sCmd.next();
|
||||||
String trig = sCmd.next();
|
String trig = sCmd.next();
|
||||||
String echo = sCmd.next();
|
String echo = sCmd.next();
|
||||||
@@ -93,8 +90,7 @@ void level()
|
|||||||
sensors_reading_map[0] = 1;
|
sensors_reading_map[0] = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void level_reading()
|
void level_reading() {
|
||||||
{
|
|
||||||
long duration_;
|
long duration_;
|
||||||
int distance_cm;
|
int distance_cm;
|
||||||
int level;
|
int level;
|
||||||
@@ -110,8 +106,7 @@ void level_reading()
|
|||||||
distance_cm = duration_ / 29 / 2;
|
distance_cm = duration_ / 29 / 2;
|
||||||
distance_cm = medianFilter.filtered(distance_cm); //отсечение промахов медианным фильтром
|
distance_cm = medianFilter.filtered(distance_cm); //отсечение промахов медианным фильтром
|
||||||
counter++;
|
counter++;
|
||||||
if (counter > tank_level_times_to_send)
|
if (counter > tank_level_times_to_send) {
|
||||||
{
|
|
||||||
counter = 0;
|
counter = 0;
|
||||||
level = map(distance_cm,
|
level = map(distance_cm,
|
||||||
jsonReadInt(optionJson, "e_lev"),
|
jsonReadInt(optionJson, "e_lev"),
|
||||||
@@ -127,8 +122,7 @@ void level_reading()
|
|||||||
//=========================================Модуль аналогового сенсора======================================================================
|
//=========================================Модуль аналогового сенсора======================================================================
|
||||||
#ifdef analog_enable
|
#ifdef analog_enable
|
||||||
//analog adc 0 Аналоговый#вход,#% Датчики any-data 1 1023 1 100 1
|
//analog adc 0 Аналоговый#вход,#% Датчики any-data 1 1023 1 100 1
|
||||||
void analog()
|
void analog() {
|
||||||
{
|
|
||||||
String value_name = sCmd.next();
|
String value_name = sCmd.next();
|
||||||
String pin = sCmd.next();
|
String pin = sCmd.next();
|
||||||
String widget_name = sCmd.next();
|
String widget_name = sCmd.next();
|
||||||
@@ -146,18 +140,15 @@ void analog()
|
|||||||
jsonWriteStr(optionJson, value_name + "_st_out", analog_start_out);
|
jsonWriteStr(optionJson, value_name + "_st_out", analog_start_out);
|
||||||
jsonWriteStr(optionJson, value_name + "_end_out", analog_end_out);
|
jsonWriteStr(optionJson, value_name + "_end_out", analog_end_out);
|
||||||
choose_widget_and_create(widget_name, page_name, page_number, type, value_name);
|
choose_widget_and_create(widget_name, page_name, page_number, type, value_name);
|
||||||
if (enter_to_analog_counter == 1)
|
if (enter_to_analog_counter == 1) {
|
||||||
{
|
|
||||||
sensors_reading_map[1] = 1;
|
sensors_reading_map[1] = 1;
|
||||||
}
|
}
|
||||||
if (enter_to_analog_counter == 2)
|
if (enter_to_analog_counter == 2) {
|
||||||
{
|
|
||||||
sensors_reading_map[2] = 1;
|
sensors_reading_map[2] = 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void analog_reading1()
|
void analog_reading1() {
|
||||||
{
|
|
||||||
String value_name = selectFromMarkerToMarker(analog_value_names_list, ",", 0);
|
String value_name = selectFromMarkerToMarker(analog_value_names_list, ",", 0);
|
||||||
#ifdef ESP32
|
#ifdef ESP32
|
||||||
int analog_in = analogRead(34);
|
int analog_in = analogRead(34);
|
||||||
@@ -176,8 +167,7 @@ void analog_reading1()
|
|||||||
Serial.println("[i] sensor '" + value_name + "' data: " + String(analog));
|
Serial.println("[i] sensor '" + value_name + "' data: " + String(analog));
|
||||||
}
|
}
|
||||||
|
|
||||||
void analog_reading2()
|
void analog_reading2() {
|
||||||
{
|
|
||||||
String value_name = selectFromMarkerToMarker(analog_value_names_list, ",", 1);
|
String value_name = selectFromMarkerToMarker(analog_value_names_list, ",", 1);
|
||||||
#ifdef ESP32
|
#ifdef ESP32
|
||||||
int analog_in = analogRead(35);
|
int analog_in = analogRead(35);
|
||||||
@@ -199,8 +189,7 @@ void analog_reading2()
|
|||||||
//=========================================================================================================================================
|
//=========================================================================================================================================
|
||||||
//=========================================Модуль температурного сенсора ds18b20===========================================================
|
//=========================================Модуль температурного сенсора ds18b20===========================================================
|
||||||
#ifdef dallas_enable
|
#ifdef dallas_enable
|
||||||
void dallas()
|
void dallas() {
|
||||||
{
|
|
||||||
String value_name = sCmd.next();
|
String value_name = sCmd.next();
|
||||||
String pin = sCmd.next();
|
String pin = sCmd.next();
|
||||||
String address = sCmd.next();
|
String address = sCmd.next();
|
||||||
@@ -216,8 +205,7 @@ void dallas()
|
|||||||
sensors_reading_map[3] = 1;
|
sensors_reading_map[3] = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void dallas_reading()
|
void dallas_reading() {
|
||||||
{
|
|
||||||
float temp = 0;
|
float temp = 0;
|
||||||
sensors.requestTemperatures();
|
sensors.requestTemperatures();
|
||||||
temp = sensors.getTempCByIndex(0);
|
temp = sensors.getTempCByIndex(0);
|
||||||
@@ -231,8 +219,7 @@ void dallas_reading()
|
|||||||
//=========================================Модуль сенсоров DHT=============================================================================
|
//=========================================Модуль сенсоров DHT=============================================================================
|
||||||
#ifdef dht_enable
|
#ifdef dht_enable
|
||||||
//dhtT t 2 dht11 Температура#DHT,#t°C Датчики any-data 1
|
//dhtT t 2 dht11 Температура#DHT,#t°C Датчики any-data 1
|
||||||
void dhtT()
|
void dhtT() {
|
||||||
{
|
|
||||||
String value_name = sCmd.next();
|
String value_name = sCmd.next();
|
||||||
String pin = sCmd.next();
|
String pin = sCmd.next();
|
||||||
String sensor_type = sCmd.next();
|
String sensor_type = sCmd.next();
|
||||||
@@ -241,33 +228,26 @@ void dhtT()
|
|||||||
String type = sCmd.next();
|
String type = sCmd.next();
|
||||||
String page_number = sCmd.next();
|
String page_number = sCmd.next();
|
||||||
dhtT_value_name = value_name;
|
dhtT_value_name = value_name;
|
||||||
if (sensor_type == "dht11")
|
if (sensor_type == "dht11") {
|
||||||
{
|
|
||||||
dht.setup(pin.toInt(), DHTesp::DHT11);
|
dht.setup(pin.toInt(), DHTesp::DHT11);
|
||||||
}
|
}
|
||||||
if (sensor_type == "dht22")
|
if (sensor_type == "dht22") {
|
||||||
{
|
|
||||||
dht.setup(pin.toInt(), DHTesp::DHT22);
|
dht.setup(pin.toInt(), DHTesp::DHT22);
|
||||||
}
|
}
|
||||||
choose_widget_and_create(widget_name, page_name, page_number, type, value_name);
|
choose_widget_and_create(widget_name, page_name, page_number, type, value_name);
|
||||||
sensors_reading_map[4] = 1;
|
sensors_reading_map[4] = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void dhtT_reading()
|
void dhtT_reading() {
|
||||||
{
|
|
||||||
float value = 0;
|
float value = 0;
|
||||||
static int counter;
|
static int counter;
|
||||||
if (dht.getStatus() != 0 && counter < 5)
|
if (dht.getStatus() != 0 && counter < 5) {
|
||||||
{
|
|
||||||
sendSTATUS(dhtT_value_name, String(dht.getStatusString()));
|
sendSTATUS(dhtT_value_name, String(dht.getStatusString()));
|
||||||
counter++;
|
counter++;
|
||||||
}
|
} else {
|
||||||
else
|
|
||||||
{
|
|
||||||
counter = 0;
|
counter = 0;
|
||||||
value = dht.getTemperature();
|
value = dht.getTemperature();
|
||||||
if (String(value) != "nan")
|
if (String(value) != "nan") {
|
||||||
{
|
|
||||||
eventGen(dhtT_value_name, "");
|
eventGen(dhtT_value_name, "");
|
||||||
jsonWriteStr(configJson, dhtT_value_name, String(value));
|
jsonWriteStr(configJson, dhtT_value_name, String(value));
|
||||||
sendSTATUS(dhtT_value_name, String(value));
|
sendSTATUS(dhtT_value_name, String(value));
|
||||||
@@ -277,8 +257,7 @@ void dhtT_reading()
|
|||||||
}
|
}
|
||||||
|
|
||||||
//dhtH h 2 dht11 Влажность#DHT,#t°C Датчики any-data 1
|
//dhtH h 2 dht11 Влажность#DHT,#t°C Датчики any-data 1
|
||||||
void dhtH()
|
void dhtH() {
|
||||||
{
|
|
||||||
String value_name = sCmd.next();
|
String value_name = sCmd.next();
|
||||||
String pin = sCmd.next();
|
String pin = sCmd.next();
|
||||||
String sensor_type = sCmd.next();
|
String sensor_type = sCmd.next();
|
||||||
@@ -287,33 +266,26 @@ void dhtH()
|
|||||||
String type = sCmd.next();
|
String type = sCmd.next();
|
||||||
String page_number = sCmd.next();
|
String page_number = sCmd.next();
|
||||||
dhtH_value_name = value_name;
|
dhtH_value_name = value_name;
|
||||||
if (sensor_type == "dht11")
|
if (sensor_type == "dht11") {
|
||||||
{
|
|
||||||
dht.setup(pin.toInt(), DHTesp::DHT11);
|
dht.setup(pin.toInt(), DHTesp::DHT11);
|
||||||
}
|
}
|
||||||
if (sensor_type == "dht22")
|
if (sensor_type == "dht22") {
|
||||||
{
|
|
||||||
dht.setup(pin.toInt(), DHTesp::DHT22);
|
dht.setup(pin.toInt(), DHTesp::DHT22);
|
||||||
}
|
}
|
||||||
choose_widget_and_create(widget_name, page_name, page_number, type, value_name);
|
choose_widget_and_create(widget_name, page_name, page_number, type, value_name);
|
||||||
sensors_reading_map[5] = 1;
|
sensors_reading_map[5] = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void dhtH_reading()
|
void dhtH_reading() {
|
||||||
{
|
|
||||||
float value = 0;
|
float value = 0;
|
||||||
static int counter;
|
static int counter;
|
||||||
if (dht.getStatus() != 0 && counter < 5)
|
if (dht.getStatus() != 0 && counter < 5) {
|
||||||
{
|
|
||||||
sendSTATUS(dhtH_value_name, String(dht.getStatusString()));
|
sendSTATUS(dhtH_value_name, String(dht.getStatusString()));
|
||||||
counter++;
|
counter++;
|
||||||
}
|
} else {
|
||||||
else
|
|
||||||
{
|
|
||||||
counter = 0;
|
counter = 0;
|
||||||
value = dht.getHumidity();
|
value = dht.getHumidity();
|
||||||
if (String(value) != "nan")
|
if (String(value) != "nan") {
|
||||||
{
|
|
||||||
eventGen(dhtH_value_name, "");
|
eventGen(dhtH_value_name, "");
|
||||||
jsonWriteStr(configJson, dhtH_value_name, String(value));
|
jsonWriteStr(configJson, dhtH_value_name, String(value));
|
||||||
sendSTATUS(dhtH_value_name, String(value));
|
sendSTATUS(dhtH_value_name, String(value));
|
||||||
@@ -323,8 +295,7 @@ void dhtH_reading()
|
|||||||
}
|
}
|
||||||
|
|
||||||
//dhtPerception Восприятие: Датчики 4
|
//dhtPerception Восприятие: Датчики 4
|
||||||
void dhtP()
|
void dhtP() {
|
||||||
{
|
|
||||||
String widget_name = sCmd.next();
|
String widget_name = sCmd.next();
|
||||||
String page_name = sCmd.next();
|
String page_name = sCmd.next();
|
||||||
String page_number = sCmd.next();
|
String page_number = sCmd.next();
|
||||||
@@ -332,32 +303,25 @@ void dhtP()
|
|||||||
sensors_reading_map[6] = 1;
|
sensors_reading_map[6] = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void dhtP_reading()
|
void dhtP_reading() {
|
||||||
{
|
|
||||||
byte value;
|
byte value;
|
||||||
if (dht.getStatus() != 0)
|
if (dht.getStatus() != 0) {
|
||||||
{
|
|
||||||
sendSTATUS("dhtPerception", String(dht.getStatusString()));
|
sendSTATUS("dhtPerception", String(dht.getStatusString()));
|
||||||
}
|
} else {
|
||||||
else
|
|
||||||
{
|
|
||||||
value = dht.computePerception(jsonReadStr(configJson, dhtT_value_name).toFloat(), jsonReadStr(configJson, dhtH_value_name).toFloat(), false);
|
value = dht.computePerception(jsonReadStr(configJson, dhtT_value_name).toFloat(), jsonReadStr(configJson, dhtH_value_name).toFloat(), false);
|
||||||
String final_line = perception(value);
|
String final_line = perception(value);
|
||||||
jsonWriteStr(configJson, "dhtPerception", final_line);
|
jsonWriteStr(configJson, "dhtPerception", final_line);
|
||||||
eventGen("dhtPerception", "");
|
eventGen("dhtPerception", "");
|
||||||
sendSTATUS("dhtPerception", final_line);
|
sendSTATUS("dhtPerception", final_line);
|
||||||
if (client_mqtt.connected())
|
if (client_mqtt.connected()) {
|
||||||
{
|
|
||||||
Serial.println("[i] sensor 'dhtPerception' data: " + final_line);
|
Serial.println("[i] sensor 'dhtPerception' data: " + final_line);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
String perception(byte value)
|
String perception(byte value) {
|
||||||
{
|
|
||||||
String res;
|
String res;
|
||||||
switch (value)
|
switch (value) {
|
||||||
{
|
|
||||||
case 0:
|
case 0:
|
||||||
res = F("Сухой воздух");
|
res = F("Сухой воздух");
|
||||||
break;
|
break;
|
||||||
@@ -389,8 +353,7 @@ String perception(byte value)
|
|||||||
}
|
}
|
||||||
|
|
||||||
//dhtComfort Степень#комфорта: Датчики 3
|
//dhtComfort Степень#комфорта: Датчики 3
|
||||||
void dhtC()
|
void dhtC() {
|
||||||
{
|
|
||||||
String widget_name = sCmd.next();
|
String widget_name = sCmd.next();
|
||||||
String page_name = sCmd.next();
|
String page_name = sCmd.next();
|
||||||
String page_number = sCmd.next();
|
String page_number = sCmd.next();
|
||||||
@@ -398,15 +361,12 @@ void dhtC()
|
|||||||
sensors_reading_map[7] = 1;
|
sensors_reading_map[7] = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void dhtC_reading()
|
void dhtC_reading() {
|
||||||
{
|
float value;
|
||||||
ComfortState cf;
|
ComfortState cf;
|
||||||
if (dht.getStatus() != 0)
|
if (dht.getStatus() != 0) {
|
||||||
{
|
|
||||||
sendSTATUS("dhtComfort", String(dht.getStatusString()));
|
sendSTATUS("dhtComfort", String(dht.getStatusString()));
|
||||||
}
|
} else {
|
||||||
else
|
|
||||||
{
|
|
||||||
value = dht.getComfortRatio(cf, jsonReadStr(configJson, dhtT_value_name).toFloat(), jsonReadStr(configJson, dhtH_value_name).toFloat(), false);
|
value = dht.getComfortRatio(cf, jsonReadStr(configJson, dhtT_value_name).toFloat(), jsonReadStr(configJson, dhtH_value_name).toFloat(), false);
|
||||||
String final_line = get_comfort_status(cf);
|
String final_line = get_comfort_status(cf);
|
||||||
jsonWriteStr(configJson, "dhtComfort", final_line);
|
jsonWriteStr(configJson, "dhtComfort", final_line);
|
||||||
@@ -416,11 +376,9 @@ void dhtC_reading()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
String get_comfort_status(ComfortState cf)
|
String get_comfort_status(ComfortState cf) {
|
||||||
{
|
|
||||||
String comfortStatus;
|
String comfortStatus;
|
||||||
switch (cf)
|
switch (cf) {
|
||||||
{
|
|
||||||
case Comfort_OK:
|
case Comfort_OK:
|
||||||
comfortStatus = "Отлично";
|
comfortStatus = "Отлично";
|
||||||
break;
|
break;
|
||||||
@@ -456,8 +414,7 @@ String get_comfort_status(ComfortState cf)
|
|||||||
}
|
}
|
||||||
|
|
||||||
//dhtDewpoint Точка#росы: Датчики 5
|
//dhtDewpoint Точка#росы: Датчики 5
|
||||||
void dhtD()
|
void dhtD() {
|
||||||
{
|
|
||||||
String widget_name = sCmd.next();
|
String widget_name = sCmd.next();
|
||||||
String page_name = sCmd.next();
|
String page_name = sCmd.next();
|
||||||
String page_number = sCmd.next();
|
String page_number = sCmd.next();
|
||||||
@@ -465,15 +422,11 @@ void dhtD()
|
|||||||
sensors_reading_map[8] = 1;
|
sensors_reading_map[8] = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void dhtD_reading()
|
void dhtD_reading() {
|
||||||
{
|
|
||||||
float value;
|
float value;
|
||||||
if (dht.getStatus() != 0)
|
if (dht.getStatus() != 0) {
|
||||||
{
|
|
||||||
sendSTATUS("dhtDewpoint", String(dht.getStatusString()));
|
sendSTATUS("dhtDewpoint", String(dht.getStatusString()));
|
||||||
}
|
} else {
|
||||||
else
|
|
||||||
{
|
|
||||||
value = dht.computeDewPoint(jsonReadStr(configJson, dhtT_value_name).toFloat(), jsonReadStr(configJson, dhtH_value_name).toFloat(), false);
|
value = dht.computeDewPoint(jsonReadStr(configJson, dhtT_value_name).toFloat(), jsonReadStr(configJson, dhtH_value_name).toFloat(), false);
|
||||||
jsonWriteInt(configJson, "dhtDewpoint", value);
|
jsonWriteInt(configJson, "dhtDewpoint", value);
|
||||||
eventGen("dhtDewpoint", "");
|
eventGen("dhtDewpoint", "");
|
||||||
@@ -487,8 +440,7 @@ void dhtD_reading()
|
|||||||
//=========================================Модуль сенсоров bmp280==========================================================================
|
//=========================================Модуль сенсоров bmp280==========================================================================
|
||||||
|
|
||||||
//bmp280T temp1 0x76 Температура#bmp280 Датчики any-data 1
|
//bmp280T temp1 0x76 Температура#bmp280 Датчики any-data 1
|
||||||
void bmp280T()
|
void bmp280T() {
|
||||||
{
|
|
||||||
String value_name = sCmd.next();
|
String value_name = sCmd.next();
|
||||||
String address = sCmd.next();
|
String address = sCmd.next();
|
||||||
String widget_name = sCmd.next();
|
String widget_name = sCmd.next();
|
||||||
@@ -507,8 +459,7 @@ void bmp280T()
|
|||||||
sensors_reading_map[9] = 1;
|
sensors_reading_map[9] = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void bmp280T_reading()
|
void bmp280T_reading() {
|
||||||
{
|
|
||||||
float value = 0;
|
float value = 0;
|
||||||
sensors_event_t temp_event, pressure_event;
|
sensors_event_t temp_event, pressure_event;
|
||||||
bmp_temp->getEvent(&temp_event);
|
bmp_temp->getEvent(&temp_event);
|
||||||
@@ -520,8 +471,7 @@ void bmp280T_reading()
|
|||||||
}
|
}
|
||||||
|
|
||||||
//bmp280P press1 0x76 Давление#bmp280 Датчики any-data 2
|
//bmp280P press1 0x76 Давление#bmp280 Датчики any-data 2
|
||||||
void bmp280P()
|
void bmp280P() {
|
||||||
{
|
|
||||||
String value_name = sCmd.next();
|
String value_name = sCmd.next();
|
||||||
String address = sCmd.next();
|
String address = sCmd.next();
|
||||||
String widget_name = sCmd.next();
|
String widget_name = sCmd.next();
|
||||||
@@ -540,8 +490,7 @@ void bmp280P()
|
|||||||
sensors_reading_map[10] = 1;
|
sensors_reading_map[10] = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void bmp280P_reading()
|
void bmp280P_reading() {
|
||||||
{
|
|
||||||
float value = 0;
|
float value = 0;
|
||||||
sensors_event_t temp_event, pressure_event;
|
sensors_event_t temp_event, pressure_event;
|
||||||
bmp_pressure->getEvent(&pressure_event);
|
bmp_pressure->getEvent(&pressure_event);
|
||||||
@@ -556,8 +505,7 @@ void bmp280P_reading()
|
|||||||
//=========================================================================================================================================
|
//=========================================================================================================================================
|
||||||
//=============================================Модуль сенсоров bme280======================================================================
|
//=============================================Модуль сенсоров bme280======================================================================
|
||||||
//bme280T temp1 0x76 Температура#bmp280 Датчики any-data 1
|
//bme280T temp1 0x76 Температура#bmp280 Датчики any-data 1
|
||||||
void bme280T()
|
void bme280T() {
|
||||||
{
|
|
||||||
String value_name = sCmd.next();
|
String value_name = sCmd.next();
|
||||||
String address = sCmd.next();
|
String address = sCmd.next();
|
||||||
String widget_name = sCmd.next();
|
String widget_name = sCmd.next();
|
||||||
@@ -570,8 +518,7 @@ void bme280T()
|
|||||||
sensors_reading_map[11] = 1;
|
sensors_reading_map[11] = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void bme280T_reading()
|
void bme280T_reading() {
|
||||||
{
|
|
||||||
float value = 0;
|
float value = 0;
|
||||||
value = bme.readTemperature();
|
value = bme.readTemperature();
|
||||||
jsonWriteStr(configJson, bme280T_value_name, String(value));
|
jsonWriteStr(configJson, bme280T_value_name, String(value));
|
||||||
@@ -581,8 +528,7 @@ void bme280T_reading()
|
|||||||
}
|
}
|
||||||
|
|
||||||
//bme280P pres1 0x76 Давление#bmp280 Датчики any-data 1
|
//bme280P pres1 0x76 Давление#bmp280 Датчики any-data 1
|
||||||
void bme280P()
|
void bme280P() {
|
||||||
{
|
|
||||||
String value_name = sCmd.next();
|
String value_name = sCmd.next();
|
||||||
String address = sCmd.next();
|
String address = sCmd.next();
|
||||||
String widget_name = sCmd.next();
|
String widget_name = sCmd.next();
|
||||||
@@ -595,8 +541,7 @@ void bme280P()
|
|||||||
sensors_reading_map[12] = 1;
|
sensors_reading_map[12] = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void bme280P_reading()
|
void bme280P_reading() {
|
||||||
{
|
|
||||||
float value = 0;
|
float value = 0;
|
||||||
value = bme.readPressure();
|
value = bme.readPressure();
|
||||||
value = value / 1.333224;
|
value = value / 1.333224;
|
||||||
@@ -607,8 +552,7 @@ void bme280P_reading()
|
|||||||
}
|
}
|
||||||
|
|
||||||
//bme280H hum1 0x76 Влажность#bmp280 Датчики any-data 1
|
//bme280H hum1 0x76 Влажность#bmp280 Датчики any-data 1
|
||||||
void bme280H()
|
void bme280H() {
|
||||||
{
|
|
||||||
String value_name = sCmd.next();
|
String value_name = sCmd.next();
|
||||||
String address = sCmd.next();
|
String address = sCmd.next();
|
||||||
String widget_name = sCmd.next();
|
String widget_name = sCmd.next();
|
||||||
@@ -621,8 +565,7 @@ void bme280H()
|
|||||||
sensors_reading_map[13] = 1;
|
sensors_reading_map[13] = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void bme280H_reading()
|
void bme280H_reading() {
|
||||||
{
|
|
||||||
float value = 0;
|
float value = 0;
|
||||||
value = bme.readHumidity();
|
value = bme.readHumidity();
|
||||||
jsonWriteStr(configJson, bme280H_value_name, String(value));
|
jsonWriteStr(configJson, bme280H_value_name, String(value));
|
||||||
@@ -632,8 +575,7 @@ void bme280H_reading()
|
|||||||
}
|
}
|
||||||
|
|
||||||
//bme280A altit1 0x76 Высота#bmp280 Датчики any-data 1
|
//bme280A altit1 0x76 Высота#bmp280 Датчики any-data 1
|
||||||
void bme280A()
|
void bme280A() {
|
||||||
{
|
|
||||||
String value_name = sCmd.next();
|
String value_name = sCmd.next();
|
||||||
String address = sCmd.next();
|
String address = sCmd.next();
|
||||||
String widget_name = sCmd.next();
|
String widget_name = sCmd.next();
|
||||||
@@ -646,8 +588,7 @@ void bme280A()
|
|||||||
sensors_reading_map[14] = 1;
|
sensors_reading_map[14] = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void bme280A_reading()
|
void bme280A_reading() {
|
||||||
{
|
|
||||||
float value = 0;
|
float value = 0;
|
||||||
value = bme.readAltitude(1013.25);
|
value = bme.readAltitude(1013.25);
|
||||||
jsonWriteStr(configJson, bme280A_value_name, String(value));
|
jsonWriteStr(configJson, bme280A_value_name, String(value));
|
||||||
|
|||||||
Reference in New Issue
Block a user