Wissen

ESP Easy – Relais ansteuern mit Schaltzeiten

In dieser kleinen Anleitung möchte ich Euch zeigen wie einfach es ist, ein Relais über einen ESP 8266 mit Hilfe der ESP Easy Firmware zu steuern. Dabei möchte ich Euch nicht nur zeigen, wie man eine einfache „On“ / „Off“ Funktionalität umsetzt, sondern auch, wie man Schaltaufgaben des Relays an Zeiten koppelt. Dies treiben wir dann so weit, dass der ESP sogar eine Zeitschaltuhr ersetzen könnte.

Doch bevor wir mit dem Code los legen, müssen wir einen Port definieren, welcher das Relais ansteuern wird. Hier in unserem Fallbeispiel wird dies das PIN D4 auf einem NodeMCU sein, der in der Programmierumgebung mittels des GPIO Ports 2 angesprochen wird.

Hierzu wechseln wir in den Device Bereich …

….und legen ein neues Gerät an:

blank

 

INFO-TIPP!!
Solltet ihr mit WEMOS ESPs und WEMOS D1 Relays arbeiten, so müsst ihr GPIO5 definieren! Denn beim WEMOS Pin-Out – liegt der Schaltkontakt auf D1!!

Normales ansprechen des Relais (an / aus):
Wir schalten den GPIO Port (2) auf High (1)

http://192.168.4.1/control?cmd=gpio,2,1

Und die Null (0) deaktiviert den Port wieder.

http://192.168.4.1/control?cmd=gpio,2,0

 

Zeitlich gesteuerter Ansteuerung (z.B. für eine Treppen / Gangbeleuchtung oder Flurlicht):
Hier macht es einen Sinn über eine Regel zu gehen, in der die Sekunden der aktiven Zeit hinterlegt werden:

On timerstart do 
  gpio,2,1 //GPIO aktiv schalten
  timerSet,1,2 //timer 1 wird für 2 Sekunden gesetzt
endon
 
On timerstop do 
  timerSet,1,0 //timer 1 wird auf 0 Sekunden gesetzt
endon

On Rules#Timer=1 do  
   gpio,2,0 //nach Zeitablauf wird der GPIO ab geschalten
endOn

Angesprochen werden diese Funktionen wie folgt:

http://192.168.4.1/control?cmd=event,timerstart

Frühzeitig kann die Regel mit diesem Aufruf abgebrochen werden:

http://192.168.4.1/control?cmd=event,timerstop

 

Wer kürzere Zeiten oder keine festen Zeiten benötigt, kann dies über den Pulse-Befehl realisieren. Hier wird die Schaltzeit in „ms“ angegeben.

http://192.168.4.1/control?cmd=pulse,2,1,1000

Geschaltet wird hier wieder der GPIO (2) auf High (1) für einen Zeitraum von (1000) ms. Danach wird der GPIO wieder auf aus gesetzt.

Das gleiche gibt es auch im Sekunden Bereich:

http://192.168.4.1/control?cmd=longpulse,2,1,10

Schaltet GPIO (2) ein (1) für 10 Sekunden.

 

Anzugsverzögerung / Abfallverzögerung des Relay

on delaystart do
   delay 6000
  GPIO,2,1
endon

on delayend do
   delay 6000
  GPIO,2,0
endon
http://192.168.4.1/control?cmd=event,delaystart
http://192.168.4.1/control?cmd=event,delayend

Mit „delaystart“ wird der GPIO (2) nach 6 (6000 ms) Sekunden erst ausgelöst.
Mit „delayend“ wird der GPIO (2) erst nach 6 Sekunden abgeschalten.

 

Zeitschaltuhr Regel
Auch zeitlich bedingte Regeln lassen sich erstellen:

On Clock#Time=Sun,18:00 do  // So um 18 Uhr wird der GPIO 2 eingeschalten
 gpio,2,1
endon

On Clock#Time=All,19:00 do // GPIO 2 wird jeden Tag um 19 Uhr abgeschalten
 gpio,2,0
endon

Mögliche Zeitparameter:

all, sun, mon, tue, wed, thu, fri, sat

 

Über eine Zeit-Regel kann man auch Betriebszeiten definieren:

On Button#Switch=1 do
 If %systime% < 07:00
  Gpio,2,1
 Endif
 If %systime% > 19:00
  Gpio,2,1
 Endif
Endon

Hier kann der GPIO Port (2) nur zwischen 19 Uhr und 7 Uhr am nächsten Tag durch einen Knopf aktiviert werden. (Button / Knopf muss konfiguriert werden)

Allgemeine Informationen zum Thema ESP Easy gibt es hier!

 


Tags:

  • esp time relay
  • esp32 zeitschaltuhr
  • espeasy mehrere rules anlegen
  • espeasy rules deutsch
  • easyesp mit 6 relais

Ähnliche Artikel

5 Kommentare

  1. Hi, das ist ein super interessanter Beitrag, Danke dafür.
    Ich habe derzeit die Situation, dass ich alles über MQTT realisiert habe und möchte das eigentlich auch gern weiterhin nutzen. Gibt es eine Möglichkeit diese Schaltimpulse auch über MQTT zu realisieren ?
    Wenn nicht, muss ich in meinem einem Fall jetzt eben mit den GETrequests arbeiten, aber es wäre schön, wenn man alles einheitlich halten könnte :D Vielen Dank schon mal im Voraus.

  2. Servus, ich würde gern von einem einfachen DHT, den ich in ESP Easy konfiguriert habe über http://192.168.4.1/control? …..????? auslesen/ übergeben
    Ich habe versucht etwas in den Foren zu finden aber die wollen immer gleich einen MQTT oder ähnliches benutzen. Hast du da einen Ansatz für mich?
    Danke

  3. Hallo eine Fragen

    Wen ich im ESP Menü alles ein getragen habe und einen Reboot mache kann ich nicht mehr auf das Menü zugreifen es kommt: Diese Seite funktioniert nicht 192.168.178.20 hat keine Daten gesendet.
    ERR_EMPTY_RESPONS Was mache ich falsch

  4. Hallo,
    Wenn ich ein Relais einschalte öffnet sich danach immer ein Log-Fenster im Browser.
    Kann man das verhindern?

Kommentar verfassen

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.

Schaltfläche "Zurück zum Anfang"