Growatt NOAH 2000 Output
Da der NOAH aktuell dazu neigt, bei einem Wert unter dem in der App definierten "mindest SoC" aus dem WLAN zu fliegen und besonders im Winter eine Mindestladung erhalten bleiben sollte habe ich mir folgenden Flow für Homeassistant/Node-RED gebastelt.
Funktionsweise
Auslesen des aktuellen SOC der Batterie Auslesen des aktuellen Batterie-Outputs Auslesen des aktuellen Verbrauchs anhand eines Shelly 3em Pro
Wenn der SOC des NOAH unter 50% ist -> 0W NOAH Output
Wenn der SOC des NOAH über 50% ist:
- Wenn der aktuelle Wohnungs-Grundverbrauch < 50W liegt -> 0W NOAH Output
- Wenn der aktuelle Wohnungs-Grundverbrauch zwischen 50 und 149 liegt -> 50W NOAH Output
- Wenn der aktuelle Wohnungs-Grundverbrauch => 150 lieget -> 100W Output
Voraussetzung
In der App (Shinephone) Versorger zuerst einstellen und den Zeitraum auf eine Minute (z.B. Nachts) begrenzen. Sonst stellt die App immer wieder den Output zurück.
Konfiguration
- Der Mindest Soc wird im Element "Switch 50%" festgelegt.
- Die Grenzwerte des Wohnungs-Grundverbrauchs werden in "0/50/100" festgelegt
- Der jeweilige W-Output betrifft die beiden letzten Nodes in einer Zeile
[{"id":"6ba40c3bfc8a9de7","type":"tab","label":"Wintermodus","disabled":false,"info":"","env":[]},{"id":"6304f178e51cb35d","type":"inject","z":"6ba40c3bfc8a9de7","name":"10sek","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"10","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":100,"y":300,"wires":[["d3aac5cc87df813c"]]},{"id":"d3aac5cc87df813c","type":"api-current-state","z":"6ba40c3bfc8a9de7","name":"NOAH SoC","server":"8175b1a3.1eb15","version":3,"outputs":1,"halt_if":"","halt_if_type":"num","halt_if_compare":"gt","entity_id":"sensor.noah_2000_soc","state_type":"num","blockInputOverrides":true,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"}],"for":"0","forType":"num","forUnits":"minutes","override_topic":false,"state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","x":270,"y":300,"wires":[["125b1e973b09b71e"]]},{"id":"125b1e973b09b71e","type":"switch","z":"6ba40c3bfc8a9de7","name":"Switch 50%","property":"payload","propertyType":"msg","rules":[{"t":"lt","v":"50","vt":"num"},{"t":"gte","v":"50","vt":"num"}],"checkall":"false","repair":false,"outputs":2,"x":450,"y":300,"wires":[["d46d2be89c2cd00a"],["fb3493adda9c816e","203b47602bd9a966"]]},{"id":"7973408ffa1d9bd2","type":"api-call-service","z":"6ba40c3bfc8a9de7","name":"Set Output 100W","server":"8175b1a3.1eb15","version":7,"debugenabled":false,"action":"number.set_value","floorId":[],"areaId":[],"deviceId":[],"entityId":["number.noah_2000_system_output_power"],"labelId":[],"data":"{\"value\": 100}","dataType":"jsonata","mergeContext":"","mustacheAltTags":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"50","valueType":"str"}],"queue":"none","blockInputOverrides":true,"domain":"number","service":"set_value","x":1692,"y":366,"wires":[[]]},{"id":"765b5906122dd3de","type":"api-call-service","z":"6ba40c3bfc8a9de7","name":"Set Output 0W","server":"8175b1a3.1eb15","version":7,"debugenabled":true,"action":"number.set_value","floorId":[],"areaId":[],"deviceId":[],"entityId":["number.noah_2000_system_output_power"],"labelId":[],"data":"{\"value\": 0}","dataType":"jsonata","mergeContext":"","mustacheAltTags":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"0","valueType":"str"}],"queue":"none","blockInputOverrides":true,"domain":"number","service":"set_value","x":1682,"y":246,"wires":[[]]},{"id":"40b0357fc6ba1c48","type":"api-current-state","z":"6ba40c3bfc8a9de7","name":"NOAH Current OutputW","server":"8175b1a3.1eb15","version":3,"outputs":1,"halt_if":"","halt_if_type":"num","halt_if_compare":"gt","entity_id":"number.noah_2000_system_output_power","state_type":"num","blockInputOverrides":true,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"}],"for":"0","forType":"num","forUnits":"minutes","override_topic":false,"state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","x":1252,"y":366,"wires":[["de38283dd7e093f7"]]},{"id":"de38283dd7e093f7","type":"switch","z":"6ba40c3bfc8a9de7","name":"Wenn Wert nicht 100","property":"payload","propertyType":"msg","rules":[{"t":"neq","v":"100","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":1482,"y":366,"wires":[["7973408ffa1d9bd2"]]},{"id":"d46d2be89c2cd00a","type":"api-current-state","z":"6ba40c3bfc8a9de7","name":"NOAH Current OutputW","server":"8175b1a3.1eb15","version":3,"outputs":1,"halt_if":"","halt_if_type":"num","halt_if_compare":"gt","entity_id":"number.noah_2000_system_output_power","state_type":"num","blockInputOverrides":true,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"}],"for":"0","forType":"num","forUnits":"minutes","override_topic":false,"state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","x":1252,"y":246,"wires":[["2d8ad233773b5f01"]]},{"id":"2d8ad233773b5f01","type":"switch","z":"6ba40c3bfc8a9de7","name":"Wenn Wert nicht 0","property":"payload","propertyType":"msg","rules":[{"t":"neq","v":"0","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":1472,"y":246,"wires":[["765b5906122dd3de"]]},{"id":"f873e9bcde8f8245","type":"comment","z":"6ba40c3bfc8a9de7","name":"NOAH im Winter nicht unter min-X%-SoC","info":"Output Fest auf 50W, solange über 50% SoC","x":160,"y":20,"wires":[]},{"id":"fb3493adda9c816e","type":"api-current-state","z":"6ba40c3bfc8a9de7","name":"Wohnung W","server":"8175b1a3.1eb15","version":3,"outputs":1,"halt_if":"","halt_if_type":"str","halt_if_compare":"is","entity_id":"sensor.shellypro3em_34987a46c32c_total_active_power","state_type":"str","blockInputOverrides":true,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"topic","propertyType":"msg","value":"netz","valueType":"str"}],"for":"0","forType":"num","forUnits":"minutes","override_topic":false,"state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","x":710,"y":320,"wires":[["43281de93be0e30f"]]},{"id":"2c7313997b7a304e","type":"switch","z":"6ba40c3bfc8a9de7","name":"0/50/100","property":"payload","propertyType":"msg","rules":[{"t":"lt","v":"50","vt":"str"},{"t":"btwn","v":"50","vt":"num","v2":"149","v2t":"num"},{"t":"gte","v":"150","vt":"str"}],"checkall":"false","repair":false,"outputs":3,"x":1051,"y":313,"wires":[["d46d2be89c2cd00a"],["d7391bb983d9614d"],["40b0357fc6ba1c48"]]},{"id":"93c4d12f83235c8b","type":"api-call-service","z":"6ba40c3bfc8a9de7","name":"Set Output 50W","server":"8175b1a3.1eb15","version":7,"debugenabled":false,"action":"number.set_value","floorId":[],"areaId":[],"deviceId":[],"entityId":["number.noah_2000_system_output_power"],"labelId":[],"data":"{\"value\": 50}","dataType":"jsonata","mergeContext":"","mustacheAltTags":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"50","valueType":"str"}],"queue":"none","blockInputOverrides":true,"domain":"number","service":"set_value","x":1682,"y":306,"wires":[[]]},{"id":"814d83d93b227bca","type":"switch","z":"6ba40c3bfc8a9de7","name":"Wenn Wert nicht 50","property":"payload","propertyType":"msg","rules":[{"t":"neq","v":"50","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":1472,"y":306,"wires":[["93c4d12f83235c8b"]]},{"id":"d7391bb983d9614d","type":"api-current-state","z":"6ba40c3bfc8a9de7","name":"NOAH Current OutputW","server":"8175b1a3.1eb15","version":3,"outputs":1,"halt_if":"","halt_if_type":"num","halt_if_compare":"gt","entity_id":"number.noah_2000_system_output_power","state_type":"num","blockInputOverrides":true,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"}],"for":"0","forType":"num","forUnits":"minutes","override_topic":false,"state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","x":1252,"y":306,"wires":[["814d83d93b227bca"]]},{"id":"43281de93be0e30f","type":"function","z":"6ba40c3bfc8a9de7","name":"Addition W","func":"\nif (msg.topic === \"netz\") context.set(\"netz\", msg.payload);\nif (msg.topic === \"pv\") context.set(\"pv\", msg.payload);\n\nvar pv = parseFloat(context.get(\"pv\") || 0);\nvar netz = parseFloat(context.get(\"netz\") || 0);\n\nmsg.payload = pv + netz;\nreturn msg;","outputs":1,"timeout":"","noerr":0,"initialize":"","finalize":"","libs":[],"x":901,"y":313,"wires":[["2c7313997b7a304e"]]},{"id":"203b47602bd9a966","type":"api-current-state","z":"6ba40c3bfc8a9de7","name":"NOAH Current OutputW","server":"8175b1a3.1eb15","version":3,"outputs":1,"halt_if":"","halt_if_type":"num","halt_if_compare":"gt","entity_id":"number.noah_2000_system_output_power","state_type":"num","blockInputOverrides":true,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"topic","propertyType":"msg","value":"pv","valueType":"str"}],"for":"0","forType":"num","forUnits":"minutes","override_topic":false,"state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","x":670,"y":380,"wires":[["43281de93be0e30f"]]},{"id":"8175b1a3.1eb15","type":"server","name":"Home Assistant","addon":true}]