Espeasy Feuchtigkeitssensor nachts Off Rule

Begonnen von MasterVigori, 01 Juni 2019, 01:18:48

Vorheriges Thema - Nächstes Thema

MasterVigori

Hallo zusammen,
ich versuche mit einem Feuchtigkeitssensor und Esp8266 meine Pflanzen zu bewässern.
Ich habe bemerkt das abends der Feuchtigkeitssensor anfängt abzudrehen deshalb dachte ich setzte ich eine Betriebszeit für das bewässern also:

Sollte der Wert < X in der Zeit zwischen 7:00 - 19:00 Uhr  sein
darf die bewesserung starten = Gpio 12,0

Sollte der Wert < X in der Zeit nicht zwischen 7:00 - 19:00 Uhr  sein
darf die bewesserung nicht starten = Gpio 12,1

Hier mein versuch aber das funktioniert nicht.





On Relay2#Relay2=1 do
    If %systime% < 6:00
       Gpio, 12,1
    Endif
    If %systime% > 19:00
       Gpio, 12,1
    Endif
Endon

On Feuchtigkeitssensor#Analog do
    If [Feuchtigkeitssensor#Analog] < 360
        Gpio 12,1
    Else
        Gpio 12,0
    Endif
Endony

Ich hoffe jemand hat Zeit und lust mir etwas zu helfen.

DasQ

on Clock#Time=All,12:00 do //will run once a day at noon
GPIO,2,1
endon


Quelle
Fhem on MacMini/Ubuntu.
Absoluter Befürworter der Konsequenten-Kleinschreibung https://de.wikipedia.org/wiki/Kleinschreibung
Infos zu Klimawandel http://www.globalcarbonatlas.org

MasterVigori

Damit wird doch die Zeit festgelegt wann bewässert wird oder sehe ich das falsch?

Der Feuchtigkeitssensor soll das selber Regeln

DasQ

Fhem on MacMini/Ubuntu.
Absoluter Befürworter der Konsequenten-Kleinschreibung https://de.wikipedia.org/wiki/Kleinschreibung
Infos zu Klimawandel http://www.globalcarbonatlas.org


Gisbert

Hallo MasterVigori,

warum überlässt du Fhem nicht das Steuern? Das ist ja der Sinn einer Hausautonation. Die Logik im Device in ESPEasy darzustellen ist vermutlich machbar, aber der Funktionsumfang ist auf das Allernötigste eingeschränkt.

Eine andere Möglichkeit wäre einen eigenen Sketch (Arduino-Sketch) auf den ESP zu flashen, dann kannst du jede Logik auf dem Device realisieren, allerdings musst du dann den Code selbst schreiben.

Kritische Anwendungen wie Zutrittskontrolle sollten auch ohne Zentrale funktionieren, das dürfte aber bei deiner Anwendung wahrscheinlich nicht zutreffen, es sei denn du hast eine Plantage im Keller und züchtest für den Eigenbedarf ;)

Ich würde es mit einem DOIF machen.
Die Schaltbefehle, die ich nutze, sehen in Fhem so aus, z.B. zum Einschalten des GPIO12:
("wget -qO /dev/null http://IP-Adresse/control?cmd=GPIO,12,0&")

Zeiten in DOIF definierst du so:
[7:00-19:00]

Wenn du noch Fragen hast, dann melde dich gerne wieder.
Wenn du es mit einem DOIF realisieren willst, dann mach dir vorab Gedanken über den Bedingungsteil; der Ausführungsteil ist klar: Schalten des GPIO12.

Viele​ Grüße​ Gisbert​
Aktuelles FHEM | PROXMOX | Fujitsu Futro S740 | Debian 12 | UniFi | Homematic, VCCU, HMUART | ESP8266 | ATtiny85 | Wasser-, Stromzähler | tuya local | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21/22RF | RHASSPY | DEYE | JK-BMS | ESPHome

MasterVigori

#6
DANKE für die super Antwort👍

Mein FHEM ist noch im Aufbau und der Sommer/Urlaub steht vor der Tür 😉. Deshalb diese lösung für die Bewässerung über espeasy.

Ich dachte das es für eine schnelle und einfache Lösung so am besten wäre.

Die Bedingung sollte so sein das wenn der Feuchtigkeitssensor und die Zeit Stimmen darf der Gpio 12 schalten.

Sonst nicht

 
On Relay2#Relay2=1 do 
    If %systime% < 6:00
    Endif 
          If [Feuchtigkeitssensor#Analog] < 360
    Endif
           If %systime% > 19:00
        Gpio, 12,1
       Else
        Gpio 12,0
    Endif 
Endon


DasQ

#7
ja dann, ;)

würd ich dir einfach nochmals ans herz legen meinem lösungsvorschlag mehr beachtung zu schenken. ::)

btw. denk ich das der mathematische verleicher in deim if so nicht funktioniert. zum einen kanns espeasy nicht (zumindest mir nicht bekann). auch sind zwei gegenläufige IF immer mit vorsicht zugeniesen denn im dümstenfall kommt dabei immer WAHR raus. die müsste man AND verschachteln
zum zweiten dürfte es keine rolle spielen ob die uhrzeit WAHR ist und danach der Sensor oder andersrum.

