NEWS
[Problem] Modbus Solarlog TCP geht irgendwie nicht
-
Hallo zusammen,
versuche jetzt schon länger den Modbus vom Solarlog auszulesen. Ich bekomme nichts zurück und weiß nicht warum
Ich binde hier mal ein, wie das gehen soll und wie es bei mir aussieht. Wäre super wenn mir da jemand helfen könnte. DANKE!!!
Das steht im Solarlog Handbuch:
` > Modbus TCP-Port:• 502
Mindestens erforderliche Firmware des Solar-Log
:
• 2.8.1 Build 49
Slave ID:
• 1
Umgesetzte Modbus Funktionen:
• 04: Ein oder mehrere 16-Bit Worte lesen
• 06: Ein oder mehrere 16-Bit Worte schreiben
• 16: Mehrere 16-Bit Worte schreiben
Die Solar-Log Modbus Implementierung verwendet unterschiedliche Byte- und Wort-Reihenfolgen. Die
Modbus Protokoll Byte-Reihenfolge folgt der Big-Endian Modbus Spezifikation und ist somit kompatibel zu
Standard Modbus Implementierungen. Es wird also das höherwertige Byte zuerst übertragen.
Die herstellerspezifische Registerreihenfolge für 32-Bit Werte ist Little-Endian. Für einen 32-Bit Wert wird
das niederwertige Wort im ersten Register und das höherwertige Wort im zweiten Register abgelegt. `
Im Anhang sind meine Einstellungen im iobroker
1469_parameter.jpg
1469_solarlog.jpg
1469_register.jpg
1469_objekte.jpg -
Setz mal die Ausgabe der Modbus-Instanz auf "debug"
Dass geht im Expertenmodus auf dem Reiter instanzen.
Dann poste mal noch etwas log für uns…
Ausserdem würde uns interessieren, welche Version des Adaptes Du installiert hast?
-
Hi,
Also ich hab die aktuellste ModBus Adapter Version 0.5.0 installiert.
Experteneinstellung habe ich gesetzt, finde aber nichts, wo ich auf debugen schalten kann.
Log passt:
` > modbus.0 2017-03-05 20:22:27.164 info Connected to slave 192.168.178.21modbus.0 2017-03-05 20:22:26.501 info starting. Version 0.5.0 in /opt/iobroker/node_modules/iobroker.modbus, node: v4.7.0
host.iobroker-pi2 2017-03-05 20:22:23.184 info instance system.adapter.modbus.0 started with pid 5740 `
Ich checks nicht - Verbindung wird so wie es sich mir darstellt - einwandfrei hergestellt (grüne Lampe in der Instanz) aber in Objekte taucht kein Ordner mit "Inputregisters" mit Werte auf. Bei einem anderen Post habe ich gesehen, wie das ungefähr aussieht (siehe Anlage)
1469_aufnahme2.png -
Hab unter Reiter Ereignisse mal nachgesehen. Er scheint den Wert aber auszulesen! Aber nicht in Reiter "Objekte" abzulegen
` > stateChange system.adapter.modbus.0.uptime 604 true modbus.0 2017-03-05 20:32:27.038 2017-03-05 20:32:27.038
stateChange system.adapter.modbus.0.memHeapUsed 12.34 true modbus.0 2017-03-05 20:32:27.033 2017-03-05 20:32:27.033
stateChange system.adapter.modbus.0.memHeapTotal 19.22 true modbus.0 2017-03-05 20:32:27.025 2017-03-05 20:31:12.005
stateChange system.adapter.modbus.0.memRss 36.21 true modbus.0 2017-03-05 20:32:27.023 2017-03-05 20:32:27.023
stateChange system.adapter.modbus.0.connected true true modbus.0 2017-03-05 20:32:27.020 2017-03-05 20:22:26.762
stateChange system.adapter.modbus.0.alive true true modbus.0 2017-03-05 20:32:27.011 2017-03-05 20:22:26.754
stateChange system.adapter.modbus.0.uptime 589 true modbus.0 2017-03-05 20:32:12.023 2017-03-05 20:32:12.023
stateChange system.adapter.modbus.0.memHeapUsed 11.78 true modbus.0 2017-03-05 20:32:12.019 2017-03-05 20:32:12.019
stateChange system.adapter.modbus.0.memHeapTotal 19.22 true modbus.0 2017-03-05 20:32:12.012 2017-03-05 20:31:12.005
stateChange system.adapter.modbus.0.memRss 35.71 true modbus.0 2017-03-05 20:32:12.010 2017-03-05 20:32:12.010
stateChange system.adapter.modbus.0.connected true true modbus.0 2017-03-05 20:32:12.007 2017-03-05 20:22:26.762
stateChange system.adapter.modbus.0.alive true true modbus.0 2017-03-05 20:32:11.998 2017-03-05 20:22:26.754
stateChange modbus.0.inputRegisters.3518_PV_Verbrauch 37633 true modbus.0 2017-03-05 20:32:00.157 2017-03-05 20:32:00.157
stateChange system.adapter.modbus.0.uptime 574 true modbus.0 2017-03-05 20:31:57.013 2017-03-05 20:31:57.013
stateChange system.adapter.modbus.0.memHeapUsed 11.85 true modbus.0 2017-03-05 20:31:57.009 2017-03-05 20:31:57.009
stateChange system.adapter.modbus.0.memHeapTotal 19.22 true modbus.0 2017-03-05 20:31:57.002 2017-03-05 20:31:12.005
stateChange system.adapter.modbus.0.memRss 35.76 true modbus.0 2017-03-05 20:31:57.001 2017-03-05 20:31:57.001
stateChange system.adapter.modbus.0.connected true true modbus.0 2017-03-05 20:31:56.998 2017-03-05 20:22:26.762
stateChange system.adapter.modbus.0.alive true true modbus.0 2017-03-05 20:31:56.989 2017-03-05 20:22:26.754
stateChange system.adapter.modbus.0.uptime 559 true modbus.0 2017-03-05 20:31:42.003 2017-03-05 20:31:42.003
stateChange system.adapter.modbus.0.memHeapUsed 11.36 true modbus.0 2017-03-05 20:31:42.002 2017-03-05 20:31:42.002
stateChange system.adapter.modbus.0.memHeapTotal 19.22 true modbus.0 2017-03-05 20:31:42.001 2017-03-05 20:31:12.005
stateChange system.adapter.modbus.0.memRss 35.25 true modbus.0 2017-03-05 20:31:41.998 2017-03-05 20:31:41.998
stateChange system.adapter.modbus.0.connected true true modbus.0 2017-03-05 20:31:41.990 2017-03-05 20:22:26.762
stateChange system.adapter.modbus.0.alive true true modbus.0 2017-03-05 20:31:41.980 2017-03-05 20:22:26.754
stateChange system.adapter.modbus.0.uptime 544 true modbus.0 2017-03-05 20:31:26.989 2017-03-05 20:31:26.989
stateChange system.adapter.modbus.0.memHeapUsed 11.45 true modbus.0 2017-03-05 20:31:26.987 2017-03-05 20:31:26.987
stateChange system.adapter.modbus.0.memHeapTotal 19.22 true modbus.0 2017-03-05 20:31:26.984 2017-03-05 20:31:12.005
stateChange system.adapter.modbus.0.memRss 35.42 true modbus.0 2017-03-05 20:31:26.976 2017-03-05 20:31:26.976
stateChange system.adapter.modbus.0.connected true true modbus.0 2017-03-05 20:31:26.969 2017-03-05 20:22:26.762 `
-
Das Register PAC 3502 scheint er gar nicht auszulesen fehlt in den Ereignissen
-
Das Problem, dass er keine States in den Objekten anlegt habe ich heute auch bemerkt und unter Jira gemeldet.
-
Also - nach studieren der Ergebnisse Habe ich den Typ auf "Unsigned 32bit Big Endian Word Swap" gestellt. Jetzt stimmt der in Ereignisse angezeigte Wert auch mit dem des Solarlog überein. Aber unter Objekte wird immer noch nichts angezeigt. Bei Ereignisse fehlt immer noch der PAC Wert von Register 3502
Liegt es vielleicht am Adapter?
@Marcolotti - aus deiner Antwort schließe ich auch, dass du der Meinung bist, das es am Adapter liegt richtig? Oder was meinst du unter Jira gemeldet?
-
Das hat mal funktioniert. Ich war glaube ich war einer der ersten, der den ModBus Adapter genutzt hat. Jira -> http://www.iobroker.net/?page_id=2926&lang=de
Heute morgen wollte ich nämlich noch ein paar Werte mehr aus dem Wechselrichter erhaschen und habe den Fehler dabei bemerkt. Wenn ihr die Objekte von Hand unter Objekte anlegt funktioniert es auch.
Syntax: Adresse_Name (Leerzeichen bitte mit Unterstrich ersetzen)
Gruß Marco
-
Blöde Frage: was passiert denn wenn Du den adapter neu startest? Swoeit ich mich erinnere werden neue Objekte bei der ersten Nutzung bzw zu Beginn angelegt … versuch mal
-
Blöde Frage: was passiert denn wenn Du den adapter neu startest? Swoeit ich mich erinnere werden neue Objekte bei der ersten Nutzung bzw zu Beginn angelegt … versuch mal
`
Der Adpater startet nach jeder gespeicherten Änderung immer neu - habs aber noch mal probiert - brachte nixHeute morgen wollte ich nämlich noch ein paar Werte mehr aus dem Wechselrichter erhaschen und habe den Fehler dabei bemerkt. Wenn ihr die Objekte von Hand unter Objekte anlegt funktioniert es auch.
Syntax: Adresse_Name (Leerzeichen bitte mit Unterstrich ersetzen) `
Danke !!! Geht!!! So kann ich die Objekte zumindest per Hand anlegen! -
Poste mal bitte die Instanz-Konfiguration (Objekte -> "instanz" als Typ und dann af den Bleibstift bei der Instanznummer und dort das was unter "row (expert only" steht. Und dann die Infos bitte nochmal dazu welcher DP nicht gefüllt wird.
Dazu bitte mal vom Github aktualisieren … ich habe mal bei allen "setState" debug-Log eingebaut bei Fehlern. Kommt da was wenn ein Wert kommt aber nicht aktualisiert wird?
-
Hallo Apollon,
ich habe mal über Git aktualisiert und 30803 - Grid Frequency angelegt.
Hier erscheint Grid Frequency nur einmal.
Unter Objekte legt er aber ein Objekt mit Discrete Input an. Sowas hab ich aber garnicht.
Das eigentliche wird nicht angelegt.
-
Drück unter "Objekte" man den Reload-Knopf. Gefühlt fehlen da aktualisierungen … Was kommt dann noch an Objekten?
-
Aktualisieren bringt da nichts. Hatte ich schon versucht.
-
So wie es aussieht, versucht er das neue Objekt unter DiscreteInputs anlegen zu wollen und nicht unter InputRegisters. Da wird im Code einfach der falsche Pfad genommen, Index oder wie auch immer.
-
PS: Hast Du dnach dem Github-Update auch wirklich ne Restart gemacht? Das passiert bei Github-Updates manachmla nicht. Starte also bitte zusätzlich nochmal neu. Danke
-
Und poste bitte mal die Adapter-Konfig als Objekt (wie vorhin beschrieben) das ich das mal auf der Datenebene sehen kann
-
Es könnte sein, dass da zwei Probleme zusammenspielen.
Anlegen der Objekte 1) aber das Diskrete-Problem von @Marcolotti könnte mit den Aliasen zusammenhängen. Das ist bei @tomweb nicht der Fall.
-
Nach Neustart unverändert.
modbus.0 2017-03-06 13:12:41.457 debug inMem message modbus.0.* modbus.0.info.pollTime val=312, ack=true, ts=1488802361413, q=0, from=system.adapter.modbus.0, lc=1488802361413 modbus.0 2017-03-06 13:12:41.451 debug inMem message modbus.0.* modbus.0.inputRegisters.30975_Intermediate_circuit voltage val=343.03, ack=true, ts=1488802361410, q=0, from=system.adapter.modbus.0, lc=1488802361410 modbus.0 2017-03-06 13:12:41.447 debug inMem message modbus.0.* modbus.0.inputRegisters.30867_Einspeisung val=74, ack=true, ts=1488802361408, q=0, from=system.adapter.modbus.0, lc=1488802361408 modbus.0 2017-03-06 13:12:41.426 debug inMem message modbus.0.* modbus.0.inputRegisters.30783_ACSpannung val=239, ack=true, ts=1488802361405, q=0, from=system.adapter.modbus.0, lc=1488802361405 modbus.0 2017-03-06 13:12:41.420 debug inMem message modbus.0.* modbus.0.inputRegisters.30775_PVLeistung val=514, ack=true, ts=1488802361401, q=0, from=system.adapter.modbus.0, lc=1488802361401 modbus.0 2017-03-06 13:12:41.397 debug inMem message modbus.0.* modbus.0.inputRegisters.30773_Power_DC val=543, ack=true, ts=1488802361391, q=0, from=system.adapter.modbus.0, lc=1488802361391 modbus.0 2017-03-06 13:12:39.995 debug inMem message modbus.0.* modbus.0.inputRegisters.34113_Temperatur val=30.9, ack=true, ts=1488802359974, q=0, from=system.adapter.modbus.0, lc=1488802359974 modbus.0 2017-03-06 13:12:39.987 debug inMem message modbus.0.* modbus.0.inputRegisters.30975_Intermediate_circuit voltage val=343.05, ack=true, ts=1488802359969, q=0, from=system.adapter.modbus.0, lc=1488802359969 modbus.0 2017-03-06 13:12:39.965 debug inMem message modbus.0.* modbus.0.inputRegisters.30867_Einspeisung val=93, ack=true, ts=1488802359960, q=0, from=system.adapter.modbus.0, lc=1488802359960 modbus.0 2017-03-06 13:12:39.845 debug inMem message modbus.0.* modbus.0.inputRegisters.30783_ACSpannung val=238.94, ack=true, ts=1488802359840, q=0, from=system.adapter.modbus.0, lc=1488802359840 modbus.0 2017-03-06 13:12:39.822 debug inMem message modbus.0.* modbus.0.inputRegisters.30775_PVLeistung val=512, ack=true, ts=1488802359811, q=0, from=system.adapter.modbus.0, lc=1488802359811 modbus.0 2017-03-06 13:12:39.782 debug inMem message modbus.0.* modbus.0.inputRegisters.30773_Power_DC val=542, ack=true, ts=1488802359771, q=0, from=system.adapter.modbus.0, lc=1488802359771 modbus.0 2017-03-06 13:12:39.744 debug inMem message modbus.0.* modbus.0.inputRegisters.30771_Voltage_DC val=318.33, ack=true, ts=1488802359731, q=0, from=system.adapter.modbus.0, lc=1488802359731 modbus.0 2017-03-06 13:12:38.586 debug inMem message modbus.0.* modbus.0.inputRegisters.30975_Intermediate_circuit voltage val=343.07, ack=true, ts=1488802358581, q=0, from=system.adapter.modbus.0, lc=1488802358581 modbus.0 2017-03-06 13:12:38.539 debug inMem message modbus.0.* modbus.0.inputRegisters.30867_Einspeisung val=70, ack=true, ts=1488802358528, q=0, from=system.adapter.modbus.0, lc=1488802358528 modbus.0 2017-03-06 13:12:38.456 debug inMem message modbus.0.* modbus.0.inputRegisters.30783_ACSpannung val=238.96, ack=true, ts=1488802358447, q=0, from=system.adapter.modbus.0, lc=1488802358447 modbus.0 2017-03-06 13:12:38.369 debug inMem message modbus.0.* modbus.0.inputRegisters.30771_Voltage_DC val=316.02, ack=true, ts=1488802358360, q=0, from=system.adapter.modbus.0, lc=1488802358360 modbus.0 2017-03-06 13:12:37.273 debug inMem message modbus.0.* modbus.0.inputRegisters.30867_Einspeisung val=72, ack=true, ts=1488802357269, q=0, from=system.adapter.modbus.0, lc=1488802357269 modbus.0 2017-03-06 13:12:37.169 debug inMem message modbus.0.* modbus.0.inputRegisters.30783_ACSpannung val=238.9, ack=true, ts=1488802357149, q=0, from=system.adapter.modbus.0, lc=1488802357149 modbus.0 2017-03-06 13:12:37.162 debug inMem message modbus.0.* modbus.0.inputRegisters.30775_PVLeistung val=511, ack=true, ts=1488802357145, q=0, from=system.adapter.modbus.0, lc=1488802357145 modbus.0 2017-03-06 13:12:37.140 debug inMem message modbus.0.* modbus.0.inputRegisters.30773_Power_DC val=537, ack=true, ts=1488802357133, q=0, from=system.adapter.modbus.0, lc=1488802357133 modbus.0 2017-03-06 13:12:37.041 debug inMem message modbus.0.* modbus.0.inputRegisters.30771_Voltage_DC val=314.54, ack=true, ts=1488802357036, q=0, from=system.adapter.modbus.0, lc=1488802357036 modbus.0 2017-03-06 13:12:35.906 debug inMem message modbus.0.* modbus.0.inputRegisters.30975_Intermediate_circuit voltage val=342.96, ack=true, ts=1488802355895, q=0, from=system.adapter.modbus.0, lc=1488802355895 modbus.0 2017-03-06 13:12:35.873 debug inMem message modbus.0.* modbus.0.inputRegisters.30867_Einspeisung val=88, ack=true, ts=1488802355869, q=0, from=system.adapter.modbus.0, lc=1488802355869 modbus.0 2017-03-06 13:12:35.796 debug inMem message modbus.0.* modbus.0.inputRegisters.30775_PVLeistung val=508, ack=true, ts=1488802355787, q=0, from=system.adapter.modbus.0, lc=1488802355787 modbus.0 2017-03-06 13:12:35.741 debug inMem message modbus.0.* modbus.0.inputRegisters.30773_Power_DC val=535, ack=true, ts=1488802355731, q=0, from=system.adapter.modbus.0, lc=1488802355731 modbus.0 2017-03-06 13:12:35.718 debug inMem message modbus.0.* modbus.0.inputRegisters.30771_Voltage_DC val=316.83, ack=true, ts=1488802355708, q=0, from=system.adapter.modbus.0, lc=1488802355708 modbus.0 2017-03-06 13:12:34.599 debug inMem message modbus.0.* modbus.0.info.pollTime val=416, ack=true, ts=1488802354587, q=0, from=system.adapter.modbus.0, lc=1488802354587 modbus.0 2017-03-06 13:12:34.563 debug inMem message modbus.0.* modbus.0.inputRegisters.30975_Intermediate_circuit voltage val=342.9, ack=true, ts=1488802354547, q=0, from=system.adapter.modbus.0, lc=1488802354547 modbus.0 2017-03-06 13:12:34.531 debug inMem message modbus.0.* modbus.0.inputRegisters.30867_Einspeisung val=73, ack=true, ts=1488802354524, q=0, from=system.adapter.modbus.0, lc=1488802354524 modbus.0 2017-03-06 13:12:34.412 debug inMem message modbus.0.* modbus.0.inputRegisters.30783_ACSpannung val=238.96, ack=true, ts=1488802354406, q=0, from=system.adapter.modbus.0, lc=1488802354406 modbus.0 2017-03-06 13:12:34.376 debug inMem message modbus.0.* modbus.0.inputRegisters.30775_PVLeistung val=506, ack=true, ts=1488802354364, q=0, from=system.adapter.modbus.0, lc=1488802354364 modbus.0 2017-03-06 13:12:34.340 debug inMem message modbus.0.* modbus.0.inputRegisters.30773_Power_DC val=534, ack=true, ts=1488802354320, q=0, from=system.adapter.modbus.0, lc=1488802354320 modbus.0 2017-03-06 13:12:33.201 debug inMem message modbus.0.* modbus.0.info.pollTime val=308, ack=true, ts=1488802353195, q=0, from=system.adapter.modbus.0, lc=1488802353195 modbus.0 2017-03-06 13:12:33.169 debug inMem message modbus.0.* modbus.0.inputRegisters.30975_Intermediate_circuit voltage val=342.82, ack=true, ts=1488802353162, q=0, from=system.adapter.modbus.0, lc=1488802353162 modbus.0 2017-03-06 13:12:33.148 debug inMem message modbus.0.* modbus.0.inputRegisters.30867_Einspeisung val=59, ack=true, ts=1488802353136, q=0, from=system.adapter.modbus.0, lc=1488802353136 modbus.0 2017-03-06 13:12:33.104 debug inMem message modbus.0.* modbus.0.inputRegisters.30865_Bezug val=0, ack=true, ts=1488802353095, q=0, from=system.adapter.modbus.0, lc=1488802353095 modbus.0 2017-03-06 13:12:33.076 debug inMem message modbus.0.* modbus.0.inputRegisters.30783_ACSpannung val=238.97, ack=true, ts=1488802353070, q=0, from=system.adapter.modbus.0, lc=1488802353070 modbus.0 2017-03-06 13:12:33.034 debug inMem message modbus.0.* modbus.0.inputRegisters.30775_PVLeistung val=504, ack=true, ts=1488802353029, q=0, from=system.adapter.modbus.0, lc=1488802353029 modbus.0 2017-03-06 13:12:33.005 debug inMem message modbus.0.* modbus.0.inputRegisters.30773_Power_DC val=533, ack=true, ts=1488802352999, q=0, from=system.adapter.modbus.0, lc=1488802352999 modbus.0 2017-03-06 13:12:32.974 debug inMem message modbus.0.* modbus.0.inputRegisters.30771_Voltage_DC val=318.33, ack=true, ts=1488802352959, q=0, from=system.adapter.modbus.0, lc=1488802352959 modbus.0 2017-03-06 13:12:31.842 debug inMem message modbus.0.* modbus.0.inputRegisters.30975_Intermediate_circuit voltage val=342.9, ack=true, ts=1488802351837, q=0, from=system.adapter.modbus.0, lc=1488802351837 modbus.0 2017-03-06 13:12:31.809 debug inMem message modbus.0.* modbus.0.inputRegisters.30865_Bezug val=130, ack=true, ts=1488802351804, q=0, from=system.adapter.modbus.0, lc=1488802351804 modbus.0 2017-03-06 13:12:31.768 debug inMem message modbus.0.* modbus.0.inputRegisters.30783_ACSpannung val=238.9, ack=true, ts=1488802351764, q=0, from=system.adapter.modbus.0, lc=1488802351764 modbus.0 2017-03-06 13:12:31.748 debug inMem message modbus.0.* modbus.0.inputRegisters.30775_PVLeistung val=500, ack=true, ts=1488802351743, q=0, from=system.adapter.modbus.0, lc=1488802351743 modbus.0 2017-03-06 13:12:31.724 debug inMem message modbus.0.* modbus.0.inputRegisters.30773_Power_DC val=530, ack=true, ts=1488802351718, q=0, from=system.adapter.modbus.0, lc=1488802351718 modbus.0 2017-03-06 13:12:31.713 debug inMem message modbus.0.* modbus.0.inputRegisters.30771_Voltage_DC val=322.11, ack=true, ts=1488802351705, q=0, from=system.adapter.modbus.0, lc=1488802351705 modbus.0 2017-03-06 13:12:31.594 debug sendTo "listUart" to system.adapter.admin.0 from system.adapter.modbus.0 modbus.0 2017-03-06 13:12:31.588 info List of port: [{"comName":"/dev/ttyAMA0"},{"comName":"/dev/ttyUSB0","manufacturer":"1a86","serialNumber":"1a86_USB2.0-Serial","pnpId":"usb-1a86_USB2.0-Serial-if00-port0","vendorId":"0x1a86","productI modbus.0 2017-03-06 13:12:31.376 debug inMem message messagebox.system.adapter.modbus.0 messagebox.system.adapter.modbus.0 command=listUart, message=null, from=system.adapter.admin.0, message=null, id=3, ack=false, time=1488802351316, _i
-
Ich vermisse da die 30803 aber in dem log. Wieder rausgenommen?