Summieren & Integrität (Anfänger Fragen)

JuggedHareBoy

New member
Moin,

ich bin Neu in dem Bereich, und wahrscheinlich sind das absolute Anfängerfragen aber ich komme einfach nicht weiter.
Ich habe einen Shelly3EM, mit diesem messe ich drei Phasen gleichzeitig. Ich möchte hier gerne die jeweiligen Phasen addieren. Min/Max (helper) geht hier leider nicht, mit mehreren getesteten Templates in der configuration.yaml komme ich auch nicht weiter. Die führen immer zu einer fehlerhaften Konfiguration. HomeAssistant ist aktuell und läuft auf einem Pi3. Gibt es eine funktionierende Vorlage mit der ich dann zumindest testen kann? Damit ich dabei vielleicht noch den Aufbau verstehe :D
Hier ein Beispiel welches ich verwendet habe:

YAML:
- platform: template
    sensors:  
        energy_total:    
            friendly_name: 'Total Energy'    
            entity_id:      
                - sensor.energy_1      
                - sensor.energy_2      
                - sensor.energy_3    
            value_template: "{{ (states('sensor.energy_1')|float + states('sensor.energy_2')|float + states('sensor.energy_3')|float)|round(3) }}"    
            unit_of_measurement: "kWh"

Hierbei habe ich die "sensor.energy_1" etc. jeweils durch die Entitäten des Shelly3EM ersetzt.

Und ich weiß nicht ob das hier richtig ist, ich habe einen HomeManager 2.0 / einen Tripower WR und einen Storage WR. Alle <2 Jahre alt und mit aktuellster Firmware. Per SMA Addon kann ich mich weder als User noch als Installateur einloggen. Per IP Aufruf im Browser kann ich mich aber in den Geräten einloggen. Muss ich bei der Eingabe des Host (IP der Geräte) noch etwas beachten? Oder muss ich hier noch Modbus aktivieren? Was für mich allerdings keinen Sinn macht, da das ja eigentlich der Browser Login sein müsste?

Ich entschuldige mich Vorab einfach mal, falls ich hier falsch bin bzw. die Themen falsch adressiert sind. Aber ich stehe derzeit echt auf dem Schlauch.
Für Fragen zu meiner configuration.yaml kann ich erst heute Abend Infos liefern.
 
Zuletzt bearbeitet:
Moin! Bin selber leider auch kein Profi in dem Bereich, aber nach allem was ich mir mittlerweile zusammengereimt habe sollte Dein erstes Problem in etwa so zu lösen sein:
YAML:
sensor:
  - platform: template
    sensors:
      energy_total:
        friendly_name: 'Total Energy'
        value_template: "{{ (states('sensor.energy_1')|float + states('sensor.energy_2')|float + states('sensor.energy_3')|float)|round(3) }}"
        unit_of_measurement: "kWh"
- Einrückungen natürlich beachten und das sensor: nur mitkopieren, wenn Du noch keines in der configuration.yaml stehen hast.

Zu dem zweiten Problem kann ich so leider auf Anhieb garnichts sagen.
 
Das werde ich dann direkt mal prüfen heute Abend =)
Einrücken hatte ich hier im Editor, ist aber nicht mitgekommen. Mein Anwendungsfehler :D
 
Die Einrückungen werden nur beibehalten, wenn Du explizit Code einfügst.
1651568191586.png
Zusätzliche Optionen über die drei Punkte einblenden, Code anklicken, YAML auswählen - oder direkt eingeben: [CODE=yaml] Inhalt [/CODE] ;)
 
Das SMA Addon geht nur für US Geräte - steht auch so in der Doku von HA. Den Home Manager 2 kannst du mit etwas Glück per Modbus abfragen. Allerdings nur, wenn die PV Anlage nicht mit deiner Heizung kommuniziert - das ist bei mir der Fall. Ich habe eine LWZ 304 von Stiebel Eltron und die kommunizert per Modbus mit der PV Anlage und somit kann ich keine Werte mehr per Modbus abfragen.
 
Ah ok, das wusste ich nicht mit den US Anlagen. Gerade gesehen, das (US) habe ich einfach mal überlesen...
Ok, dann versuche ich mich da mal an Modbus.

Das Summieren klappt übrigens prima, Danke =)
 
Das SMA Addon geht nur für US Geräte - steht auch so in der Doku von HA. Den Home Manager 2 kannst du mit etwas Glück per Modbus abfragen. Allerdings nur, wenn die PV Anlage nicht mit deiner Heizung kommuniziert - das ist bei mir der Fall. Ich habe eine LWZ 304 von Stiebel Eltron und die kommunizert per Modbus mit der PV Anlage und somit kann ich keine Werte mehr per Modbus abfragen.
Den Home Manager kann man anscheinend nicht per Modbus einbinden, nur die jeweiligen Wechselrichter.
Was zwar interessant wäre, aber irgendwie auch nicht zielführend da dann die eigenen Verbräuche nicht 100% berücksichtigt werden. Bzw. der aus dem Netz bezogene Strom wird nicht berücksichtigt.
 
