Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tibber: Support smartcharging by relative price level #10848

Closed
cschlipf opened this issue Nov 20, 2023 · 123 comments
Closed

Tibber: Support smartcharging by relative price level #10848

cschlipf opened this issue Nov 20, 2023 · 123 comments
Assignees
Labels
stale Outdated and ready to close ux User experience/ interface

Comments

@cschlipf
Copy link
Contributor

cschlipf commented Nov 20, 2023

Is your feature request related to a problem? Please describe.
Smart charging using tibber works only via a fixed price. However the prices are changing. What is considered expensive this week, might be considered cheap next week. Now the car might not be charging because the fixed price will not be achieved during the next week.

Describe the solution you'd like
Enable smart charging based on the price levels provided by tibber. They provide a 'level' attribute, which can be taken as a relative price, which is a value of 'VERY_EXPENSIVE', 'EXPENSIVE', 'NORMAL', 'CHEAP', 'VERY_CHEAP'.

See additional context below for a sample request.

With this level the user could select a level instead of a price. For example if the user sets 'CHEAP', smart charging would start, when it sees a cheap price, instead of a fixed level. It could even be smarter and check if in the next 2-3 hours a 'VERY CHEAP' occurs and delay charging until then automatically.

Describe alternatives you've considered
Alternative would be a statistical analysis of past and future Tibber prices and do the rating with EVCC. However as Tibber provides the info already, using this would be easier.

Additional context
Tibber GraphQL example:

Request:

{
  viewer {
    homes {
      currentSubscription{
        priceInfo{
          current{
            total
            energy
            tax
            startsAt
            level
          }
          today {
            total
            energy
            tax
            startsAt
            level
          }
        }
      }
    }
  }
}

Response:

