Da mir die bisherige Rollladensteuerung in meiner Wohnung nicht "Smart" genug war, habe ich mich dazu entschlossen, selbst eine Steuerung mit einem ESP8266 zu bauen. FHEM, das als als Steuerungszentrale dient, habe ich bereits am laufen und mit einigen Geräten verbunden.
Alle Leitungen der Rollläden und der zugehörigen Taster laufen in einem UP-Kasten zusammen - Also beste Voraussetzungen! Um meine 6 Rollläden zu steuern, brauche ich insgesamt 12 Relais. Hier gibt es verschiedene Ansteuerungsmöglichkeiten:
VORSICHT: Die Rohrmotoren der Rollläden werden mit 230V angesteuert. Diese Spannung ist LEBENSGEFÄHRLICH! Daher möchte ich hiermit darauf hinweisen, dass diese Arbeiten nur von sachverständigen Personen durchgeführt werden. Ich übernehme selbstverständlich keine Haftung für eventuell auftretende Schäden!
Möglichkeit 1:
Ein Relais für AUF, ein Relais für AB. Vorteil: Einfache Ansteuerung. Nachteil: werden beide Relais gleichzeitig angesteuert, gibt es einen Kurzschluss. Das könnte durch eine Hardwareverriegelung gelöst werden, dafür werden allerdings Relais mit Öffner und Schließer bzw zwei Wechslern benötigt.
Möglichkeit 2:
Ein Relais für AN/AUS und ein Relais für die Richtung. Der Vorteil dieser Ansteuerung liegt darin, dass zu keiner Zeit gleichzeitig die Leitung für "AUF" und "AB" der einzelnen Rollläden gleichzeitig angesteuert werden kann. Aus diesem Grund habe ich mich für diese Möglichkeit entschieden.
Da der ESP8266, in meinem Fall ein Wemos D1 Mini, zu wenig freie GPIO Pins hat, habe ich drei PCF8574 Port-Expander verwendet. Diese Port-Expander werden "out of the box" von ESPEasy unterstützt. Durch die Port-Expander habe ich insgesamt 24x GPIO Pins zur Verfügung - 12x zur Ansteuerung der Relais und 12x zum Anschluss der Taster.
Der ESP8266 erhält von FHEM nur Befehle, welches Relais angesteuert werden soll. Voraussetzung hierfür ist ein bestehendes FHEM System mit installiertem Modul "ESPBridge". Ebenso muss die Firmware "ESPEasy" auf dem ESP8622 geflasht sein.
In FHEM wurden folgende Devices angelegt:
- ESP Device
- 6x Dummy Device - Diese stellen die einzelnen Rollläden dar
- 18x notify Device - pro Dummy Device und pro Status jeweils eines
Hier ein Auszug der FHEM.cfg:
define Rollladen1 dummy
attr Rollladen1 cmdIcon stop:rc_STOP up:rc_UP down:rc_DOWN
attr Rollladen1 group Shutter
attr Rollladen1 icon fts_shutter_1w
attr Rollladen1 room Schlafzimmer
attr Rollladen1 webCmd up:stop:down
define Rollladen1down notify Rollladen1:down {\
fhem("set ESPEasy_cv_esp03_uptime pcfgpio 75 1");;\
fhem("set ESPEasy_cv_esp03_uptime pcfgpio 76 0");;\
fhem("delete Rollladen1_down_off");;\
fhem("delete Rollladen1_up_off");;\
fhem("define Rollladen1_down_off at +00:00:20 set Rollladen1 stop");;\
}
attr Rollladen1down room _System
define Rollladen1up notify Rollladen1:up {\
fhem("set ESPEasy_cv_esp03_uptime pcfgpio 75 0");;\
fhem("set ESPEasy_cv_esp03_uptime pcfgpio 76 0");;\
fhem("delete Rollladen1_down_off");;\
fhem("delete Rollladen1_up_off");;\
fhem("define Rollladen1_up_off at +00:00:20 set Rollladen1 stop");;\
}
attr Rollladen1up room _System
define Rollladen1stop notify Rollladen1:stop {\
fhem("set ESPEasy_cv_esp03_uptime pcfgpio 76 1");;\
fhem("set ESPEasy_cv_esp03_uptime pcfgpio 75 1");;\
}
attr Rollladen1stop room _System
define Rollladen2 dummy
attr Rollladen2 cmdIcon stop:rc_STOP up:rc_UP down:rc_DOWN
attr Rollladen2 group Shutter
attr Rollladen2 icon fts_shutter_1w
attr Rollladen2 room Wohnzimmer
attr Rollladen2 webCmd up:stop:down
define Rollladen2down notify Rollladen2:down {\
fhem("set ESPEasy_cv_esp03_uptime pcfgpio 73 1");;\
fhem("set ESPEasy_cv_esp03_uptime pcfgpio 74 0");;\
fhem("delete Rollladen2_down_off");;\
fhem("delete Rollladen2_up_off");;\
fhem("define Rollladen2_down_off at +00:00:20 set Rollladen2 stop");;\
}