{"id":375,"date":"2018-09-13T17:40:00","date_gmt":"2018-09-13T17:40:00","guid":{"rendered":"http:\/\/test1.schartel-web.de\/?page_id=375"},"modified":"2020-02-22T18:03:14","modified_gmt":"2020-02-22T18:03:14","slug":"wlan-thermostat","status":"publish","type":"page","link":"http:\/\/test1.schartel-web.de\/?page_id=375","title":{"rendered":"WLAN-Thermostat"},"content":{"rendered":"<h1><span id=\"ESP8266-01-WLAN-Thermostat_mit_ESP8266-01-WLAN-Relais_fuer_Stellantrieb_Fussbodenheizung\"><b>ESP8266-01-WLAN-<\/b><b>Thermostat mit ESP8266-01-WLAN-Relais f\u00fcr Stellantrieb Fu\u00dfbodenheizung<\/b><\/span><\/h1><div id=\"toc_container\" class=\"toc_wrap_right toc_light_blue no_bullets\"><p class=\"toc_title\">Inhalt<\/p><ul class=\"toc_list\"><li><ul><li><ul><li><\/li><li><\/li><li><\/li><li><\/li><li><\/li><li><\/li><li><\/li><li><\/li><li><\/li><\/ul><\/li><\/ul><\/li><li><ul><li><ul><li><\/li><li><\/li><\/ul><\/li><\/ul><\/li><\/ul><\/div>\n\n<p>&nbsp;<\/p>\n<h2><span id=\"1WLAN-Thermostat_mit_DS18B20_Temperaturfuehler_an_ESP8266-01\"><b>1.\u00a0WLAN-Thermostat mit DS18B20 Temperaturf\u00fchler an ESP8266-01<\/b><\/span><\/h2>\n<h3><span id=\"i\"><\/span><\/h3>\n<h3><span id=\"110_Flashen_der_Firmware_mit_nodemcu\">1.1.0 Flashen der Firmware mit nodemcu<\/span><\/h3>\n<p class=\"gross\">Zun\u00e4chst mu\u00df der esp8266-01 mit der nodemcu-firmware geflasht werden.Dazu ben\u00f6tigt man den nodemcu flasher-master.<\/p>\n<p class=\"gross\">Diese Software kann hier: <a href=\"https:\/\/github.com\/nodemcu\/nodemcu-flasher\">nodemcu-flasher<\/a> heruntergeladen werden.<\/p>\n<p class=\"gross\">In der Software die Com-Schnittstelle des FTDI-Programmierers einstellen und unter config die firmware an der Adresse 0x00000 ausw\u00e4hlen. Vorne mit dem Kreuz diese Adresse markieren. Dann unter Operation den ESP8266-01 flashen. Als Firmware w\u00e4hle ich, diese scheint mir am stabilsten zu sein: nodemcu_integer_0.9.5_20150318.bin.<\/p>\n<p class=\"gross\">Damit der esp8266-01 geflasht werden kann mu\u00df\u00a0 GPIO 00 mit GND verbunden werden.<\/p>\n<div id=\"attachment_380\" style=\"width: 310px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/esp8266-01-flashen.png\"><img aria-describedby=\"caption-attachment-380\" decoding=\"async\" loading=\"lazy\" class=\"wp-image-380 size-medium\" src=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/esp8266-01-flashen-300x91.png\" alt=\"\" width=\"300\" height=\"91\" srcset=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/esp8266-01-flashen-300x91.png 300w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/esp8266-01-flashen-768x234.png 768w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/esp8266-01-flashen-1024x311.png 1024w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/esp8266-01-flashen.png 1223w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-380\" class=\"wp-caption-text\">Schaltbild ESP8266-01 &#8211; Flashen<\/p><\/div>\n<div id=\"attachment_379\" style=\"width: 310px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/esp-01.jpg\"><img aria-describedby=\"caption-attachment-379\" decoding=\"async\" loading=\"lazy\" class=\"wp-image-379 size-medium\" src=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/esp-01-300x142.jpg\" alt=\"\" width=\"300\" height=\"142\" srcset=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/esp-01-300x142.jpg 300w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/esp-01-768x364.jpg 768w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/esp-01.jpg 800w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-379\" class=\"wp-caption-text\">Pin-Belegung ESP8266-01<\/p><\/div>\n<div id=\"attachment_382\" style=\"width: 310px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/Esp8266-thermostat.jpg\"><img aria-describedby=\"caption-attachment-382\" decoding=\"async\" loading=\"lazy\" class=\"wp-image-382 size-medium\" src=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/Esp8266-thermostat-300x220.jpg\" alt=\"\" width=\"300\" height=\"220\" srcset=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/Esp8266-thermostat-300x220.jpg 300w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/Esp8266-thermostat.jpg 502w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-382\" class=\"wp-caption-text\">ESP8266-01-Thermostat im Geh\u00e4use mit 5V Mikro-USB-Anschlu\u00df<\/p><\/div>\n<p>&nbsp;<\/p>\n<p><a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/flashermaster_config.jpg\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-medium wp-image-385\" src=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/flashermaster_config-300x173.jpg\" alt=\"\" width=\"300\" height=\"173\" srcset=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/flashermaster_config-300x173.jpg 300w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/flashermaster_config.jpg 703w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p><a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/flashermaster_operation.jpg\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-medium wp-image-386\" src=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/flashermaster_operation-300x175.jpg\" alt=\"\" width=\"300\" height=\"175\" srcset=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/flashermaster_operation-300x175.jpg 300w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/flashermaster_operation.jpg 701w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<h3><span id=\"111_Flashen_der_Firmware_mit_espeasy_mega_20\">1.1.1 Flashen der Firmware mit espeasy mega 2.0<\/span><\/h3>\n<p>Zun\u00e4chst ist auf den Typ der ESP8226-01 Module zu achten. Die blauen Module verf\u00fcgen \u00fcber eine Speicherkapazit\u00e4t von 512k, die schwarzen Module \u00fcber eine Speicherkapazit\u00e4t von 1024k. Nur die schwarzen Module sind f\u00fcr espeasy mega 2.0 tauglich.<\/p>\n<p>Damit das Modul mit der espeasy Firmware geflasht werden kann, mu\u00df zun\u00e4chst die zip-Datei: <a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/ESPEasy_mega-20200204.zip\" target=\"_blank\" rel=\"noopener\">ESPEasy_mega-20200204.zip<\/a> in ein beliebiges Verzeichnis heruntergeladen werden. Der Anschlu\u00df des FTDI-Programmierers erfolgt genauso wie im Abschnitt 1.1.0 beschrieben, bei dem ESP8266-01 Modul mu\u00df GND mit GPIO0 zum flashen verbunden werden (siehe oben: Schaltbild ESP8266-01 \u2013 Flashen).<\/p>\n<p>In der zip-Datei ESPEasy_mega-20200204.zip befindet sich unter anderem das flashtool flashesp8266.exe und eine gro\u00dfe Auswahl an firmware-Dateien im Verzeichnis bin. F\u00fcr den schwarzen ESP8266-01 ist die bin-Datei: <em>ESP_Easy_mega-20200204_normal_ESP8266_1M.bin <\/em>interessant, diese mu\u00df als firmwaredatei ausgew\u00e4hlt werden.<\/p>\n<p>Nach erfolgreichem flashen den FTDI-Programmierer entfernen, die Verbindung GPIO-GND des ESP8266-01 entfernen und das Modul durch kurze Unterbrechung der Stromversorgung (3,3V) neu starten. Das Modul startet jetzt als Accesspoint und ist unter\u00a0 dem Namen ESP_Easy_0 zu sehen. Um sich mit dem Access Point zu verbinden mu\u00df das Paswort: <em>configesp<\/em> eingegeben werden.<\/p>\n<p>Jetzt kann die log-in-Seite des Access Points \u00fcber die IP-Adresse: 192.168.4.1 im Browser aufgerufen werden. Auf dieser log-in-Seite mu\u00df nun der entsprechende WLAN-Account ausgew\u00e4hlt werden und das entsprechende Passwort daf\u00fcr eingegeben werden. Das ESP8266-01 Modul verbindet sich nun mit dem entsprechenden hauseigenen WLAN. Sollte dies nicht automatisch der Fall sein, so ist die Stromversorgung kurz zu unterbrechen. Mit einem IP-Scanner kann dann die neue IP-Adresse des Moduls &#8211; es heisst ESP_Easy_0 &#8211; heraus gefunden werden. Mit dieser IP-Adresse kann nun die Startseite des Moduls im Browser aufgerufen werden.<\/p>\n<div id=\"attachment_537\" style=\"width: 310px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/startseite-espeasy.jpg\"><img aria-describedby=\"caption-attachment-537\" decoding=\"async\" loading=\"lazy\" class=\"wp-image-537 size-medium\" src=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/startseite-espeasy-300x162.jpg\" alt=\"\" width=\"300\" height=\"162\" srcset=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/startseite-espeasy-300x162.jpg 300w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/startseite-espeasy-768x415.jpg 768w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/startseite-espeasy-1024x553.jpg 1024w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/startseite-espeasy.jpg 1915w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-537\" class=\"wp-caption-text\">Startsetie des mit Espeasy geflashten Moduls ESP8266-01<\/p><\/div>\n<p>&nbsp;<\/p>\n<h3><span id=\"120_Programmieren_des_Thermostat-ESP8266-01_mit_lua-skripten\">1.2.0 Programmieren des Thermostat-ESP8266-01 mit lua-skripten<\/span><\/h3>\n<p class=\"gross\">Der ESP8266 kann mit Hilfe der Software Esplorer programmiert werden ( Nach dem flashen kurz die Stromversorgung unterbrechen, sonst gibt es keine Verbindung \u00fcber den Esplorer).<\/p>\n<p class=\"gross\">Die Software kann hier heruntergeladen werden: <a href=\"https:\/\/github.com\/4refr0nt\/ESPlorer\">ESPlorer.<\/a><\/p>\n<p class=\"gross\">Damit der ESP8266 als Thermostat fungieren kann ist ein Temperaturf\u00fchler DS18B20 erforderlich. Der Temperaturf\u00fchler wird wie folgt an den ESP8266 angeschlossen:<\/p>\n<div id=\"attachment_381\" style=\"width: 310px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/ESP8266-DS18B20.png\"><img aria-describedby=\"caption-attachment-381\" decoding=\"async\" loading=\"lazy\" class=\"wp-image-381 size-medium\" src=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/ESP8266-DS18B20-300x139.png\" alt=\"\" width=\"300\" height=\"139\" srcset=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/ESP8266-DS18B20-300x139.png 300w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/ESP8266-DS18B20-768x356.png 768w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/ESP8266-DS18B20-1024x475.png 1024w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/ESP8266-DS18B20.png 1055w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-381\" class=\"wp-caption-text\">Schaltplan ESP8266-01-DS18B20<\/p><\/div>\n<p>&nbsp;<\/p>\n<div id=\"attachment_383\" style=\"width: 310px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/esploer.jpg\"><img aria-describedby=\"caption-attachment-383\" decoding=\"async\" loading=\"lazy\" class=\"wp-image-383 size-medium\" src=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/esploer-300x183.jpg\" alt=\"\" width=\"300\" height=\"183\" srcset=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/esploer-300x183.jpg 300w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/esploer-768x469.jpg 768w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/esploer-1024x625.jpg 1024w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/esploer.jpg 1103w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-383\" class=\"wp-caption-text\">Esplorer-Reiter Skript<\/p><\/div>\n<p>&nbsp;<\/p>\n<p>Mit &#8222;Save to ESP&#8220; werden die lua Dateien auf dem ESP8266 gespeichert. Die init.lua ist eine autostartdatei, sie wird sofort beim start des ESP8266 ausgef\u00fchrt. Deshalb empfiehlt es sich zum ausprobieren die init.lua z.Bsp. in test.lua umzubenennen, auf dem ESP8266 zu speichern und \u00fcber den Button Run zu starten. Erst wenn man wei\u00df, da\u00df alles funktioniert die test.lua wieder l\u00f6schen und als init.lua auf dem ESP8266 zu speichern. Diese Prozedur vermeidet, da\u00df der ESP8266 in versehentlich programmierte Endlosschleifen l\u00e4uft, diese sind dann, wenn \u00fcberhaupt nur sehr m\u00fchsam wieder zu beseitigen.<\/p>\n<div id=\"attachment_384\" style=\"width: 310px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/esplorer_commands.jpg\"><img aria-describedby=\"caption-attachment-384\" decoding=\"async\" loading=\"lazy\" class=\"wp-image-384 size-medium\" src=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/esplorer_commands-300x164.jpg\" alt=\"\" width=\"300\" height=\"164\" srcset=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/esplorer_commands-300x164.jpg 300w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/esplorer_commands-768x419.jpg 768w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/esplorer_commands-1024x559.jpg 1024w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/esplorer_commands.jpg 1231w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-384\" class=\"wp-caption-text\">Esplorer-Reiter Command<\/p><\/div>\n<p class=\"gross\">Hier der Reiter Commands des Esplorer. Hier k\u00f6nnen verschiedene Befehle an den ESP8266 abgesetz werden (Restart, ChipID, List files und nicht zu vergessen der Befehl &#8222;compile send.lua to .lc&#8220; &#8211; dies gilt nat\u00fcrlich f\u00fcr jedes andere auf dem esp8266 gespeichert lua-skript also &#8222;compilie xxx.lua to .lc&#8220;. Dies kann interessant sein, wenn es Speicherplatzprobleme gibt, denn die compilierten .lc skripte ben\u00f6tigen meistens nicht so viel Speicherplatz. Nach dem compilieren kann man dann die entsprechende lua-Datei vom ESP8266 l\u00f6schen.<\/p>\n<h3><span id=\"i-2\"><\/span><\/h3>\n<h3><span id=\"121_Lua-Dateien_des_WLAN-Thermostat-ESP8266-01_und_ihre_Funktionen\">1.2.1 Lua-Dateien des WLAN-Thermostat-ESP8266-01 und ihre Funktionen<\/span><\/h3>\n<p class=\"gross\">Insgesamt sind vier .lua Dateien erforderlich: <a href=\"http:\/\/schartel-web.de\/dateien\/thermostat\/init.lua\">init.lua<\/a>, <a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/dateien\/thermostat\/ds18b20.lua\">ds18b20.lua<\/a>, <a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/dateien\/thermostat\/send.lua\">send.lua<\/a>, <a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/dateien\/thermostat\/ds.lua\">ds.lua<\/a>.<\/p>\n<p class=\"gross\">Die Datei init.lua erzeugt einen webserver f\u00fcr die Einstellung der Solltemperatur und Anzeige der Ist-Temperatur Die Webseite (smartphonegerecht dimensioniert) kann von jedem Browser, sofern er sich im eigenen privaten LAN-Netz befindet mit der Adresse (hier 192.168.178.110, das ist die IP-Adresse des Web-Servers des ESP8266-01) aufgerufen werden:<\/p>\n<div id=\"attachment_390\" style=\"width: 183px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/webseite_esp8266_thermostat.jpg\"><img aria-describedby=\"caption-attachment-390\" decoding=\"async\" loading=\"lazy\" class=\"wp-image-390 size-medium\" src=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/webseite_esp8266_thermostat-173x300.jpg\" alt=\"\" width=\"173\" height=\"300\" srcset=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/webseite_esp8266_thermostat-173x300.jpg 173w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/webseite_esp8266_thermostat.jpg 381w\" sizes=\"(max-width: 173px) 100vw, 173px\" \/><\/a><p id=\"caption-attachment-390\" class=\"wp-caption-text\">Webseite esp8266-Thermostat<\/p><\/div>\n<div id=\"attachment_382\" style=\"width: 310px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/Esp8266-thermostat.jpg\"><img aria-describedby=\"caption-attachment-382\" decoding=\"async\" loading=\"lazy\" class=\"wp-image-382 size-medium\" src=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/Esp8266-thermostat-300x220.jpg\" alt=\"\" width=\"300\" height=\"220\" srcset=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/Esp8266-thermostat-300x220.jpg 300w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/Esp8266-thermostat.jpg 502w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-382\" class=\"wp-caption-text\">ESP8266-01-Thermostat im Geh\u00e4use mit mikro-USB Anschlu\u00df f\u00fcr die 5V Stromversorgung<\/p><\/div>\n<p>&nbsp;<\/p>\n<p class=\"gross\">Beim Start des ESP8266 wird die Standard-Soll-Temperatur von 21 Grad Celsius eingestellt (stemp=21, am Anfang der Datei init.lua). \u00dcber einen timer wird alle 30 Sekunden die Dateien ds.lua und send.lua ausgef\u00fchrt. Die Datei ds.lua sorgt daf\u00fcr, da\u00df &#8211; durch den timer alle 30 sek- die Temperatur gemessen wird (temp). Die Datei send.lua &#8211; durch den timer alle 30 sekunden &#8211; sendet die Ist-Temperatur und die eingestellte Soll-Temperatur an eine php-datei in einem Webserver eines RaspberryPi (<a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/dateien\/thermostat\/temp_vergleich.txt\">temp_vergleich.php<\/a>).Wichtig ist nat\u00fcrlich, da\u00df sowohl in der Datei send.lua als auch in der Datei temp_vergleich die richtigen IP-Adressen eingetragen werden (IP-Adresse des Webservers des RaspberryPi in der Datei send.lua, IP-Adresse des zweiten ESP8266 mit Relais in der Datei temp_vergleich.php. Auch mu\u00df in der Datei init.lua das richtige WLAN-Netz mit dem entsprechenden Passwort eingetragen werden (Zeile8: wifi.sta.config(&#8222;name_wlan_netz&#8220;,&#8220;passwort_wlan_netz&#8220;). In der Datei init.lua wird eine feste IP-Adresse erzeugt (Zeile 10:wifi.sta.setip({ip=&#8220;192.168.178.110&#8243;,netmask=&#8220;255.255.255.0&#8243;,gateway=&#8220;192.168.178.1&#8243;}).<\/p>\n<p class=\"gross\">In dieser Datei (temp_vergleich.php) werden Soll-und Ist-Temperatur miteinander verglichen. Abh\u00e4ngig vom Ergebnis des Vergleiches sendet die php-Datei temp_vergleich.php den Befehl &#8222;0x&#8220; oder &#8222;1x&#8220; an den ESP8266-01 mit Relais.<\/p>\n<p class=\"gross\">Ist die Ist-Temperatur gr\u00f6sser als die Solltemperatur wird das Signal &#8222;0x&#8220; &#8211; was gleichbedeutend mit Ausschalten ist &#8211; an einen weiteren ESP8266-01, der ein Relais ansteuert, gesendet. Die Stellantriebe der Fu\u00dfbodenheizung werden ausgeschaltet.<\/p>\n<p class=\"gross\">Ist die Ist-Temperatur kleiner als die Solltemperatur wird das Signal &#8222;1x&#8220; &#8211; was gleichbedeutend mit einschalten ist &#8211; an den ESP8266-01 mit Relais gesendet. Die Stellantriebe der Fu\u00dfbodenheizung werden eingeschaltet.<\/p>\n<p class=\"gross\">M\u00f6chte man die Standardeinstellung der Solltemperatur von 21 Grad Celsius ver\u00e4ndern, so mu\u00df lediglich einer der Buttons 18, 18.5, 19.5, 20, 20.5, 21, 21.5 22, 22.5, 23, 23.5, 24 gedr\u00fcckt werden, die Solltemperatur \u00e4ndert sich entsprechend dieses Wertes. Genauso wie die Ist-Temperatur alle 30 sek per Timer an den Webserver des RaspberryPi gesendet wird, so wird auch die Solltemperatur alle 30 sek an den Raspi gesendet, in der Datei temp_vergleich.php auf dem Web-Server des RaspberryPi mit der Ist-Temperatur verglichen und der zweite ESP8266-01 mit Relais entspechend den Werten geschaltet.<\/p>\n<h3><span id=\"130_WLAN-Thermostat_mit_Espeasy_und_Nodered\">1.3.0 WLAN-Thermostat mit Espeasy und Nodered<\/span><\/h3>\n<p>Auch hier wird der DS18B20 Temperaturf\u00fchler wie im obigen Schaltplan ESP8266-01-DS18B20 zu sehen mit dem ESP8266-01 Modul verbunden. Zun\u00e4chst werden die Devices <em>temp_wz\/TempWZ (Environment DS18b20)<\/em> und <em>Solltemp_Dev\/Solltemp (Dummy Device) <\/em>eingerichtet. temp_wz=Device Name, TempWZ=value; Solltemp_Dev=Device Name, Solltemp=Value. Mit dem Device <em>temp_wz<\/em> &#8211; eingerichtet als Environment DS 18B20 &#8211; wird die Temperatur\u00a0 im Wohnzimmer im Abstand von 30 Sekunden gemessen (Interval: 30). Mit dem Device <em>Solltemp_Dev<\/em>\u00a0 &#8211; eingerichtet als Generic Dummy Device &#8211; wird die eingestellte Solltemperatur festgelegt. Innerhalb des Reiters <em>config<\/em> wird die Unit Number auf 0 gesetzt, au\u00dferdem kann der Name des Moduls hier ver\u00e4ndert werden. Die Solltemperatur wird \u00fcber eine Benutzeroberfl\u00e4che von Nodered &#8211; Nodered Dashboard &#8211;\u00a0 eingestellt (Raspberry 4 &#8211; Nodered: http:\/\/192.168.178.101:1880\/ui\/). Nat\u00fcrlich mu\u00df nodered auf diesem Rechner installiert sein und laufen. Installation von nodered auf dem raspberry siehe: <a href=\"https:\/\/nodered.org\/docs\/getting-started\/raspberrypi\" target=\"_blank\" rel=\"noopener\">https:\/\/nodered.org\/docs\/getting-started\/raspberrypi<\/a> . Nodered ist ein von IBM entwickeltes grafisches Entwicklungswerkzeug (<a href=\"https:\/\/de.wikipedia.org\/wiki\/Node-RED\" target=\"_blank\" rel=\"noopener\">https:\/\/de.wikipedia.org\/wiki\/Node-RED<\/a>).<\/p>\n<div id=\"attachment_567\" style=\"width: 212px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/node-red_solltemperatur.jpg\"><img aria-describedby=\"caption-attachment-567\" decoding=\"async\" loading=\"lazy\" class=\"wp-image-567 size-medium\" src=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/node-red_solltemperatur-202x300.jpg\" alt=\"\" width=\"202\" height=\"300\" srcset=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/node-red_solltemperatur-202x300.jpg 202w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/node-red_solltemperatur.jpg 402w\" sizes=\"(max-width: 202px) 100vw, 202px\" \/><\/a><p id=\"caption-attachment-567\" class=\"wp-caption-text\">Einstellung der Solltemperatur in Nodered<\/p><\/div>\n<div id=\"attachment_542\" style=\"width: 310px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_devices.jpg\"><img aria-describedby=\"caption-attachment-542\" decoding=\"async\" loading=\"lazy\" class=\"wp-image-542 size-medium\" src=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_devices-300x148.jpg\" alt=\"\" width=\"300\" height=\"148\" srcset=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_devices-300x148.jpg 300w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_devices-768x379.jpg 768w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_devices-1024x506.jpg 1024w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_devices.jpg 1914w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-542\" class=\"wp-caption-text\">Devices temp_wz und Solltemp im ESP8266-01 Modul Temperatur Wohnzimmer<\/p><\/div>\n<p><a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_devices.jpg\">\u00a0\u00a0\u00a0\u00a0\u00a0<\/a><\/p>\n<p>Im n\u00e4chsten Schritt m\u00fcssen der Controller <em>OpenHAP MQTT\u00a0 Port 1883<\/em> und &#8211; sofern man \u00fcberDomoticz verf\u00fcgt &#8211; der Controller <em>Domoticz HTTP Port 8080<\/em> angelegt mit seinen entsprechenden IP-Adressen angelegt werden (Hier: OpenHAP MQTT 192.168.178.101 und Domoticz HTTP 192.168.178.54).<\/p>\n<div id=\"attachment_541\" style=\"width: 310px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_controllers.jpg\"><img aria-describedby=\"caption-attachment-541\" decoding=\"async\" loading=\"lazy\" class=\"wp-image-541 size-medium\" src=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_controllers-300x153.jpg\" alt=\"\" width=\"300\" height=\"153\" srcset=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_controllers-300x153.jpg 300w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_controllers-768x392.jpg 768w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_controllers-1024x522.jpg 1024w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_controllers.jpg 1908w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-541\" class=\"wp-caption-text\">Controller in Espeasy<\/p><\/div>\n<p>Die Werte f\u00fcr die Temperatur im Wohnzimmer temp_wz werden alle 30 Sekunden \u00fcber MQTT \u00fcbertragen (Controller <em>OpenHAP MQTT\u00a0 Port 1883<\/em>). Der Wert f\u00fcr die Solltemperatur wird alle 60 sek (Interval Device Solltemp_Dev\/Solltemp) \u00fcber MQTT \u00fcbertragen. Voraussetzung daf\u00fcr ist, da\u00df in den beiden Devices die \u00dcbertragung an die Controller angekreuzt ist.<\/p>\n<p><a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_devices_temp_wz_controller.jpg\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-medium wp-image-553\" src=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_devices_temp_wz_controller-191x300.jpg\" alt=\"\" width=\"191\" height=\"300\" srcset=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_devices_temp_wz_controller-191x300.jpg 191w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_devices_temp_wz_controller.jpg 545w\" sizes=\"(max-width: 191px) 100vw, 191px\" \/>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/a><a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_devices_solltemp_dev_controller.jpg\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-medium wp-image-552\" src=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_devices_solltemp_dev_controller-224x300.jpg\" alt=\"\" width=\"224\" height=\"300\" srcset=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_devices_solltemp_dev_controller-224x300.jpg 224w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_devices_solltemp_dev_controller.jpg 509w\" sizes=\"(max-width: 224px) 100vw, 224px\" \/><\/a><\/p>\n<p>Damit die Werte f\u00fcr die Solltemperatur und die Temperatur im Wohnzimmer per MQTT an den Rechner mit der IP-Adresse 192.168.178.101 \u00fcbertragen werden k\u00f6nnen, mu\u00df auf diesem &#8211; es ist ein Rasberry 4 mit Raspian &#8211;\u00a0 das Softwaremodul mosquitto installiert sein und\u00a0 der mosquitto daemon laufen (Installation von mosquitto siehe: h<a href=\"https:\/\/www.instructables.com\/id\/Installing-MQTT-BrokerMosquitto-on-Raspberry-Pi\/\" target=\"_blank\" rel=\"noopener\">ttps:\/\/www.instructables.com\/id\/Installing-MQTT-BrokerMosquitto-on-Raspberry-Pi\/ <\/a>).<\/p>\n<p>Die Stellantriebe der Fu\u00dfbodenheizung\u00a0 werden \u00fcber ein 230 V Relais &#8211; das ebenfalls \u00fcber ein ESP8266-01 Modul angesteuert wird &#8211; geschaltet. Damit das auch funktioniert ist es wichtig, da\u00df in beiden ESP8266-01 Modulen die UDP-Ports eingerichtet sind. Das erfolgt \u00fcber den Reiter Tools \u00fcber den dortigen Menupunkt <em>advanced<\/em> :<\/p>\n<div id=\"attachment_546\" style=\"width: 310px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_tools.jpg\"><img aria-describedby=\"caption-attachment-546\" decoding=\"async\" loading=\"lazy\" class=\"wp-image-546 size-medium\" src=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_tools-300x158.jpg\" alt=\"\" width=\"300\" height=\"158\" srcset=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_tools-300x158.jpg 300w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_tools-768x404.jpg 768w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_tools-1024x539.jpg 1024w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_tools.jpg 1903w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-546\" class=\"wp-caption-text\">Tools\/Advanced<\/p><\/div>\n<p>Hier gibt es einen Abschnitt Serial Settings, dort mu\u00df der Menupunkt <em>Enable Serial Settings<\/em> angehakt sein, als Baudrate 115200 eingetragen werden und im Abschnitt <em>Inter Espeasy Network<\/em> f\u00fcr den UDP-Port <em>65335<\/em> eingetragen werden:<\/p>\n<div id=\"attachment_548\" style=\"width: 310px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_tools_advanced_serial_settings.jpg\"><img aria-describedby=\"caption-attachment-548\" decoding=\"async\" loading=\"lazy\" class=\"wp-image-548 size-medium\" src=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_tools_advanced_serial_settings-300x154.jpg\" alt=\"\" width=\"300\" height=\"154\" srcset=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_tools_advanced_serial_settings-300x154.jpg 300w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_tools_advanced_serial_settings-768x394.jpg 768w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_tools_advanced_serial_settings-1024x526.jpg 1024w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_tools_advanced_serial_settings.jpg 1915w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-548\" class=\"wp-caption-text\">Tools\/Advanced\/Serial Settings<\/p><\/div>\n<h3><span id=\"131_Rules_fuer_den_Vergleich_von_temp_wz_und_Solltemp_mit_Aktionen_fuer_das_Schaltrelais_der_Stellantriebe\">1.3.1 Rules f\u00fcr den Vergleich von temp_wz und Solltemp mit Aktionen f\u00fcr das Schaltrelais der Stellantriebe<\/span><\/h3>\n<p>Damit \u00fcberhaupt der Reiter Rules in Espeasy erscheint, mu\u00df dieser erst aktiviert werden. Das erfolgt \u00fcber den Reiter Tools innerhalb des Men\u00fcpunktes <em>Advanced<\/em>. Dort mu\u00df unter\u00a0 <em>Rules Settings Rules<\/em> und <em>Old Engine<\/em> angehakt werden.<\/p>\n<p><a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_tools_advanced_rules_settings.jpg\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-medium wp-image-547\" src=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_tools_advanced_rules_settings-300x159.jpg\" alt=\"\" width=\"300\" height=\"159\" srcset=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_tools_advanced_rules_settings-300x159.jpg 300w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_tools_advanced_rules_settings-768x408.jpg 768w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_tools_advanced_rules_settings-1024x544.jpg 1024w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/themostat_tools_advanced_rules_settings.jpg 1888w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>Im Reiter Rules wird dann die Solltemperatur (Solltemp_Dev#SollTemp) mit der Wohnzimmertemperatur (temp_wz#TempWZ) verglichen.<\/p>\n<p>on temp_wz#TempWZ do<br \/>\nif [temp_wz#TempWZ] &gt; [Solltemp_Dev#SollTemp]<br \/>\nevent,TurnOff<br \/>\nendif<br \/>\nendon<\/p>\n<p>In diesem Abschnitt wird sobald alle 30 Sekunden die Wohnzimmer-Temperatur gemessen wird, diese mit der Solltemperatur verglichen. Wenn die Wohnzimmer-Temperatur gr\u00f6sser als die Solltemperatur ist, wird das event TurnOff ausgel\u00f6st<\/p>\n<p>on TurnOff do<br \/>\nsendTo 2,event,RelaisOff<br \/>\nendon<\/p>\n<p>Mit dem event turnoff wird der Befehl <em>sendTo 2,event,RelaisOff<\/em> ausgel\u00f6st. <em>sendTo 2<\/em> bedeutet: Sende zur Unit 2 (Unit 2 ist das ESP8266-01 Modul f\u00fcr das Schaltrelais), event <em>RelaisOff<\/em> bedeutet: f\u00fchre dort &#8211; also im Esp8266-01 Modul f\u00fcr das Schaltrelais Stellmotor Fussbodenheizung &#8211; das event <em>Relais off<\/em> aus (Damit alles funktioniert, mu\u00df im Reiter config des ESP8266-01 Moduls f\u00fcr das Schaltrelais die UnitNumber auf 2 gesetzt sein).<\/p>\n<p><a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/relais_main_unit.jpg\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-medium wp-image-561\" src=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/relais_main_unit-300x136.jpg\" alt=\"\" width=\"300\" height=\"136\" srcset=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/relais_main_unit-300x136.jpg 300w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/relais_main_unit-768x348.jpg 768w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/relais_main_unit-1024x464.jpg 1024w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/relais_main_unit.jpg 1530w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a>\u00a0\u00a0 <a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/relais_rules.jpg\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-medium wp-image-562\" src=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/relais_rules-300x169.jpg\" alt=\"\" width=\"300\" height=\"169\" srcset=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/relais_rules-300x169.jpg 300w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/relais_rules-768x434.jpg 768w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/relais_rules-1024x578.jpg 1024w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/relais_rules.jpg 1232w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p><strong>Rules im Modul ESP8266-01 f\u00fcr das Schaltrelais<\/strong><\/p>\n<p>on RelaisOff do<br \/>\nTaskValueSet 1,1,0<br \/>\ngpio,2,1<br \/>\nendon<\/p>\n<p>Dies ist das event <em>RelaisOff<\/em> in den Rules des ESP8266-01 Moduls, das das Schaltrelais f\u00fcr den Stellmotor Fussbodenheizung ansteuert. TaskValueSet 1,1,0 bedeutet: Setze im Device 1=Heizungsstatus (erste 1), den ersten Wert (zweite 1) auf 0. gpio,2,1 bedeutet: gpio2 wird auf HIGH gesetzt.<\/p>\n<p>Anlaoges passiert, wenn die Wohnzimmertemperatur kleiner als die Solltemperatur ist. Das event TurnOn wird ausgel\u00f6st, welches wiederum das envent RelaisOn\u00a0 im ESP8266-01 Modul f\u00fcr das Schaltrelais ausl\u00f6st &#8211; das Schlatrelais wird geschlossen und der Stellmotor der Fussbodenheizung \u00f6ffnet das Ventil.<\/p>\n<p><strong>Rules im ESP8266-01 Modul Temperatur Wohnzimmer:<\/strong><\/p>\n<p>on temp_wz#TempWZ do<br \/>\nif [temp_wz#TempWZ] &lt; [Solltemp_Dev#SollTemp]<br \/>\nevent,TurnOn<br \/>\nendif<br \/>\nendon<\/p>\n<p>on TurnOn do<br \/>\nsendTo 2,event,RelaisOn<br \/>\ngpio,12,0<br \/>\nendon<\/p>\n<p><strong>Rules im ESP8266-01 Modul Schaltrelais:<\/strong><\/p>\n<p>on RelaisOn do<br \/>\nTaskValueSet 1,1,1<br \/>\ngpio,2,0<br \/>\nendon<\/p>\n<p>TaskValueSet 1,1,1 bedeutet: Setze im Device 1=Heizungsstatus (erste 1), den ersten Wert (zweite 1) auf 1. gpio,2,0 bedeutet: gpio2 wird auf LOW gesetzt.<\/p>\n<h3><span id=\"132_Einstellung_der_Solltemperatur_ueber_Nodered_und_Protokollierung_der_Temperaturen_und_Schaltvorgaenge_mit_mysql\">1.3.2 Einstellung der Solltemperatur \u00fcber Nodered und Protokollierung der Temperaturen und Schaltvorg\u00e4nge mit mysql<\/span><\/h3>\n<p>Wie bereits erw\u00e4hnt wird die Soltemperatur \u00fcber ein auf dem Raspberry 4 laufenden nodered eingestellt. Diese Funktionsf\u00e4higkeit wird in nodered mit der Einrichtung eines sogenannten Flows ereicht:<\/p>\n<p><a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/nodered-solltemp_flow.jpg\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone wp-image-574 size-full\" src=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/nodered-solltemp_flow.jpg\" alt=\"\" width=\"1912\" height=\"1003\" srcset=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/nodered-solltemp_flow.jpg 1912w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/nodered-solltemp_flow-300x157.jpg 300w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/nodered-solltemp_flow-768x403.jpg 768w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/nodered-solltemp_flow-1024x537.jpg 1024w\" sizes=\"(max-width: 1912px) 100vw, 1912px\" \/><\/a><\/p>\n<p>Dieses nodered-flow sorgt letzendlich daf\u00fcr, da\u00df die Solltemperatur eingestellt werden kann (im nodered-Dashboard), die aktuelle Wohnzimmertemperatur angezeigt wird und\u00a0 abh\u00e4ngig von den Temperaturverh\u00e4ltnissen Solltemp\/temp_wz angezeigt wird, ob die Heizung aus oder an ist. Eine grobe Erkl\u00e4rung des Flows:<\/p>\n<p>Das\u00a0\u00a0<a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/mqtt-in.jpg\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-full wp-image-570\" src=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/mqtt-in.jpg\" alt=\"\" width=\"113\" height=\"53\" \/><\/a> Symbol hier:<\/p>\n<p>\/EOH_Thermostat_WZ\/temp_wz\/TempWZ, \/EOH_Thermostat_WZ\/Solltemp_Dev\/SollTemp, \/ESP_Relais\/relais\/HeizungStatus, temp_thermostat<\/p>\n<p>steht f\u00fcr en Empfang der aktuellen Wohnzimmertemperatur, der aktullen Solltemperatur und den Empfang des Heizungsstatus (Heizung an, Heizung aus) \u00fcber MQTT von den ESP8266-01 Devices temp_wohnzimmer.<\/p>\n<p>\u00dcber das Gauge \u00a0<a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/node-red-gauge.jpg\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-full wp-image-572\" src=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/node-red-gauge.jpg\" alt=\"\" width=\"110\" height=\"50\" \/><\/a> Solltemp wird im Dashboard die Solltemperatur eingestellt : <a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/node-red_solltemperatur-1.jpg\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone wp-image-575 size-thumbnail\" src=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/node-red_solltemperatur-1-150x150.jpg\" alt=\"\" width=\"150\" height=\"150\" \/><\/a><\/p>\n<p>Mit der Funktion\u00a0<a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/nodered-function.jpg\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-full wp-image-571\" src=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/nodered-function.jpg\" alt=\"\" width=\"115\" height=\"63\" \/><\/a> Funktion Solltemp an espeasy_Thermostat wird die aktuelle Solltemperatur an das ESP8266-01 Modul Thermostat Wohnzimmer gesendet:<\/p>\n<p>var solltemp=msg.payload;<br \/>\nmsg.url=&#8220;http:\/\/192.168.178.78\/control?cmd=TaskValueSet 2,1,&#8220;;<br \/>\n\/\/var solltemp=24;<br \/>\nmsg.url=msg.url + solltemp;<br \/>\nreturn msg;<\/p>\n<p>Die IP-Adresse 192.168.178.78 ist die IP-Adresse des ESP8266-01 Moduls Thermostat Wohnzimmer, TaskValueSet 2,1, setzt das Device Solltemp auf die eingestellte Solltemperatur.<\/p>\n<p>Andere Funktionen sorgen daf\u00fcr, da\u00df aktuelle Solltemperaturwerte und Wohnszimmertemperaturen in eine mysql Datenbank geschrieben werden, oder von dort ausgelesen werden, damit sie im Nodered Dashboard angezeigt werden k\u00f6nnen, z.Bsp: <em>Funktion mysql insert, mysql select tab_heizungs_relais.<\/em><\/p>\n<p>var temperature=msg.payload;<br \/>\nmsg.topic=&#8220;INSERT INTO temp_test (temperature) VALUES (&#8218;&#8220; + temperature + &#8222;&#8218;)&#8220;;<br \/>\nreturn msg;<\/p>\n<p>jetzt = new Date();<br \/>\njetzt.toLocaleDateString(&#8218;en-US&#8216;, { year: &#8217;numeric&#8216;, month: &#8218;long&#8216;, day: &#8217;numeric&#8216; });<br \/>\nvar gesetzt = new Date();<br \/>\nvar tage = 8;<\/p>\n<p>gesetzt.setDate(jetzt.getDate() &#8211; tage);<br \/>\nvar datum=gesetzt.toLocaleDateString(&#8217;se-SE&#8216;, { year: &#8217;numeric&#8216;, month: &#8218;2-digit&#8216;, day: &#8218;2-digit&#8216; });<\/p>\n<p>msg.topic=&#8220;SELECT id, DATE_FORMAT(datum_zeit,&#8217;%d.%m.%Y %H:%i&#8216;) AS datum_zeit, heizung_relais AS hzg, temp_thermostat,solltemp FROM tab_heizung_relais where date_format(datum_zeit,&#8217;%Y-%m-%d&#8216;) &gt;= &#8218;&#8220; + datum + &#8222;&#8218; ORDER BY datum_zeit DESC&#8220;;<br \/>\nreturn msg;<\/p>\n<p>Das Symbol\u00a0<a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/node-red-mysql.jpg\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-full wp-image-573\" src=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/node-red-mysql.jpg\" alt=\"\" width=\"119\" height=\"51\" \/><\/a> bezeichnt die mysql Datenbank: Hier wird der Datenbankname, die IP-Adresse des mysql-Servers auf dem raspberry und das passwort der Datenbank eingetragen.<\/p>\n<p>Das komplettte Nodered-flow kann hier\u00a0<a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/flow_thermostat_relais.txt\" target=\"_blank\" rel=\"noopener\">nodered-flow Thermostat\/Relais<\/a> heruntergeladen werden.<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<h1><span id=\"2_WLAN-Thermostat-Relais_mit_einem_ESP8266-01\">2. WLAN-Thermostat-Relais mit einem ESP8266-01<\/span><\/h1>\n<p class=\"gross\"><strong>Da der ESP8266-01-Thermostat-Relais im Heizungsraum untergebracht wird, mu\u00df nat\u00fcrlich sichergestellt werden, da\u00df f\u00fcr diesen ESP8266 auch WLAN-Empfang gew\u00e4hrleistet ist.<\/strong><\/p>\n<p class=\"gross\">Der ESP8266-01 f\u00fcr das Thermostat-Relais wird\u00a0 im Grundsatz beschaltet wie der ESP8266-Thermostat. Anstelle des Temperaturf\u00fchlers DS18B20 wird das Relais angeschlossen.\u00a0 Das Schaltbild des 5V\/220v Relais sieht folgenderma\u00dfen aus:<\/p>\n<div id=\"attachment_378\" style=\"width: 310px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/5V-220VRelais-Schaltplan.jpg\"><img aria-describedby=\"caption-attachment-378\" decoding=\"async\" loading=\"lazy\" class=\"wp-image-378 size-medium\" src=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/5V-220VRelais-Schaltplan-300x181.jpg\" alt=\"\" width=\"300\" height=\"181\" srcset=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/5V-220VRelais-Schaltplan-300x181.jpg 300w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/5V-220VRelais-Schaltplan-768x464.jpg 768w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/5V-220VRelais-Schaltplan-1024x619.jpg 1024w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/5V-220VRelais-Schaltplan.jpg 1139w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-378\" class=\"wp-caption-text\">Relais Prinzipschaltplan<\/p><\/div>\n<p>&nbsp;<\/p>\n<div id=\"attachment_387\" style=\"width: 310px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/Schaltplan-Thermostat-Relais.jpg\"><img aria-describedby=\"caption-attachment-387\" decoding=\"async\" loading=\"lazy\" class=\"wp-image-387 size-medium\" src=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/Schaltplan-Thermostat-Relais-300x157.jpg\" alt=\"\" width=\"300\" height=\"157\" srcset=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/Schaltplan-Thermostat-Relais-300x157.jpg 300w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/Schaltplan-Thermostat-Relais-768x402.jpg 768w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/Schaltplan-Thermostat-Relais.jpg 902w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-387\" class=\"wp-caption-text\">ESP8266-01-Thermostat-Relais-Schaltplan<\/p><\/div>\n<p>&nbsp;<\/p>\n<h3><span id=\"21_Lua-Dateien_des_ESP8266-01_Thermostat-Relais\">2.1 Lua-Dateien des ESP8266-01 Thermostat-Relais<\/span><\/h3>\n<p>&nbsp;<\/p>\n<p class=\"gross\">F\u00fcr den ESP8266-01-Thermostat-Relais sind zwei Dateien erforderlich: <a href=\"http:\/\/schartel-web.de\/dateien\/thermostat-relais\/init.lua\">init.lua<\/a>, <a href=\"http:\/\/schartel-web.de\/dateien\/thermostat-relais\/antwort_r.lua\">antwort_r.lua<\/a><\/p>\n<p class=\"gross\">Die Datei init.lua versorgt den ESP8266 mit einer IP-Adresse aus dem privaten Netz. Hier wurde eine feste IP-Adresse .109 gew\u00e4hlt.<\/p>\n<p class=\"gross\">Weiterhin ist der ESP8266 mit der IP-adresse 192.168.178.109:9274 auf Port 9274 empfangsbereit f\u00fcr Befehle.<\/p>\n<p class=\"gross\">Bekommt der ESP8266 von der Datei temp_vergleich.php den Befehl &#8222;0x&#8220;, so wird der Pin GPIO02 auf HIGH=3,3V geschaltet. Das Relais schaltet den Stellantrieb aus. Die Heizung ist aus.<\/p>\n<p class=\"gross\">Bekommt der ESP8266 von der Datei temp_vergleich.php den Befehl &#8222;1x&#8220;, so wird der Pin GPIO02 auf LOW=0V=GND geschaltet. Das Relais schaltet den Stellantrieb an. Die Heizung ist an.<\/p>\n<p class=\"gross\">Mit Hilfe der Datei antwort_r.lua wird eine Webseite erzeugt, die den Zustand des ESP8266-Thermostat-Relais anzeigt, &#8222;Heizung ist AUS&#8220; oder &#8222;Heizung ist AN&#8220;. Dar\u00fcber hinaus kann mit Hilfe eines Buttons der Zustand des Relais manuell abgefragt werden.<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<div id=\"attachment_389\" style=\"width: 310px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/Webseite-Thermostat-Relais.jpg\"><img aria-describedby=\"caption-attachment-389\" decoding=\"async\" loading=\"lazy\" class=\"wp-image-389 size-medium\" src=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/Webseite-Thermostat-Relais-300x133.jpg\" alt=\"\" width=\"300\" height=\"133\" srcset=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/Webseite-Thermostat-Relais-300x133.jpg 300w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/Webseite-Thermostat-Relais.jpg 723w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-389\" class=\"wp-caption-text\">Webseite Thermostat-Relais<\/p><\/div>\n<h3><span id=\"22_Thermostat_Relais_mit_Espeasy\">2.2 Thermostat Relais mit Espeasy<\/span><\/h3>\n<p>Die Devices des ESP8266-01 Moduls f\u00fcr das Thermostat Relais sind relais\/Heizungsstatus (Dummy Device)\u00a0 und heizung\/Switch (Switch Input Switch). relais=Device Name, Heizungsstatus=Value; heizung=Device Name, Switch=Value. Die Rules f\u00fcr das ESP8266-01 Relaismodul siehe Abschnitt 1.3.1.<\/p>\n<p><a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/relais_rules.jpg\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-medium wp-image-562\" src=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/relais_rules-300x169.jpg\" alt=\"\" width=\"300\" height=\"169\" srcset=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/relais_rules-300x169.jpg 300w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/relais_rules-768x434.jpg 768w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/relais_rules-1024x578.jpg 1024w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2020\/02\/relais_rules.jpg 1232w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>Die Controller dieses Moduls sind die gleichen wie im ESP8266-01 Modul f\u00fcr das Thermostat: <em>OpenHAP MQTT\u00a0 Port 1883<\/em> und \u2013 sofern man \u00fcberDomoticz verf\u00fcgt \u2013 der Controller <em>Domoticz HTTP Port 8080<\/em>.<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<div id=\"attachment_388\" style=\"width: 238px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/Thermostat-Relais-Keller.jpg\"><img aria-describedby=\"caption-attachment-388\" decoding=\"async\" loading=\"lazy\" class=\"wp-image-388 size-medium\" src=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/Thermostat-Relais-Keller-228x300.jpg\" alt=\"\" width=\"228\" height=\"300\" srcset=\"http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/Thermostat-Relais-Keller-228x300.jpg 228w, http:\/\/test1.schartel-web.de\/wp-content\/uploads\/2018\/09\/Thermostat-Relais-Keller.jpg 663w\" sizes=\"(max-width: 228px) 100vw, 228px\" \/><\/a><p id=\"caption-attachment-388\" class=\"wp-caption-text\">Thermostat-Relais im Einsatz an der Heizung<\/p><\/div>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>ESP8266-01-WLAN-Thermostat mit ESP8266-01-WLAN-Relais f\u00fcr Stellantrieb Fu\u00dfbodenheizungInhalt &nbsp; 1.\u00a0WLAN-Thermostat mit DS18B20 Temperaturf\u00fchler an ESP8266-01 1.1.0 Flashen der Firmware mit nodemcu Zun\u00e4chst mu\u00df der esp8266-01 mit der nodemcu-firmware geflasht werden.Dazu ben\u00f6tigt man den nodemcu flasher-master. Diese Software kann hier: nodemcu-flasher heruntergeladen werden. In der Software die Com-Schnittstelle des FTDI-Programmierers einstellen und unter config die firmware an der [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":[],"_links":{"self":[{"href":"http:\/\/test1.schartel-web.de\/index.php?rest_route=\/wp\/v2\/pages\/375"}],"collection":[{"href":"http:\/\/test1.schartel-web.de\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"http:\/\/test1.schartel-web.de\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"http:\/\/test1.schartel-web.de\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/test1.schartel-web.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=375"}],"version-history":[{"count":52,"href":"http:\/\/test1.schartel-web.de\/index.php?rest_route=\/wp\/v2\/pages\/375\/revisions"}],"predecessor-version":[{"id":592,"href":"http:\/\/test1.schartel-web.de\/index.php?rest_route=\/wp\/v2\/pages\/375\/revisions\/592"}],"wp:attachment":[{"href":"http:\/\/test1.schartel-web.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=375"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}