cfos Wallbox json Einbindung und Auslesen des CFOS Charging Managers

Begonnen von jnewton957, 10 Dezember 2022, 11:21:03

Vorheriges Thema - Nächstes Thema

jnewton957

Wir haben und gerade eine cfos Wallbox angeschafft, die nächste Woche installiert wird.

Nun geht es um die Einbindung in FHEM. die cfos (https://www.cfos-emobility.de/) hat eine eigene Charging Manager Software und somit so Themen wie PV-Überschussladen bereits implementiert.

Aber ich möchte gerne so viele Werte wie möglich im FHEM auslesen und mir dann ein dashboard dazu bauen. Wieviel ich geladen habe, kann ich ja an der wallbox Zähler ablesen. Aber wieviel davon war PV-Überschuss oder Anzahl Ladevorgänge etc etc würde ich auch gerne haben und in FHEM dokumentieren..

Nun habe ich auf der cfos Webseite eine "Beispiel-Zähler-Definition für FHEM (fhem.de). Vielen Dank an Heiko P." gefunden.
Das json File enthält:


{
  "rtype":  1,   // 0 = modbus, 1 = http/json

  "name": "EAM Zaehler", // as displayed in the config dialog
  "manufacturer": "cFos",
  "dev_type": "cfos_eam_zaehler", // will be prefixed by "meter_"

  "delay_accumulated": false,   // false: always read accumulated value, like import_wh / export_wh when reading instantaneous values

  // values used to build the model string
  "type_designation": {
    "address": "GET /fhem?&cmd=jsonlist3%20Zaehler&XHR=1",
    "type": "string",
"query": "Results[0].Name"
  },
  "version": {
    "address": "",
    "type": "string",
    "fixed": "1.0"
  },
  "firmware_version": {
    "address": "",
    "type": "string",
    "fixed": "1.0"
  },
  "serial": {
    "address": "",
    "type": "string",
    "fixed": "0"
  },
  // instantaneous values
  "voltage_l1": {
    "address": "",
    "type": "int32",
    "fixed": "231",
    "resolution": 1.0
  },
  "voltage_l2": {
    "address": "",
    "type": "int32",
    "fixed": "235.5",
    "resolution": 1.0
  },
  "voltage_l3": {
    "address": "",
    "type": "int32",
    "fixed": "234",
    "resolution": 1.00
  },
    "power_va": {
    "address": "GET /fhem?&cmd=jsonlist3%20Zaehler%20Lieferung&XHR=1",
    "query": "Results[0].Readings.Bezug.Value",
"type": "float",
"resolution": 1.0
  },
  // accumulated values
  "import_wh": {
    "address": "GET /fhem?&cmd=jsonlist3%20Zaehler%20Bezug&XHR=1",
    "query": "Results[0].Readings.Bezug.Value",
"type": "float",
"resolution": 1000.0
  },
  "export_wh": {
    "address": "GET /fhem?&cmd=jsonlist3%20Zaehler%20Erzeugung&XHR=1",
    "query": "Results[0].Readings.Bezug.Value",
"type": "float",
"resolution": 1000.0
  }

}



Wie binde ich das nun aber in fhem ein? Welche defines, readings, module etc. muss ich noch definieren?

Danke für die Hilfe. Einbindung eines solchen json Definition habe ich noch nie gemacht.)

Grüße
Jörg
P.S. vielleicht ist Heiko P. ja hier im Forum ?
FHEM6.2 auf Pi5
V 1.66 nanoCUL 433 (IT)
V 1.66 nanoCUL868 (HM)
sqlite3 LogDb
ELRO AB440, DECT200,  TFA30.3125, esp8266, HM, TabletUI, IR-Schreiblesekopf (Udo),tibber Pulse, Kostal Pico, cfos Wallbox, Modbus TCP

ch.eick

Zitat von: jnewton957 am 10 Dezember 2022, 11:21:03
< snip >
Das json File enthält:


{
  "rtype":  1,   // 0 = modbus, 1 = http/json

< snop >

Wie binde ich das nun aber in fhem ein? Welche defines, readings, module etc. muss ich noch definieren?
Hallo Jörg,
in dem JSON ist mir sofort ModBus aufgefallen, da könntest Du schon mal nach der Herstellerdokumentation suchen, oder Dir diese schicken lassen.
Somit wäre eigentlich ModBus das passende Modul in FHEM.
Dort definiert man dann alle Register, die man haben möchte, die dann als readings bereit stehen.

my5cent
    Christian
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick