NEWS
Test Adapter Sprinkle Control 0.2.x mit neuen Funktionen
-
@saschas Hallo,
falsche Annahme! Die Gerade bleibt die gleiche, da ja immer noch runningTime = 60 min (≙ max. Bodenfeuchtigkeit = 8 mm) und Einschaltpunkt = 50 %. Die Bewässerungszeit wird nur auf 100 % begrenzt und der Bewässerungskreis fährt mit der braunen Gerade zurück auf 100 %.
MfG Dirk Peter -
ich habe eine frage zur pumpensteuerung:
meine "hauptpumpe" ist die in der Zisterne...
sehe ich es richtig, dass die hauptpumpe immer ausgeschaltet ist, wenn gerade keine bewässerung läuft?
Kann ich das auch verhindern? Hintergrund ist, dass ich auch Wassersteckdosen habe, auf denen immer druck anliegen soll (ohne ventile).
Müsste ich dann einfach die Angabe der Pumpe weglassen, oder wir löst man das?Danke
-
@dirk-peter Ich hab mit vielem gerechnet, aber das Bild ergibt in meinem Kopf am wenigsten Sinn. Sorry, dass ich da jetzt noch einmal nachfrage - ich will das unbedingt verstehen. Ich hoffe du kannst mir erneut helfen. Ich erkläre mich auch gerne bereit das anschließend Idiotensicher aufzuschreiben, dass wir das der Doku beifügen können.
Was mich an deinem letzten Bild irritiert ist die Aussage, dass man bei den 13,6% man innerhalb von 60 Minuten (braune Linie von dir) wieder bei den 100% (≙ max. Bodenfeuchtigkeit = 8 mm) ist. Wäre ich jetzt anstatt bei 13,6% bei 40% (rote durchgezogene Linie), dann folgt doch nach der gleichen Logik wieder, dass ich nach 60 Minuten (rote gestrichelte Linie) bei 100% (≙ max. Bodenfeuchtigkeit = 8 mm) bin.
Ich hätte erwartet, dass ich es aber doch von der runningTime einen Unterschied machen muss, ob ich bei 13,6% oder 40% (beides unterhalb des Schwellwertes von 50%) mit der Bewässerung beginne.Vielleicht hilft ein weiteres fiktives Beispiel:
Bewässerungszeit in min: 40
maximale Bewässerungsverlängerung in %: 300
Einschaltpunkt (Bodenfeuchtigkeit) des Bewässerungsventile in %: 60
maximale Bodenfeuchtigkeit nach der Bewässerung in (mm): 8Diese Größen kann ich in das Diagramm noch einzeichnen
Aber ab dann verstehe ich die Zusammenhänge nicht nicht mehr.
Nach deiner letzten Aussage, hatte ich jetzt verstanden, dass runningTime = 40 min (≙ max. Bodenfeuchtigkeit = 8 mm) und Einschaltpunkt = 60% maßgeblich für die Steigung sind.
Aus dem Bild würde ich dann schon einmal ablesen, dass der Bewässerungskreis niemals länger als 100 Minuten laufen muss um wieder auf 100% zu kommen?
Bei einer Feuchtigkeit im Boden von 20 % zum Start der Bewässerung würde ich dann eine runningTime von 80 Minuten erwarten?
-
@saschas Oh Sorry, da habe ich Mist erzählt!
Berechnung der Rücklauf Gerade:/** @type {number} */ newThread.soilMoisture15s = 15 * (myConfig.config[res.sprinkleID].soilMoisture.maxIrrigation - myConfig.config[res.sprinkleID].soilMoisture.triggersIrrigation) / (60 * myConfig.config[res.sprinkleID].wateringTime);
Da dies aber auf Dauer Quatsch ist und der Bewässerungskreis Täglich starten würde gibt es die Funktion Bodenfeuchtigkeit = 100% nach der Bewässerung, womit wir wieder bei 100% sind.
So das sollte es jetzt gewesen sein,
MfG Dirk Peter -
@dirk-peter Sowohl das Bildchen als auch die Funktion Bodenfeuchtigkeit = 100% nach der Bewässerung machen Sinn. Damit kann ich/man was anfangen. Ich schreibe das die Tage mal auf
Kannst du mir noch kurz beantworten, was in unserem Beispiel die Werte in der Formel wären:
maxIrrigation = 8mm
triggersIrrigation = 4mm
wateringTime = 60min-> soilMoisture15s = 15 * (8mm-4mm) / (60 * 60min) = 15 * 4 / 3600 mm/s = 60 / 3600 mm/15s
-> Alle 15 Sekunden steigt Bodenfeuchte um 0,016666667 mm.Das passt dann auch zu der Grafik: Anhand der Grafik (blaue Linie) errechne ich eine Steigung von (8-0) / 60* (120-0) = 8 / 7200 = 0,001111111 mm/s --> Also 0,016666667mm alle 15 Sekunden.
Yeah! Es macht einfach Spaß, wenn die Zahlen und Formeln aufgehen.
-
maxIrrigation = 8mm
maximale Bodenfeuchtigkeit nach der Bewässerung in (mm)
triggersIrrigation = 4mm
Einschaltpunkt (Bodenfeuchtigkeit) des Bewässerungsventils in % x maxIrrigation [8mm * 50% = 4mm]
wateringTime = 60min
Bewässerungszeit in min
MfG Dirk Peter
-
Hi,
ich habe 3 Ventile - davon habe ich Nr. 1 & 3 per option "autoOn" deaktiviert.
Dennoch startet die Bewässerung mit einem dieser Ventile (Bewässerung Garage:3.STATE).
Wo liegt das problem?{ "_id": "system.adapter.sprinklecontrol.0", "common": { "name": "sprinklecontrol", "version": "0.2.11", "title": "Sprinkle Control", "authors": [ "Dirk Peter <dirk.peter@freenet.de>" ], "keywords": [ "Sprinkle", "Irrigation", "Bewässerung", "Steuerung", "ioBroker" ], "docs": { "en": "docs/en/sprinklecontrol.md", "de": "docs/de/sprinklecontrol.md" }, "license": "MIT", "platform": "Javascript/Node.js", "main": "main.js", "icon": "sprinklecontrol.png", "enabled": true, "extIcon": "https://raw.githubusercontent.com/Dirk-Peter-md/ioBroker.sprinklecontrol/master/admin/sprinklecontrol.png", "readme": "https://github.com/Dirk-Peter-md/ioBroker.sprinklecontrol/blob/master/README.md", "loglevel": "info", "mode": "daemon", "type": "garden", "compact": true, "materialize": true, "messagebox": true, "stopBeforeUpdate": true, "connectionType": "local", "dataSource": "assumption", "dependencies": [ { "js-controller": ">=2.0.0" } ], "installedFrom": "iobroker.sprinklecontrol@0.2.11", "installedVersion": "0.2.11", "host": "iobroker" }, "native": { "triggerControlVoltage": "", "maximumParallelValves": 1, "switchingDistance": 500, "triggerMainPump": "hm-rpc.1.SEQ0343973.4.STATE", "triggerMainPumpPower": 750, "cisternSettings": false, "triggerCisternPump": "", "triggerCisternPumpPower": 1800, "actualValueLevel": "30", "triggerMinCisternLevel": 25, "wateringStartTime": "livingTime", "timeShift": 0, "weekLiving": "21:10", "publicWeekend": true, "weekEndLiving": "23:00", "publicHolidays": true, "publicHolInstance": "feiertage.0", "latitude": "50.22116135719122", "longitude": "8.683589310246877", "notificationEnabled": false, "sensorOutsideTemperature": "", "sensorOutsideHumidity": "", "sensorWindSpeed": "", "sensorBrightness": "", "sensorRainfall": "", "weatherForecast": false, "weatherForInstance": "", "thresholdRain": 2, "notificationsType": "Telegram", "telegramInstance": "", "telegramUser": null, "telegramNoticeType": "longTelegramNotice", "telegramWaitToSend": 0, "telegramSilentNotice": false, "telegramOnlyError": false, "whatsappInstance": "", "whatsappNoticeType": "longWhatsappNotice", "whatsappWaitToSend": 0, "whatsappOnlyError": false, "pushoverInstance": "", "pushoverNoticeType": "longPushoverNotice", "pushoverWaitToSend": 0, "pushoverDeviceID": "", "pushoverSound": "", "pushoverSilentNotice": false, "pushoverOnlyError": false, "emailReceiver": "xxx@xxx.com", "emailSender": "xxx@xxx.com", "emailInstance": "", "emailNoticeType": "longEmailNotice", "emailWaitToSend": 0, "emailOnlyError": false, "events": [ { "enabled": true, "sprinkleName": "Bewässerung Garage:1.STATE", "name": "hm-rpc.1.SEQ0343973.1.STATE", "triggerID": "", "wateringTime": "20", "wateringAdd": "130", "wateringInterval": "0", "maxSoilMoistureIrrigation": "8", "maxSoilMoistureRainPct": "120", "triggersIrrigation": "50", "pipeFlow": "1100", "booster": false, "endIrrigation": true, "methodControlSM": "fixDay", "inGreenhouse": false, "triggerSM": "", "analogZPct": "0", "analogOHPct": "100", "startDay": "fixDay", "sun": true, "mon": true, "tue": true, "wed": true, "thur": true, "fri": true, "sat": true }, { "enabled": true, "sprinkleName": "Rasen", "name": "hm-rpc.1.SEQ0343973.2.STATE", "triggerID": "", "wateringTime": "50", "wateringAdd": "130", "wateringInterval": "0", "maxSoilMoistureIrrigation": "8", "maxSoilMoistureRainPct": "120", "triggersIrrigation": "50", "pipeFlow": "370", "booster": false, "endIrrigation": false, "methodControlSM": "fixDay", "inGreenhouse": false, "triggerSM": "", "analogZPct": "0", "analogOHPct": "100", "startDay": "fixDay", "sun": true, "mon": true, "tue": true, "wed": true, "thur": true, "fri": true, "sat": true }, { "enabled": true, "sprinkleName": "Bewässerung Garage:3.STATE", "name": "hm-rpc.1.SEQ0343973.3.STATE", "triggerID": "", "wateringTime": "20", "wateringAdd": "130", "wateringInterval": "0", "maxSoilMoistureIrrigation": "8", "maxSoilMoistureRainPct": "120", "triggersIrrigation": "50", "pipeFlow": "700", "booster": false, "endIrrigation": true, "methodControlSM": "fixDay", "inGreenhouse": false, "triggerSM": "", "analogZPct": "0", "analogOHPct": "100", "startDay": "fixDay", "sun": true, "mon": true, "tue": true, "wed": true, "thur": true, "fri": true, "sat": true } ] } }
-
@gyle
Hallo, das ist ein Fehler im Adapter! Wenn man die Konfiguration speichert, so wird autoOn nicht neu ausgelesen. Am besten du deaktivierst die Bewässerungskreise direkt in der Konfiguration. Ich ändere es in der nächsten Version.
Danke für die Info, Dirk Peter -
@dirk-peter super danke dir!
-
Hat man denn die Möglichkeit die einzelnen Sprinkler zu resetten?
Bin ja noch am Experimentieren. Wenn ich acutalSoilMoisture im Expertenmodus schreibe, dann wird bei der nächsten Berechnung wieder der alte Wert errechnet. Ich würde gerne gezielt den acutalSoilMoisture vorgeben können. -
@saschas adapter stoppen, wert ändern und wieder starten
-
@dirk-peter
Hallo,ich habe das ganze entsprechend deiner Anleitung umgestellt.
Funktioniert soweit super bis auf ein kleines Problem.Bei jedem Regen Tag wird der Tages Unterschied wieder überschrieben und laufen wieder parallel.
Hast du hierfür noch einen Tipp für mich, wie ich das manuelle Umstellen umgehen kann?
MfG
Paul -
@dirkhe dann war das wohl mein Fehler, dass ich den Adapter zuvor nicht gestoppt habe. Werde ich direkt mal probieren.
Edit: Funktioniert! Danke
-
@zeptran
Hallo,
lad dir mal die Version von GitHub zum Testen herunter. Hier ist ein Taster zum weiterschalten der Tage integriert und bei Regen sollten jetzt alle Kreise verschoben werden und nicht nur der aktive. Die Verschiebung der Kreise sollte also bestehen bleiben!
Das Laden von GitHub kann unter npm 6 bis zu 30 min dauern!
MfG Dirk Peter -
@dirk-peter hast du schon eine Idee, wann du den fehler beheben willst?
-
@gyle
Auf GitHub ist er schon behoben. Ich veröffentliche die Adapter nach dem ich sie auf adapter-check.iobroker.in getestet habe. Dieser funktioniert aber momentan nicht. Eine issue habe ich schon eröffnet, aber keine Antwort bis jetzt erhalten.
MfG Dirk Peter -
Ich habe eine Umfrage gestartet für eine Erweiterung dieses Adapters um eine automatische Düngereinspritzung.
Falls Interesse besteht:
https://forum.iobroker.net/topic/56717/sprinklecontrol-adapter-automatisches-düngen-umfrage
Gruß Christoph
-
@dirk-peter Kannst du mir/uns kurz schildern, wie sich die Werte aus dem Log zusammensetzen: 6.9 mm [ 0.08 (4.880000000000001) <= 4 ]
6.9mm müsste der Wert der Wettervorhersage aus rainToday sein. Die restlichen sind mir unbekannt.
Ich frage, da korrekterweise der Kreis "Rasen_Oben" ausgesetzt wurde, der nächste Kreis "Rasen_Küche" aber nicht.
2022-09-03 03:00:00.064 - [32minfo[39m: sprinklecontrol.0 (30064) Rasen_Oben: Start verschoben, da Regenvorhersage für Heute 6.9 mm [ 0.08 (4.880000000000001) <= 4 ] 2022-09-03 03:00:00.158 - [32minfo[39m: host.raspberrypi instance system.adapter.netatmo-crawler.0 started with pid 27732 2022-09-03 03:00:00.178 - [32minfo[39m: javascript.0 (10340) script.js.SprinkleControl.SprinkleControl_Hilfsfunktion: SprinkleControl startet Bewässerung Rasen_Küche 2022-09-03 03:00:00.221 - [32minfo[39m: sprinklecontrol.0 (30064) Set (calculation) ID: Rasen_Küche, value: true, duration: 59:24
-
@saschas sagte in Test Adapter Sprinkle Control 0.2.x mit neuen Funktionen:
Start verschoben, da Regenvorhersage für Heute 6.9 mm [ 0.08 (4.880000000000001) <= 4 ]
Hallo, hier die Werte und ihre Bedeutung:- 6,9 mm
- 0,08 => .actualSoilMoisture unter Objekte lag bei 1% (unterste Grenze) 8 x 1% = 0,08
- 4.880000000000001 => 0,08 + 6,9 - Schwellwert für Regenvorhersage aus der Konfiguration, bei dir wahrscheinlich 2,1
- 4 => In deiner Konfiguration steht wahrscheinlich unter maximale Bodenfeuchtigkeit nach der Bewässerung = 8 und der Einschaltpunkt (Bodenfeuchtigkeit) des Bewässerungsventile in % = 50%. Daraus resultiert der Einschaltpunkt 8 x 50% = 4
MfG Dirk Peter
-
Hallo,
bekomme immer diesen Warn:
sprinklecontrol.0 2023-02-20 08:55:29.609 warn The bistable sensor 0_userdata.0.Bewaesserungssensor.Feuchte_Sensor_6 in Ventil_6 does not deliver correct values! sprinklecontrol.0 2023-02-20 08:55:28.292 warn The bistable sensor 0_userdata.0.Bewaesserungssensor.Feuchte_Sensor_5 in Ventil_5 does not deliver correct values! sprinklecontrol.0 2023-02-20 08:55:27.090 warn The bistable sensor 0_userdata.0.Bewaesserungssensor.Feuchte_Sensor_4 in Ventil_4 does not deliver correct values! sprinklecontrol.0 2023-02-20 08:55:25.929 warn The bistable sensor 0_userdata.0.Bewaesserungssensor.Feuchte_Sensor_3 in Ventil_3 does not deliver correct values! sprinklecontrol.0 2023-02-20 08:55:24.764 warn The bistable sensor 0_userdata.0.Bewaesserungssensor.Feuchte_Sensor_2 in Ventil_2 does not deliver correct values! sprinklecontrol.0 2023-02-20 08:55:23.456 warn The bistable sensor 0_userdata.0.Bewaesserungssensor.Feuchte_Sensor_1 in Ventil_1 does not deliver correct values!
{ "common": { "name": "Feuchte_Sensor_1", "desc": "Manuell erzeugt", "role": "state", "type": "number", "read": true, "write": true, "def": 0 }, "type": "state", "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1654759418133, "_id": "0_userdata.0.Bewaesserungssensor.Feuchte_Sensor_1", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } }