Darstellung Sonnenbatterie

Begonnen von dennis_n, 11 März 2021, 10:33:34

Vorheriges Thema - Nächstes Thema

yersinia

Danke fürs teilen, sieht gut aus. :)
Zitat von: LordVoodoo am 02 Mai 2024, 17:36:40Ich habe mir per SVG sechs Dateien erstellt, jeweils mit und ohne Animation:
Die animierte Version nutzt einen wandernden Punkt mit Hilfe von SVG.
Das könnte man bestimmt auch in eine svg gießen - und quasi ein Modul analog zu pvvis bauen (pvvis macht ja im Prinzip auch nichts anderes als eine svg zu laden und diese dann zu manipulieren/aktualisieren).
Das geile an FTUI3 ist auch, dass man den svg-Quellcode auch direkt im HTML des FTUI3 übernehmen kann und der Browser interpretiert es direkt - so hat das hier für mich auch mal angefangen.
viele Grüße, yersinia
----
FHEM 6.3 (SVN) on RPi 4B with RasPi OS Bullseye (perl 5.32.1) | FTUI
nanoCUL->2x868(1x ser2net)@tsculfw, 1x433@Sduino | MQTT2 | Tasmota | ESPEasy
VCCU->14xSEC-SCo, 7xCC-RT-DN, 5xLC-Bl1PBU-FM, 3xTC-IT-WM-W-EU, 1xPB-2-WM55, 1xLC-Sw1PBU-FM, 1xES-PMSw1-Pl

Shadow3561

Zitat von: LordVoodoo am 02 Mai 2024, 17:36:40Vielleicht hilfreich für den einen oder anderen. Ich habe mir per SVG sechs Dateien erstellt, jeweils mit und ohne Animation:

PV-Anlage an Haus
PV-Anlage an Stromnetz
Strom-Netz an Haus

Die animierte Version nutzt einen wandernden Punkt mit Hilfe von SVG.
Ich hoffe, man kann es in dem Kurzvideo erkennen.


Ich mag es mit den Punkten auch mehr als mit den gestrichelten Linien. Daher wandern bei mir auch seit geraumer Zeit Punkte die virtuellen Stromleitungen lang.

Vielleicht magst du deins mal zu Verfügung stellen?


satprofi

gibts möglichkeit den SOC vom Auto zu integrieren?
gruss
-----------------------------------------------------------------------
beelink miniPC - Fhem 6.x CUL 868, FS20, NetIO230 CUL 433
HMLAN, HM-CC-RT-DN,Homematic Actoren,LD382A,Telegram

yersinia

Zitat von: Shadow3561 am 03 Mai 2024, 17:57:28Daher wandern bei mir auch seit geraumer Zeit Punkte die virtuellen Stromleitungen lang.
Interessant, wie hast du das gelöst? Via CSS?

Zitat von: satprofi am 05 Mai 2024, 11:59:19gibts möglichkeit den SOC vom Auto zu integrieren?
Naja, da du wahrscheinlich ein Reading hast, dass nur angezeigt werden muss, sollte das möglich sein. Wo hättest du es denn dann gern?
viele Grüße, yersinia
----
FHEM 6.3 (SVN) on RPi 4B with RasPi OS Bullseye (perl 5.32.1) | FTUI
nanoCUL->2x868(1x ser2net)@tsculfw, 1x433@Sduino | MQTT2 | Tasmota | ESPEasy
VCCU->14xSEC-SCo, 7xCC-RT-DN, 5xLC-Bl1PBU-FM, 3xTC-IT-WM-W-EU, 1xPB-2-WM55, 1xLC-Sw1PBU-FM, 1xES-PMSw1-Pl

satprofi

hallo.
unterhalb des auto icons evt.
gruss
-----------------------------------------------------------------------
beelink miniPC - Fhem 6.x CUL 868, FS20, NetIO230 CUL 433
HMLAN, HM-CC-RT-DN,Homematic Actoren,LD382A,Telegram

yersinia

Hach, manchmal kennt man sein eigenes Widget/Code nicht. Nutz' doch einfach [car-soc] für den Ladestand des eAuto-Akkus - ist auch in 'deiner' Version inkludiert:
Zitat[car-soc]: reading, optional; Ladestand des Akku vom eAuto

unit-car-soc: fester Wert, optional; setzt die Einheit für den Ladestand des eAuto
(siehe #289)
viele Grüße, yersinia
----
FHEM 6.3 (SVN) on RPi 4B with RasPi OS Bullseye (perl 5.32.1) | FTUI
nanoCUL->2x868(1x ser2net)@tsculfw, 1x433@Sduino | MQTT2 | Tasmota | ESPEasy
VCCU->14xSEC-SCo, 7xCC-RT-DN, 5xLC-Bl1PBU-FM, 3xTC-IT-WM-W-EU, 1xPB-2-WM55, 1xLC-Sw1PBU-FM, 1xES-PMSw1-Pl

LordVoodoo

Ich habe folgendes verwendet:

    <ftui-grid-tile row="3" col="2" width="3" height="2" shape="round" style="opacity: 85%" color="dark">
        <ftui-row>
            <ftui-column>
                <ftui-label [text]="Haus_Strom_Solaranlage:power_generation_currentDay" unit="kWh"></ftui-label>
                <ftui-label text="PV-Anlage"></ftui-label>
            </ftui-column>
        </ftui-row>
        <ftui-row>
            <ftui-column>
                 <ftui-label></ftui-label>
                <ftui-label></ftui-label>
                <ftui-label [text]="Haus_Strom_Solaranlage:power_injection_currentDay" unit="kWh"></ftui-label>
                <ftui-label text="Stromnetz"></ftui-label>
            </ftui-column>
            <ftui-column>
              <ftui-image src="./icons/powerline-solar-net-zero.svg" [hidden]="Haus_Tag:is_day | map('1:true, 0:false')"></ftui-image>
              <ftui-image src="./icons/powerline-solar-net.svg" [hidden]="Haus_Tag:is_night | map('1:true, 0:false')"></ftui-image>
            </ftui-column>
            <ftui-column>
              <ftui-image src="./icons/powerline-solar-house-zero.svg" [hidden]="Haus_Tag:is_day | map('1:true, 0:false')"></ftui-image>
              <ftui-image src="./icons/powerline-solar-house.svg" [hidden]="Haus_Tag:is_night | map('1:true, 0:false')"></ftui-image>
            </ftui-column>
            <ftui-column>
                 <ftui-label></ftui-label>
                <ftui-label></ftui-label>
              <ftui-label [text]="Haus_Strom_Solaranlage:power_consumption_currentDay" unit="kWh"></ftui-label>
              <ftui-label text="Verbrauch"></ftui-label>
            </ftui-column>
        </ftui-row>
        <ftui-row>
            <ftui-column>
            </ftui-column>
            <ftui-column>
                <ftui-label [text]="Haus_Strom_Solaranlage:power_ejection_currentHour" unit="kWh">akt. Std. </ftui-label>
                <ftui-image src="./icons/powerline-net-house.svg"></ftui-image>
                <ftui-label [text]="Haus_Strom_Solaranlage:power_ejection_currentDay" unit="kWh"></ftui-label>
            </ftui-column>
            <ftui-column>
            </ftui-column>
        </ftui-row>
    </ftui-grid-tile>

Dem stehen vier Readings zur Verfügung, aufgeteilt in aktuelle Stunde und aktueller Tag:

  • power_generation - Stromerzeugung der PV-Anlage
  • power_consumption - Stromverbrauch
  • power_ejection - Strombezug aus dem öffentlichen Netz
  • power_injection - Stromeinspeisung ins öffentliche Netz

Der Grundidee geht immer voraus, das PV-erzeugter Strom vorzugsweise für Verbraucher im Haus verwendet wird - was ja auch logisch ist.

Die SVG-Grafiken sind simple und die Grundidee hat mir ChatGPT erstellt:

<svg viewBox="0 0 200 200" xmlns="http://www.w3.org/2000/svg">
  <path d="M 190 10 Q 180 180 10 190" fill="transparent" stroke="green" />
  <circle r="5" fill="green">
    <animateMotion
      dur="2s"
      repeatCount="indefinite"
      path="M190,10 Q180,180 10,190" />
  </circle>
</svg>

Shadow3561

#352
Zitat von: yersinia am 05 Mai 2024, 20:10:16Interessant, wie hast du das gelöst? Via CSS?

Ich habe den entsprechenden Teil in der pvvis.component.js ersetzt.
Anbei meine modifizierte Version (allerdings noch eine ziemlich alte Version).

Mit freundlichen Grüßen

yersinia

#353
Danke für die Ideen LordVoodoo & Shadow3561. ;)

