@Accu en @Waly_de
Ich habe heute erfolgreich io Broker installiert. Ich greife mein shelly pro 3EM über den home assistant adapter ab und das funktioniert ganz wunderbar mit dem script!
Meine Situation: grosse PV und ich habe eine Delta 2 Max am AC abgeschlossen. Einspesing funktioniert schon wie gewünscht. Jetzt hatte ich gehofft, dass an Hand von PV Überschuss die AC Ladeleistung angepasst wird bzq. Ladung aktiviert/deaktiviert wird. So ganz steige ich da nicht durch. Keine plugs an der D2Max Steckdose und sobald ich das script starte, lädt er mit 200 Watt (das steht noch in der App, aber die ist geschlossen).
So sieht der relevate Code Teil aus, was mache ich falsch?
/***************************************
********** YOUR DATA HERE ************
****************************************/
var ConfigData = {
email: "xxxx", // Die App-Zugangsdaten von ecoFlow
passwort: "xxxxxx",
SmartmeterID: "hass.0.entities.sensor.hv_total_active_power.state", // State, der den aktuellen Gesamtverbrauch in Watt anzeigt
seriennummern: [
//############# Diesen Abschnitt für jedes einzelne Gerät anlegen ################
{
seriennummer: "HW51ZOxxx", // Die Seriennummer des Gerätes
name: "powerstream", // beliebiger Name
MaxPower: 600, // Der höchstmögliche Wert in Watt für die Einspeiseleistung
subscribe: true, // "true": Alle Daten für dieses Gerät werden angefragt. "false": Es werden keine Statusdaten abgefragt
typ: "PS", // Welches Gerät ist es: PowerStream:"PS"; DeltaMax:"DM"; Delta2: "D2" ; Delta2 Max: "D2M"; SmartPlug: "SM"; Andere: "NA"
// Parameter ab hier nur für PowerStream.
regulation: true, // "true": Dieser PowerStream soll vom Script reguliert werden
RegulationOffPower: -1, // Wird die Regulation per State abgestellt, wird die Einspeiseleistung des ersten Powerstreams auf diesen Wert gesetzt (-1 = keine Änderung, -2 = Batterie Priomodus)
hasBat: true, // "true": Eine Batterie ist angeschlossen. Nur für PowerStream relevant.
battPozOn: 99, battPozOff: 97, // Wenn die Batterie bei battPozOn ist, Einspeisung auf MaxPower. Bei BattPozOff Normalbetrieb
battOnSwitchPrio: false, // "true": Bei battPozOn wird in den Batterie-Prioritätsmodus gewechselt
prioOffOnDemand: 30, // Wattwert des Bedarfs, bei dem zurück in den Strom-Priomodus geschaltet wird. 0 für kein Rückschalten.
lowBatLimitPozOn: 5, lowBatLimitPozOff: 15, // Bei Unterschreiten der Batterieladung von "lowBatLimitPozOn" % ist die maximale Einspeiseleistung auf
lowBatLimit: 130, // "lowBatLimit" limitiert, bis der Ladezustand wieder bei "lowBatLimitPozOff" ist
},
//#######################################################################
{
seriennummer: "R3xxxxxxx",
name: "d2max",
typ: "D2M",
subscribe: true, // "true": Alle Daten für dieses Gerät werden angefragt. "false": Es werden keine Statusdaten abgefragt
},
//#######################################################################
{
seriennummer: "XXXXXXXXXXXXX",
name: "SmartPlug 1",
typ: "SM",
subscribe: false, // "true": Alle Daten für dieses Gerät werden angefragt. "false": Es werden keine Statusdaten abgefragt
},
//#######################################################################
],
AdditionalPower: [ // Wenn es weitere Wechselrichter gibt, die in IOBroker erfasst werden, können diese hier Angelegt werden
//############# Diesen Abschnitt für jedes einzelne Gerät anlegen ################
{
name: "Hoymiles2000", // Beliebiger Name
id: "mqtt.0.solar.1234567890.0.power", // Der Objektpfad zu dem Leistungswert in Watt (W)
factor: 10, // Divisionsfaktor für den Leistungswert. (10 für die Delta)
},
//#######################################################################
],
//****************************************
// Erweiterte Einstellungen:
//****************************************
SmartmeterTimeoutMin: 4, // Wenn der letzte Wert vom Smartmeter älter als "SmartmeterTimeoutMin" ist, wird das Script mit...
SmartmeterFallbackPower: 130, // SmartmeterFallbackPower als aktuellem Realpowerwert weiter arbeiten, bis wieder aktuelle Daten geliefert werden.
Regulation: true, // 'false' stellt das Setzen der Einspeiseleistung ab
RegulationState: "Regulate", // Wenn angegeben, kann mit diesem State die Regulation ein- und ausgeschaltet werden (Wird automatisch unter 0_userdata.0.ecoflow angelegt)
RegulationMultiPsMode: 0, // Wenn mehrere PS reguliert werden sollen. "balance" = 0 oder "serial" = 1
BasePowerOffset: 0, // Wird vom aktuellen Verbrauch abgezogen, um die Einspeiseleistung zu berechnen
Zusatzpower_Offset: 0, // Zusatzpower startet ab einer Batterieladeleistung von MaxPower - Zusatzpower_Offset
MinValueMin: 2, // Der Zeitraum in Minuten, aus dem der niedrigste Gesamtverbrauchswert geholt werden soll. 0 für Echtzeitwert
MinValueAg: 0, // Art der Ermittlung des kleinsten Wertes: 0 = Minimalwert, 1 = Durchschnittswert
ReconnectMin: 15, // Zeit in Minuten, nach der die Anwendung neu gestartet wird, wenn keine neuen Daten eintreffen
statesPrefix: "0_userdata.0.ecoflow", // Hier werden die ecoFlow States angelegt
latitude: latitude, // Breitengrad des Standortes (wird automatisch eingesetzt)
longitude: longitude, // Längengrad des Standortes (wird automatisch eingesetzt)
//****************************************
// Überschussladung:
//****************************************
ExcessCharge: true, //Überschussladung AN/AUS (true/false)
//ID zum Einstellen der Ladeleistung des Speichers in Watt:
ExcessChargePowerID: "0_userdata.0.ecoflow.app_xx_xx_thing_property_set.writeables.slowChgPower",
//ID des aktuellen Ladestandes des Speichers in %:
ExcessChargePowerBatSocID: "0_userdata.0.ecoflow.app_device_property_xx.data.params.bmsMaster.soc",
ExcessChargeSwitchMin: 5, //Zeit in Minuten die der Schalter mindestens in der letzten geschalteten Position verbleiben muss.
ExcessChargeMaxPower: 500, //Maximale Ladeleistung des Speichers in Watt
ExcessChargeOffsetPower: 0, //Wird der Leistungsanforderung hinzugerechnet um Messabweichungen auszugleichen.
ExcessChargeStartPower: -100, //Mindest-Überschussleistung zum Einschalten des Speichers
ExcessChargeStopPower: 0, //Überschussleistung bei der der Speicher abgeschaltet werden soll.
ExcessChargeStartPowerDurationMin: 1, //Mindestdauer in Minuten, die ExcessChargeStartPower nicht unterschritten werden darf, bevor der Speicher eingeschaltet wird.
//----------------------------------------
// Beispiel für Delta-Nutzung ohne Schlaltersteckdose:
// Wird an einer Delta auch der PV-Eingang genutzt, bitte die PV-Leistung unter AdditionalPower anlegen. Die passende ID ist:
// 0_userdata.0.ecoflow.app_device_property_xxx.data.params.mppt.inWatts
// Bei der Delta: "subscribe: true" konfigurieren
//----------------------------------------
//ID mit dem Messwert der aktuellen Leistungsaufnahme des Speichers in Watt:
ExcessActualPowerID: "0_userdata.0.ecoflow.app_device_property_xx.data.params.inv.inputWatts",
//ID des Schalters, der den Speicher aktiviert:
ExcessChargeSwitchID: "0_userdata.0.ecoflow.app_xx_xx_thing_property_set.writeables.chgPause",
ExcessChargeSwitchOn: 0, //Wert, der zum Aktivieren des Schalters gesetzt werden muss (1/0, true/false, "ON"/"OFF"...)
ExcessChargeSwitchOff: 1, //Wert, der zum Deaktivieren des Schalters gesetzt werden muss (1/0, true/false, "ON"/"OFF"...)
//----------------------------------------
// Beispiel für Nutzung einer Schlaltersteckdose:
//----------------------------------------
//ID mit dem Messwert der aktuellen Leistungsaufnahme des Speichers in Watt:
//ExcessActualPowerID: "sonoff.0.NOUS-DVES_F0A844.ENERGY_Power",
//ID des Schalters, der den Speicher aktiviert:
//ExcessChargeSwitchID: "sonoff.0.NOUS-DVES_F0A844.POWER",
//ExcessChargeSwitchOn: true, //Wert, der zum Aktivieren des Schalters gesetzt werden muss (1/0, true/false, "ON"/"OFF"...)
//ExcessChargeSwitchOff: false, //Wert, der zum Deaktivieren des Schalters gesetzt werden muss (1/0, true/false, "ON"/"OFF"...)
//----------------------------------------
//****************************************
Debug: false, mlog: false,
PlotCmdID: 99999,
}
//***************************************/