This commit is contained in:
Dmitry Borisenko
2020-02-16 19:36:58 +03:00
parent 70d0378034
commit 8d16ae9188
7 changed files with 61 additions and 43 deletions

23
Cmd.ino
View File

@@ -2,7 +2,10 @@ void CMD_init() {
sCmd.addCommand("button", button);
sCmd.addCommand("buttonSet", buttonSet);
sCmd.addCommand("buttonChange", buttonChange);
sCmd.addCommand("pinSet", pinSet);
sCmd.addCommand("pinChange", pinChange);
sCmd.addCommand("pwm", pwm);
sCmd.addCommand("pwmSet", pwmSet);
@@ -17,6 +20,7 @@ void CMD_init() {
sCmd.addCommand("dhtH", dhtH);
sCmd.addCommand("dhtPerception", dhtPerception);
sCmd.addCommand("dhtComfort", dhtComfort);
sCmd.addCommand("dhtDewpoint", dhtDewpoint);
sCmd.addCommand("logging", logging);
@@ -137,13 +141,30 @@ void buttonSet() {
sendSTATUS("buttonSet" + button_number, button_state);
}
void pinSet() {
void buttonChange() {
String button_number = sCmd.next();
String current_state = jsonRead(configJson, "buttonSet" + button_number);
if (current_state == "1") {
current_state = "0";
} else if (current_state == "0") {
current_state = "1";
}
order_loop += "buttonSet " + button_number + " " + current_state + ",";
jsonWrite(configJson, "buttonSet" + button_number, current_state);
sendSTATUS("buttonSet" + button_number, current_state);
}
void pinSet() {
String pin_number = sCmd.next();
String pin_state = sCmd.next();
pinMode(pin_number.toInt(), OUTPUT);
digitalWrite(pin_number.toInt(), pin_state.toInt());
}
void pinChange() {
String pin_number = sCmd.next();
pinMode(pin_number.toInt(), OUTPUT);
digitalWrite(pin_number.toInt(), !digitalRead(pin_number.toInt()));
}
//==================================================================================================================
//==========================================Модуль управления ШИМ===================================================

View File

@@ -35,7 +35,7 @@ void analog() {
eventGen ("analog", "");
sendSTATUS("analog", String(analog));
if (client.connected()) {
Serial.println("[i] sensor analog send date " + String(analog));
Serial.println("[i] sensor 'analog' send date " + String(analog));
}
// }
analog_old = analog;
@@ -82,7 +82,7 @@ void level() {
eventGen ("level", "");
sendSTATUS("level", String(level));
if (client.connected()) {
Serial.println("[i] sensor tank level send date " + String(level));
Serial.println("[i] sensor tank 'level' send date " + String(level));
}
//}
level_old = level;
@@ -113,7 +113,7 @@ void dallas() {
eventGen ("dallas", "");
sendSTATUS("dallas", String(temp));
if (client.connected()) {
Serial.println("[i] sensor dallas send date " + String(temp));
Serial.println("[i] sensor 'dallas' send date " + String(temp));
}
//}
temp_old = temp;
@@ -146,7 +146,7 @@ void dhtT() {
eventGen ("dhtT", "");
sendSTATUS("dhtT", String(value));
if (client.connected()) {
Serial.println("[i] sensor dhtT send date " + String(value));
Serial.println("[i] sensor 'dhtT' send date " + String(value));
}
//}
value_old = value;
@@ -177,7 +177,7 @@ void dhtH() {
eventGen ("dhtH", "");
sendSTATUS("dhtH", String(value));
if (client.connected()) {
Serial.println("[i] sensor dhtH send date " + String(value));
Serial.println("[i] sensor 'dhtH' send date " + String(value));
}
//}
value_old = value;
@@ -189,16 +189,15 @@ void dhtPerception() {
String page_name = sCmd.next();
String page_number = sCmd.next();
choose_viget_and_create(viget_name, page_name, page_number, "any-data", "dhtPerception");
ts.add(DHTP, dhtPerception_update_int, [&](void*) {
ts.add(DHTP, dht_calculation_update_int, [&](void*) {
byte value;
ComfortState cf;
value = dht.computePerception(jsonRead(configJson, "dhtT").toFloat(), jsonRead(configJson, "dhtH").toInt(), false);
value = dht.computePerception(jsonRead(configJson, "dhtT").toFloat(), jsonRead(configJson, "dhtH").toFloat(), false);
String final_line = perception(value);
jsonWrite(configJson, "dhtPerception", final_line);
eventGen ("dhtPerception", "");
sendSTATUS("dhtPerception", final_line);
if (client.connected()) {
Serial.println("[i] sensor dhtPerception send date " + final_line);
Serial.println("[i] sensor 'dhtPerception' send date " + final_line);
}
}, nullptr, true);
}
@@ -220,10 +219,10 @@ void dhtComfort() {
String page_name = sCmd.next();
String page_number = sCmd.next();
choose_viget_and_create(viget_name, page_name, page_number, "any-data", "dhtComfort");
ts.add(DHTC, dhtComfort_update_int, [&](void*) {
ts.add(DHTC, dht_calculation_update_int, [&](void*) {
float value;
ComfortState cf;
value = dht.getComfortRatio(cf, jsonRead(configJson, "dhtT").toFloat(), jsonRead(configJson, "dhtH").toInt(), false);
value = dht.getComfortRatio(cf, jsonRead(configJson, "dhtT").toFloat(), jsonRead(configJson, "dhtH").toFloat(), false);
String comfortStatus;
switch (cf) {
case Comfort_OK:
@@ -262,26 +261,24 @@ void dhtComfort() {
eventGen ("dhtComfort", "");
sendSTATUS("dhtComfort", final_line);
if (client.connected()) {
Serial.println("[i] sensor dhtComfort send date " + final_line);
Serial.println("[i] sensor 'dhtComfort' send date " + final_line);
}
}, nullptr, true);
}
void dhtDewPoint() {
void dhtDewpoint() {
String viget_name = sCmd.next();
String page_name = sCmd.next();
String page_number = sCmd.next();
choose_viget_and_create(viget_name, page_name, page_number, "any-data", "dhtPerception");
ts.add(DHTP, dhtPerception_update_int, [&](void*) {
byte value;
ComfortState cf;
value = dht.computePerception(jsonRead(configJson, "dhtT").toFloat(), jsonRead(configJson, "dhtH").toInt(), false);
String final_line = perception(value);
jsonWrite(configJson, "dhtPerception", final_line);
eventGen ("dhtPerception", "");
sendSTATUS("dhtPerception", final_line);
choose_viget_and_create(viget_name, page_name, page_number, "any-data", "dhtDewpoint");
ts.add(DHTD, dht_calculation_update_int, [&](void*) {
float value;
value = dht.computeDewPoint(jsonRead(configJson, "dhtT").toFloat(), jsonRead(configJson, "dhtH").toFloat(), false);
jsonWrite(configJson, "dhtDewpoint", value);
eventGen ("dhtDewpoint", "");
sendSTATUS("dhtDewpoint", String(value));
if (client.connected()) {
Serial.println("[i] sensor dhtPerception send date " + final_line);
Serial.println("[i] sensor 'dhtDewpoint' send date " + String(value));
}
}, nullptr, true);
}

1
data/config-all.json Normal file
View File

@@ -0,0 +1 @@
{"SSDP":"MODULES","chipID":"905542-1458415","ssidAP":"WiFi","passwordAP":"","ssid":"your_ssid","password":"your_pass","timezone":3,"mqttServer":"","mqttPort":0,"mqttUser":"","mqttPass":"","scenario":"1","timers":"0","pushingbox_id":"","web_login":"admin","web_pass":"admin"}

View File

@@ -1 +0,0 @@
{"SSDP":"MODULES","chipID":"905542-1458415","ssidAP":"WiFi","passwordAP":"","ssid":"rise","password":"hostel3333","timezone":3,"mqttServer":"m12.cloudmqtt.com","mqttPort":14053,"mqttUser":"lbscvzuj","mqttPass":"bLxlveOgaF8F","scenario":"1","timers":"0","pushingbox_id":"v7C133E426B0C69E","web_login":"admin","web_pass":"admin"}

View File

@@ -1 +1 @@
{"SSDP":"MODULES","chipID":"905542-1458415","ssidAP":"WiFi","passwordAP":"","ssid":"your_ssid","password":"your_pass","timezone":3,"mqttServer":"","mqttPort":0,"mqttUser":"","mqttPass":"","scenario":"1","timers":"0","pushingbox_id":"","web_login":"admin","web_pass":"admin"}
{"SSDP":"MODULES","chipID":"905542-1458415","ssidAP":"WiFi","passwordAP":"","ssid":"rise","password":"hostel3333","timezone":3,"mqttServer":"m12.cloudmqtt.com","mqttPort":14053,"mqttUser":"lbscvzuj","mqttPass":"bLxlveOgaF8F","scenario":"1","timers":"0","pushingbox_id":"v7C133E426B0C69E","web_login":"admin","web_pass":"admin"}

View File

@@ -3,27 +3,28 @@ button 2 13 Прихожая Реле 0 2
button 3 14 Кухня Реле 0 3
pwm 1 3 Яркость#коредор: Реле 1023 4
pwm 2 4 Яркость#ванная: Реле 510 5
//-------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------
//analog 0 Аналоговый#вход,#% Датчики progress-round 1 1024 1 1024 6
inputDigit digit1 При#скольки#включить? Датчики 10 7
inputDigit digit2 При#скольки#выключить? Датчики 0 8
button 4 na Нагреватель Датчики 0 9
//dallas 2 Водонагреватель,#t°C Датчики any-data 10
dhtT DHT11 2 Температура#DHT,#t°C Датчики any-data 11
dhtH DHT11 2 Влажность#DHT,#% Датчики any-data 12
dhtComfort Степень#комфорта: Датчики 12
dhtPerception Восприятие: Датчики 13
//level Вода#в#баке,#% Датчики any-data 125 20 14
//-------------------------------------------------------------------------------------------------
button 5 na Вкл#обратный#таймер Таймеры 0 15
inputDigit digit3 Через#сколько#секунд#включить? Таймеры 5 16
button 6 na Включится#по#таймеру Таймеры 0 17
inputTime time1 Во#сколько#включить? Таймеры 20.30 18
button 7 5 Включится#по#таймеру Таймеры 0 19
//-------------------------------------------------------------------------------------------------
//dhtT DHT11 2 Температура#DHT,#t°C Датчики any-data 11
//dhtH DHT11 2 Влажность#DHT,#% Датчики any-data 12
//dhtComfort Степень#комфорта: Датчики 12
//dhtPerception Восприятие: Датчики 13
//dhtDewpoint Точка#росы: Датчики 14
//level Вода#в#баке,#% Датчики any-data 125 20 15
//---------------------------------------------------------------------
button 5 na Вкл#обратный#таймер Таймеры 0 16
inputDigit digit3 Через#сколько#секунд#включить? Таймеры 5 17
button 6 na Включится#по#таймеру Таймеры 0 18
inputTime time1 Во#сколько#включить? Таймеры 20.30 19
button 7 5 Включится#по#таймеру Таймеры 0 20
//---------------------------------------------------------------------
switch 1 0 20
textSet 1 неопределено
text 1 Квартира Двери 22
//-------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------
button 8 scenario Вкл#выкл#все#сценарии Сценарии 1 23
button 9 line1,line2, Вкл#выкл#выбранные#сценарии Сценарии 1 24

5
set.h
View File

@@ -36,7 +36,7 @@ AsyncEventSource events("/events");
#include "time.h"
#include <TickerScheduler.h>
TickerScheduler ts(30);
enum { ROUTER_SEARCHING, WIFI_MQTT_CONNECTION_CHECK, LEVEL, ANALOG_, DALLAS, DHTT, DHTH, DHTC, DHTP, ANALOG_LOG, LEVEL_LOG, DALLAS_LOG, PH_LOG, CMD , TIMER_COUNTDOWN, TIMERS, TIME, TEST};
enum { ROUTER_SEARCHING, WIFI_MQTT_CONNECTION_CHECK, LEVEL, ANALOG_, DALLAS, DHTT, DHTH, DHTC, DHTP, DHTD, ANALOG_LOG, LEVEL_LOG, DALLAS_LOG, PH_LOG, CMD , TIMER_COUNTDOWN, TIMERS, TIME, TEST};
//ssl//#include "dependencies/WiFiClientSecure/WiFiClientSecure.h" //using older WiFiClientSecure
#include <PubSubClient.h>
@@ -89,8 +89,7 @@ Adafruit_Si7021 sensor_Si7021 = Adafruit_Si7021();
//-----------------------------------------------------------------
#define dhtT_update_int 5000
#define dhtH_update_int 5000
#define dhtComfort_update_int 5000
#define dhtPerception_update_int 5000
#define dht_calculation_update_int 5000
//-----------------------------------------------------------------