Ich bin auch nicht wirklich begeistert von den Möglichkeiten die SMA und Stiebel Eltron bieten. Kann man nur hoffen, dass die da bald mal nachbessern ...
 
Das wäre schon genial... gerade in der heutigen Zeit.
Wenn ich da das Portal / Möglichkeiten bei einem Bekannten mit E3DC Setup sehe :D
 
Ah ok, das wusste ich nicht mit den US Anlagen. Gerade gesehen, das (US) habe ich einfach mal überlesen...
Ok, dann versuche ich mich da mal an Modbus.

Das Summieren klappt übrigens prima, Danke =)
Hallo, auf der Suche nach einer Lösung damit ich mit dem Shelly EM3 die summierte Leistung von A, B und C auslesen kann bin ich über dein Post gestolpert (darauf aufmerksam gemacht worden) Ich habe versucht die Lösung nach zu vollziehen aber leider produziere ich jede Menge Fehler und komme nicht weiter. Ich muss dazu sagen das ich noch sehr am Anfang stehe und mit Home Assistant noch keine Erfahrung habe. Deshalb ist es möglich das ich das ein oder andere völlig missverstanden habe. So wie ich verstanden habe muss ich auf dem Dashboard manuell eine neue Karte hinzu fügen und mit dem Code-Editor den YAML Code von Nival einfügen. (Ich hoffe das ist auch so. Ist als Anfänger manchmal schwer zu folgen) Das habe ich getan und da kommt nur Müll raus. Könntest du mir vielleich einen Tipp geben wie ich da weiter komme. 2022-10-06 23_35_31-Window.png
 
So wie ich verstanden habe muss ich auf dem Dashboard manuell eine neue Karte hinzu fügen und mit dem Code-Editor den YAML Code von Nival einfügen.
Nicht ganz :) das muss in die Datei configuration.yaml eingetragen werden.

Am einfachsten geht das, wenn Du - sofern noch nicht geschehen - dass Addon "File editor" installierst, direkt über die Oberfläche von Home Assistant. Danach hast Du links in der Seitenleiste den entsprechenden Eintrag und kannst darüber auf diese Datei zugreifen.

Nach manueller Bearbeitung der configuration.yaml muss HA einmal neugestartet werden, damit der angelegte Sensor dann auch verfügbar ist.
 
Genau, das muss in die configuration.yaml, wenn du noch keine Sensoren hinzugefügt hast, dann kannst du das kopieren:

Code:
sensor:
  - platform: template
    sensors:
      energy_total:
        friendly_name: 'Heizung Total Energy'
        value_template: "{{ (states('sensor.shellyem3_channel_a_energy')|float + states('sensor.shellyem3_channel_b_energy')|float + states('sensor.shellyem3_channel_c_energy')|float)|round(3) }}"
        unit_of_measurement: "kWh"
      power_total:
        friendly_name: 'Heizung Total Power'
        value_template: "{{ (states('sensor.shellyem3_channel_a_power')|float + states('sensor.shellyem3_channel_b_power')|float + states('sensor.shellyem3_channel_c_power')|float)|round(3) }}"
        unit_of_measurement: "W"

Den "sensor.shellyem3_ ..." ersetzt du durch die Korrekte Entitäts-ID.
 
Vielen Dank für die ausführlichen Erklärungen. Jetzt habe auch ich verstanden wie die Zusammenhänge sind. (zumindest in dem Fall)
Habe Dank eurer Hilfe alles zum laufen gebracht so wie ich es mir gewünscht habe.
Anbei mal die Einträge aus dem Editor für den Fall das noch jemand auf der Suche ist und die "Total Energy" vom Shelly EM3 haben möchte.
Die Einträge bewirken die Erstellung der Entität sensor.enegy_total
Code:
sensor:
  - platform: template
    sensors:
      energy_total:
        friendly_name: 'Total Energy'
        value_template: "{{ (states('sensor.shelly_em3_channel_a_power')|float + states('sensor.shelly_em3_channel_b_power')|float + states('sensor.shelly_em3_channel_c_power')|float)|round(3) }}"
        unit_of_measurement: "W"
 
Zuletzt bearbeitet:
Hallo JuggedHareBoy,
zum Thema Wechselrichter:
Ich benutze einen Sunny Tripower 4.0 mit Lan Anbindung (WLAN funktioniert genau gleich).
Ich habe ein Elgris Smartmeter LAN, das dem Wechselrichter alle Netzanschlusspunkt Werte zusendet.
Der Wechselrichter ist via Webinterface an die Homeassistant integration "https://www.home-assistant.io/integrations/sma" angebunten und übermittelt alle Spannungen/Stromstärken Frequenzen AC und DC (auch String) seitig an meinen Raspberry3.

