Frage zum Skripting

Ich möchte für meine PV-Anlage eine Kenngröße berechnen, die ich “finanzielle Autarkie” nenne.

Die finanzielle Autarkie summiert die Einspeisevergütung vom Anfang des Jahres bis heute und zieht das Entgeld, welches ich für die Netznutzung in diesem Jahr bezahle wieder ab.

Die aktuelle Einspeisevergütung zu berechnen habe ich bereits realisiert, das war einfach, ebenso das Netzentgeld, was aber nur auf den verbrauchten kWh beruht.
Was ich noch nicht berücksichtigt habe, ist die Grundgebühr, die ich pro Monat leisten muss.
Also brauche ich noch eine Rechnung, die den aktuellen Monat in eine Zahl verwandelt (also für Juli=7) und dann dann die Grundgebühr mit 7 (bzw der Zahl des aktuellen Monats) multipliziert.

Gibt es einen einfachen Weg, das zu realisieren?

probiere hiermit

'{{ now().month  }}'

super, im template editor funktioniert das schon mal. Nun muss ich nur noch die yaml ergänzen. Danke erstmal.

Nochmal eine Frage zum Skripten.

Ich stelle jetzt zum wiederholten Male fest, dass folgendes Phänomen auftritt.
Mein Sensor-Name enthält einen Umlaut. Vorausschauend habe ich immer schon in der unique_id keinen Umlaut verwendet, sondern z.B. statt “ü” “ue” geschrieben. Leider wird daraus von HA das “e” entfernt.
Warum ist das so?

Ich mache es so und bei mir wird nichts entfernt.

  - name: "Bewaesserung starten"
    unique_id: "bewaesserung _starten" 
    state: >

binary_sensor.bewaesserung_starten

NameTemplate

Bei mir sieht es so aus:

 - sensor:
     - name: "Grundgebühr"
       unique_id: "grundgebuehr"
       state: >
           {{ now().month * 13.76 | round(2) }}

Ich verwende in den Namen auch keine Umlaute.
Vielleicht liegt hier das Problem?

Das könnte gut sein.

Du verwendest bei “name” “Grundgebühr”.
HA übernimmt das in die Entity ID. Das ü wird dabei gegen “u” ersetzt.

Das “ue” verwendest du nur bei unique_id und das bleibt genau so. Da wird nirgends aus “ue” ein “e” weggestrichen :slight_smile:

Es kann sein, dass ich da was verwechsle. Ich dachte, die entity-ID des template sensors wird aus der unique_id gebildet (sensor.unique_id)
Das ist dann wohl nicht so? Sondern aus dem Namen?
was auch heißt, die unique_id ist nur Schall und Rauch?

Eine unique_id und eine entity id ist nicht dasselbe. Die unique_id ist ein eindeutiger Bezeichner, der sich nicht ändert… auch nicht nachdem du friendly_names, names, oder entity id’s geändert hast.
Schall und Rauch nicht, die u_i stellt sicher dass deine Geräte bedienbar bleiben, auch wenn du die umbenennst.
Ich meine nur kleinbuchstaber, keine Leerzeichen, keine Umlaute erlaubt.

Nur, wenn du name: weglässt. Dann wird aber das Präfix „template“ angefügt (zumindest war das mal so).

Zusatzfrage:
ich habe nun die Tipps, die ich hier bekommen habe, beherzigt und meine PV-Sensoren neu berechnet. Funktioniert soweit auch alles wie gewünscht. Nur bei den Graphen gibt es Ungereimtheiten:

Z.B die Einspeisevergütung. Kicke ich auf diesen Sensor, erscheint dies:

Angezeigt wird der richtige Wert, aber kein Graph.
Klicke ich dann auf “mehr anzeigen” erscheint dies:

Es erscheint eine vollständige Kurve, die allerdings diese Peaks nach Null hat (verstehe ich allerdings auch nicht)

Bei Netzbezug sieht das so aus:
Klick auf Sensor:


wieder keine Kurve, aber nach “mehr anzeigen” kommt dann das:

Also zusammenfassend zwei Fragen:

  1. Wieso enthält der jeweils erste Graph keine Kurve, aber mit “mehr anzeigen” dann doch die Kurve.
  2. Wie kommt es beim ersten Beispiel zu den Nullwerten und kann man das korrigieren?

Das Problem wurde heute hier besprochen.
Frage zum float-Befehl - #5 von rstuck.

Die Lösung ist, bei der Sensordeklaration eine Zeile einfügen.
state_class: measurement.

Nein, ist es leider nicht. Der Measurement-Befehl sorgt dafür, dass überhaupt eine Kurve entsteht, erklärt aber nicht das geschilderte Phänomen.