0 Stimmen

FEMS - Fennecon Energy Management System

Zuletzt geändert von Jan Tobias Biedermann am 2024/01/16 22:19

Einen Fennceon FEMS (Fennecon Energy Management System), zum Beispiel die Heckert Symphon-E, in das Dashboard des Homeassistant einbinden:

Kurze Einführung:

Das FEMS bringt nicht nur einen Link auf die Cloud mit, den man in der Regel per Email zugesendet bekommt, auch im internen LAN stellt es die gleichen Informationen bereit.

Zusätzlich stellt das Gerät eine sogenannte Rest-API zur Verfügung, über die man aktuelle Werte der Anlage abfragen kann.

Details zur API finden sich hier:

https://docs.fenecon.de/de/_/latest/fems/fems-app/includes/FEMS_App_REST_JSON.html

In der Dokumentation zur API ist genau angegeben, über welchen Link man die Rest-API anspricht. Das Passwort steht dort auch, ist also kein Geheimnis, es lautet „user“.

In der Kommandozeile kann man dieses hier ausprobieren (IP Adresse anpassen!):

curl http://x:user@192.168.2.121:8084/rest/channel/_sum/EssSoc

Dieser direkte Zugriff ist ganz praktisch, da man so in Homeassistant recht leicht an die entsprechenden Werte kommt.

Leider habe ich jedoch trotz der sehr umfangreichen Dokumentation von Homeassistant länger gebraucht um herauszufinden, was ich wo eintragen muss.

Ein Beispiel hätte mir sehr geholfen, daher im Folgenden eine kurze

Anleitung:

Wie kann man also jetzt über die configuration.yaml seine Sensoren einfügen?

  • Man öffnet das Web Frontend seiner Homeassistant Instanz (Standardmässig Port 8123)
  • Unter Einstellungen Add-Ons:

    HowtoHeckertHomeassistant_html_d1a85b4c3b96274c.png

  • Den Fileeditor auswählen (oder installieren, dann auswählen)
  • Die Benutzeroberfläche öffnen
  • HowtoHeckertHomeassistant_html_393e18dd24aa3605.png
  • Dort die Datei configuration.yaml auswählen
  • HowtoHeckertHomeassistant_html_40cee925dd2f7b9b.png
  • HowtoHeckertHomeassistant_html_90e54244e4b8eb27.png
  • Editieren der Datei erlauben HowtoHeckertHomeassistant_html_a596c3d90f249047.png
  • Hier hat man in der Regel bereits einen Sensor angelegt (CPU Temperatur), weswegen ich hier das Stichwort „sensor“ mit dem Rautezeichen (#) auskommentiert habe.
  • Zur Sicherheit lädt man die Datei herunter, damit man im Zweifelsfall alles rückgängig machen kann.
  • Ans Ende der Datei fügt man nun im Online-Editor die folgenden Zeilen an:
# Anlegen von Sensoren, die über die Rest-API Infos aus der FEMS von Fennecon lesen
# Geht davon aus, dass das Stichwort "sensor" bereits weiter oben steht (z.B. CPU Temperatur)
# ACHTUNG: Immer unter Entwicklerwerkzeuge die Konfiguration prüfen bevor man neu startet!
# IP Adresse muss natürlich in der Regel die eurer Anlage im LAN sein!
#sensor:
  - platform: rest
    name: Solar Battery State
    unit_of_measurement: "%"
    device_class: battery
    json_attributes:
     value    
    value_template: "{{value_json.value}}"
    resource: http://x:user@192.168.2.121:8084/rest/channel/_sum/EssSoc
    username: x
    password: user
    authentication: basic
    headers:
      User-Agent: Home Assistant
      Content-Type: application/json
      

  - platform: rest
    name: Solar Income
    unit_of_measurement: "W"
    device_class: energy
    json_attributes:
     value    
    value_template: "{{value_json.value}}"
    resource: http://x:user@192.168.2.121:8084/rest/channel/_sum/ProductionActivePower
    username: x
    password: user
    authentication: basic
    headers:
      User-Agent: Home Assistant
      Content-Type: application/json      

  - platform: rest
    name: House Consumption
    unit_of_measurement: "W"
    device_class: energy
    json_attributes:
     value    
    value_template: "{{value_json.value}}"
    resource: http://x:user@192.168.2.121:8084/rest/channel/_sum/ConsumptionActivePower
    username: x
    password: user
    authentication: basic
    headers:
      User-Agent: Home Assistant
      Content-Type: application/json            

Abspeichern (Diskettensymbol rechts oben)

Hokuspokus. Und was jetzt? Nun schaut man, ob ein kleines rotes Ausrufungszeichen über dem Editor erscheint. Wenn ja, klickt man es an und beseitigt ggf. den Fehler.

Zur Sicherheit geht man nun noch auf Entwicklerwerkzeuge

uHowtoHeckertHomeassistant_html_55c9f529bf5f36cf.png nd überprüft dort die Konfiguration um ggf. Fehler zu beheben.

Nach einem Neustart stehen die Sensoren zur Verfügung.

Was nun?

Nun kann man im Dashboard Schaltflächen für die neu angelegten Sensoren erstellen. Dazu einfach eine Schaltfläche „Sensor“ wählen und die ensprechende Enitität suchen und auswählen (sensor.solar_income zum Beispiel). Die Namen der Sensoren ergeben sich aus dem Schlüsselwort „sensor“ gefolgt von einem Punkt und dem Namen in der configuration.yaml mit Unterstrich anstelle von Leerzeichen).

Nun kann man die Kennwerte seiner Solaranlage im Dashboard auslesen. Natürlich kann man das analog für alle in der API Dokumentation angegebenen Werte machen.

Viel Spaß

Johannes

Powered by MakerspaceBonn e.V.