FloKra 6 лет назад
Родитель
Сommit
0e6091f472
4 измененных файлов с 106 добавлено и 0 удалено
  1. 52 0
      ESP8266-WiFi-Thermostat.txt
  2. 14 0
      MQTT-Befehle.txt
  3. 17 0
      Pinzuordnung.txt
  4. 23 0
      domoticz-thermostat.txt

+ 52 - 0
ESP8266-WiFi-Thermostat.txt

@@ -0,0 +1,52 @@
+ESP8266-WiFi-Thermostat und Raumsensor
+======================================
+
+Funktionen: 
+ - Messung der aktuellen Raumtemperatur und Luftfeuchtigkeit mittels DHT22
+ - Thermostat mit Hysterese und umschaltbarem Modus (Normal, Nachtabsenkung) mit unterschiedlichen Solltemperaturen
+ - Bedienteil mit LCD und Drucktasten zur direkten Bedienung
+ - Telemetrie via WiFi an eine Zentrale via MQTT-Protokoll
+ - Telemetrie zur direkten Anbindung an eine Domoticz-Zentrale
+ - Konfiguration der wichtigsten Einstellungen über commands via UART sowie MQTT (ev. später Webinterface)
+
+Optional: 
+ - Lichtstärkesensor (Werte werden wenn vorhanden zyklisch via MQTT gepublished)
+ - PIR-Bewegungssensor (bei Statusänderung via MQTT gepublished)
+
+Später eventuell:
+ - Web-Interface zur Konfiguration und direkten Bedienung
+ - WiFiManager zur einfacheren Einrichtung
+
+ 
+ 
+- Bedienung lokal: 
+	- Umschaltung des Betriebsmodus (Normal, Absenkung, Heizung aus)
+	- Änderung der Solltemperatur für Normalbetrieb (direkt durch +/- Tasten)
+	- bei Tastendruck wird zunächst nur die Displaybeleuchtung eingschaltet, nach 5 Sekunden ohne Bedienung wieder aus, erst bei aktiver 
+	  Beleuchtung werden Eingaben angenommen
+	  
+ - Fernsteuerung über MQTT: 
+	- Solltemperatur ändern
+	- Betriebsmodus umschalten
+	
+ - zusätzliche Einstellmöglichkeiten über MQTT/UART-commands:
+    - Hysterese
+	- minimale Einschaltzeit der Heizung (Verhinderung zu häufiger Taktung bei zu kleiner Hysterese)
+	- Änderung der Absenkungstemperatur
+	- MQTT-Topics für die einzelnen Messwerte
+    - Domoticz-Idx für die einzelnen Messwerte
+	- SSID und WPA-Key
+	- MQTT-Server Host und Port
+
+ - Konfiguration via WiFi-Manager
+    - SSID und WPA-Key
+	- MQTT-Server Host und Port
+	
+ - Konfiguration nur zur Compile-Zeit:
+    - Pin-Zuordnungen
+    - I2C-Adressen
+    - Fallback AP-Name für WiFiManager, sowie Passwort dafür
+	
+
+ - Speicherung: 
+   Konfigurationsänderungen werden sofort ins Flash gespeichert. Änderung des Betriebsmodus sowie der Solltemperatur nach einem Timeout von 5 (?) Sekunden (eventuell gekoppelt mit LCD-Timeout?)

+ 14 - 0
MQTT-Befehle.txt

@@ -0,0 +1,14 @@
+
+Es werden jeweils nur gültige und plausible Befehle durchgeführt.
+
+Betriebsmodus umschalten: 
+set mode 0		Heizung aus
+set mode 1		Normalbetrieb
+set mode 2		Nachtabsenkung
+set mode 3		Absenkung 2 (vorgesehen)
+
+Solltemperatur einstellen:
+jeweils in 0.5er Schritten (andere Kommastellen werden auf den nächsten 0.5er gerundet)
+
+set temp 21.5	-> Solltemperatur für Normalbetrieb, min. 14.0, max. 27.0
+set tlow 16.0	-> Solltemperatur für Nachtabschaltung, min. 10.0, max. 19.0

+ 17 - 0
Pinzuordnung.txt

@@ -0,0 +1,17 @@
+Pin	GPIO	Anmerkung						Verwendung
+----------------------------------------------------------------------
+D3	GPIO0	IO, 10k Pull-up					Button links (+)
+D4	GPIO2	IO, 10k Pull-up, BUILTIN_LED	Button mitte (-)
+D5	GPIO14	IO, SCK							Button rechts (Mode)
+D7	GPIO13	IO, MOSI						DHT22 Temp/Hum Sensor
+D0	GPIO16	IO								Heizungsansteuerung
+D2	GPIO4	IO, SDA							I2C SDA
+D1	GPIO5	IO, SCL							I2C SCL
+D6	GPIO12	IO, MISO						vorgesehen für PIR-Sensor
+
+D8	GPIO15	10k Pull-down, SS				-- nicht verwendet --
+
+
+Hardware via I2C:
+ - Display 1602			Addr: 0x27
+ - Lux-Sensor BH1750	Addr: 0x23

+ 23 - 0
domoticz-thermostat.txt

@@ -0,0 +1,23 @@
+{
+	"command": "udevice",
+	"idx": 219,
+	"nvalue": 0,
+	"svalue": "24.00"
+}
+
+
+domoticz/out:
+{
+   "Battery" : 255,
+   "RSSI" : 12,
+   "description" : "",
+   "dtype" : "Thermostat",
+   "id" : "001412B",
+   "idx" : 219,
+   "meterType" : "Energy",
+   "name" : "Raumthermostat Wohnzimmer",
+   "nvalue" : 0,
+   "stype" : "SetPoint",
+   "svalue1" : "22.00",
+   "unit" : 1
+}