Für die FTUI3 pvvis-component habe ich mich an einer Umsetzung versucht und in diesem Zuge einen weiteren (optionalen) Parameter eingefügt. Anbei eine Testversion welche parallel zur 'normalen' pvvis component benutzt werden kann - diese muss in das pvvis Verzeichnis eurer FTUI3-Installation (wahrscheinlich /opt/fhem/www/ftui/components/pvvis) entpackt werden. Einbindung in FTUI3 über
<ftui-pvvis-test
  [Parameter1]
  [Parameter2]
  [...]></ftui-pvvis-test>

Über den neuen Parameter flow-type können die Loadflows angepasst werden; folgende Werte sind erlaubt:
bar - der Standardwert, zeigt die bisher bekannten flows an und muss nicht explizit gesetzt werden
bar-thin - wie bar aber die flows sind nur noch halb so breit
moving-point - ein punkt bewegt sich auf dem flow
moving-points - mehrere Punkte (mit Ausnahme home->car) bewegen sich auf dem flow

Der Rest bleibt analog zu #289.
viele Grüße, yersinia
----
FHEM 6.3 (SVN) on RPi 4B with RasPi OS Bullseye (perl 5.32.1) | FTUI
nanoCUL->2x868(1x ser2net)@tsculfw, 1x433@Sduino | MQTT2 | Tasmota | ESPEasy
VCCU->14xSEC-SCo, 7xCC-RT-DN, 5xLC-Bl1PBU-FM, 3xTC-IT-WM-W-EU, 1xPB-2-WM55, 1xLC-Sw1PBU-FM, 1xES-PMSw1-Pl

Shadow3561

Moin,
Danke für die tolle Arbeit und dein ständiges verbessern/erweitern.

Jedoch bleiben die Linien vorhanden trotz gesetzem "has-no-***".
Oder habe ich falsch definiert?


        <ftui-pvvis-test
                     has-no-battery
                             has-no-wallbox
                     grid-icon="pylon"
                     flow-type="moving-points"
                     sun-icon="pvsun"
                     [feed]="SE3500H:Momentanleistung_Einspeisung"
                     [receive]="SE3500H:Momentanleistung_Bezug"
                     [produce]="SE3500H:AC_current_W"
                     pvmax="3000"
                     width="300px"
                    >
                   
                     
        </ftui-pvvis-test>
Anbei ein Bild.

Grüsse,
Daniel


satprofi

Hallo.
heute gesehen das die Zeit bei batterie nicht stimmt. 54% sind bei mir noch ~13kwh, da müsste ich doch noch ~10h entladen können.
Finde im Script aber die Berechnung nicht.
gruss
-----------------------------------------------------------------------
beelink miniPC - Fhem 6.x CUL 868, FS20, NetIO230 CUL 433
HMLAN, HM-CC-RT-DN,Homematic Actoren,LD382A,Telegram

yersinia

Zitat von: Shadow3561 am 07 Mai 2024, 19:46:26Jedoch bleiben die Linien vorhanden trotz gesetzem "has-no-***".
Oder habe ich falsch definiert?
Nein, das hab ich nicht getestet. ::) Anbei ein korrigierte Version, die nicht benutzten Stränge müssten nun ausgeblendet sein. Vielen Dank fürs Testen und die Rückmeldung. :)


Zitat von: satprofi am 08 Mai 2024, 09:10:45heute gesehen das die Zeit bei batterie nicht stimmt. 54% sind bei mir noch ~13kwh, da müsste ich doch noch ~10h entladen können.
Naja, die Berechnung ist sehr rudimentär und alles andere als auch nur annähernd korrekt. Wie hast du den Akku definiert? Die entsprechenden Parameter hast du gesetzt?
Zitatbatmax: fester Wert, optional; Hausakkukapazität in Wh (muss gesetzt werden wenn Ent/Ladezeitschätzung angezeigt werden soll -> siehe calc-bat-remain-time); batmax sollte die gleiche Einheit haben wie produce; man sollte Einheitenmischung Wh vs kWh vermeiden

calc-bat-remain-time: optional; wenn gesetzt, wird die (stark vereinfachte) geschätzte Ent/Ladezeit des Akkus basierend auf dessen Kapazität berechnet und angezeigt; dafür muss zwingend batmax gesetzt sein