Auf dem RP3 läuft Home Assistant bis 2022.9.6 und die Verbindung steht genau so sicher, wie die von meinem Shelly 3em und Shelly 4PM.
Der 4PM schaltet vom Homeassistant ausgehend, den Überschussstrom kanalweiße in meinen 3x1kW Heizstab im Beuler. (Leider nur auf 1. Zuleitungsphase)

zum Summieren des Shellys habe ich für mich folgenden Code im Netz gefunden:

template:
- sensor:
- name: "Energy Total"
unique_id: energy_total
state: >-
{{
[ states('sensor.shelly_em3_channel_a_energy'),
states('sensor.shelly_em3_channel_b_energy'),
states('sensor.shelly_em3_channel_c_energy'),
] | map('float') | sum
}}
availability: >-
{{
[ states('sensor.shelly_em3_channel_a_energy'),
states('sensor.shelly_em3_channel_b_energy'),
states('sensor.shelly_em3_channel_c_energy'),
] | map('is_number') | min
}}
unit_of_measurement: kWh
device_class: energy
state_class: total_increasing
 
Hallo. Ich bin ganz ganz neu im Bereich "home assistant" und habe diesen Beitrag gefunden.
Hintergrund des Ausflugs in die Automation war meine Shellys (3EM und EM) besser auswerten zu können
um zu sehen was meine ganz kleine PV Anlage (1,3kWp) macht. Erst einmal geht es mir darum die aktuell
produzierten Watt von dem bezogenen abzuziehen um zu sehen wieviel ich an den Versorger verschenke.
Dazu habe ich den Code von @JuggedHareBoy genommen, etwas abgeändert (wie es mir logisch erschien) und
in der der configuration.yaml eingefügt. Mangels Kenntnissen habe ich natürlich einen Fehler mit eingebaut
den ich nicht finden kann. Könnte mir jemand helfen?
Code:
sensor:
  - platform: template
    sensors:
      energy_total:
        friendly_name: 'EM3 total Energy'
        value_template: "{{ (states('sensor.shelly_em3_channel_a_energy')|float + states('sensor.shelly_em3_channel_b_energy')|float + states('sensor.shelly_em3_channel_c_energy')|float)|float |round(3) }}"
        unit_of_measurement: "kWh"    
      power_total:
        friendly_name: 'EM3 total Power'
        value_template: "{{ (states('sensor.shelly_em3_channel_a_power')|float + states('sensor.shelly_em3_channel_b_power')|float + states('sensor.shelly_em3_channel_c_power')|float)|float |round(3) }}"
        unit_of_measurement: "W"    
      power_returned:
        friendly_name: 'Rückspeisung'
        value_template: "{{ (states('sensor.shelly_em3_channel_a_power')|float + states('sensor.shelly_em3_channel_b_power')|float + states('sensor.shelly_em3_channel_c_power')|float)| - states('sensor.shelly_em_channel_1_power')|float)|float |round(3) }}"
        unit_of_measurement: "W"

Gruß Schwarzfuss
 
Zuletzt bearbeitet:
Keiner da, der eine Idee hat wie ich die letzten 4 Zeilen ändern muss um den Ertrag (sensor.shelly_em_channel_1_power) vom
Ergebnis der Additionen abzuziehen.
 
YAML:
sensor:
  - platform: template
    sensors:
      energy_total:
        friendly_name: 'EM3 total Energy'
        value_template: "{{ (states('sensor.shelly_em3_channel_a_energy')|float(0) + states('sensor.shelly_em3_channel_b_energy')|float(0) + states('sensor.shelly_em3_channel_c_energy')|float(0))|float(0) |round(3) }}"
        unit_of_measurement: "kWh"   
      power_total:
        friendly_name: 'EM3 total Power'
        value_template: "{{ (states('sensor.shelly_em3_channel_a_power')|float(0) + states('sensor.shelly_em3_channel_b_power')|float(0) + states('sensor.shelly_em3_channel_c_power')|float(0))|float(0) |round(3) }}"
        unit_of_measurement: "W"   
      power_returned:
        friendly_name: 'Rückspeisung'
        value_template: "{{ ((states('sensor.shelly_em3_channel_a_power')|float(0) + states('sensor.shelly_em3_channel_b_power')|float(0) + states('sensor.shelly_em3_channel_c_power')|float(0)) - states('sensor.shelly_em_channel_1_power')|float(0)) |round(3) }}"
        unit_of_measurement: "W"
 
Danke @IvoryBalboa90. Eben eingefügt und läuft. Darf ich fragen wo der Fehler war den ich stundenlang ahnungslos gesucht habe ?
Finde auf die Schnelle kein Unterschied.
Hatte das ganze in Word bearbeitet und dann eingefügt - ist das der Fehler ?
 

Zurzeit aktive Besucher

Letzte Anleitungen

Statistik des Forums

Themen
4.378
Beiträge
45.210
Mitglieder
3.976
Neuestes Mitglied
calibra52
Zurück
Oben