{
  "data": {
    "viewer": {
      "homes": [
        {
          "currentSubscription": {
            "priceInfo": {
              "current": {
                "total": 0.3146,
                "energy": 0.1288,
                "tax": 0.1858,
                "startsAt": "2023-11-20T15:00:00.000+01:00",
                "level": "EXPENSIVE"
              },
              "today": [
                {
                  "total": 0.2426,
                  "energy": 0.0683,
                  "tax": 0.1743,
                  "startsAt": "2023-11-20T00:00:00.000+01:00",
                  "level": "NORMAL"
                },
                {
                  "total": 0.2359,
                  "energy": 0.0627,
                  "tax": 0.1732,
                  "startsAt": "2023-11-20T01:00:00.000+01:00",
                  "level": "NORMAL"
                },
                {
                  "total": 0.2326,
                  "energy": 0.0599,
                  "tax": 0.1727,
                  "startsAt": "2023-11-20T02:00:00.000+01:00",
                  "level": "CHEAP"
                },
                {
                  "total": 0.2328,
                  "energy": 0.06,
                  "tax": 0.1728,
                  "startsAt": "2023-11-20T03:00:00.000+01:00",
                  "level": "NORMAL"
                },
                {
                  "total": 0.2384,
                  "energy": 0.0648,
                  "tax": 0.1736,
                  "startsAt": "2023-11-20T04:00:00.000+01:00",
                  "level": "NORMAL"
                },
                {
                  "total": 0.2571,
                  "energy": 0.0804,
                  "tax": 0.1767,
                  "startsAt": "2023-11-20T05:00:00.000+01:00",
                  "level": "NORMAL"
                },
                {
                  "total": 0.2836,
                  "energy": 0.1028,
                  "tax": 0.1808,
                  "startsAt": "2023-11-20T06:00:00.000+01:00",
                  "level": "NORMAL"
                },
                {
                  "total": 0.3138,
                  "energy": 0.1281,
                  "tax": 0.1857,
                  "startsAt": "2023-11-20T07:00:00.000+01:00",
                  "level": "EXPENSIVE"
                },
                {
                  "total": 0.3121,
                  "energy": 0.1267,
                  "tax": 0.1854,
                  "startsAt": "2023-11-20T08:00:00.000+01:00",
                  "level": "EXPENSIVE"
                },
                {
                  "total": 0.3023,
                  "energy": 0.1184,
                  "tax": 0.1839,
                  "startsAt": "2023-11-20T09:00:00.000+01:00",
                  "level": "EXPENSIVE"
                },
                {
                  "total": 0.2948,
                  "energy": 0.1122,
                  "tax": 0.1826,
                  "startsAt": "2023-11-20T10:00:00.000+01:00",
                  "level": "NORMAL"
                },
                {
                  "total": 0.2875,
                  "energy": 0.106,
                  "tax": 0.1815,
                  "startsAt": "2023-11-20T11:00:00.000+01:00",
                  "level": "NORMAL"
                },
                {
                  "total": 0.2839,
                  "energy": 0.103,
                  "tax": 0.1809,
                  "startsAt": "2023-11-20T12:00:00.000+01:00",
                  "level": "NORMAL"
                },
                {
                  "total": 0.2969,
                  "energy": 0.114,
                  "tax": 0.1829,
                  "startsAt": "2023-11-20T13:00:00.000+01:00",
                  "level": "EXPENSIVE"
                },
                {
                  "total": 0.3046,
                  "energy": 0.1204,
                  "tax": 0.1842,
                  "startsAt": "2023-11-20T14:00:00.000+01:00",
                  "level": "EXPENSIVE"
                },
                {
                  "total": 0.3146,
                  "energy": 0.1288,
                  "tax": 0.1858,
                  "startsAt": "2023-11-20T15:00:00.000+01:00",
                  "level": "EXPENSIVE"
                },
                {
                  "total": 0.3279,
                  "energy": 0.1399,
                  "tax": 0.188,
                  "startsAt": "2023-11-20T16:00:00.000+01:00",
                  "level": "EXPENSIVE"
                },
                {
                  "total": 0.3363,
                  "energy": 0.147,
                  "tax": 0.1893,
                  "startsAt": "2023-11-20T17:00:00.000+01:00",
                  "level": "EXPENSIVE"
                },
                {
                  "total": 0.3279,
                  "energy": 0.14,
                  "tax": 0.1879,
                  "startsAt": "2023-11-20T18:00:00.000+01:00",
                  "level": "EXPENSIVE"
                },
                {
                  "total": 0.3161,
                  "energy": 0.1301,
                  "tax": 0.186,
                  "startsAt": "2023-11-20T19:00:00.000+01:00",
                  "level": "EXPENSIVE"
                },
                {
                  "total": 0.3042,
                  "energy": 0.12,
                  "tax": 0.1842,
                  "startsAt": "2023-11-20T20:00:00.000+01:00",
                  "level": "EXPENSIVE"
                },
                {
                  "total": 0.2887,
                  "energy": 0.107,
                  "tax": 0.1817,
                  "startsAt": "2023-11-20T21:00:00.000+01:00",
                  "level": "NORMAL"
                },
                {
                  "total": 0.2899,
                  "energy": 0.108,
                  "tax": 0.1819,
                  "startsAt": "2023-11-20T22:00:00.000+01:00",
                  "level": "NORMAL"
                },
                {
                  "total": 0.2776,
                  "energy": 0.0977,
                  "tax": 0.1799,
                  "startsAt": "2023-11-20T23:00:00.000+01:00",
                  "level": "NORMAL"
                }
              ]
            }
          }
        }
      ]
    }
  }
}

Tibber API documentation on the price level attribute: https://developer.tibber.com/docs/reference#pricelevel
image

@andig
Copy link
Member

andig commented Nov 20, 2023

Ich bin nicht davon überzeugt, dass das sinnvoll ist. Was Tibber für günstig hält muss nichts mit meiner lokalen Versorgungssituation zu tun haben? Und falls es das bräuchte wäre es vielleicht sinnvoller, diese Ranges lokal und API-unabhängig zu berechnen?

@andig andig added the enhancement New feature or request label Nov 20, 2023
@cschlipf
Copy link
Contributor Author

cschlipf commented Nov 20, 2023

Ich sehe das auch nicht als Ersatz des aktuellen Modus an, sondern als bequemere Alternative, die verhindert, dass mann wöchentlich die Preisgrenze manuell anpassen muss.

Und wie Tibber dieses Rating berechnet haben sie ja dokumentiert. Eine lokale Berechnung hätte natürlich den Vorteil, dass es auch mit anderen dynamischen Stromanbietern funktioniert.