calc-bat-remain-soc-not-percent: optional; sollte gesetzt werden wenn calc-bat-remain-time gesetzt ist und soc nicht als prozentualer Wert vorliegt; dies kann pvvis nicht selbst ermitteln.

Zitat von: satprofi am 08 Mai 2024, 09:10:45Finde im Script aber die Berechnung nicht.
Laden: Zeile 466
Entladen: Zeile 457
Manuell nachgerechnet basierend auf deinem Screenshot ist der Wert korrekt.
Dies ist keine valide Berechnung der Zeit basierend auf der vorhanden Ent/Ladekurve deines Speichers. Wenn ich mich recht erinner', war das nur als grober Richtwert gedacht, ob man gewissen Verbraucher noch einschaltet.


Zitat von: yersinia am 07 Mai 2024, 11:42:27Über den neuen Parameter flow-type können die Loadflows angepasst werden; folgende Werte sind erlaubt:
bar - der Standardwert, zeigt die bisher bekannten flows an und muss nicht explizit gesetzt werden
bar-thin - wie bar aber die flows sind nur noch halb so breit
moving-point - ein punkt bewegt sich auf dem flow
moving-points - mehrere Punkte (mit Ausnahme home->car) bewegen sich auf dem flow

Der Rest bleibt analog zu #289.
viele Grüße, yersinia
----
FHEM 6.3 (SVN) on RPi 4B with RasPi OS Bullseye (perl 5.32.1) | FTUI
nanoCUL->2x868(1x ser2net)@tsculfw, 1x433@Sduino | MQTT2 | Tasmota | ESPEasy
VCCU->14xSEC-SCo, 7xCC-RT-DN, 5xLC-Bl1PBU-FM, 3xTC-IT-WM-W-EU, 1xPB-2-WM55, 1xLC-Sw1PBU-FM, 1xES-PMSw1-Pl

Shadow3561

#357
Moin,
Die nicht benutzten Stränge werden nun ausgeblendet.
Allerdings scheint mir die Anzahl der Punkte unlogisch. Anbei ein Bild zur Verdeutlichung.
Je mehr Strom über die Leitung läuft, desto mehr Punkte sollten es doch sein oder? Es ist jedoch genau umgekehrt.

Gibt es ein Attribut o.ä. um die Zahlen zu runden?
Wo finde ich eine vollständige und aktuelle Beschreibung des pvvis?

Mit freundlichen Grüßen

yersinia

#358
Zitat von: Shadow3561 am 10 Mai 2024, 14:06:40Allerdings scheint mir die Anzahl der Punkte unlogisch. Anbei ein Bild zur Verdeutlichung.
Je mehr Strom über die Leitung läuft, desto mehr Punkte sollten es doch sein oder? Es ist jedoch genau umgekehrt.
Bis jetzt sind es drei Punkte (moving-points) oder genau einer (moving-point) die in einer unterschiedlichen Zeit durchlaufen sollten (3s, 2s oder 1s). Bei 3s könnte es sein, dass die sich überlappen wenn die begin-Definition ungünstig gewählt worden ist.

Zitat von: Shadow3561 am 10 Mai 2024, 14:06:40Gibt es ein Attribut o.ä. um die Zahlen zu runden?
Nein, Runden musst du vor der Übergabe an pvvis, gerne auch über pipe (zb round oder fix).

Zitat von: Shadow3561 am 10 Mai 2024, 14:06:40Wo finde ich eine vollständige und aktuelle Beschreibung des pvvis?
Derzeit immer noch im Beitrag #289 - und zwar für das offizielle Release. Die Ergänzung zur Test-version gibt es im dazugehörigen Beitrag (#353, #356 unten).
Es müsste unter examples auch eine pvvis.html geben - welche einige Varianten darstellt und auf den Beitrag verlinkt.
viele Grüße, yersinia
----
FHEM 6.3 (SVN) on RPi 4B with RasPi OS Bullseye (perl 5.32.1) | FTUI
nanoCUL->2x868(1x ser2net)@tsculfw, 1x433@Sduino | MQTT2 | Tasmota | ESPEasy
VCCU->14xSEC-SCo, 7xCC-RT-DN, 5xLC-Bl1PBU-FM, 3xTC-IT-WM-W-EU, 1xPB-2-WM55, 1xLC-Sw1PBU-FM, 1xES-PMSw1-Pl