NEWS
Blockly Hilfe, PV-Leistung
-
Hatte schon mal nen bissel gegoogelt, aber so wie ich das haben möchte, habe ich das nichts gefunden. Denke mal, dass würde mit Blockly bestimmt gehen, nur wie
`
Hallo Steffi81Die Mathematik-Bausteine kennst Du ja schon aus dem anderen Thread.
Zeig doch mal was Du schon hast.
Das können wir dann eventuell korrigieren.
Grüße
-
Hallo
Ja damit habe ich schon das ein oder andere gemacht und auch gelöst bekommen.
Zu dem aktuellen Problem habe ich bis jetzt noch nichts. Weiß nicht wie ich z.b. aus der aktuellen Leistung ne ganze Tages Leistung errechne. Muss das dann fortlaufend zusammen gerechnet werden oder wie macht man das ?
Mfg
-
Hallo
Ja damit habe ich schon das ein oder andere gemacht und auch gelöst bekommen.
Zu dem aktuellen Problem habe ich bis jetzt noch nichts. Weiß nicht wie ich z.b. aus der aktuellen Leistung ne ganze Tages Leistung errechne. Muss das dann fortlaufend zusammen gerechnet werden oder wie macht man das ?
Mfg `
Mal nee idee…
Du könntest die Werte einen object addieren im Laufe des Tages.
Per cron ermittelst die den Ende des Tages und schreibst dann das Resultat in ein neues object + resettet Wert auf 0 usw
Send from mobile device
-
Wenn ich aber jedesmal, wenn sich der PV wert ändert, den aktuellen PV wert zum vorherigen Wert dazu addiere, wird der Wert dann am Ende des Tages nicht ganz schön groß sein?
Kann mir irgendwie nicht vorstellen, dass die addierten werte dann zum Schluss die Tages Leistung sein sollen, oder hab ich da jetzt nen Verständigungsfehler?
Blöde Frage, was ist Cron :oops:
Mfg
-
Wenn ich aber jedesmal, wenn sich der PV wert ändert, den aktuellen PV wert zum vorherigen Wert dazu addiere, wird der Wert dann am Ende des Tages nicht ganz schön groß sein?
Kann mir irgendwie nicht vorstellen, dass die addierten werte dann zum Schluss die Tages Leistung sein sollen, oder hab ich da jetzt nen Verständigungsfehler?
Blöde Frage, was ist Cron :oops:
Mfg `
Kommt drauf an was für Werte deine PV liefert zu wenig Infos um zu helfen….
Cron = Zeit basierte Ausführung
Send from mobile device
-
Guten Morgen
Also, von meinem WR bekomme ich keine Daten, der lässt sich nicht auslesen.
Habe aber ein SMA Energy Meter vor dem WR verbaut, mit dem ich die aktuelle W-Leistung sehen kann, also was in dem Moment vom Dach kommt.
Desweiteren habe ich den SMA Adapter installiert, mit dem ich dann unter Objekte diese besagte Leistung sehen kann und mir unter Vis anzeigen lasse.
Aber wie gesagt, dass ist nur die Leistung in dem Moment wenn ich schaue, sehe also nicht was den Tag/Woche/Monat passiert ist.
Außerdem kann ich eine Gesamt Leistung sehen in dem Adapter, wieviel kWh der WR schon insgesamt produziert hat seit der Montage. Dieser Zähler lässt sich aber nicht zurück setzen.
Gut, ich könnte mir am Tages Anfang den Wert manuell aufschreiben und dann am Tages Ende verrechnen, aber das finde ich dann doch etwas umständlich, jeden Tag :lol:
Womit und wie lässt sich denn das berechnen Tag/Woche/Monat/Jahr?
Somit weiß ich jetzt auch was Cron ist, Danke
Mfg
-
Außerdem kann ich eine Gesamt Leistung sehen in dem Adapter, wieviel kWh der WR schon insgesamt produziert hat seit der Montage. Dieser Zähler lässt sich aber nicht zurück setzen.
Gut, ich könnte mir am Tages Anfang den Wert manuell aufschreiben und dann am Tages Ende verrechnen, aber das finde ich dann doch etwas umständlich, jeden Tag :lol:
Womit und wie lässt sich denn das berechnen Tag/Woche/Monat/Jahr? `
Dann berechnest du die dich mit blockly und cron pro Tag diesen gesamt Verbrauch?
Wert total - Wert gestern = Wert heute
–-----------------------
Send from mobile device
-
Also, von meinem WR bekomme ich keine Daten, der lässt sich nicht auslesen. `
Es lässt sich fast alles irgendwie auslesenWas ist das für ein WR?
Kannst du die Daten z.B. in einem Webinterface sehen?
Gruß
Rainer
-
Ok, der Rechenweg macht Sinn, bloß den Wert von gestern habe ich ja auch nicht, wie rechne ich den denn aus? Irgendwie steht ich total aufm Schlauch
Das mit dem WR hatte ich schonmal hier, versucht zu lösen
http://forum.iobroker.net/viewtopic.php?f=20&t=8495
Mfg
-
Hast du nicht eventuell auch die Möglichkeit das ganze über die API-Schnittstelle deines Herstellers zu realisieren. Ich lese meine SE-Anlage so auch. Allerdings erst in Homematic und die Anzeige dann über ioBroker. So bekomme ich alle Daten ohne Berechnung direkt angezeigt. Hier ein Beitrag zum SMA-Wechselricher eventuell hilft der ja weiter.
(falls du den nicht schon kennen solltest) http://forum.iobroker.net/viewtopic.php?t=1347
-
Das ist eine gute Frage. Ob das geht, weiß ich nicht. Wüsste jetzt auch garnicht, wie ich das anstellen soll. Der Hersteller sitzt in China, könnte schwer werden da anzufragen
Der einzige Anschluss am WR ist mit dem Wifi Stick belegt.
So weit bin ich ja auch mit der Lösung des SMA Energie Meters und dem SMA Adapter zufrieden.
Klar wäre es mit WR auslesen einfacher, aber habt nun gelernt, dass das Packet mit dem günstigen WR nicht unbedingt das beste ist, nächstes mal bin ich schlauer
Wenn ich jetzt noch die genannten Probleme gelöst bekomme, mit Blocky, dann finde ich das ganze dann gut wie es ist.
Denke das ich das mit Hilfe der anderen hier auch irgendwie gelöst bekommen werde.
Mfg
-
Hallo nochmal.
die API-Schnittstelle ist eine reine Softwarelösung also nichts an deinem Wechselrichter. Du bekommst von deinem
Anbieter einen API-Key, User und Passwort. Damit lassen sich dann die Werte, in deinem Fall vom sunnyportal auslesen. Das mit dem blockly kannst du ja auch gerne weiterverfolgen. Es ist aber denke ich einfacher schon fertige Werte zu verarbeiten als sie erst noch berechnen zu müssen.
-
Ah ok, dann habe ich das falsch verstanden. Dachte ich muss da noch was anschließen
Mit Anbieter meinst du den Hersteller des WR? Das wäre ja in meinem Fall INVT.
Oder meinst du SMA, als Herstelller des Energie Meters?
Wenn du den meinst, dann geht das nicht.
Um den Energie Meter ins Sunny Portal einbinden zu können, brauche ich, laut SMA, den Home Manager.
Der macht wohl die Verbindung möglich, um den Energie Meter im Portal zu sehen. Den habe ich aber nicht.
Dann hätte ich den Home Manager 2.0 verbauen müssen, der ist Energie Meter und Home Manger in einem, aber der ist so teuer, da bekomm ich nen neuen WR
Mfg
-
OK, ich dachte das der WR auch von SMA ist. Wenn das so umständlich und teuer ist, dann geht die Lösung über die API Schnittstelle bei dir leider nicht. Währe halt wesentlich einfacher so geworden.
-
Nee, leider nicht. Der nächste ist auch nen SMA
Somit bleibt mir nur die Hilfe mit Brockly.
Mfg
-
Hi,
hast du mal im Forum nach SMA gesucht?
http://forum.iobroker.net/viewtopic.php … &hilit=sma
http://forum.iobroker.net/viewtopic.php … &hilit=sma
http://forum.iobroker.net/viewtopic.php … &hilit=sma
Ich meine mich dunkel zu erinnern das in einem dieser Themen etwas drin stand was dir eventuell helfen könnte.
-
-
Hi Rainer,
das auslesen hatten wir schon versucht. Gestaltet sich aber mangels gescheiter Dokumentation des China WR als sehr schwierig.
http://forum.iobroker.net/viewtopic.php … hilit=INVT
Mirko
-
Ok, dann mal weiter:
@Steffi81:Der einzige Anschluss am WR ist mit dem Wifi Stick belegt. `
wofür benötigst du den?
Gruß
Rainer
-
Hi
Falls nur den aktuellen Gesamtwert auslesen werden kann.
Kann man es mal so versuchen.
Im ersten Block muss die Id des Datenpunktes eingesetzt werden.
Und der Export.
!
<xml xmlns="http://www.w3.org/1999/xhtml"><block type="comment" id="{V=mo]DNu%KS;AK8=LrK" x="12" y="88"><field name="COMMENT">Jeden Tag um 00:01 Uhr</field> <next><block type="schedule" id="jL4.SW:PoWw-q.KKR%DH"><field name="SCHEDULE">1 0 * * *</field> <statement name="STATEMENT"><block type="comment" id="D=qb+T%qkgL9r4}{nMDL"><field name="COMMENT">Aktuellen Gesamtwert auslesen</field> <next><block type="variables_set" id="|gPu3??__,N,nK__0J=l"><field name="VAR">PV_Gesamt</field> <value name="VALUE"><block type="get_value" id="vn1.7!O[1Q5B#JMPS6:C"><field name="ATTR">val</field> <field name="OID">ID auswählen</field></block></value> <next><block type="controls_if" id="X2JIk;bXE/pvC5.dNX8Z"><mutation else="1"></mutation> <value name="IF0"><block type="logic_compare" id="w}1)G@BCCc-1j|fhXf))"><field name="OP">GT</field> <value name="A"><block type="get_value" id="M[E;e2v#lO?lGiW6)z7d"><field name="ATTR">val</field> <field name="OID">javascript.0.PV_VorGesamt</field></block></value> <value name="B"><block type="math_number" id="_Czl-/turH@g=rB:]Mwz"><field name="NUM">0</field></block></value></block></value> <statement name="DO0"><block type="comment" id="chjFF9Hm#IP?dmv%G^Ie"><field name="COMMENT">Nur wenn PV_VorGesamt schon einen Wert hat</field> <next><block type="control" id="uv{3:E:[P;3X|}OfJo8`"><mutation delay_input="false"></mutation> <field name="OID">javascript.0.PV_VorTag</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="math_arithmetic" id="9:@!#?)Gfx7,^rC}_Sp@"><field name="OP">MINUS</field> <value name="A"><shadow type="math_number" id="j_!M*xfzb-4EGawO3Kw3"><field name="NUM">1</field></shadow> <block type="variables_get" id="]GT9hzMP~?Z`n^{Z!rMr"><field name="VAR">PV_Gesamt</field></block></value> <value name="B"><shadow type="math_number" id="45m?:J{?vw}#2BT[Y^0a"><field name="NUM">1</field></shadow> <block type="get_value" id=",bmQjGxO(GZ%)Hp8GVH3"><field name="ATTR">val</field> <field name="OID">javascript.0.PV_VorGesamt</field></block></value></block></value> <next><block type="comment" id="?mSu7`rmS[]{=^hR(|h-"><field name="COMMENT">Aktuellen Wert für morgen sichern</field> <next><block type="control" id="OtuY6{dgTE9P.ieI?z2,"><mutation delay_input="false"></mutation> <field name="OID">javascript.0.PV_VorGesamt</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="variables_get" id="^_Q.h83(k6y=E^-fcIMU"><field name="VAR">PV_Gesamt</field></block></value> <next><block type="comment" id="MMZP1xTG9f/G)nsJIf`7"><field name="COMMENT">Werte für Woche/Monat/Jahr</field> <next><block type="control" id="o7n(o[cGK{oPWWQOK@^*"><mutation delay_input="false"></mutation> <field name="OID">javascript.0.PV_Woche</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="math_arithmetic" id="f+0j74o-U3WeWuy2?Dsj"><field name="OP">ADD</field> <value name="A"><shadow type="math_number" id="`OR^Z3:8=MdvdR-QK]%Y"><field name="NUM">1</field></shadow> <block type="get_value" id="Q-THE*k:Py893m-gk/R-"><field name="ATTR">val</field> <field name="OID">javascript.0.PV_Woche</field></block></value> <value name="B"><shadow type="math_number" id="KO1?Fi}rrj`ILzyQO/f2"><field name="NUM">1</field></shadow> <block type="get_value" id="u#8@#!n6u%(6!B31:D#u"><field name="ATTR">val</field> <field name="OID">javascript.0.PV_VorTag</field></block></value></block></value> <next><block type="control" id="K]e7[K:+^nE+y7gW%DIU"><mutation delay_input="false"></mutation> <field name="OID">javascript.0.PV_Monat</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="math_arithmetic" id="o*9P~|]l1Um1TkV7@`|0"><field name="OP">ADD</field> <value name="A"><shadow type="math_number" id="`OR^Z3:8=MdvdR-QK]%Y"><field name="NUM">1</field></shadow> <block type="get_value" id="+tFHCODGSjv^Qk1dDbRD"><field name="ATTR">val</field> <field name="OID">javascript.0.PV_Monat</field></block></value> <value name="B"><shadow type="math_number" id="KO1?Fi}rrj`ILzyQO/f2"><field name="NUM">1</field></shadow> <block type="get_value" id="qBxclNi8GHNr#)hhm?J%"><field name="ATTR">val</field> <field name="OID">javascript.0.PV_VorTag</field></block></value></block></value> <next><block type="control" id="WiH_`QT6a!A.S0Vy:|ha"><mutation delay_input="false"></mutation> <field name="OID">javascript.0.PV_Jahr</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="math_arithmetic" id="yzhvrh:/byinS@xid67x"><field name="OP">ADD</field> <value name="A"><shadow type="math_number" id="`OR^Z3:8=MdvdR-QK]%Y"><field name="NUM">1</field></shadow> <block type="get_value" id="NEXWyrCTvJUXcL~`VSj*"><field name="ATTR">val</field> <field name="OID">javascript.0.PV_Jahr</field></block></value> <value name="B"><shadow type="math_number" id="KO1?Fi}rrj`ILzyQO/f2"><field name="NUM">1</field></shadow> <block type="get_value" id="R^?u9u#3Z_uo3(#PAFE}"><field name="ATTR">val</field> <field name="OID">javascript.0.PV_VorTag</field></block></value></block></value> <next><block type="comment" id="u?e=^OoHZTOPnUj(=`)m"><field name="COMMENT">Wochen-/Monat- und Jahreswechsel</field> <next><block type="controls_if" id=".*Ut:*R-,h7mCTOP`:-K"><value name="IF0"><block type="logic_compare" id="m)YlVQQb`L4=y{h9(ch:"><field name="OP">EQ</field> <value name="A"><block type="time_get" id=")JUH+iyy,,KZ}dP6`xux"><mutation format="false" language="false"></mutation> <field name="OPTION">wd</field></block></value> <value name="B"><block type="math_number" id=";{)kq0labRr%?rY8,,A@"><field name="NUM">1</field></block></value></block></value> <statement name="DO0"><block type="comment" id="q/-:jN?6f%X.b`3I)31t"><field name="COMMENT">es ist Montag</field> <next><block type="control" id="/7icF9n5//IyZcNcH5Uo"><mutation delay_input="false"></mutation> <field name="OID">javascript.0.PV_VorWoche</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="get_value" id="t`/P:sFnA_9aQDT[WWU8"><field name="ATTR">val</field> <field name="OID">javascript.0.PV_Woche</field></block></value> <next><block type="control" id="ggLsAk5l=/[g.=e#JRtQ"><mutation delay_input="false"></mutation> <field name="OID">javascript.0.PV_Woche</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="math_number" id="_?yeX[pAh9a{U50(~F,6"><field name="NUM">0</field></block></value></block></next></block></next></block></statement> <next><block type="controls_if" id="C?T5,x)9U#+*5`!/%Xvq"><mutation elseif="1"></mutation> <value name="IF0"><block type="logic_compare" id="QnsuC*,mT8@{/VAV0#;3"><field name="OP">EQ</field> <value name="A"><block type="time_get" id="w]l0YjizLVHO+kXh~+pA"><mutation format="false" language="false"></mutation> <field name="OPTION">DD.MM.</field></block></value> <value name="B"><block type="text" id="Js3Du,fIBC4,!;Vr],3X"><field name="TEXT">01.01.</field></block></value></block></value> <statement name="DO0"><block type="comment" id="4),8Xviy{qF^*:)E6iM^"><field name="COMMENT">Neues Jahr</field> <next><block type="procedures_callnoreturn" id="-J|MYf4EIn`F|a5qkq:9"><mutation name="MonatsWechsel"></mutation> <next><block type="procedures_callnoreturn" id="!jD{/7{BdxYQ_}-|%eTH"><mutation name="JahresWechsel"></mutation></block></next></block></next></block></statement> <value name="IF1"><block type="logic_compare" id="=KSw2QKkWEYy2LAu|5F%"><field name="OP">EQ</field> <value name="A"><block type="convert_tonumber" id="Pqs^d)[+FGyDP)EIQinu"><value name="VALUE"><block type="time_get" id="j:O*7i=%dQ0EY]1wI`Lu"><mutation format="true" language="false"></mutation> <field name="OPTION">custom</field> <field name="FORMAT">TT</field></block></value></block></value> <value name="B"><block type="math_number" id="~DXlaOKTAggAN-WTk[yE"><field name="NUM">1</field></block></value></block></value> <statement name="DO1"><block type="comment" id="Rtl!ROra;5ug|YC6UHIV"><field name="COMMENT">1\. eines Monats</field> <next><block type="procedures_callnoreturn" id="juyZg(NRvnJ1)=cNx128"><mutation name="MonatsWechsel"></mutation></block></next></block></statement></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></statement> <statement name="ELSE"><block type="comment" id="Vn@Z9!vf0(iDyIXzSyWG"><field name="COMMENT">1x PV_VorGesamt initialisieren</field> <next><block type="control" id="DIp{:oz5KBZ7#TQ,ridU"><mutation delay_input="false"></mutation> <field name="OID">javascript.0.PV_VorGesamt</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="variables_get" id="J[CBnbIiH1v}f8mk@Z9P"><field name="VAR">PV_Gesamt</field></block></value></block></next></block></statement></block></next></block></next></block></statement></block></next></block> <block type="create" id="B},4v2+obd97Lld]25`R" x="1062" y="113"><field name="NAME">PV_Woche</field> <statement name="STATEMENT"><block type="create" id="*WzD[c#CQ}%*ycUAB[@c"><field name="NAME">PV_Monat</field> <statement name="STATEMENT"><block type="create" id="z!4H-5c`BU;kvu0O(g+U"><field name="NAME">PV_Jahr</field> <statement name="STATEMENT"><block type="create" id="i|ne,z:0/qiHePl7NHF+"><field name="NAME">PV_VorTag</field> <statement name="STATEMENT"><block type="create" id="_},VWXXZ6I2K^f4v}3s."><field name="NAME">PV_VorWoche</field> <statement name="STATEMENT"><block type="create" id="`gyl9_4HuNdu8^ZsAQ63"><field name="NAME">PV_VorMonat</field> <statement name="STATEMENT"><block type="create" id="8QKD_^S|A?5jFo;(ff]p"><field name="NAME">PV_VorJahr</field> <statement name="STATEMENT"><block type="create" id="#3f,et+T8JME5t12FnzN"><field name="NAME">PV_VorGesamt</field></block></statement></block></statement></block></statement></block></statement></block></statement></block></statement></block></statement></block> <block type="procedures_defnoreturn" id="nO8WoL:p/oR%-9XA~IJe" x="787" y="738"><field name="NAME">MonatsWechsel</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> <statement name="STACK"><block type="control" id="A2Dj%?pG!;QczTcK3i[^"><mutation delay_input="false"></mutation> <field name="OID">javascript.0.PV_VorMonat</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="get_value" id="sOETT)EC=ElK%E]JfU!}"><field name="ATTR">val</field> <field name="OID">javascript.0.PV_Monat</field></block></value> <next><block type="control" id="j=33G*tu(OlgvW67uig{"><mutation delay_input="false"></mutation> <field name="OID">javascript.0.PV_Monat</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="math_number" id="B}|~*)%A3.yjI84v*eK("><field name="NUM">0</field></block></value></block></next></block></statement></block> <block type="procedures_defnoreturn" id=")fw?y^4RO%x]?;0jBas9" x="788" y="863"><field name="NAME">JahresWechsel</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> <statement name="STACK"><block type="control" id="02M4Mbbt.Wyg%nEKQBYp"><mutation delay_input="false"></mutation> <field name="OID">javascript.0.PV_VorJahr</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="get_value" id="vvXH4./l=Wv*y#^x*t8R"><field name="ATTR">val</field> <field name="OID">javascript.0.PV_Jahr</field></block></value> <next><block type="control" id="yFW2~@teqpc`ja~QOO3u"><mutation delay_input="false"></mutation> <field name="OID">javascript.0.PV_Jahr</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="math_number" id="5*DJ#(2ohT.33sjheP^="><field name="NUM">0</field></block></value></block></next></block></statement></block></xml> !
Ist vielleicht auch für andere interessant.
Grüße