@goebelmeier
Copy link
Contributor

Und falls es das bräuchte wäre es vielleicht sinnvoller, diese Ranges lokal und API-unabhängig zu berechnen?

Das halte ich für eine gute Idee. Das nutze ich aktuell in Home Assistant und baue mir dieses Ranking über die letzten 3 Tage, so wie Tibber es tut, und über den aktuellen Tag und entscheide anhand dessen wann ich meinem Heimspeicher den Befehl gebe sich nachzuladen. Aufgrund der Ein- und Ausspeiseverluste lasse ich den nur bei VERY_CHEAP laden. Elektroautos könnte man aber ggf schon bei CHEAP laden lassen.

Ich bin auch der Meinung, dass ein statisches Limit vor 2-3 Jahren gut und ausreichend war. Die Preise sind und werden aber immer volatiler, so dass eine Abweichung vom Average möglicherweise das sinnvollere Entscheidungskriterium ist.

@andig
Copy link
Member

andig commented Nov 20, 2023

Das halte ich für eine gute Idee. Das nutze ich aktuell in Home Assistant und baue mir dieses Ranking über die letzten 3 Tage,

Müsste man hier eher forward-looking über die Tarife machen da wir die alten Daten nicht persistieren. Das gäbe dann aber maximal 48h.

Stellt sich dann wieder die Frage, wie der Anwender das einstellen sollte?

@cschlipf
Copy link
Contributor Author

cschlipf commented Nov 20, 2023

Das halte ich für eine gute Idee. Das nutze ich aktuell in Home Assistant und baue mir dieses Ranking über die letzten 3 Tage,

Müsste man hier eher forward-looking über die Tarife machen da wir die alten Daten nicht persistieren. Das gäbe dann aber maximal 48h.

2 Tage sind doch schon echt gut

Stellt sich dann wieder die Frage, wie der Anwender das einstellen sollte?

Könnte man im Preisgrenze Drop Down einfach ein paar Platzhalter oben einfügen:

  • Sehr teuer
  • Teuer
  • Normal
  • Billig
  • Sehr billig
    (wobei man die ersten beiden Werte vermutlich gar nicht bräuchte)

image

@andig
Copy link
Member

andig commented Nov 20, 2023

@naltatis mir fällt (wieder?) auf, dass der Verbindungsstrich in dem Font unglücklich ist. Sollen wir lieber die ... verwenden?

@andig andig added the ux User experience/ interface label Nov 20, 2023
Copy link
Contributor

Hofyyy commented Nov 20, 2023

Das wäre auch nice um den Speicher zu laden. Da würde ich Super Cheap setzen und gut ist :-)

@cschlipf
Copy link
Contributor Author

cschlipf commented Nov 20, 2023

Das wäre auch nice um den Speicher zu laden. Da würde ich Super Cheap setzen und gut ist :-)

Mache ich in Home Assistant so ;-)
image

@naltatis
Copy link
Member

@naltatis mir fällt (wieder?) auf, dass der Verbindungsstrich in dem Font unglücklich ist. Sollen wir lieber die ... verwenden?

Das ist ein alter Screenshot. So sieht das heute nicht aus.

@naltatis
Copy link
Member

Ich halt das Feature für gut. Ich wäre auf jeden Fall dafür, das anbieterunabhängig direkt in evcc zu berechnen. Für Einfachheit würde ich das auf jeden Fall stateless machen. Also keine historischen Daten sammeln, sondern den Durchschnitt auf Basis aller momentan sichtbaren Preisfenster berechnen. Wir könnten erstmal mit dem Algorithmus von Tibber starten (60% below avg, 90% below avg). Das wäre ja relativ leicht umzusetzen.

@naltatis
Copy link
Member

Vom Wording sollten wir hier generisch auf LOW / VERY LOW gehen damit das auch für gCO2eq anwendbar ist.

@andig andig self-assigned this Nov 22, 2023
@premultiply
Copy link
Member

Top! 👍🏼
Muss ich demnächst doch auch noch unter die Strompreiszocker gehen? 🤔

@Hofyyy
Copy link
Contributor

Hofyyy commented Nov 22, 2023

