Stromnetz - Netzverbrauch ModBus Variable hinzufügen

Deep Blue

New member
Hallo zusammen,

ich bin gerade dabei meinen HA einzurichten. Sehr wichtig ist mir die Energieauswertung. Ich habe eine Variable für die Energie, welche ich per ModBus in der yaml in HA importiere. Dieser Wert ist in kWh. Wenn ich nun in den Einstellungen der Energieverwaltung diese Variable angeben möchte sehe ich diese nicht. Der Wert selber besitzt eine Entität (sensor.modbus_wirkenergie). Aber er ist eben in der Auswahl, wo ich den Verbrauch hinzufügen kann, nicht zu sehen. Woran könnte das liegen?
 

Anhänge

  • 2023-01-12 Home Assistant ModBus Settings.png
    2023-01-12 Home Assistant ModBus Settings.png
    12,8 KB · Aufrufe: 8
poste deinen code bitte als code, Bilder lassen sich nicht edetiern.
- übrigens müssen lokale IP Adressen nicht blind gemacht werden

asl bsp. mein Stromzähler sensor...
YAML:
# homeassistant
homeassistant:
  customize_glob:
 
# IR Stromzähler total
    sensor.stromnetz_mt681_gesamt:
      unit_of_measurement: "kWh"
      device_class: energy
      state_class: total_increasing
      last_reset: 1970-01-01T00:00:00+00:00
 
Klappt leider nicht. Mir ist der Aufbau der yaml auch nicht ganz klar. Deshalb hab ich es so angeordnet wie es kommt. Ist wahrscheinlich nicht richtig. Neustart hab ich natürlich gemacht.

Code:
# Example configuration.yaml entry
modbus:
  - name: Wago
    type: tcp
    host: IP-Adresse
    port: 502
    sensors:
      - name: ModBus_Wirkenergie
        slave: 1
        address: 12
        scan_interval: 1   #Zeit in Sekunden
        input_type: input   #holding input
        #unit_of_measurement: kWh
        #device_class: energy    #power
        #state_class: total_increasing   #measurement
        scale: 1
        offset: 0
        precision: 0
        data_type: uint16
        unique_id: Wirkenergie_Haus
        
# homeassistant
homeassistant:
  customize_glob:
 
# Stromzähler total
    sensor.modbus_wirkenergie:
      unit_of_measurement: "kWh"
      device_class: energy
      state_class: total_increasing
      last_reset: 1970-01-01T00:00:00+00:00
 
laut GIT sollte das korrekt sein und modbus: unterstütz
unit_of_measurement: kWh
device_class: energy
state_class: total_increasing

die # sind nur für komentare, alles hinter # wird ignoriert

hast du diese Zeile für hier geändert ? oder steht bei dir auch IP-Adresse


für das Energie Dashboard ist nur der unterere Bereich interesant, die Daten musst du dennoch anpassen an deinen modbus

- name: Modbus_ImportEnergy
slave: 1
address: 4
input_type: holding
unit_of_measurement: kWh
device_class: energy
state_class: total_increasing
count: 2
scale: 0.0003125
offset: 0
precision: 3
data_type: uint32

YAML:
# Example configuration.yaml entry for multiple TCP MODBUS connections
modbus:
  - name: hub11
    type: tcp
    host: 192.168.1.6
    port: 502
    sensors:
      - name: Modbus_Voltage
        slave: 1
        address: 0
        input_type: holding
        unit_of_measurement: V
        device_class: voltage
        state_class: measurement
        count: 1
        scale: 0.01
        offset: 0
        precision: 1
        data_type: uint16

      - name: Modbus_Current
        slave: 1
        address: 1
        input_type: holding
        unit_of_measurement: A
        device_class: current
        state_class: measurement
        count: 1
        scale: 0.01
        offset: 0
        precision: 1
        data_type: uint16

      - name: Modbus_Power
        slave: 1
        address: 2
        input_type: holding
        unit_of_measurement: W
        device_class: power
        state_class: measurement
        count: 2
        scale: 1
        offset: 0
        precision: 0
        data_type: int32

      - name: Modbus_ImportEnergy
        slave: 1
        address: 4
        input_type: holding
        unit_of_measurement: kWh
        device_class: energy
        state_class: total_increasing
        count: 2
        scale: 0.0003125
        offset: 0
        precision: 3
        data_type: uint32
 
Zuletzt bearbeitet:
Danke alexamend, geht nun. Aber sag mal, deine Variable "Modbus_ImportEnergy" geht bei Dir? ModBus kann doch nur 16 Bit. Ein uint32 kommt dann richtig an? Oder bedeutet der count:2 das zwei int16 zusammengefasst werden?
 
Ja der Wert wirt dennoch stillschweigend in 16 konvertiert

Hier aus der doku:

data_type string (optional, Standard: int16)
Antwortdarstellung
(int8, int16, int32, int64, uint8, uint16, uint32, uint64, float16, float32, float64, string). int/uint werden stillschweigend in int16/uint16 konvertiert
 

Zurzeit aktive Besucher

Keine Mitglieder online.

Letzte Anleitungen

Statistik des Forums

Themen
4.383
Beiträge
45.256
Mitglieder
3.984
Neuestes Mitglied
Blitzkriegbob90
Zurück
Oben