jeroenterheerdt / HAsmartirrigation

Smart Irrigation custom component for Home Assistant
MIT License
298 stars 46 forks source link

Duration time is calculation the wrap up time even when not needed #350

Open Senbei123 opened 2 weeks ago

Senbei123 commented 2 weeks ago

What happened?

Hi, my calculation come to a point, where no irrigation is needed. But due to the fact, that I work with a wrap up time of 7s, the duration of the next irrigation is 7s - which makes no sence in my view.,

How to reproduce

see the log output for the calculation

Relevant log output

Beachte: Diese Beschreibung nutzt '.' als Dezimalzeichen und zeigt gerundete Werte. Das Modul berechnete einen Evapotranspirationsmangel von -0.0. Der alte Vorrat war 0.
Der maximale Vorrat ist 50.0.Der neue Vorrat ist [alter_Vorrat]+[Veränderung]=0+-0.0=-0.0.
Wenn der Vorrat < 0 ist, ist eine Bewässerung nötig..
Für eine exakte Berechnung der Dauer, wurden folgende Schritte durchgeführt:
Der Niederschlag ist [Durchfluss]*60/[Größe]=15.0*60/86.0=10.5
Die Dauer ist abs([Vorrat])/[Niederschlag]*3600=0.0/10.5*3600=0
Der Multiplikator wird angewendet. Der Multiplikator ist 1.0, also ist die Dauer 0
Die maximale Dauer wird angewendet. Diese ist 3600.0,
Zuletzt wird die Vorlaufzeit angewendet. Die Vorlaufzeit ist 7.0, also ist die Dauer 7

Which version are you running?

v2024.4.3

Diagnostics file

Additional information