Ich sage nur Netzdienlich. Alles im Namen des Volkes … 😎

@andig
Copy link
Member

andig commented Nov 23, 2023

Vom Wording sollten wir hier generisch auf LOW / VERY LOW gehen

Brauchen wir denn dann überhaupt noch Preislevel? Oder nicht eher eine relative Preisgrenze analog 60%=very cheap? Wenn ich bei "cheap" laden will kann ich ja die Grenze ändern.
Braucht es dann noch relative und absolute Grenze oder reicht die relative?

@cschlipf

This comment was marked as off-topic.

@cschlipf

This comment was marked as off-topic.

@andig
Copy link
Member

andig commented Nov 23, 2023

Erstmal sollten wir klären was es braucht, dann wie es Angezeigt wird.

@naltatis
Copy link
Member

naltatis commented Nov 24, 2023

Erstmal sollten wir klären was es braucht, dann wie es Angezeigt wird.

Das hängt doch immer zusammen. Vom User denken und so :D

Ich würde sagen, wir brauchen auf jeden Fall beide Welten (fixe Grenze und relative Grenze).
Möchte meinen Heizstab bspw. nur dann anwerfen, wenn der Strom günstiger als die Pellets (fixe Grenze).
Beim Auto erspare ich mir vmtl. einiges nach Prüfen und Nachregeln, wenn wir ne relative Grenze haben.

Ich würd die Grenzen aber exklusiv zueinander bauen. Heißt, es gibt immer nur eine Grenze zur Zeit und die kann relativ oder absolut sein.

@andig
Copy link
Member

andig commented Nov 24, 2023

Ich würde sagen, wir brauchen auf jeden Fall beide Welten (fixe Grenze und relative Grenze).

meine Frage war, ob es Levels braucht (very cheap, cheap…).

Brauchen wir denn dann überhaupt noch Preislevel?

Antwort: nein soweit ich das sehe.

@naltatis
Copy link
Member

Doch, ich würd den Nutzer da ungern ne freie Prozentzahl eintragen lassen. Per API vielleicht, aber hier find ich die Idee von den benamten Stufen gut.

@naltatis
Copy link
Member

In der Umsetzung können wir das natürlich zu nem reinen UI-Thema machen. Dafür bräuchte die UI die Info was der aktuelle Durchschnittspreis ist um hier mehr Kontext für den Nutzer geben zu können. Wie viele und welche Optionen dann für die relative Grenze angeboten werden, ist dann ein separates Thema.

@developer-stephan
Copy link

developer-stephan commented Dec 1, 2023

Könnte man es nicht einfacher machen? Eine Option zum Aktivieren oder Deaktivieren:

Nur die günstigen Stunden zum Laden automatisch verwenden.

@andig andig added backlog Things to do later and removed enhancement New feature or request labels Dec 2, 2023
@andig
Copy link
Member

andig commented Dec 2, 2023

Einfach als was? Was sind „die günstigen“ Stunden?

@developer-stephan
Copy link

developer-stephan commented Dec 2, 2023

image

Auf die Schnelle skizziert. Man gibt im Feld 4 Stunden ein dann wird die 4 günstigste zum Laden ausgewählt. Preislevel-Definition ändert sich ständig. Je nach Jahreszeit. Limitierung immer wieder neu setzen. Das fällt alles weg wenn man einfach die günstigste Stunden für die benötigte Ladedauer pro Tag auswählen lässt.

@Nokius
Copy link

Nokius commented Oct 1, 2024

Seit dem das Grid charging feature mit 0.130 release raus ist habe ich mir Gedanken gemacht wie evcc dazu genutzt werden kann die Hausbatterie zu laden, wenn in den kommenden Wintermonaten die Sonne nicht so viel Ertrag erzielt.

Da ich an allen evcc Setups auch HA laufen lasse und ich mittels MQTT von HA evcc steuern könnte und in HA auch alles vorhalten kann würde ich die Funktion ähnlich wie @cschlipf es angedeutet hat HA dafür nutzen.

HA kann ermitteln welcher Solar Ertrag am Folge-/Tag zu erwarten ist
HA weiß was für eine Jahreszeit ist
HA kennt den SoC des Hausakkus
HA kennt die Preise für die kWh.

