Beschreibung des Json Inputs für Wechselrichter [gelöst]

Fragen zur Nutzung, Features, usw..
Antworten
derron
Beiträge: 29
Registriert: Di Jul 19, 2022 11:28 am

Beschreibung des Json Inputs für Wechselrichter [gelöst]

Beitrag von derron »

Hallo nochmal,

ich richte gerade meine beiden WR ein, einer davon via JSON - eine Art HomeMatic EnergyMeter, dessen Json Values ich wie folgt bereitgestellt bekomme:

Code: Alles auswählen

{
  "Arg":"Schaltaktor.Sensor.HS.02_Pwr power energyCalc",
  "Results": [
  {
    "Name":"Schaltaktor.Sensor.HS.02_Pwr",
    "Internals": { },
    "Readings": {
      "energyCalc": { "Value":"1689196.5", "Time":"2022-07-19 15:17:52" },
      "power": { "Value":"914.19", "Time":"2022-07-19 15:17:52" }
    },
    "Attributes": { }
  }  ],
  "totalResultsReturned":1
}


Wenn ich nun unter "Json Abfrage für Watt" .power oder .energyCalc eintrage, erhalte ich folgende Fehlermeldung:

Code: Alles auswählen

2022-07-19 15:16:33: PID: 6990: soc.modules.common.fault_state: Json Wechselrichter: FaultState FaultStateLevel.ERROR, FaultStr <class 'TypeError'> float() argument must be a string or a number, not 'NoneType', Traceback:
Traceback (most recent call last):
File "/var/www/html/openWB/packages/modules/json/device.py", line 104, in update
self.components[component].update(response.json())
File "/var/www/html/openWB/packages/modules/json/inverter.py", line 34, in update
power = float(jq.compile(config["jq_power"]).input(response).first())
TypeError: float() argument must be a string or a number, not 'NoneType'
Den Json String kann ich vermutlich nicht verändern.
Kann ich auf openWB Seite hier noch feiner eingrenzen? Bzw. was ist der Grund für den Fehler?
Gibt es eine Beschreibung zu dieser Einstellung?
Zuletzt geändert von derron am Di Jul 19, 2022 2:16 pm, insgesamt 1-mal geändert.
derNeueDet
Beiträge: 4447
Registriert: Mi Nov 11, 2020 7:16 pm
Has thanked: 5 times
Been thanked: 27 times

Re: Beschreibung des Json Inputs für Wechselrichter

Beitrag von derNeueDet »

Na ganz so einfach darfst du das nicht machen.

Json Abfrage für Watt:

Code: Alles auswählen

.Results[].Readings.power.Value|tonumber|round
Json Abfrage für WH:

Code: Alles auswählen

.Results[].Readings.energyCalc.Value|tonumber
So sollte es funktionieren. Watt werden nur als ganzzahlige Werte angenommen, daher round, um den Dezimalteil zu eliminieren.

VG
Det
10kWp PV mit SMA Tripower 10000TL-10 (PE11 mit SDM72V2); 2,4kWp mit Solis 2.5 G6 (EE11 mit SDM120). OpenWB Standard+. EVU EM540 an einem Raspi mit Venus OS. BEV Mercedes EQA 300 (06/2024)
derron
Beiträge: 29
Registriert: Di Jul 19, 2022 11:28 am

Re: Beschreibung des Json Inputs für Wechselrichter

Beitrag von derron »

Oha, was da alles geht. Danke für den Code @derNeueDet - so funktioniert es bestens!
Jetzt kann ich mich an den EVU Zähler machen.
Antworten