Logfile: { "home_assistant": { "installation_type": "Home Assistant OS", "version": "2024.4.3", "dev": false, "hassio": true, "virtualenv": false, "python_version": "3.12.2", "docker": true, "arch": "aarch64", "timezone": "Europe/Berlin", "os_name": "Linux", "os_version": "6.1.21-v8", "supervisor": "2024.04.0", "host_os": "Home Assistant OS 10.3", "docker_version": "23.0.6", "chassis": "embedded", "run_as_root": true }, "custom_components": { "dreame_vacuum": { "version": "v2.0.0b14", "requirements": [ "pillow", "numpy", "pybase64", "requests", "pycryptodome", "python-miio", "py-mini-racer", "tzlocal", "paho-mqtt" ] }, "shelly": { "version": "1.0.5", "requirements": [ "pyShelly==1.0.3", "paho-mqtt==1.6.1", "websocket-client" ] }, "eufy_security": { "version": "8.0.1", "requirements": [ "websocket-client==1.4.2", "aiortsp==1.3.7" ] }, "smart_irrigation": { "version": "v2024.4.3", "requirements": [] }, "iphonedetect": { "version": "2.0.5", "requirements": [ "pyroute2==0.7.5" ] }, "webrtc": { "version": "v3.5.2", "requirements": [] }, "nodered": { "version": "3.1.5", "requirements": [] }, "localtuya": { "version": "5.2.1", "requirements": [] }, "cololight": { "version": "v2.0.5", "requirements": [ "pycololight==2.1.0" ] }, "simpleicons": { "version": "v2.2.0", "requirements": [ "simpleicons==7.14.0" ] }, "miio2": { "version": "1.0.0", "requirements": [ "construct==2.10.56", "python-miio==0.5.5" ] }, "hacs": { "version": "1.34.0", "requirements": [ "aiogithubapi>=22.10.1" ] }, "alexa_media": { "version": "4.9.1", "requirements": [ "alexapy==1.27.10", "packaging>=20.3", "wrapt>=1.14.0" ] }, "watchman": { "version": "0.5.1", "requirements": [ "prettytable==3.0.0" ] }, "openweathermaphistory": { "version": "2.0.2", "requirements": [] }, "nuki_ng": { "version": "0.2.1", "requirements": [] }, "govee": { "version": "2023.11.1", "requirements": [ "govee-api-laggat==0.2.2", "dacite==1.8.0" ] }, "auto_backup": { "version": "1.4.1", "requirements": [] }, "sonoff": { "version": "3.5.4", "requirements": [ "pycryptodome>=3.6.6" ] } }, "integration_manifest": { "domain": "smart_irrigation", "name": "Smart Irrigation", "codeowners": [ "@jeroenterheerdt" ], "config_flow": true, "dependencies": [ "http", "panel_custom" ], "documentation": "https://github.com/jeroenterheerdt/HASmartIrrigation", "iot_class": "local_push", "issue_tracker": "https://github.com/jeroenterheerdt/HASmartIrrigation/issues", "requirements": [], "version": "v2024.4.3", "is_built_in": false }, "data": { "config": { "entry_id": "e2db6d018009db23e7b6566086b9351f", "version": 1, "minor_version": 1, "domain": "smart_irrigation", "title": "Smart Irrigation", "data": { "owm_api_key": "XXXXXXXX", "owm_api_version": "3.0", "use_owm": true, "name": "Bew\u00e4sserung" }, "options": {}, "pref_disable_new_entities": false, "pref_disable_polling": false, "source": "user", "unique_id": "Bew\u00e4sserung", "disabled_by": null }, "storage": { "config": { "calctime": "23:00", "units": "metric", "use_owm": true, "autocalcenabled": true, "autoupdateenabled": true, "autoupdateschedule": "hours", "autoupdatedelay": "0", "autoupdateinterval": "1", "autoclearenabled": true, "cleardatatime": "23:59", "starteventfiredtoday": false }, "zones": [ { "id": 0, "name": "Rasen", "size": 86.0, "throughput": 15.0, "state": "automatic", "bucket": -0.00042754419597311786, "old_bucket": 0, "delta": -0.00042754419597311786, "duration": 7, "module": 0, "multiplier": 1.0, "explanation": "Beachte: Diese Beschreibung nutzt '.' als Dezimalzeichen und zeigt gerundete Werte. Das Modul berechnete einen Evapotranspirationsmangel von -0.0. Der alte Vorrat war 0.
Der maximale Vorrat ist 50.0.Der neue Vorrat ist [alter_Vorrat]+[Ver\u00e4nderung]=0+-0.0=-0.0.
Wenn der Vorrat < 0 ist, ist eine Bew\u00e4sserung n\u00f6tig..
F\u00fcr eine exakte Berechnung der Dauer, wurden folgende Schritte durchgef\u00fchrt:

  • Der Niederschlag ist [Durchfluss]60/[Gr\u00f6\u00dfe]=15.060/86.0=10.5
  • Die Dauer ist abs([Vorrat])/[Niederschlag]3600=0.0/10.53600=0
  • Der Multiplikator wird angewendet. Der Multiplikator ist 1.0, also ist die Dauer 0
  • Die maximale Dauer wird angewendet. Diese ist 3600.0,
  • Zuletzt wird die Vorlaufzeit angewendet. Die Vorlaufzeit ist 7.0, also ist die Dauer 7
  • ", "mapping": 1, "lead_time": 7.0, "maximum_duration": 3600.0, "maximum_bucket": 50, "last_calculated": "2024-04-20T14:39:03.474552", "last_updated": "2024-04-20T14:43:47.016742", "number_of_data_points": 1 } ], "modules": [ { "id": 0, "name": "PyETO", "description": "Die Berechnung der Verunstungsrate basiert auf der FAO56-Formel aus der PyETO-Bibliothek.", "config": { "forecast_days": "3", "solrad_behavior": "3" }, "schema": [ { "type": "boolean", "name": "coastal", "optional": true, "default": false }, { "type": "select", "options": [ [ "1", "EstimateFromTemp" ], [ "2", "EstimateFromSunHours" ], [ "3", "DontEstimate" ] ], "name": "solrad_behavior", "required": true, "default": "1" }, { "type": "integer", "name": "forecast_days", "required": true, "default": 0 } ] }, { "id": 1, "name": "Static", "description": "Modul mit einer statisch konfigurierbaren Verdunstungsrate..", "config": null, "schema": [ { "type": "float", "name": "delta", "required": true, "default": 0.0 } ] } ], "mappings": [ { "id": 0, "name": "Standard Sensorgruppe", "mappings": { "Dewpoint": { "source": "owm", "sensorentity": "", "unit": "" }, "Evapotranspiration": { "source": "none", "sensorentity": "", "unit": "" }, "Humidity": { "source": "owm", "sensorentity": "", "unit": "" }, "Maximum Temperature": { "source": "owm", "sensorentity": "", "unit": "" }, "Minimum Temperature": { "source": "owm", "sensorentity": "", "unit": "" }, "Precipitation": { "source": "owm", "sensorentity": "", "unit": "" }, "Pressure": { "source": "owm", "sensorentity": "", "unit": "" }, "Solar Radiation": { "source": "none", "sensorentity": "", "unit": "" }, "Temperature": { "source": "owm", "sensorentity": "", "unit": "" }, "Windspeed": { "source": "owm", "sensorentity": "", "unit": "" } }, "data": "[]", "data_last_updated": null }, { "id": 1, "name": "Ecowitt", "mappings": { "Dewpoint": { "source": "sensor", "sensorentity": "sensor.gw2000a_dewpoint" }, "Evapotranspiration": { "source": "none" }, "Humidity": { "source": "sensor", "sensorentity": "sensor.rasen_feuchtigkeit" }, "Precipitation": { "source": "sensor", "sensorentity": "sensor.gw2000a_daily_rain_rate" }, "Pressure": { "source": "sensor", "sensorentity": "sensor.gw2000a_absolute_pressure" }, "Solar Radiation": { "source": "sensor", "sensorentity": "sensor.gw2000a_solar_radiation", "unit": "W/m2" }, "Temperature": { "source": "sensor", "sensorentity": "sensor.garten_temperatur" }, "Windspeed": { "source": "sensor", "sensorentity": "sensor.gw2000a_wind_speed", "unit": "km/h" } }, "data": [ { "Dewpoint": 4.0, "Humidity": 40.0, "Precipitation": 0.5, "Pressure": 1014.4, "Solar Radiation": 57.26764800000001, "Temperature": 8.2, "Windspeed": 0.21111111111111128, "retrieved": "2024-04-20T14:40:52.523757" }, { "Dewpoint": 4.5, "Humidity": 40.0, "Precipitation": 0.5, "Pressure": 1014.3, "Solar Radiation": 57.22531200000001, "Temperature": 8.5, "Windspeed": 0.3611111111111114, "retrieved": "2024-04-20T14:43:47.016659" } ], "data_last_updated": "2024-04-20T14:43:47.016742" } ] } } }

    jeroenterheerdt commented 2 weeks ago

    Well, your "vorlaufzeit" is 7 seconds, but I agree it should not be applied if the duration is 0. Thanks for reporting it.

    Get Outlook for Androidhttps://aka.ms/AAb9ysg


    From: Senbei123 @.> Sent: Saturday, April 20, 2024 5:49:50 AM To: jeroenterheerdt/HAsmartirrigation @.> Cc: Mention @.>; Assign @.>; Subscribed @.***> Subject: [jeroenterheerdt/HAsmartirrigation] Duration time is calculation the wrap up time even when not needed (Issue #350)

    What happened?

    Hi, my calculation come to a point, where no irrigation is needed. But due to the fact, that I work with a wrap up time of 7s, the duration of the next irrigation is 7s - which makes no sence in my view.,

    How to reproduce

    see the log output for the calculation

    Relevant log output

    Beachte: Diese Beschreibung nutzt '.' als Dezimalzeichen und zeigt gerundete Werte. Das Modul berechnete einen Evapotranspirationsmangel von -0.0. Der alte Vorrat war 0. Der maximale Vorrat ist 50.0.Der neue Vorrat ist [alter_Vorrat]+[Veränderung]=0+-0.0=-0.0. Wenn der Vorrat < 0 ist, ist eine Bewässerung nötig.. Für eine exakte Berechnung der Dauer, wurden folgende Schritte durchgeführt: Der Niederschlag ist [Durchfluss]60/[Größe]=15.060/86.0=10.5 Die Dauer ist abs([Vorrat])/[Niederschlag]3600=0.0/10.53600=0 Der Multiplikator wird angewendet. Der Multiplikator ist 1.0, also ist die Dauer 0 Die maximale Dauer wird angewendet. Diese ist 3600.0, Zuletzt wird die Vorlaufzeit angewendet. Die Vorlaufzeit ist 7.0, also ist die Dauer 7

    Which version are you running?

    v2024.4.3

    Diagnostics file

    Additional information

    Logfile: { "home_assistant": { "installation_type": "Home Assistant OS", "version": "2024.4.3", "dev": false, "hassio": true, "virtualenv": false, "python_version": "3.12.2", "docker": true, "arch": "aarch64", "timezone": "Europe/Berlin", "os_name": "Linux", "os_version": "6.1.21-v8", "supervisor": "2024.04.0", "host_os": "Home Assistant OS 10.3", "docker_version": "23.0.6", "chassis": "embedded", "run_as_root": true }, "custom_components": { "dreame_vacuum": { "version": "v2.0.0b14", "requirements": [ "pillow", "numpy", "pybase64", "requests", "pycryptodome", "python-miio", "py-mini-racer", "tzlocal", "paho-mqtt" ] }, "shelly": { "version": "1.0.5", "requirements": [ "pyShelly==1.0.3", "paho-mqtt==1.6.1", "websocket-client" ] }, "eufy_security": { "version": "8.0.1", "requirements": [ "websocket-client==1.4.2", "aiortsp==1.3.7" ] }, "smart_irrigation": { "version": "v2024.4.3", "requirements": [] }, "iphonedetect": { "version": "2.0.5", "requirements": [ "pyroute2==0.7.5" ] }, "webrtc": { "version": "v3.5.2", "requirements": [] }, "nodered": { "version": "3.1.5", "requirements": [] }, "localtuya": { "version": "5.2.1", "requirements": [] }, "cololight": { "version": "v2.0.5", "requirements": [ "pycololight==2.1.0" ] }, "simpleicons": { "version": "v2.2.0", "requirements": [ "simpleicons==7.14.0" ] }, "miio2": { "version": "1.0.0", "requirements": [ "construct==2.10.56", "python-miio==0.5.5" ] }, "hacs": { "version": "1.34.0", "requirements": [ "aiogithubapi>=22.10.1" ] }, "alexa_media": { "version": "4.9.1", "requirements": [ "alexapy==1.27.10", "packaging>=20.3", "wrapt>=1.14.0" ] }, "watchman": { "version": "0.5.1", "requirements": [ "prettytable==3.0.0" ] }, "openweathermaphistory": { "version": "2.0.2", "requirements": [] }, "nuki_ng": { "version": "0.2.1", "requirements": [] }, "govee": { "version": "2023.11.1", "requirements": [ "govee-api-laggat==0.2.2", "dacite==1.8.0" ] }, "auto_backup": { "version": "1.4.1", "requirements": [] }, "sonoff": { "version": "3.5.4", "requirements": [ "pycryptodome>=3.6.6" ] } }, "integration_manifest": { "domain": "smart_irrigation", "name": "Smart Irrigation", "codeowners": [ @.***https://github.com/jeroenterheerdt" ], "config_flow": true, "dependencies": [ "http", "panel_custom" ], "documentation": "https://github.com/jeroenterheerdt/HASmartIrrigation", "iot_class": "local_push", "issue_tracker": "https://github.com/jeroenterheerdt/HASmartIrrigation/issues", "requirements": [], "version": "v2024.4.3", "is_built_in": false }, "data": { "config": { "entry_id": "e2db6d018009db23e7b6566086b9351f", "version": 1, "minor_version": 1, "domain": "smart_irrigation", "title": "Smart Irrigation", "data": { "owm_api_key": "XXXXXXXX", "owm_api_version": "3.0", "use_owm": true, "name": "Bew\u00e4sserung" }, "options": {}, "pref_disable_new_entities": false, "pref_disable_polling": false, "source": "user", "unique_id": "Bew\u00e4sserung", "disabled_by": null }, "storage": { "config": { "calctime": "23:00", "units": "metric", "use_owm": true, "autocalcenabled": true, "autoupdateenabled": true, "autoupdateschedule": "hours", "autoupdatedelay": "0", "autoupdateinterval": "1", "autoclearenabled": true, "cleardatatime": "23:59", "starteventfiredtoday": false }, "zones": [ { "id": 0, "name": "Rasen", "size": 86.0, "throughput": 15.0, "state": "automatic", "bucket": -0.00042754419597311786, "old_bucket": 0, "delta": -0.00042754419597311786, "duration": 7, "module": 0, "multiplier": 1.0, "explanation": "Beachte: Diese Beschreibung nutzt '.' als Dezimalzeichen und zeigt gerundete Werte. Das Modul berechnete einen Evapotranspirationsmangel von -0.0. Der alte Vorrat war 0. Der maximale Vorrat ist 50.0.Der neue Vorrat ist [alter_Vorrat]+[Ver\u00e4nderung]=0+-0.0=-0.0. Wenn der Vorrat < 0 ist, ist eine Bew\u00e4sserung n\u00f6tig.. F\u00fcr eine exakte Berechnung der Dauer, wurden folgende Schritte durchgef\u00fchrt:

    — Reply to this email directly, view it on GitHubhttps://github.com/jeroenterheerdt/HAsmartirrigation/issues/350 or unsubscribehttps://github.com/notifications/unsubscribe-auth/AB6PIPTCV7X55CEZOC2AP3DY6JP65BFKMF2HI4TJMJ2XIZLTSSBKK5TBNR2WLJDUOJ2WLJDOMFWWLO3UNBZGKYLEL5YGC4TUNFRWS4DBNZ2F6YLDORUXM2LUPGBKK5TBNR2WLJLJONZXKZNENZQW2ZNLORUHEZLBMRPXI6LQMWBKK5TBNR2WLKRSGA2TGOBZGQYTON5ENZQW2ZNJNBQXGX3MMFRGK3ECUV3GC3DVMWSHI4TVMWSG4YLNMWXHOYLUMNUF6YLDORUXM2LUPGWHG5LCNJSWG5C7OR4XAZNFJFZXG5LFUZ2G64DJMNZZHAVEOR4XAZNKOJSXA33TNF2G64TZUV3GC3DVMWUTENRTGE3TSMJXG2BKI5DZOBS2K2LTON2WLJLWMFWHKZNKGIZDKNBVGM4DANRRQKSHI6LQMWSWYYLCMVWKK5TBNR2WLKRSGA2TGOBZGQYTON5HORZGSZ3HMVZKMY3SMVQXIZI. You are receiving this email because you were mentioned.

    Triage notifications on the go with GitHub Mobile for iOShttps://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Androidhttps://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

    jeroenterheerdt commented 1 week ago

    try https://github.com/jeroenterheerdt/HAsmartirrigation/releases/tag/v2024.4.4 - this is a beta release that should fix it.