Meines erachtes müssten diese Faktoren in einer Automatisierung in HA zusammen genommen werden und dazu führen den Akku zu laden. Das Ergebnis kann mittels Blueprint (wenn alle Faktoren vorhanden sind) geteilt werden.
Das ganze wäre mit Variablen wie SoC unter x % und Ertrag wird z kWh sein im Winter regelbar sein.
Wenn der Preis unter Schwellwert a cent ist lade. Hier könnte sogar nach den Günstigsten Preis sortiert werden um dann dort zu laden bzw dann dort die Ladeleistung (wenn unterstützt anzupassen).

Wieso soll das ganze in evcc abgebildet werden, wo grid charging eher ein nice to have in evcc ist als eine Core Funktion welche jetzt weiter aufgebohrt werden soll. Der HA Ansatz sollte von Interessierten für die Funktion umsetzbar sein und nicht das evcc Team an einer Weiterentwicklung der von evcc abhalten.

@sasquaatch

This comment was marked as off-topic.

@andig
Copy link
Member

andig commented Oct 2, 2024

Zurück zum Thema :)

@RenatusRo
Copy link
Contributor

Wenn ich der Sache noch folgen kann, war die Frage doch:

Gibt es unter den (standalone) evcc-Nutzern genuegend Leute, die mit einem Modus geholfen und zufrieden waeren, der sagt:
"Lade schnell, wenn tibber = cheap/very cheap"?
Jemand zufrieden damit?

Waere ich damit zufrieden?
Noe, weil unterkomplex.
Alle, die mit HA und yaml koennen, beginnen doch zu basteln und die APIs bieten alles Noetige.
Wir hier werden wohl mit EMHASS ein optimize(world)->predict(world) machen und das Ergebnis als Kostenfunktion
in den evcc forecast pushen.

@github-actions github-actions bot added the stale Outdated and ready to close label Oct 9, 2024
@github-actions github-actions bot closed this as not planned Won't fix, can't repro, duplicate, stale Oct 14, 2024
@irqnet
Copy link

irqnet commented Nov 6, 2024

Seit dem das Grid charging feature mit 0.130 release raus ist habe ich mir Gedanken gemacht wie evcc dazu genutzt werden kann die Hausbatterie zu laden, wenn in den kommenden Wintermonaten die Sonne nicht so viel Ertrag erzielt.

Da ich an allen evcc Setups auch HA laufen lasse und ich mittels MQTT von HA evcc steuern könnte und in HA auch alles vorhalten kann würde ich die Funktion ähnlich wie @cschlipf es angedeutet hat HA dafür nutzen.

HA kann ermitteln welcher Solar Ertrag am Folge-/Tag zu erwarten ist HA weiß was für eine Jahreszeit ist HA kennt den SoC des Hausakkus HA kennt die Preise für die kWh.

Meines erachtes müssten diese Faktoren in einer Automatisierung in HA zusammen genommen werden und dazu führen den Akku zu laden. Das Ergebnis kann mittels Blueprint (wenn alle Faktoren vorhanden sind) geteilt werden. Das ganze wäre mit Variablen wie SoC unter x % und Ertrag wird z kWh sein im Winter regelbar sein. Wenn der Preis unter Schwellwert a cent ist lade. Hier könnte sogar nach den Günstigsten Preis sortiert werden um dann dort zu laden bzw dann dort die Ladeleistung (wenn unterstützt anzupassen).

Wieso soll das ganze in evcc abgebildet werden, wo grid charging eher ein nice to have in evcc ist als eine Core Funktion welche jetzt weiter aufgebohrt werden soll. Der HA Ansatz sollte von Interessierten für die Funktion umsetzbar sein und nicht das evcc Team an einer Weiterentwicklung der von evcc abhalten.

Kurze inhaltliche Frage dazu auch wenn der Issue schon geschlossen ist.

Kann ich über MQTT / API denn GridCharging aktivieren/deaktivieren?

Ich sehe zwar über MQTT den Topic:

evcc/site/batteryGridChargeLimit

Aber wenn ich Werte ändere, übernimmt evcc diese scheinbar nicht.

@steve0564
Copy link

Den Parameter .../set gesetzt gehabt?

