Tage zählen ab bestimmten Startdatum

Hallo,

ich suche nach einer Möglichkeit die Tage seit der Installation eines Gerätes zu zählen.
Im aktuellen Beispiel wäre das zB zähle Tage ab dem 26.07.2023.

Gruß Dietmar

Erstell Dir einen Zähler (Einstellungen, Gerate&Services, Helfer) und inkrementiere den Zähler immer um Mitternacht über eine Automatisierung. Wenn Du ein Startdatum vorgeben willst, kannst Du das mit der Bedingung in der Automatisierung erledigen.

{%- set given_time = as_datetime("2023-07-24")%}

{{ relative_time(given_time) }}

given_time kann jeder sensor sein - relative_time() liefert dir immer die Zeit, die bisher vergangen ist, und zwar dynamisch, also Sekunden, Stunden, Tage, je nachdem wie lange es her ist.


> * `relative_time` converts datetime object to its human-friendly “age” string. The age can be in second, minute, hour, day, month or year (but only the biggest unit is considered, e.g., if it’s 2 days and 3 hours, “2 days” will be returned). Note that it only works for dates *in the past*.
  * Using `relative_time()` will cause templates to be refreshed at the start of every new minute.

Templating - Home Assistant (home-assistant.io)

1 „Gefällt mir“

Hallo,

danke für die Hilfe.
Der Zähler mit dem Code funktioniert.
Nun will ich damit weiterrechnen. Der Ertrag meines Balkonkraftwerks durch diese Tage teilen und mit 365 multiplizieren.
Ich bin am Probieren.

Zum Thema Helfer erstellen das verstehe ich. Aber mit welcher Automatisierung mache ich das mit Mitternacht weiter zählen?

Gruß Dietmar

Okay, wenn du es weiterverarbeiten willst, dann nimm folgendes:

{%- set given_time = as_datetime("2023-07-24")%}
{{ ((as_timestamp(now()) - as_timestamp(given_time)) / 86400) | int(0) }}

Damit bekommst du immer die vergangenen Tage seit dem Datum. Der Wert ist 0, wenn der Tag heute ist. So würde es direkt mit dem Sensor aussehen:

{{ ((as_timestamp(now()) - as_timestamp(state_attr('sensor.blablub','Zeit_Attribut'))) / 86400) | int(0) }}
1 „Gefällt mir“

Was ist mit Zeit_Attribut gemeint? Oder besser gesagt was soll da rein?

Gruß Dietmar

Jeder Sensor hat einen State, die meisten haben aber auch Attribute, die sie zusätzlich zum State anzeigen:


Hier mal die jinja templates beispielhaft dazu:
image

Hallo,

ich habe es erfolgreich mit einer Automatisation gelöst.
Thema somit erledigt.

Vielen Dank an euch!

Gruß Dietmar

ich würde das ebenfalls gerne umsetzen ich habe von meinem Staubsaugerroboter ein “letztes mal gesaugt Datum” würde aber lieber die tage ab da zählen lassen wie hast du das umgesetzt?