NEWS
Blockly Hilfe, PV-Leistung
-
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
-
@ Rainer
Über den Wifi Stick bekomme ich den WR ins Netzwerk bzw. ins Internet. Über eine App, vom Hersteller, kann ich dann die Daten vom WR sehen. Aber auslesen oder so zur weiter Verarbeitung geht damit nicht. Das ist auch alles zeitverzögert, halbe std oder so, dass macht erst noch nen Umweg über China
Für jemanden, der damit sein WR nur mal ab und zu ein sehen möchte, reicht das. Mir aber nicht
@ rantanplan
Das sieht nach genau dem aus, was ich suche. Da hast du dir aber echt viel Arbeit gemacht, richtig großes Danke schön. Ich werde das mal ausprobieren und mal schauen ob es klappt. Wird aber wohl erst morgen Abend was werden und dann mal sehen wann die Sonne mit spielt
Vielen Dank
Mfg
-
Nabend
So, kleiner Zwischenbericht.
Das Skript hab ich gestern Nachmittag eingepflegt und gestartet. Die Zustände wurden alle unter Objekte erfolgreich angelegt. Bei den Zuständen stand dann nicht "0" als Zahl, sondern "null" als Wort.
Um 00:01 Uhr wurde das Skript dann ausgelöst, jetzt steht bei VorTag, Woche, Monat, Jahr "0" als Zahl, bei den anderen weiter "null" als Wort. Ist das so richtig? Hätte nicht seit 00:01 Uhr bei VorTag nen Wert stehen sollen, oder kommt das erst beim nächsten auslösen um 00:01 Uhr, weil das Skript nen vollen Tag den Wert sammeln muss?
Mfg
-
Guten Morgen
Abwarten
Obwohl Fehler natürlich möglich sind :roll:
Wochenwechsel ist ja auch bald.
Bitte weiter berichten.
Grüße
-
Guten Morgen
Denke auch, abwarten 8-)
Fehler wäre nicht schlimm, nix klappt auf Anhieb
Ohne Fehler wären wir ja perfekt, dass wäre ja auch Langweilig :lol:
Klar berichte ich weiter
Mfg