warum muss der sensor das entscheiden? warum kanns nicht mal zuerst die uhrzeit und dann der feuchtewert?
Fhem on MacMini/Ubuntu.
Absoluter Befürworter der Konsequenten-Kleinschreibung https://de.wikipedia.org/wiki/Kleinschreibung
Infos zu Klimawandel http://www.globalcarbonatlas.org

MasterVigori

Zitat von: DasQ am 01 Juni 2019, 11:19:02
ja dann, ;)

würd ich dir einfach nochmals ans herz legen meinem lösungsvorschlag mehr beachtung zu schenken. ::)

btw. denk ich das der mathematische verleicher in deim if so nicht funktioniert. zum einen kanns espeasy nicht (zumindest mir nicht bekann). auch sind zwei gegenläufige IF immer mit vorsicht zugeniesen denn im dümstenfall kommt dabei immer WAHR raus.

warum muss der sensor das entscheiden? warum kanns nicht mal zuerst die uhrzeit und dann der feuchtewert?


Ok, könnte mann testen ich habe nur deine Hilfe erst nicht ganz verstanden....

MasterVigori

Hab jetzt einfach eine zeitschalt Uhr an die Pumpe gehängt 😉

Schade das es nicht mit dem espeasy funktioniert.

DasQ

#10
Zitat von: MasterVigori am 01 Juni 2019, 18:03:31
Schade das es nicht mit dem espeasy funktioniert.

das würde ich jetzt als behauptung abtun, das kann espeasy ganz sicher.

woran scheitert denn jetzt das aus dem Tutorial_Rules?


On System#Boot do
GPIO,12,0
timerSet,1,0
endon

on Clock#Time=All,07:00 do
  GPIO,12,1
  timerSet,1,0
endon

on Clock#Time=All,19:00 do
   GPIO,12,0
  timerSet,1,0
endon

On Rules#Timer=1 do 
    If [Feuchtigkeitssensor#Analog] < 360 and [Relay2#Relay2] = 1
        Gpio 12,1
    Else
        Gpio 12,0
    Endif
timerSet,1,60
endOn

jetzt ungeprüft und bewusst mit fehler
ich bin der meinung das der gewählte gpio 12 nicht gleichzeitig als merker und als relay2 schaltkontakt genutzt werden darf/sollte. das kannst ja dann auf deine umgebung anpassen und einen freien GPIO zweckentfremden.

Fhem on MacMini/Ubuntu.
Absoluter Befürworter der Konsequenten-Kleinschreibung https://de.wikipedia.org/wiki/Kleinschreibung
Infos zu Klimawandel http://www.globalcarbonatlas.org

Gisbert

#11
Zitat von: MasterVigori am 01 Juni 2019, 18:03:31
Hab jetzt einfach eine zeitschalt Uhr an die Pumpe gehängt 😉

Schade das es nicht mit dem espeasy funktioniert.

Funktioniert die Zeitschaltuhr elektrisch, oder wird die ökologisch korrekt z.B. mit Wasserkraft aus einem benachbarten Springbrunnen angetrieben, der wiederum mit Gas angetrieben wird, das vom Gewächs stammt, welches du gerade bewässert? Wir wären nahe an einem perpetuum mobile, zumindest aber wäre der Einstieg in die Kreislaufwirtschaft geschafft.
Was einem so alles nach einem Weißbier einfällt ...

Scherz beiseite, wenn du später mal Zeit findest, dann setze eine Fhem-Installation auf. Mit ESPEasy oder Tasmota geflashte Geräte können in Fhem per MQTT eingebunden werden. Ich nutze das ältere Modul MQTT_DEVICE, es gibt aber auch noch neuere Entwicklungen, die einfacher funktionieren.
Wenn du erst dein Gerät in Fhem integriert hast, dann hast du sehr viele Möglichkeiten, z.B. steuern, aber auch überwachen, ob das Gerät online ist, d.h., dass es noch lebt, oder du kannst die Laufzeit der Pumpe loggen und damit die Menge an Wasser für das Gießen, wenn du die Flussrate der Pumpe in etwa kennst. Je nach Abwendungsfall gibt es noch mehr auszuwerten.

Melde dich einfach wieder mit diesem Thread, wenn du Unterstützung benötigst.

Viele​ Grüße​ Gisbert​
Aktuelles FHEM | PROXMOX | Fujitsu Futro S740 | Debian 12 | UniFi | Homematic, VCCU, HMUART | ESP8266 | ATtiny85 | Wasser-, Stromzähler | tuya local | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21/22RF | RHASSPY | DEYE | JK-BMS | ESPHome

Frank_Huber

#12
Also espeasy kann das auf jeden fall.
Hatte ich für meinen Kompressor anfangs in Betrieb dass der nicht nachts anläuft.

Habs dann aber auf fhem umgestellt weil hier auch Feiertage usw beachtet werden.

Werd mal kucken ob ich den Code noch finde, dann poste ich ihn hier.

Gesendet von meinem Doogee S60 mit Tapatalk

MasterVigori

Noch mal Danke,
werde die Tipps anwenden...

Mal sehen ob der Code funktioniert DasQ