HowTo: Hörmann Portronic D-5000 Drehtorantriebe Smart machen mit ESP

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • Prof.Mobilux
    Supermoderator
    • 25.08.2015
    • 5121

    #1

    HowTo: Hörmann Portronic D-5000 Drehtorantriebe Smart machen mit ESP

    Hi,

    ich habe am Wochenende mal ein kleines Projekt umgesetzt, dass ich "schon immer mal" realisieren wollte - mit Zeug aus meiner Bastelkiste. Ich habe seit mehr als 10 Jahren einen Hörmann Portronic D-5000 Drehtorantrieb für unser Gartentor. Das System läuft seitdem autark, d. h. ich habe als Zubehör die Lichtschranke von Hörmann verbaut, die 24V LED-Warnleuchte und zur Steuerung zwei Funkfernbedienungen (433 Mhz).

    Was mich schon immer genervt hat: Manchmal hab ich keine Fernbedienung dabei, neue kosten exorbitant viel (außer bei AliExpress), zudem hätte ich gerne eine Warnung, wenn das Tor offen steht.

    Ich habe das ganze System also smart gemacht mit ESP8266 (ESP32 geht natürlich auch, ich hatte den nur noch rumliegen).

    Klicke auf die Grafik für eine vergrößerte Ansicht  Name: IMG_9257.jpg Ansichten: 0 Größe: 909,4 KB ID: 473736 Klicke auf die Grafik für eine vergrößerte Ansicht  Name: Gartentor_Steckplatine.png Ansichten: 0 Größe: 423,2 KB ID: 473735 Klicke auf die Grafik für eine vergrößerte Ansicht  Name: Gartentor_Schaltplan.png Ansichten: 0 Größe: 120,4 KB ID: 473734

    Was kann das Ding?

    Der ESP greift die Statusrückmeldung "Tor zu" vom Optionsrelais der Hörmannsteuerung (klemmen .5 und .8) ab. Da über dieses Relais auch die 24V Warn-LED gesteuert wird und man nur entweder Statusrückmeldung oder externe LED konfigurieren kann, steuert der ESP jetzt über ein Relais die 24V LED selbst. Über einen Näherungssensor detektiert der ESP zudem die Stellung "Tor auf". Optional kann man natürlich hier auch einen Reedkontakt oder sonstwas verwenden. Über einen Transistor kann der ESP zudem einen Fahrt-Befehl an die Hörmannsteuerung absetzen (Klemme 21).

    Alle Dateien zum Nachbau sowie die Config von ESPEasy findet ihr im Anhang im ZIP-Archiv. Die Config.dat kann direkt in ESPEasy importiert weden.

    Hörmann Steuerung vorbereiten

    Siehe: https://www.tor7.de/media/pdf/e5/08/...-anleitung.pdf

    Die Stellung von DIP Schalter 6 und 7 muss auf "AUS" (Das Relais zieht in der Endlage Tor-Zu an). Die 24V LED (wenn vorhanden) wird vom Relais abgeklemmt. Die Lichtschranke verbleibt ganz normal an der Hörmann-Steuerung. Für den ESP greifen wir an Klemme "24V / 0V" die 24V Versorgungsspannung ab.

    Klemme 21 (Betr.-Taster) verbinden wir mit der Klemme auf unserer Platine. Diese Klemme wird bei Signal auf GND gezogen und löst eine Fahrt oder einen Stop aus (so wie mit der Fernbediehnung). Klemme .5 und .8 verbinden wir mit der entsprechenden Klemme unserer Platine. Hierüber erhalten wir die Endlage "Tor zu".

    Hardware Steuerung vorbereiten

    Das Fritzing-File findet ihr im Anhang. Ich hab das ganze Ding auf eine Streifenraster-Platine gebaut (darauf achten, dass die Streifen an zwei Stellen unterbrochen werden müssen - siehe Fritzing File). Was braucht ihr:Daran denken den DC-DC-Spannungsregler vor dem Einsetzen des ESP und dem Anschluss des Relais auf eine Ausgangsspannung von 5V einzustellen. Sonst: Hardware kapuuuutt :-)

    Software vorbereiten

    Ich nutze ESPEasy auf dem ESP, weil man hier über "Rules" entsprechende Skripte konfigurieren kann (automatisches Blinken der Leuchte, etc. pp.). Jede andere Firmware für einen ESP geht natürlich sicherlich auch.

    Ihr flasht also als erstes ESPEasy auf den ESP und richtet Euch WLAN etc. pp. ein: https://github.com/letscontrolit/ESPEasy

    Anschließend findet ihr die gesamte Config von mir im anhängenden ZIP-File - oder halt Screenshots zum Einrichten der Devices. Die Rules findet ihr ebenfalls im Anhang, die ihr Euch passend abspeichert und über die "Advanced Settings" auch aktivieren müsst -> siehe ESPEasy Doku: https://espeasy.readthedocs.io/en/latest/

    Achtung! Wenn ihr andere GPIOs verwendet (z. B. mit einem ESP32), müsst ihr auch die Rules entsprechend editieren! Hier sind die GPIOs hardcoded!

    Software - Status auslesen

    Der ESP kann den Status per HTTP, UDP oder MQTT (über z. B. LoxBerry) an den Miniserver senden. Aktiviert unter "Controllers" einfach das, was ihr gerne nutzen wollt.

    Folgende Stati gibt es:
    • Fahrt=0|1 - Das Tor fährt - weder Endlage zu noch auf ist aktiv
    • TorAuf=0|1 - Endlage TorAuf erkannt
    • TorZu=0|1 - Endlage TorZu erkannt
    • Fehler=0|1 - Fehler (unklarer Endlagenzustand oder die Fashrt ist in den Timeout gelaufen
    Während der Fahrt blinkt die Warnleuchte im Sekundentakt. Im Fehlerfall blinkt die Wanrleuchte alle 4 Sekunden. Bei Endlage TorAuf leuchtet die Warnleuchte dauerhaft. Wenn ihr das anders haben wollt, könnt ihr die Rules entsprechend editieren.

    Generic UDP:

    Die Pakete sehen wie folgt aus (bei mir konfiguriert Port 7005) - siehe Controller Einstellungen:

    Code:
    @@garagentor_1_status_Fahrt=1@@garagentor_1_status_TorAuf=0@@garagentor_1_status_TorZu=0@@garagentor_1_status_Fehler=0
    Generic HTTP:

    Die Stati werden per WebAPI an entsprechend benannte Virtual Inputs gesendet. Die VIrtual Inputs müssen exakt diesen Namen haben oder eine entsprechende Beschreibung - siehe Controller Einstellungen und WebAPI Loxone

    Code:
    /dev/sps/io/garagentor_1_status_Fahrt
    /dev/sps/io/garagentor_1_status_TorAuf
    /dev/sps/io/garagentor_1_status_TorZu
    /dev/sps/io/garagentor_1_status_Fehler
    MQTT:

    Gleiche Topic-Struktur wie bei HTTP oder UDP

    Software - Tor steuern

    ​Man kann ESPEasy über HTTP, UDP oder MQTT (z. B. LoxBerry, dann im Controller ein entsprechendes Topic subscriben) steuern. Der Befehl lautet dabei immer gleich. Die Steuerung versteht zwei Befehle:
    • trigger_pre - Es erfolgt zunächst eine 1sekündige "Vor-Warnung" über die 24V Leuchte durch schnelles Blinken, dann erfolgt die Fahrt
    • trigger - die Fahrt startet sofort, ohne Vorwarnung
    HTTP:

    Code:
    http://<espeasyipaddress>/control?cmd=event,trigger_pre
    http://<espeasyipaddress>/control?cmd=event,trigger
    UDP:

    Code:
    /dev/udp/<espeasyipaddress>/8266
    Code:
    event,trigger_pre
    event,trigger
    MQTT:

    Analog UDP, jeweils am Topic, welches ihr subscribed habt (siehe Controller).​
    Zuletzt geändert von Prof.Mobilux; vor einer Woche.
    🇺🇦 Hilfe für die Menschen der Ukraine: https://www.loxforum.com/forum/proje...Cr-die-ukraine


    LoxBerry - Beyond the Limits

Lädt...