Automatische Bewässerung von Gewächshaus und Rasen
- udo1toni
- Beiträge: 14829
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Automatische Bewässerung von Gewächshaus und Rasen
Möglich ist Vieles.
Zunächst solltest Du Du dir aber genau überlegen was Du wirklich willst. Also, definiere alle Umstände, unter denen die Schaltsteckdose geschaltet wird. Und anschließend musst Du regeln definieren, unter welchen Bedingungen automatisch geschaltet werden darf.
Nutzt Du die Steckdose für unterschiedliche Zwecke (der Name des Items spricht dafür)? Das ist keine gute Idee. Die Logiken der verschiedenen Anwendungen werden sich dann ziemlich sicher ins Gehege kommen.
Überhaupt die Itemnamen... Die sind echt furchtbar!
Zunächst solltest Du Du dir aber genau überlegen was Du wirklich willst. Also, definiere alle Umstände, unter denen die Schaltsteckdose geschaltet wird. Und anschließend musst Du regeln definieren, unter welchen Bedingungen automatisch geschaltet werden darf.
Nutzt Du die Steckdose für unterschiedliche Zwecke (der Name des Items spricht dafür)? Das ist keine gute Idee. Die Logiken der verschiedenen Anwendungen werden sich dann ziemlich sicher ins Gehege kommen.
Überhaupt die Itemnamen... Die sind echt furchtbar!
openHAB4.2.2 stable in einem Debian-Container (bookworm) (Proxmox 8.2.8, LXC), mit openHABian eingerichtet
-
- Beiträge: 190
- Registriert: 7. Sep 2021 11:28
Re: Automatische Bewässerung von Gewächshaus und Rasen
Ja ich weiss die itemnamen sind unmöglich aber teilweise brauche ich manche Anwendungen nicht immer dann habe ich die Steckdosen mal für was anderes genutzt. Teilweise habe ich sie dann auch einfach als Herstellerbezeichnung gelassen damit ich sie zuordnen kann wo welche verbaut sind. und ändere sie für die Labels. die shellys habe ich zb nach ip adressen sortiert und beschriftet.
openhab 4.2.0 Docker (Qnap)
influxDB 1.8.2 Docker (Qnap)
Grafana v10.2.2 Docker (Qnap)
Deconz 2.19.03 Docker (Qnap)
Homematic (Raspberrymatic Pi 3B+)
Grafana, Phoscon, Shelly, Gardena, Tuya
Camera IP Binding mit ffmpeg
Solaredge PV Anlage mit 12kW Speicher (solaredgeBinding)
u.v.m.
Lg zinnik
influxDB 1.8.2 Docker (Qnap)
Grafana v10.2.2 Docker (Qnap)
Deconz 2.19.03 Docker (Qnap)
Homematic (Raspberrymatic Pi 3B+)
Grafana, Phoscon, Shelly, Gardena, Tuya
Camera IP Binding mit ffmpeg
Solaredge PV Anlage mit 12kW Speicher (solaredgeBinding)
u.v.m.
Lg zinnik
- udo1toni
- Beiträge: 14829
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Automatische Bewässerung von Gewächshaus und Rasen
Um es mal drastisch zu sagen: Das kannste shcon so machen, ist dann halt kacke.
Ich erhebe keinen Anspruch auf die bestmögliche Lösung, aber ganz grundsätzlich:
openHAB hat mehrere Abstraktionsebenen. Die Items sind Bestandteil des openHAB Busses (eigentlich openHA Bus, weil das B ja für Bus steht - sieht aber doof aus). Auf dem openHAB Bus geht es ausschließlich um Funktion. Hardware spielt hier keine Rolle (also abgesehen davon, dass die Hardware die Funktionen vorgibt) Ich habe z.B. zwei gedimmte Lichtkreise im Schlafzimmer, der eine steuert die Halogenstrahler, der andere hunderte kleine Lämpchen, die über die Decke verteilt sind. Entsprechend heißen die beiden Items NOG_Eltern_Planeten und NOG_Eltern_Sterne. Aus der Art des Items (Dimmer) geht fast zwingend hervor, dass es sich um Licht handelt, die Begriffe Planeten und Sterne sind bei uns stehende Begriffe für die jeweiligen Leuchten, es handelt sich um den Neubau, ein Raum im Obergeschoss (wir haben nur zwei Etagen, aber dafür Altbau und angebauten Neubau) und der Raum ist das Elternschlafzimmer, aber da es nur diesen einen Raum für die Eltern gibt, ist "Eltern" hinreichend genau.
Die Itemnamen sind also kurz und dennoch aussagekräftig. Welche Hardware ich verwende, spielt hier aber keine Rolle, nur die Art der Leuchte ist wichtig zur Unterscheidung.
Auf der anderen Seite gibt es die Things, die sind komplett an die Hardware gebunden, aber eventuell nicht räumlich fix (z.B. WLAN Steckdosen zum dazwischen Stecken mit Tasmota). In dem Fall heißen die Things z.B. gosund_1 bis gosund_4 (das ist das Branding). Soweit die Steckdosen identische Funktionen bieten, sind die Channel identisch beschriftet, z.B. ein switch Channel ch1 (weil ich Schaltaktoren habe, die mehrere Kanäle haben), pow1 für die Leistung usw.
Wenn ich ein Thing irgendwo verwende, lege ich dafür ein Item an und verlinke Channel und Item. Wenn ich die Hardware nun anderweitig einsetzen will, löse ich den Link und lege ein neues Item an. Vorteil: Ich kann nicht vergessen, irgendwo eine Rule zu deaktivieren oder umzubauen.
Vielleicht hole ich eine andere Hardware, die die selbe Aufgabe übernehmen soll (also statt der alten Hardware) Link lösen und altes Item mit neuem Thing verlinken, fertig. Oder die Items sind noch von der ausgebauten Hardware vorhanden und müssen nicht erst gelöst werden
Ich erhebe keinen Anspruch auf die bestmögliche Lösung, aber ganz grundsätzlich:
openHAB hat mehrere Abstraktionsebenen. Die Items sind Bestandteil des openHAB Busses (eigentlich openHA Bus, weil das B ja für Bus steht - sieht aber doof aus). Auf dem openHAB Bus geht es ausschließlich um Funktion. Hardware spielt hier keine Rolle (also abgesehen davon, dass die Hardware die Funktionen vorgibt) Ich habe z.B. zwei gedimmte Lichtkreise im Schlafzimmer, der eine steuert die Halogenstrahler, der andere hunderte kleine Lämpchen, die über die Decke verteilt sind. Entsprechend heißen die beiden Items NOG_Eltern_Planeten und NOG_Eltern_Sterne. Aus der Art des Items (Dimmer) geht fast zwingend hervor, dass es sich um Licht handelt, die Begriffe Planeten und Sterne sind bei uns stehende Begriffe für die jeweiligen Leuchten, es handelt sich um den Neubau, ein Raum im Obergeschoss (wir haben nur zwei Etagen, aber dafür Altbau und angebauten Neubau) und der Raum ist das Elternschlafzimmer, aber da es nur diesen einen Raum für die Eltern gibt, ist "Eltern" hinreichend genau.
Die Itemnamen sind also kurz und dennoch aussagekräftig. Welche Hardware ich verwende, spielt hier aber keine Rolle, nur die Art der Leuchte ist wichtig zur Unterscheidung.
Auf der anderen Seite gibt es die Things, die sind komplett an die Hardware gebunden, aber eventuell nicht räumlich fix (z.B. WLAN Steckdosen zum dazwischen Stecken mit Tasmota). In dem Fall heißen die Things z.B. gosund_1 bis gosund_4 (das ist das Branding). Soweit die Steckdosen identische Funktionen bieten, sind die Channel identisch beschriftet, z.B. ein switch Channel ch1 (weil ich Schaltaktoren habe, die mehrere Kanäle haben), pow1 für die Leistung usw.
Wenn ich ein Thing irgendwo verwende, lege ich dafür ein Item an und verlinke Channel und Item. Wenn ich die Hardware nun anderweitig einsetzen will, löse ich den Link und lege ein neues Item an. Vorteil: Ich kann nicht vergessen, irgendwo eine Rule zu deaktivieren oder umzubauen.
Vielleicht hole ich eine andere Hardware, die die selbe Aufgabe übernehmen soll (also statt der alten Hardware) Link lösen und altes Item mit neuem Thing verlinken, fertig. Oder die Items sind noch von der ausgebauten Hardware vorhanden und müssen nicht erst gelöst werden
openHAB4.2.2 stable in einem Debian-Container (bookworm) (Proxmox 8.2.8, LXC), mit openHABian eingerichtet
-
- Beiträge: 14
- Registriert: 5. Jan 2020 18:47
Re: Automatische Bewässerung von Gewächshaus und Rasen
Hallo,
warum denn das Rad neu erfinden?
Man nehme einen
1x Raspberry-Pi,
1x 4/8/oder 16 Kanal Relay Board (je nach dem wie viele Stationen man braucht ( Opensprinkler kann bis zu 200 Stationen verarbeiten))
1x 12 oder 24 Volt Trafo zum ansteuern der Magnetventiele
1x 5 Volt Trafo für den Raspberry-Pi
1x SD-Karte
Ein paar Käbelchen um die GPIO-Pins mit dem Relayboard zu verbinden.
Das wars im Groben.
https://www.dropbox.com/s/3hnewr074tx59 ... .HEIC?dl=0
Ich habe mir allerdings mal Platinen gemacht um den Pi mit dem Relayboard zu verbinden.
Dann zieht man sich das OpenSprinkler image und flashed es auf die SD Karte.
Das System läuft bei mir seit Jahren zuverlässig.
Für OpenSprinkler gibt es auch ein Binding, das benutze ich aber gar nicht, weil OSPI schon alles hat was man braucht, finde ich.
Grüße
warum denn das Rad neu erfinden?
Man nehme einen
1x Raspberry-Pi,
1x 4/8/oder 16 Kanal Relay Board (je nach dem wie viele Stationen man braucht ( Opensprinkler kann bis zu 200 Stationen verarbeiten))
1x 12 oder 24 Volt Trafo zum ansteuern der Magnetventiele
1x 5 Volt Trafo für den Raspberry-Pi
1x SD-Karte
Ein paar Käbelchen um die GPIO-Pins mit dem Relayboard zu verbinden.
Das wars im Groben.
https://www.dropbox.com/s/3hnewr074tx59 ... .HEIC?dl=0
Ich habe mir allerdings mal Platinen gemacht um den Pi mit dem Relayboard zu verbinden.
Dann zieht man sich das OpenSprinkler image und flashed es auf die SD Karte.
Das System läuft bei mir seit Jahren zuverlässig.
Für OpenSprinkler gibt es auch ein Binding, das benutze ich aber gar nicht, weil OSPI schon alles hat was man braucht, finde ich.
Grüße
- udo1toni
- Beiträge: 14829
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Automatische Bewässerung von Gewächshaus und Rasen
Ja, openSprinkler ist definitiv die bessere Option, allerdings muss man auch zugeben, dass es bei vielen Anwendern auf insgesamt zwei oder vielleicht drei Sprinkler hinaus läuft, da erscheint ein extra Steuersystem bei Vielen als "mit Kanonen auf Spatzen".
Allgemein sollte openHAB eigentlich möglichst nichts regeln sondern nur steuern. Der Unterschied ist aber für die meisten Anwender nicht klar - und je nach Größenordnung ist es halt auch einfach, eine kleine Regelung in openHAB zu realisieren, auch wenn das eher nicht die Stärke von openHAB ist.
Allgemein sollte openHAB eigentlich möglichst nichts regeln sondern nur steuern. Der Unterschied ist aber für die meisten Anwender nicht klar - und je nach Größenordnung ist es halt auch einfach, eine kleine Regelung in openHAB zu realisieren, auch wenn das eher nicht die Stärke von openHAB ist.
openHAB4.2.2 stable in einem Debian-Container (bookworm) (Proxmox 8.2.8, LXC), mit openHABian eingerichtet
-
- Beiträge: 14
- Registriert: 5. Jan 2020 18:47
Re: Automatische Bewässerung von Gewächshaus und Rasen
Na ja wenn man einmal so ein System hat...
Da kommt mal schnell mal die Bewässerung für Tomaten, Blumentöpfe oder ein Hochbeet hinzu.
Oder warum nicht gleich mit den 12Volt die LED's im Garten schalten?
Sonnenuntergang (mit Verzögerung) einschalten und für X Stunden X Minuten und X Sekunden anlassen.
So wird dann schnell aus dem "Spatz in der Hand die Taube auf dem Dach"
Da kommt mal schnell mal die Bewässerung für Tomaten, Blumentöpfe oder ein Hochbeet hinzu.
Oder warum nicht gleich mit den 12Volt die LED's im Garten schalten?
Sonnenuntergang (mit Verzögerung) einschalten und für X Stunden X Minuten und X Sekunden anlassen.
So wird dann schnell aus dem "Spatz in der Hand die Taube auf dem Dach"
- udo1toni
- Beiträge: 14829
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Automatische Bewässerung von Gewächshaus und Rasen
Licht ist aber eher der Beritt von openHAB, selbstverständlich mit all den Optionen und noch mehr, Einschaltdauer abhängig von Temperatur, Luftdruck und Bewölkungsgrad, oder auch in welchem Sternzeichen der Mond gerade steht.
Licht weil gerade totale Sonnenfinsternis ist? Kein Thema, geht ganz einfach.
Das Telefon klingelt und ich bin im Garten, eine Sprachausgabe aus dem dort laufenden Internetradio bietet sich da an
Und genau deshalb nutzen die Anwender ja auch komplexe Regeln in openHAB statt OpenSprinkler mit dazu zu bauen, denn openHAB ist nun mal schon da und kann das alles auch, nur mit vergleichsweise hohem Aufwand.
Licht weil gerade totale Sonnenfinsternis ist? Kein Thema, geht ganz einfach.
Das Telefon klingelt und ich bin im Garten, eine Sprachausgabe aus dem dort laufenden Internetradio bietet sich da an
Und genau deshalb nutzen die Anwender ja auch komplexe Regeln in openHAB statt OpenSprinkler mit dazu zu bauen, denn openHAB ist nun mal schon da und kann das alles auch, nur mit vergleichsweise hohem Aufwand.
openHAB4.2.2 stable in einem Debian-Container (bookworm) (Proxmox 8.2.8, LXC), mit openHABian eingerichtet
-
- Beiträge: 190
- Registriert: 7. Sep 2021 11:28
Re: Automatische Bewässerung von Gewächshaus und Rasen
Hallo hab nochmal eine frage
Udo hat mir schonmal eine Rule erstellt zur Automatischen Bewässerung.
Wenn genug Wasser im Tank dann soll über tank bewässert werden ansonsten über Haus Wasser.
Hab die rules jetzt mal laufen lassen aber es wird immer um die Uhrzeit der Rule bewässert unabhängig von der Bodenfeuchtigkeit.
Kann mir da jemand helfen.
Udo hat mir schonmal eine Rule erstellt zur Automatischen Bewässerung.
Wenn genug Wasser im Tank dann soll über tank bewässert werden ansonsten über Haus Wasser.
Hab die rules jetzt mal laufen lassen aber es wird immer um die Uhrzeit der Rule bewässert unabhängig von der Bodenfeuchtigkeit.
Kann mir da jemand helfen.
Code: Alles auswählen
rule "Bewässerung dynamisch Blumenbeet"
when
Time cron "0 0 20 * * ?" // täglich um 20:00:00 Uhr "0 0 9 * * ?" Test Minuten nach der vollen Stunde"0 06 * * * ? *"
then
logInfo("Bewässerung dynamisch Blumenbeet", "gestartet- geplante Startzeit 20 Uhr")
if(Sensor_6_Bodenfeuchtigkeit.state instanceof Number) // enthält das Item einen gültigen Zahlenwert?
if((Sensor_6_Bodenfeuchtigkeit.state as Number).floatValue >= 45) // größer oder gleich 45?
return; // dann Rule abbrechen
if(Sensor_6_Bodentemperatur.state instanceof Number) // enthält das Item einen gültigen Zahlenwert?
if((Sensor_6_Bodentemperatur.state as Number).floatValue <= 1) // kleiner oder gleich 1?
return; // dann Rule abbrechen
Bewaesserung_1_STATE.sendCommand(ON) // Ventil einschalten
createTimer(now.plusSeconds(1200), [| // Timer für Bewässerungsdauer
Bewaesserung_1_STATE.sendCommand(OFF) // Ventil ausschalten
])
end
rule "Bewässerung dynamisch Blumenbeet Quelle"
when
Item Bewaesserung_1_STATE changed or // Ventil wurde geschaltet
Item Fuellstandssensor_Regenfass_Fuellstand changed // Wasserstand hat sich geändert
then
logInfo("Bewässerung dynamisch Blumenbeet", "gestartet- geplante Startzeit 20 Uhr")
var Integer iRegenfass = 0 // Initialwert Regentonne
var swHW = OFF // Initialwert Switch Hauswasser
var swRT = OFF // Initialwert Switch Regentonne
if(Fuellstandssensor_Regenfass_Fuellstand.state instanceof Number) // Falls Wasserstand gültig
iRegenfass = (Fuellstandssensor_Regenfass_Fuellstand.state as Number).intValue // setze Füllstand
if(Bewaesserung_1_STATE.state == ON) { // Falls Bewässerung aktiv
if(iRegenfass > 40) // Falls Füllstand über 40%
swRT = ON // Regentonne aktivieren
else // sonst
swHW = ON // Hauswasser aktivieren
}
if(shelly_pug_s_31_shellyplugsa7558f192168131_Betrieb.state != swHW) // Falls Soll von Ist abweicht
shelly_pug_s_31_shellyplugsa7558f192168131_Betrieb.sendCommand(swHW.toString) // sende Schaltbefehl
if(GartenpumpeHomematicSteckdose_State.state != swRT)
GartenpumpeHomematicSteckdose_State.sendCommand(swRT.toString)
end
openhab 4.2.0 Docker (Qnap)
influxDB 1.8.2 Docker (Qnap)
Grafana v10.2.2 Docker (Qnap)
Deconz 2.19.03 Docker (Qnap)
Homematic (Raspberrymatic Pi 3B+)
Grafana, Phoscon, Shelly, Gardena, Tuya
Camera IP Binding mit ffmpeg
Solaredge PV Anlage mit 12kW Speicher (solaredgeBinding)
u.v.m.
Lg zinnik
influxDB 1.8.2 Docker (Qnap)
Grafana v10.2.2 Docker (Qnap)
Deconz 2.19.03 Docker (Qnap)
Homematic (Raspberrymatic Pi 3B+)
Grafana, Phoscon, Shelly, Gardena, Tuya
Camera IP Binding mit ffmpeg
Solaredge PV Anlage mit 12kW Speicher (solaredgeBinding)
u.v.m.
Lg zinnik
- udo1toni
- Beiträge: 14829
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Automatische Bewässerung von Gewächshaus und Rasen
Die Frage ist, welcher Wert wird vom Sensor geliefert?
Insbesondere wenn die Rule schon vor der Umstellung auf OH4 vorhanden war, könnte es sein, dass das Item vor der Umstellung 45.5 % -> 45.5 geliefert hat, nun aber 45.5 % -> 0.455 liefert.
Insbesondere wenn die Rule schon vor der Umstellung auf OH4 vorhanden war, könnte es sein, dass das Item vor der Umstellung 45.5 % -> 45.5 geliefert hat, nun aber 45.5 % -> 0.455 liefert.
openHAB4.2.2 stable in einem Debian-Container (bookworm) (Proxmox 8.2.8, LXC), mit openHABian eingerichtet
-
- Beiträge: 190
- Registriert: 7. Sep 2021 11:28
Re: Automatische Bewässerung von Gewächshaus und Rasen
Das habe ich geprüft gehabt. Das Item ist eine ein Number Dimensless. Ich habe das State Descripton entfernt und eine Unit % hinzugefügt. Somit liefert der Itemwert wieder 45.5%
openhab 4.2.0 Docker (Qnap)
influxDB 1.8.2 Docker (Qnap)
Grafana v10.2.2 Docker (Qnap)
Deconz 2.19.03 Docker (Qnap)
Homematic (Raspberrymatic Pi 3B+)
Grafana, Phoscon, Shelly, Gardena, Tuya
Camera IP Binding mit ffmpeg
Solaredge PV Anlage mit 12kW Speicher (solaredgeBinding)
u.v.m.
Lg zinnik
influxDB 1.8.2 Docker (Qnap)
Grafana v10.2.2 Docker (Qnap)
Deconz 2.19.03 Docker (Qnap)
Homematic (Raspberrymatic Pi 3B+)
Grafana, Phoscon, Shelly, Gardena, Tuya
Camera IP Binding mit ffmpeg
Solaredge PV Anlage mit 12kW Speicher (solaredgeBinding)
u.v.m.
Lg zinnik