@irqnet
Copy link

irqnet commented Nov 6, 2024

Den Parameter .../set gesetzt gehabt?

Danke! mein Fehler - funktioniert!

@Coernel82

This comment was marked as off-topic.

@Presl1983

This comment was marked as off-topic.

@Coernel82

This comment was marked as off-topic.

@andig
Copy link
Member

andig commented Dec 2, 2024

Bitte zurück zum Thema. Es hilft nicht, hier x-mal zu cross-posten. Danke!

@Tobi495
Copy link

Tobi495 commented Dec 22, 2024

image

Auf die Schnelle skizziert. Man gibt im Feld 4 Stunden ein dann wird die 4 günstigste zum Laden ausgewählt. Preislevel-Definition ändert sich ständig. Je nach Jahreszeit. Limitierung immer wieder neu setzen. Das fällt alles weg wenn man einfach die günstigste Stunden für die benötigte Ladedauer pro Tag auswählen lässt.

Warum nicht die Lösung mit den Stunden? Das wäre doch genial. Ich gebe als Nutzer einfach an, Lade die Hausbatterie in den 4 günstigsten Stunden des Tages und fertig.

Und für das Auto könnte man sowas genauso einstellen.

Also statt einer Preisgrenze einfach eine Stundengrenze.

@andig
Copy link
Member

andig commented Dec 22, 2024

Wozu? Dein Auto fährt nicht nach Stunden, sondern nach kWh oder soc. Wozu sollte das dienen? Machen kann man immer viel, aber zu welchem Zweck sollte man das genau so machen?

@Tobi495
Copy link

Tobi495 commented Dec 22, 2024

Ist das nicht ersichtlich?
Wenn ich sehe, ich möchte mein Auto diese Nacht laden, und das möchte ich aber mit den günstigsten Stunden der Nacht, dann soll er halt diese auswählen.

Außerdem müsste man dann nicht jeden Abend in evcc und die Grenze per Hand verschieben. Manchmal ist der Preis bei durchschnittlich 20 cent/nacht. Manchmal ist er viel höher, weil grad wenig Windstrom da ist nachts, und er liegt bei 30 cent/nacht. Ich möchte aber trotzdem laden.
Bei einer fixen Preisgrenze würde das auto dann nicht laden. Ich müsste per hand evcc öffnen und die preisgrenze rausnehmen oder höhersetzen.

Wenn aber eingestellt ist, er soll jede nacht laden, und halt in den jeweils günstigsten paar stunden, dann muss man das nie händisch ändern und hat immer die günstigste Ladung.

Zusätzlich wäre diese Logik "vergleichsweise" einfach. Man kriegt ja die Preise 24 im voraus von Tibber.
Dann könnte man einfach die günstigste, nächstgünstigste, drittgünstigste, viertgünstigste... stunde in der zeit von 20 bis 08:00 "freischalten" zum laden.

@andig
Copy link
Member

andig commented Dec 22, 2024

Ist das nicht ersichtlich?

Nein. Wenn die günstigste Stunde sehr teuer ist nutzt es auch nichts nur 1h zu laden. Noch viel weniger 4 Stunden. Warum sollte man das tun wollen? Zu welchem Zweck?!

@Tobi495
Copy link

Tobi495 commented Dec 22, 2024

Also wenn ich die Energie wirklich brauche und die Möglichkeit habe, zu bestimmen, wann ich sie mir einkaufe (wegen Hausbatterie bzw. Auto) dann macht es total sinn, die Stunden für den Bezug herzunehmen, die die günstigsten sind.

@andig
Copy link
Member

andig commented Dec 22, 2024

Genau das macht der wiederkehrende Ladeplan. Gibts also schon 👍🏻. Denn du braucht ja nicht „1h laden“ sondern „40% Soc“ um deinen Tag zu bewältigen.

@Tobi495
Copy link

Tobi495 commented Dec 22, 2024

Ach cool, das werde ich die nächsten Tage durchprobieren. Ich hab's bei mir im evcc auch gefunden.
Für die Hausbatterie gibt's sowas aber nicht, richtig? Da gibt es nur die statische Preisgrenze.

@cschlipf
Copy link
Contributor Author

