Hallo zusammen,
ich habe mir ein Herz genommen und mal wieder etwas Copy/Past gemacht. Nach einer Stunde Arbeit ist nun über das Device PV_Anlage_1_API die externe Batterie Steuerung verfügbar, bisher war nur eine Abfrage möglich.
Leider habe ich noch keine praktische Erfahrung mit der externen Batterie Steuerung.
Nach Aussage aus einem anderen Forum werden hierdurch jedoch einzelne interne Werte, für eine Zeit von 3 Minuten überschrieben. Dies hat den Hintergrund, das die externe Steuerung regelmäßig die Werte setzen muss, um den Zustand zu erhalten. Es soll verhindert werden, dass sich die externe Steuerung eventuell aufgehängt hat und somit die Kontrolle über die Batterie verloren geht.
Ein Szenario wäre z.B. die Begrenzung der Batterieladung auf MaxSoc 80%
- Bei meiner Anlage bin ich im Sommer mit ca 40% Batterieladung aus der Nacht gekommen.
- in Phasen von langem Top Wetter konnte die Batterie niemals einen Wert von z.B. MinSoc 10% erreichen.
- Es könnte eine Langfristige Speicherung verhindert werden
- Bei einer schlechten Prognose für den nächsten Tag soll die Batterie auf Soc 100% geladen werden
- Bei sehr guter Prognose soll die Batterie am Abend z.B. nur 70% geladen sein. Das hängt natürlich vom jeweiligen Haushalt und der Batteriegröße ab.
- Die Ladezeit soll natürlich im dynamischen 70% Bereich liegen, damit es keine Abriegelung gibt.
Vorteile:
- weniger Stress für den Speicher
- geringfügig mehr Einspeisung am Morgen und Nachmittag
- Der Plenticore bekommt eine externe Prognose und trifft für die Ladezeit besser das Maximum.
- Die Speicherladung kann besser auf den Haushalt angepasst werden.
Damit Ihr kein komplett Update des Devices machen müsst habe ich hier mal die delta Befehle aufgelistet. Bitte prüft das jedoch nochmal, bevor Ihr das Löschen durchführt.
attr PV_Anlage_1_API comment Version 2021.01.12 12:30\
Passworte für die Abfrage des PV_Anlage_1_API werden im storeKeyValue abgelegt:\
{KeyValue("[read|store]","PW_<Device Name>_<Benutzer Name>","<passwort>")}\
{KeyValue("store","PW_PV_Anlage_1_API_user","<passwort>")}
###################################################################################################
## An dieser Stelle werden alte Attribute entfernt, die dann später mit einer zweistelligen Nummerierung neu erstellt werden.
##
deleteattr PV_Anlage_1_API set221Data
deleteattr PV_Anlage_1_API set221Header01
deleteattr PV_Anlage_1_API set221Header02
deleteattr PV_Anlage_1_API set221Hint
deleteattr PV_Anlage_1_API set221Method
deleteattr PV_Anlage_1_API set221Name
deleteattr PV_Anlage_1_API set221URL
deleteattr PV_Anlage_1_API set223Data
deleteattr PV_Anlage_1_API set223Header01
deleteattr PV_Anlage_1_API set223Header02
deleteattr PV_Anlage_1_API set223Hint
deleteattr PV_Anlage_1_API set223Method
deleteattr PV_Anlage_1_API set223Name
deleteattr PV_Anlage_1_API set223URL
deleteattr PV_Anlage_1_API set224Data
deleteattr PV_Anlage_1_API set224Header01
deleteattr PV_Anlage_1_API set224Header02
deleteattr PV_Anlage_1_API set224Hint
deleteattr PV_Anlage_1_API set224Method
deleteattr PV_Anlage_1_API set224Name
deleteattr PV_Anlage_1_API set224URL
deleteattr PV_Anlage_1_API set225Data
deleteattr PV_Anlage_1_API set225Header01
deleteattr PV_Anlage_1_API set225Header02
deleteattr PV_Anlage_1_API set225Hint
deleteattr PV_Anlage_1_API set225Method
deleteattr PV_Anlage_1_API set225Name
deleteattr PV_Anlage_1_API set225URL
deleteattr PV_Anlage_1_API set226Data
deleteattr PV_Anlage_1_API set226Header01
deleteattr PV_Anlage_1_API set226Header02
deleteattr PV_Anlage_1_API set226Hint
deleteattr PV_Anlage_1_API set226Method
deleteattr PV_Anlage_1_API set226Name
deleteattr PV_Anlage_1_API set226URL
deleteattr PV_Anlage_1_API set227Data
deleteattr PV_Anlage_1_API set227Header01
deleteattr PV_Anlage_1_API set227Header02
deleteattr PV_Anlage_1_API set227Hint
deleteattr PV_Anlage_1_API set227Method
deleteattr PV_Anlage_1_API set227Name
deleteattr PV_Anlage_1_API set227URL
###################################################################################################
## Hier kommen die neuen Set Attribute für die zweistellige Nummerierung
##
attr PV_Anlage_1_API set2201Data [{"moduleid":"devices:local","settings":[{"id":"Battery:DynamicSoc:Enable","value":"$val"}]}]
attr PV_Anlage_1_API set2201Header01 authorization: Session %auth_sessionId%
attr PV_Anlage_1_API set2201Header02 Content-type:application/json, Accept:application/json, Connection:keep-alive
attr PV_Anlage_1_API set2201Hint 0,1
attr PV_Anlage_1_API set2201Method PUT
attr PV_Anlage_1_API set2201Name 22_01_Battery_DynamicSoc_Enable
attr PV_Anlage_1_API set2201URL http://%IP-Address_Plenticore%/api/v1/settings
attr PV_Anlage_1_API set2203Data [{"moduleid":"devices:local","settings":[{"id":"Battery:MinHomeComsumption","value":"$val"}]}]
attr PV_Anlage_1_API set2203Header01 authorization: Session %auth_sessionId%
attr PV_Anlage_1_API set2203Header02 Content-type:application/json, Accept:application/json, Connection:keep-alive
attr PV_Anlage_1_API set2203Hint slider,50,50,8000
attr PV_Anlage_1_API set2203Method PUT
attr PV_Anlage_1_API set2203Name 22_03_Battery_MinHomeConsumption
attr PV_Anlage_1_API set2203URL http://%IP-Address_Plenticore%/api/v1/settings
attr PV_Anlage_1_API set2204Data [{"moduleid":"devices:local","settings":[{"id":"Battery:MinSoc","value":"$val"}]}]
attr PV_Anlage_1_API set2204Header01 authorization: Session %auth_sessionId%
attr PV_Anlage_1_API set2204Header02 Content-type:application/json, Accept:application/json, Connection:keep-alive
attr PV_Anlage_1_API set2204Hint slider,10,5,100
attr PV_Anlage_1_API set2204Method PUT
attr PV_Anlage_1_API set2204Name 22_04_Battery_MinSoc
attr PV_Anlage_1_API set2204URL http://%IP-Address_Plenticore%/api/v1/settings
attr PV_Anlage_1_API set2205Data [{"moduleid":"devices:local","settings":[{"id":"Battery:SmartBatteryControl:Enable","value":"$val"}]}]
attr PV_Anlage_1_API set2205Header01 authorization: Session %auth_sessionId%
attr PV_Anlage_1_API set2205Header02 Content-type:application/json, Accept:application/json, Connection:keep-alive
attr PV_Anlage_1_API set2205Hint 0,1
attr PV_Anlage_1_API set2205Method PUT
attr PV_Anlage_1_API set2205Name 22_05_Battery_SmartBatteryControl_Enable
attr PV_Anlage_1_API set2205URL http://%IP-Address_Plenticore%/api/v1/settings
attr PV_Anlage_1_API set2206Data [{"moduleid":"devices:local","settings":[{"id":"Battery:Strategy","value":"$val"}]}]
attr PV_Anlage_1_API set2206Header01 authorization: Session %auth_sessionId%
attr PV_Anlage_1_API set2206Header02 Content-type:application/json, Accept:application/json, Connection:keep-alive
attr PV_Anlage_1_API set2206Hint 1,2
attr PV_Anlage_1_API set2206Method PUT
attr PV_Anlage_1_API set2206Name 22_06_Battery_Strategy
attr PV_Anlage_1_API set2206URL http://%IP-Address_Plenticore%/api/v1/settings
attr PV_Anlage_1_API set2207Data [{"moduleid":"devices:local","settings":[{"id":"Battery:Type","value":"$val"}]}]
attr PV_Anlage_1_API set2207Header01 authorization: Session %auth_sessionId%
attr PV_Anlage_1_API set2207Header02 Content-type:application/json, Accept:application/json, Connection:keep-alive
attr PV_Anlage_1_API set2207Hint 0,4
attr PV_Anlage_1_API set2207Method PUT
attr PV_Anlage_1_API set2207Name 22_07_Battery_Type
attr PV_Anlage_1_API set2207URL http://%IP-Address_Plenticore%/api/v1/settings
###################################################################################################
## Diese Set Attribute sind neu für die "Battery:ExternControl"
## Nach dem setzen eines Wertes ist das Ergebnis mit "get 23_Battery:_ExternControl" erneut abzufragen, um die Readings zu aktualisieren.
attr PV_Anlage_1_API set2300Data [{"moduleid":"devices:local","settings":[{"id":"Battery:ExternControl","value":"$val"}]}]
attr PV_Anlage_1_API set2300Header01 authorization: Session %auth_sessionId%
attr PV_Anlage_1_API set2300Header02 Content-type:application/json, Accept:application/json, Connection:keep-alive
attr PV_Anlage_1_API set2300Hint 0,1
attr PV_Anlage_1_API set2300Method PUT
attr PV_Anlage_1_API set2300Name 23_00_Battery_ExternControl
attr PV_Anlage_1_API set2300URL http://%IP-Address_Plenticore%/api/v1/settings
attr PV_Anlage_1_API set2301Data [{"moduleid":"devices:local","settings":[{"id":"Battery:ExternControl:AcPowerAbs","value":"$val"}]}]
attr PV_Anlage_1_API set2301Header01 authorization: Session %auth_sessionId%
attr PV_Anlage_1_API set2301Header02 Content-type:application/json, Accept:application/json, Connection:keep-alive
attr PV_Anlage_1_API set2301Method PUT
attr PV_Anlage_1_API set2301Name 23_01_Battery_ExternControl_AcPowerAbs
attr PV_Anlage_1_API set2301URL http://%IP-Address_Plenticore%/api/v1/settings
attr PV_Anlage_1_API set2302Data [{"moduleid":"devices:local","settings":[{"id":"Battery:ExternControl:AcPowerRel","value":"$val"}]}]
attr PV_Anlage_1_API set2302Header01 authorization: Session %auth_sessionId%
attr PV_Anlage_1_API set2302Header02 Content-type:application/json, Accept:application/json, Connection:keep-alive
attr PV_Anlage_1_API set2302Method PUT
attr PV_Anlage_1_API set2302Name 23_02_Battery_ExternControl_AcPowerRel
attr PV_Anlage_1_API set2302URL http://%IP-Address_Plenticore%/api/v1/settings
attr PV_Anlage_1_API set2303Data [{"moduleid":"devices:local","settings":[{"id":"Battery:ExternControl:DcCurrentAbs","value":"$val"}]}]
attr PV_Anlage_1_API set2303Header01 authorization: Session %auth_sessionId%
attr PV_Anlage_1_API set2303Header02 Content-type:application/json, Accept:application/json, Connection:keep-alive
attr PV_Anlage_1_API set2303Method PUT
attr PV_Anlage_1_API set2303Name 23_03_Battery_ExternControl_DcCurrentAbs
attr PV_Anlage_1_API set2303URL http://%IP-Address_Plenticore%/api/v1/settings
attr PV_Anlage_1_API set2304Data [{"moduleid":"devices:local","settings":[{"id":"Battery:ExternControl:DcCurrentRel","value":"$val"}]}]
attr PV_Anlage_1_API set2304Header01 authorization: Session %auth_sessionId%
attr PV_Anlage_1_API set2304Header02 Content-type:application/json, Accept:application/json, Connection:keep-alive
attr PV_Anlage_1_API set2304Method PUT
attr PV_Anlage_1_API set2304Name 23_04_Battery_ExternControl_DcCurrentRel
attr PV_Anlage_1_API set2304URL http://%IP-Address_Plenticore%/api/v1/settings
attr PV_Anlage_1_API set2305Data [{"moduleid":"devices:local","settings":[{"id":"Battery:ExternControl:DcPowerAbs","value":"$val"}]}]
attr PV_Anlage_1_API set2305Header01 authorization: Session %auth_sessionId%
attr PV_Anlage_1_API set2305Header02 Content-type:application/json, Accept:application/json, Connection:keep-alive
attr PV_Anlage_1_API set2305Method PUT
attr PV_Anlage_1_API set2305Name 23_05_Battery_ExternControl_DcPowerAbs
attr PV_Anlage_1_API set2305URL http://%IP-Address_Plenticore%/api/v1/settings
attr PV_Anlage_1_API set2306Data [{"moduleid":"devices:local","settings":[{"id":"Battery:ExternControl:DcPowerRel","value":"$val"}]}]
attr PV_Anlage_1_API set2306Header01 authorization: Session %auth_sessionId%
attr PV_Anlage_1_API set2306Header02 Content-type:application/json, Accept:application/json, Connection:keep-alive
attr PV_Anlage_1_API set2306Method PUT
attr PV_Anlage_1_API set2306Name 23_06_Battery_ExternControl_DcPowerRel
attr PV_Anlage_1_API set2306URL http://%IP-Address_Plenticore%/api/v1/settings
attr PV_Anlage_1_API set2307Data [{"moduleid":"devices:local","settings":[{"id":"Battery:ExternControl:MaxChargePowerAbs","value":"$val"}]}]
attr PV_Anlage_1_API set2307Header01 authorization: Session %auth_sessionId%
attr PV_Anlage_1_API set2307Header02 Content-type:application/json, Accept:application/json, Connection:keep-alive
attr PV_Anlage_1_API set2307Method PUT
attr PV_Anlage_1_API set2307Name 23_07_Battery_ExternControl_MaxChargePowerAbs
attr PV_Anlage_1_API set2307URL http://%IP-Address_Plenticore%/api/v1/settings
attr PV_Anlage_1_API set2308Data [{"moduleid":"devices:local","settings":[{"id":"Battery:ExternControl:MaxDischargePowerAbs","value":"$val"}]}]
attr PV_Anlage_1_API set2308Header01 authorization: Session %auth_sessionId%
attr PV_Anlage_1_API set2308Header02 Content-type:application/json, Accept:application/json, Connection:keep-alive
attr PV_Anlage_1_API set2308Method PUT
attr PV_Anlage_1_API set2308Name 23_08_Battery_ExternControl_MaxDischargePowerAbs
attr PV_Anlage_1_API set2308URL http://%IP-Address_Plenticore%/api/v1/settings
attr PV_Anlage_1_API set2309Data [{"moduleid":"devices:local","settings":[{"id":"Battery:ExternControl:MaxSocRel","value":"$val"}]}]
attr PV_Anlage_1_API set2309Header01 authorization: Session %auth_sessionId%
attr PV_Anlage_1_API set2309Header02 Content-type:application/json, Accept:application/json, Connection:keep-alive
attr PV_Anlage_1_API set2309Hint slide,30,5,100
attr PV_Anlage_1_API set2309Method PUT
attr PV_Anlage_1_API set2309Name 23_09_Battery_ExternControl_MaxSocRel
attr PV_Anlage_1_API set2309URL http://%IP-Address_Plenticore%/api/v1/settings
attr PV_Anlage_1_API set2310Data [{"moduleid":"devices:local","settings":[{"id":"Battery:ExternControl:MinSocRel","value":"$val"}]}]
attr PV_Anlage_1_API set2310Header01 authorization: Session %auth_sessionId%
attr PV_Anlage_1_API set2310Header02 Content-type:application/json, Accept:application/json, Connection:keep-alive
attr PV_Anlage_1_API set2310Hint slider,5,5,30
attr PV_Anlage_1_API set2310Method PUT
attr PV_Anlage_1_API set2310Name 23_10_Battery_ExternControl_MinSocRel
attr PV_Anlage_1_API set2310URL http://%IP-Address_Plenticore%/api/v1/settings
Für die unter Euch, die bereits in die Batteriesteuerung eingegriffen haben ist dann auch eine Änderung im PV_Schedule notwendig, um die Namensänderung nachzuvollziehen.
Es geht um diese Zeilen "set PV_Anlage_1_API 22_3_Battery* " , wo aus der "3" eine "03" wird.
################################################################################################################
## 6 Wenn die Ladung im Herbst/Winter unter MinSoc geht allen PV Überschuss in die Batterie laden
##
DOELSEIF
(([Astro:ObsSeason] eq "Herbst" or [Astro:ObsSeason] eq "Winter") and
[PV_Anlage_1_API:Battery_Info_SoC] <= [PV_Anlage_1_API:Battery_InternControl_MinSoc])
(get BYD_Status BatteryInformation)
(set PV_Anlage_1_API 22_03_Battery_MinHomeConsumption [PV_Anlage_1_API:Battery_Info_WorkCapacity])
(get PV_Anlage_1_API 22_Battery_InternControl, {Log 2, "PV_Schedule cmd_6 : PV Überschuss wird in Batterie geladen. Keine Entladung"})
################################################################################################################
## 7 Beim erreichen von 90% Soc die Entladung wieder frei geben
##
DOELSEIF
(([Astro:ObsSeason] eq "Herbst" or [Astro:ObsSeason] eq "Winter") and
[PV_Anlage_1_API:Battery_Info_SoC] >= 90)
(set PV_Anlage_1_API 22_03_Battery_MinHomeConsumption 50)
(get PV_Anlage_1_API 22_Battery_InternControl, {Log 2, "PV_Schedule cmd_7 : Batterie über 90%, Entlademodus freigegeben"})