Ich möchte gern meine LAPP Wallbox via Modbus steuern aber leider werden keine Readings erzeugt.
Kann es sein das ich als slave nicht "set Maximalstrom 10" machen kann? Also nur "hören" was der Master von sich gibt?
So wie unten habe ich die Wallbox definiert:
define mb_lapp Modbus /dev/tty0603@38400
attr mb_lapp disable 0
attr mb_lapp icon it_net
attr mb_lapp room Garage
define lapp ModbusAttr 240 slave
attr lapp IODev mb_lapp
attr lapp dev-h-defPoll 1
attr lapp dev-h-defUnpack n
attr lapp disable 0
attr lapp event-on-change-reading .*
attr lapp icon electric_car_icon
attr lapp obj-h40101-len 1
attr lapp obj-h40101-reading CP-Status
attr lapp obj-h40102-len 1
attr lapp obj-h40102-reading Ladekabel
attr lapp obj-h40107-allowWrite 1
attr lapp obj-h40107-hint 6,7,8,9,10,11,12,13,14,15,16
attr lapp obj-h40107-len 1
attr lapp obj-h40107-reading Maximalstrom
attr lapp obj-h40107-set 1
lapp.jpg
Kann mir jemand ein Tipp geben woran es liegt das ich keine readings bekomme? Habe ich etwas komplett falsch definiert?
Bin über jedes feeback dankbar...
Hallo,
ich bin kein Modbus-Experte, aber mir ist aufgefallen, dass du bei jeder Adresse ein 40 vorangestellt hast. Warum?
Aus der Anleitung von Lapp geht nicht hervor, ob sie die Register bei 0 oder 1 zu zählen anfangen. Du hast angenommen, dass sie mit 1 anfangen und deshalb die Adressen um 1 verringert. Probiere doch mal die in der Doku angegebenen Werte 102, 102 und 108 (und ohne 40 voranzustellen).
Hallo fz55, danke für den Tip! An das hab ich garnicht mehr gedacht!
Leider kann ich das erst später testen.
Ich gebe bescheid!
Ich habe jetzt die Attribute jetzt so abgeändert:
attr lapp obj-h102-len 1
attr lapp obj-h102-reading CP-Status
attr lapp obj-h103-len 1
attr lapp obj-h103-reading Ladekabel
attr lapp obj-h108-allowWrite 1
attr lapp obj-h108-hint 6,7,8,9,10,11,12,13,14,15,16
attr lapp obj-h108-len 1
attr lapp obj-h108-reading Maximalstrom
attr lapp obj-h108-set 1
Aber leider liefert auch dies keine readings.
Kann man irgendwie sehen das der Wechselrichter überhaupt etwas auf dem Modbus sendet?
Hallo Zwiebel,
ein Modbus-Slave kann nur auf Anfragen eines Masters reagieren, er kann selbst keine Werte abfragen. Wenn Dein "Charge-Conroller" bereits der Master ist, dann hast Du wenig Chancen hier etwas zu setzen, denn es darf am Bus nur einen Master geben.
Welche Komponenten hängen denn an Deinem Bus? Was ist das für ein "Charge-Controller"?
Gruss
Stefan
Hallo Stefan,
an dem BUS hängen die Wallbox und FHEM (usb/Modbus Adapter /dev/tty0603@38400).
Zusätzlich hab ich noch ein usb Modbus Adapter (/dev/tty0602@9600) der einen SDM72D ausliest. Das funktioniert ohne Problem und sollte unabhängig von dem Wallbox Problem sein.
Du hast recht was ist denn genau der "Charge-Conroller"? Die Wallbox selber oder doch noch ein Zusatzgerät?
Hier der Anschlussplan:
Anschlussplan.jpg
Die Wallbox wurde durch die KFW gefördert...da sollte sie doch etwas smart sein, und zumindest den Ladestrom einstellen lassen. Aber wenn die Wallbox wirklich der Master ist sehe ich das als nicht möglich.
VG
Zwiebel
Auf dem Bild sieht es so aus, als ob ein zusätzliches Leistungsmessmodul als Slave an der Wallbox hängen kann, folglich muss die Wallbox der Master sein.
Dann kann man vermutlich einen Slave mit ID 240 dranhängen, der von der Wallbox alle 250ms abgefragt wird um die angegebenen Werte vom Slave zu lesen.
Ob das was bringt ist aber fraglich ...
Zum verifizieren dieser Theorie kannst Du z.B. mal passiv auf dem Bus mitlesen und schauen ob da Anfragen kommen. Mit Fhem als Slave und verbose 5 müsstest Du dann Requests vom Master im Log sehen.
Gruss
Stefan
Hast du mal mit dem Client von simplymodbus.ca probiert?