NEWS
Kaco Wechselrichter und ModBus
-
OK...
damit habe ich ja am anfang auch gearbeitet.... ich bin dann aber so nen "fummelfreak" der solange testet bis es funzt oder definitiv nicht
Habe gestern bei der Recherche zu deinem Wechselrichter auch nen Dokument gefunden... Wo es draus hervorgeht das es zwei Versionen gab (je nach Serialnummer)...
Die erste hatte eine "First basic implementation", und danach scheint es eine Entwicklung gegeben zu haben...
ich füge das mal hier als Anlage an....Bei Google ist der Theard immer weit oben wenn man nach Kaco und Modbus sucht... landen bestimmt einige leute drauf
MODBUS Protocol
Application Note
Tx1 and Tx3 Series
APL_Modbus-Protocol_de_180730.pdf -
@schimi Interessant. Ok ich habe blueplanet 3.7 TL1 und Seriennummer 3.7TL101174131
Am Ende hatte ich auch mal ein Tool gefunden für Windows um das auszulesen, aber auch das hat manchmal was bekommen und manchmal nicht oder was anderes. Ich hab da aufgegeben
-
Super der Modbus läuft bei mir jetzt und die Werte werden eingelesen. Hatte den WR wohl mit falschen anfragen überlastet oder so....
Könnte mir vielleicht jemd per screenshot die einstellungen der Werte posten ? also welcher Datentyp welches Register hat ?
viele Grüße
Andreas
-
so habe ich es schon ewig laufen:
-
@schimi Die Register passen bei mir nicht... da kommt immer 0 zurück ,bzw geht der Adapter dann wieder auf Störung... trotzdem danke ich werde mal alles was ich finde einbauen und versuchen es zu interpretieren.
Die Angaben aus der KACO aAnleitung stimmen auch nicht ganz ..... bei 40086 Scaling factor kommt 500 bzw. 499 raus und der nächste Registereintrag ist die Frequenz.
An der Stelle ist mal ein offset von 1 zur Beschreibung. Ich denke die 500 bedeuten 50.0 Hz. Weil es auch schwankt zu 49,9 Hz. -
hmmm. also bei mir und meinem Nachbar (hat vor 3 Wochen auch nen KACO bekommen) funktioniert es einwandfrei.... (exakt so eingestellt wie bei mir)
Hast du auch Modbus im Wechselrichter aktiviert? Firmware Aktuell?
-
@schimi .... so jetzt läufts ... bei mir ist ein Adress offset drin. Aber ich habs mit dem KACO Tool hinbekommen. Ein Tipp von einem frühreren Beitrag von Dir
Vielen Dank nochmals
-
bei den Objekten taucht so ein komischer Wert auf der nicht im Adapter eingestellt ist...
hat jemand eine Idee wie ich den weg bekomme... ich denke der stört unter anderem auch die Kommunikation.
Der Adapter geht immernoch auf gelb, ich glaub das liegt daran. -
Sicher das nicht zufällig irgendwo nen register doch eingetragen ist?
Ansonsten, einstellungen sichern und Adapter mal deinstallieren, neu starten und widser installieren....
Mit dem Wert kann ich nichts anfangen, hatte sowas noch nicht...
-
@schimi .... in der Tabellenoption war der Wert zu sehen.... hab ihn da rausgelöscht und neu importiert jetzt ist er weg. Danke
-
Hallo zusammen, ich habe einen Kaco Powador 10.0 TL3 und möchte hieraus die Daten auslesen.
Die Software ist derzeit V3.32 - werde es morgen aber auf V5.56 updaten.Ich habe Modbus aktiviert und den entsprechenden Adapter installiert.
Ich bin aber noch absoluter Laie. Wäre super, wenn mir jemand erklären könnte, wie ich nun die Daten in VIS sichtbar bekomme. In der Instanz habe ich die IP-Adresse bereits hinterlegt.
Danke im Voraus.
---------‐------------------------------------------------------
Habe es mittlerweile hinbekommen.
Jetzt würde ich gerne den Tages- und Monatsertrag auslesen. Wo bekomme ich die Adresse her?
-
Hi,
als erstes würde ich das Update machen... (habe gerade gesehen das ich noch die 5.53 habe)
überprüfe ob du Modbus TCP aktiviert hast:
Danach gehst du in die Einstellungen des Modbus Adapters und stellst ihn so ein (deine IP-Adresse eintragen, nicht meine )
Jetzt noch in die "Holding-Register" und es so eintragen wie es bei mir ist.. Danach noch speichern und schließen und es sollte sich alles richtig verbinden:
wenn du weitere register auslesen willst, müsstest du in die Modbus Datei von KACO schauen.... mir reichen diese, die ich habe, vollkommen aus....
Ich hoffe das bringt dich weiter... ansonsten sind auch einige Dateien mit Infos, hier im Thread verstreut
-
@sr277 sagte in Kaco Wechselrichter und ModBus:
Habe es mittlerweile hinbekommen.
Jetzt würde ich gerne den Tages- und Monatsertrag auslesen. Wo bekomme ich die Adresse her?
Ich habe damals mit dem "SunSpec Help Tool" glaube ich rumgespielt... (vorher Modbus adapter Deaktivieren)... da kann man die register sehen... ich weiß nicht mehr genau wie ich es gemacht habe.... war aber "Try&Error"
Tages und Monatserzeugung, berechne ich mit nem blockly...
-
Super vielen Dank. Hat alles funktioniert, auch ohne Update.
Beim Update habe ich noch Probleme, da der USB-Stick nicht erkannt wird und auch das Fern-Update funktioniert nicht. Aber hierzu werde ich wohl mal mit Kaco direkt sprechen.--> Update hat jetzt mittlerweile auch funktioniert.
Kannst du mir das Blockly für die Tages- und Monatserzeugung zur Verfügung stellen?
-
Ertrag Heute
<xml xmlns="https://developers.google.com/blockly/xml"> <block type="comment" id="$QkVEMgDnGSy|d?Hb%jy" x="74" y="-530"> <field name="COMMENT">anerkannt ist -Befehl = bestätigt false, -Update_bestätigt true</field> <next> <block type="on" id="^`(|NPKR4zU(v-3F|BY6"> <field name="OID">0_userdata.0.PV-Anlage.GesamtErzeugt</field> <field name="CONDITION">ne</field> <field name="ACK_CONDITION">true</field> <statement name="STATEMENT"> <block type="update" id="FNh64R=YIz.0}6Z5QgA("> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.PV-Anlage.Erzeugt_heute</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_rndfixed" id="?~U=GnY7$4y:G-bNX4ei"> <field name="n">2</field> <value name="x"> <shadow type="math_number" id="meT*C!2(.a/G.p%D#|JE"> <field name="NUM">3.1234</field> </shadow> <block type="math_arithmetic" id="X=v|wcrXar#P/.b?B{ro"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number" id="zMK3F|OZPt`:,3Xv0OW-"> <field name="NUM">1</field> </shadow> <block type="get_value" id="xZB1+`[To[^/kLD9FCw:"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.PV-Anlage.GesamtErzeugt</field> </block> </value> <value name="B"> <shadow type="math_number" id="pV?3J-`zV7I13w+hw}(5"> <field name="NUM">1</field> </shadow> <block type="get_value" id="PtEn!cxb~D[M~c`bDW7P"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.PV-Anlage.Temp.GesamtHeute_temp</field> </block> </value> </block> </value> </block> </value> <next> <block type="comment" id="7Y|N,28~zSvw5d~yJ:@7"> <field name="COMMENT">Punkt wird im "ertrag gestern"-Skript aktualisiert</field> </block> </next> </block> </statement> </block> </next> </block> </xml>
Ertrag gestern
<xml xmlns="https://developers.google.com/blockly/xml"> <block type="schedule" id="To]?HW-zcmN;@Q%hHBK9" x="63" y="-462"> <field name="SCHEDULE">55 23 * * *</field> <statement name="STATEMENT"> <block type="comment" id="lr468UhYHj*=k{AQgR}4"> <field name="COMMENT">Kopie Ertrag heute zu gestern</field> <next> <block type="update" id="ZLi.eQgov,ZQS?vsrOY|"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.PV-Anlage.Erzeugt_gestern</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="get_value" id="^mg4lQwlt0RRh(3~M6gr"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.PV-Anlage.Erzeugt_heute</field> </block> </value> <next> <block type="comment" id="CtJ)ES#2_J9NiLds(_Nq"> <field name="COMMENT">heute auf 0 setzen</field> <next> <block type="update" id="Pk,u3}=a)e:3kYh@pJ`A"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation> <field name="OID">0_userdata.0.PV-Anlage.Erzeugt_heute</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">10</field> <field name="UNIT">sec</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="math_number" id="=S0.,D$Gf?uUJZV%)0kW"> <field name="NUM">0</field> </block> </value> <next> <block type="comment" id="_A~Nq]?AVIqJ^/2?0.!)"> <field name="COMMENT">etrag_heute Script</field> <next> <block type="update" id="wEZ1xg+E(-=R,}bFYzPk"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.PV-Anlage.Temp.GesamtHeute_temp</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="get_value" id="{dKQmMwvi#x(rrXWHftv"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.PV-Anlage.GesamtErzeugt</field> </block> </value> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </xml>
Diesen Monat erzeugt:
<xml xmlns="https://developers.google.com/blockly/xml"> <block type="on" id=":saE~j3~fBqY$JIB1=JH" x="38" y="-237"> <field name="OID">0_userdata.0.PV-Anlage.GesamtErzeugt</field> <field name="CONDITION">ne</field> <field name="ACK_CONDITION">true</field> <statement name="STATEMENT"> <block type="update" id="I6Z+1pn}8oHJ7!#dv8K?"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.PV-Anlage.DiesenMonatErzeugt</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_rndfixed" id="yvFfLM%Sc.sAwI`~I?o~"> <field name="n">2</field> <value name="x"> <shadow type="math_number" id="Aht@P/ommxj+Im~kWPo~"> <field name="NUM">3.1234</field> </shadow> <block type="math_arithmetic" id="iT1hQ%QLed..};d7]_5-"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number" id="x@yMD=jTVYSSS26xl02X"> <field name="NUM">1</field> </shadow> <block type="get_value" id="!?:CNi*)IGZUoy/lx^+?"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.PV-Anlage.GesamtErzeugt</field> </block> </value> <value name="B"> <shadow type="math_number" id="iLL,%qUs-aJj9Ec.Ic^."> <field name="NUM">1</field> </shadow> <block type="get_value" id="Yk%{IpoX@+{l4:hAKna!"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.PV-Anlage.Temp.GesamtErzeugt_Temp</field> </block> </value> </block> </value> </block> </value> </block> </statement> </block> </xml>
Letzten Monat erzeugt
<xml xmlns="https://developers.google.com/blockly/xml"> <block type="schedule" id="?v{j01*oL60AWV1J*#CN" x="63" y="63"> <field name="SCHEDULE">*/60 1 1 * *</field> <statement name="STATEMENT"> <block type="update" id="NF-TNJj8T0X]+Y~_egP+"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.PV-Anlage.LetztenMonatErzeugt</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_rndfixed" id="cU,Hf#Qfe4Pp=hM_KC[_"> <field name="n">2</field> <value name="x"> <shadow type="math_number" id="]nb~:s8=6-_FN(EG`Q6Q"> <field name="NUM">3.1234</field> </shadow> <block type="math_arithmetic" id="q]D=JKb91l=#wV(]j$bA"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number" id="anB)c|Y;BtdMY,MrpDbr"> <field name="NUM">1</field> </shadow> <block type="get_value" id="p^CZUjY-70M(H2waH1L~"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.PV-Anlage.GesamtErzeugt</field> </block> </value> <value name="B"> <shadow type="math_number" id="+FK9H#U[p+,$yfP,OF7D"> <field name="NUM">1</field> </shadow> <block type="get_value" id="OEW`7hCov)`i`cq|4KHU"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.PV-Anlage.Temp.GesamtErzeugt_Temp</field> </block> </value> </block> </value> </block> </value> <next> <block type="timeouts_wait" id="ys%2S(2@hwLTZQ[4{r}F"> <field name="DELAY">2000</field> <field name="UNIT">ms</field> <next> <block type="update" id="(sI7vgULF)/})|SHWmi8"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.PV-Anlage.Temp.GesamtErzeugt_Temp</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_rndfixed" id="l)PGu?K(QED]0w@EnEEu"> <field name="n">2</field> <value name="x"> <shadow type="math_number" id="#mb*w?.ncF/lzimwav6M"> <field name="NUM">3.1234</field> </shadow> <block type="get_value" id="-jG-R7soFh4#Y`#aIC^e"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.PV-Anlage.GesamtErzeugt</field> </block> </value> </block> </value> </block> </next> </block> </next> </block> </statement> </block> </xml>
wenn du z.B. den Datenpunkt von "letzten Monat erzeugt" loggen lässt... lässt sich damit auch eine schöne übersicht erstellen....
Das war jetzt mal auf die schnelle exportiert.... ich hoffe das hilft dir
-
Ich habe jetzt mal den "Ertrag heute" in ein JavaSkript kopiert.
Habe mir vorher die Datenpunkte angelegt. Fehlt hier noch einer?
Bekomme nämlich aktuell diese Fehlermeldung:
-
sieht richtig aus..... sind die datenpunkte im richtigen "format"?
habe meinen "PV-BAum" als json exportiert....
vielleicht hilft es..
-
Kannst du mir die Blockly exportieren? Kann so leider nicht erkennen, welche Object ID ich wo auswählen muss.
-
die jeweiligen "Code"-Schnipsel oben sind schon die exportierten blocklys.....
falls es irgendwie noch anders geht dann brauche ich eine anleitung... wüsste nicht wie ich es sonst machen sollte....
Oder meinst du Screenshots? -
Screenshots wären auch super, dann würde ich es nachbauen.