Also jetzt nutze ich auch den wiederkehrenden Ladeplan und ich finde er erfüllt meine ursprüngliche Intention hinter diesem Request schon ziemlich gut. Ich bin damit zufrieden.

@sasquaatch
Copy link

Kann mich @cschlipf nur anschließen und bei allen bei evcc dafür sehr bedanken, nachdem ich dann den Wiederkehrenden Ladeplan "endlich" richtig verstanden habe, ist er genau das was ich ursprünglich wollte, nur anders umgesetzt, dafür aber viel besser

@Basti77

This comment was marked as off-topic.

@andig
Copy link
Member

andig commented Dec 23, 2024

Die Wahrheit steht wie immer im Logfile

@Basti77

This comment was marked as off-topic.

@Tobi495
Copy link

Tobi495 commented Dec 23, 2024

eben geschaut, das geht nur bis 10 Uhr. muss den Zeitraum hochdrehen...

Wenn du rausgefunden hast, warum, sag gerne bescheid. Ich habe das Verhalten auch schon beobachtet, dass er nach ca. 2h einfach aufgehört hat.

@vkr2791
Copy link

vkr2791 commented Dec 23, 2024

Smartcharging am EV macht wahrscheinlich eher selten Sinn, da ist doch der wiederkehrende Ladeplan DAS Mittel der Wahl, zumindest für einen täglichen Pendler, so wie ich einer bin. Noch mal ein fettes DANKE dafür.

Daher sollte man diesen Thread vielleicht mal umbenennen oder einen neuen Thread starten:
Tibber: Smartcharging of housebattery by relative price level

Aktuell schaue ich mir jeden Abend die Tibber-Preisentwicklung an und ich entscheide dann manuell, ob die günstigsten Stunden in der Nacht (z.B. 21 ct) um ca. 30% billiger sind als die Spitzen am nächsten Tag (z.B. 32 ct) und wenn die Hausbatterie weniger als ca. 50% SOC hat soll sie dann Nachts geladen werden.
Ich denke, dass sich nur mit dieser signifikanten Preisdifferenz ein Netzladen der Hausbatterie lohnt und entsprechend muss ich die Preisgrenze für die Hausbatterie jeden Tag nachjustieren, wenn der Sachverhalt überhaupt zutrifft.
Damit hätte man 4 Parameter zur Automatisierung:

  Relative Preisersparnis in [%] in den nächsten 24h : 30%
  Aktivierung bei "<=Hausbatterie-SOC" in [%] :        50% 
  Deaktivierung bei ">=Hausbatterie-SOC" in [%] :      80%   # ggf. möchte man die Hausbatterie nicht auf 100% laden
  Zeitpunkt der Steuerung [hh:mm] :                    00:00 Uhr

Ich denke, dass diese Form der Steuerung recht einfach umzusetzen wäre und auch noch relativ gut verständlich für einen User ist.
Bitte mal durch denken, vielleicht ist das ja was für eine Erweiterung.

Hier noch eine Übersicht über die prozentuale Preisersparnis von billigen Stunden zu teueren Stunden, dabei würden die grünen Werte im obigen Beispiel bedeuten, dass die Netzbatterie in den billigen Stunden geladen wird, wenn der Hausbatterie-SOC<=50% ist:
grafik

@Coernel82
Copy link

Das automatische justieren der Preisgrenze habe ich inzwischen in meinem Projekt automatisiert implementiert. Dabei werden sehr viel mehr Faktoren berücksichtigt. Release mit Batteriesteuerung kommt heute. Ist aber Alpha. Würde mich freuen, wenn du es ebenfalls testest und Feedback gibst.
Wenn du eine größere Preisdifferenz haben möchtest, bevor die Batterie geladen wird kannst du zum Beispiel den Kaufpreis deiner Batterie höher hinterlegen.

https://github.com/Coernel82/smartCharge4evcc

@Basti77

This comment was marked as off-topic.

@andig
Copy link
Member

andig commented Jan 1, 2025

  1. Log fehlt und 2. hier OT. Mach bitte ein Issue auf. Danke.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
stale Outdated and ready to close ux User experience/ interface
Projects
None yet
Development

Successfully merging a pull request may close this issue.