NEWS
Modbus adapter
-
@mmw:Hallo Bluefox,
bin neu hier und habe eine Wago-SPS.
Nach ein bisschen Tüfteln hab ich ioBroker und die Wago am laufen.
iobroker find ich super!
Nur bei den Strings passt es noch nicht zusammen:
Wago : ABCDEFGHIJKLMNOPQRSTUVWXYZ
ioBroker : BADCFEHGJILKNMPORQTSVUXWZY
Ich denke dass hier auch Bytes getauscht werden müssen.
Irgendeinen Tipp?
Viele Grüße
Markus `
Es gibt neue Version 1.0.3. Da gibt es neues Typ "stringle". Damit sollte dein Problem gelöst sein. -
Hallo Bluefox,
Danke!
Grad upgedatet un getestet, will noch nicht so recht.
Bei StringLE bekomme als Wert nun "null" zurück, ständig grün blinkend.
Welche Infos und Hilfestellung benötigst Du?
Gruß
Markus
-
Hallo zusmmen,
vielleicht kann mir einer weiterhelfen!
Hab eine Beckhoff Steuerung CX8090 mit Modbus am laufen und mit IOBROKER verbunden, soweit alles top. Kommunikation funktioniert.
Nun möchte ich einen Arduino mit anbinden. Mit dem ich per 1-wire Temperaturen einlese und dann per Modbus an die CX8090 bereitstellen kann.
Auslesen im Arduino der 1-wire Sensoren klappt.
Nur scheitert es gearade an der Umsetzung für den Part "Modbus" im Arduino, dieser muss doch als Client laufen?
Hat mir da jemand vielleicht ein Beispiel?
Danke
-
Hallo
Habe seit heute folgendes Problem:
modbus.0 2018-03-01 20:49:57.787 info Connected to slave 192.168.2.63
modbus.0 2018-03-01 20:49:56.465 info starting. Version 1.1.0 in /opt/iobroker/node_modules/iobroker.modbus, node: v6.13.0
modbus.0 2018-03-01 20:49:56.336 debug statesDB connected
modbus.0 2018-03-01 20:49:56.215 debug objectDB connected
modbus.0 2018-03-01 20:27:21.115 warn P oll error count: 20 code: "App Timeout"
modbus.0 2018-03-01 20:27:21.100 error at Timer.listOnTimeout (timers.js:214:5)
modbus.0 2018-03-01 20:27:21.100 error at tryOnTimeout (timers.js:250:5)
modbus.0 2018-03-01 20:27:21.100 error at ontimeout (timers.js:386:11)
modbus.0 2018-03-01 20:27:21.100 error at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.modbus/main.js:2231:18)
modbus.0 2018-03-01 20:27:21.100 error at Object.pollResult (/opt/iobroker/node_modules/iobroker.modbus/main.js:2203:23)
modbus.0 2018-03-01 20:27:21.100 error Error: Reconnect did not help, restart adapter
modbus.0 2018-03-01 20:27:21.098 error uncaught exception: Reconnect did not help, restart adapter
modbus.0 2018-03-01 20:27:21.054 warn Poll error count: 19 code: "App Timeout"
modbus.0 2018-03-01 20:48:56.775 warn Poll error count: 1 code: "App Timeout"
modbus.0 2018-03-01 20:48:50.511 info Connected to slave 192.168.2.63
modbus.0 2018-03-01 20:47:55.677 warn Poll error count: 3 code: "App Timeout"
modbus.0 2018-03-01 20:47:50.464 info Disconnected from slave 192.168.2.63
modbus.0 2018-03-01 20:47:49.600 warn Poll error count: 2 code: "App Timeout"
modbus.0 2018-03-01 20:47:49.463 warn Poll error count: 1 code: {"err":"timeout"}
Der Adapter verbindet sich dann wieder und nach einer gewissen Zeit kommt dann die gezeigten Meldungen.
Es ist eine WAGO 750-880 über TCP.
Modbus Version ist 1.1.0
ioBroker.js-controller 1.23
OrangenPi Plus 2 Host und Slave BananaPi
Modbus Adapter läuft auf dem Host System.
Kann mir jemand helfen?
Thomas
-
Meine mich erinnern zu können das wir das schon mal hatten und ein restart der WAGO die Lösung war.
-
Danke für deine schnelle Antwort.
Habe heute Morgen meine WAGO neu gestartet und bis jetzt sind keine Fehler mehr aufgetreten.
Thomas
-
Hallo Leute , ich möchte von meinen ABB eQ Energiezähler B-Serie Werte aus der Mapping Tabelle in den Modbusadapter eintragen…
Hardware - Tinkerboard mit USB to serial to RS485. Verbunden mit oben genannten Energiezählern siehe Foto....
Davon habe ich 3 Stück. Für jede Phase einen. L1 hat Modbus Adresse 2 , L2 die 3 und L3 die 4. konfiguriert sind diese mit Baudrate 9600.
Soweit so klar... hoffentlich
Aber jetzt kommt meine mangelnde Kenntnis mit Modbus zum Tragen...
Wie trage ich für die 3 Meßgeräte Werte aus der Mapping Tabelle in den Modbusadapter ein?
Die Werte in der Mappingtabelle sind in hex...Iobroker scheint aber dezimal zu wollen...
Vlt kann mir jemand nur mal für einen Wert aus meiner Mappingtabelle erklären wie ich das für jeweils ein Meßgerät mit z.B dem Wert für KW/h in Hex 5000 ( Dezimal 20480 ) in den IOBroker eintrage...Ich denke dann komme ich klar...
Alias benutzen habe ich nicht selektieret. Die Werte sind sicher unter dem Reiter Holding Register einzutragen...Aber bei Werten um die 20480 bekomme ich nur Fehlermeldungen im Log: invalid holding register adress...
ost.tinkerboard 2018-04-30 02:15:25.795 info instance system.adapter.modbus.0 terminated with code 0 (OK) email.0 2018-04-30 02:15:25.782 info Send email: {"text":"System Adapter meldet Probleme modbus.0.alive","from":"unitybox.de","to":"unitybox.de","subject":"ioBroker"} modbus.0 2018-04-30 02:15:25.768 info terminating host.tinkerboard 2018-04-30 02:15:25.748 info stopInstance system.adapter.modbus.0 killing pid 11926 host.tinkerboard 2018-04-30 02:15:25.748 info stopInstance system.adapter.modbus.0 host.tinkerboard 2018-04-30 02:15:25.747 info object change system.adapter.modbus.0 modbus.0 2018-04-30 02:11:35.063 info List of port: [{"comName":"/dev/ttyS0"},{"comName":"/dev/ttyS3"},{"comName":"/dev/ttyS1"},{"manufacturer":"FTDI","serialNumber":"A600LNZO","pnpId":"usb-FTDI_FT232R_USB_UART_A600LNZO-if00-port0","vend modbus.0 2018-04-30 02:11:23.550 info Connected to slave modbus.0 2018-04-30 02:11:23.322 error Invalid holding register address: -16705
-
3 Einzelne Zähler erfordern Aktuell leider auch drei installierte Instanzen und ich befürchte deshalb auch 3 USB-RS485 Adapter.
Poste mal ein Screenshot deiner Einstellungen.
-
3 Einzelne Zähler erfordern Aktuell leider auch drei installierte Instanzen und ich befürchte deshalb auch 3 USB-RS485 Adapter. `
Bist Du dir da sicher?Der Modbus ist doch ein Bussystem und jeder Zähler erhält doch eine eigene Adresse über den man ihn ansprechen kann. Also bei TCP/IP ist dies so.
Vielleicht habe ich auch nur etwas falsch verstanden. :?:
-
Da du aktuell nur eine Geräte Adresse im Adapter eintragen kannst bin ich mir ziemlich sicher.
Wenn der Adapter mehrere Geräte Adressen/ID‘s unterstützen würde, dann würde einer reichen.
Ich glaube auch nicht das du mit drei Instanzen zeitgleich auf einen COM/USB Port zugreifen kannst.
-
Hallo Wendy,
Das mit der einen adresse habe ich gemerkt, das ist worüber ich als erstes gestolpert bin…aber 3 usb Adapter für jedes gerät einen wäre doch echt schade oder? 3 instanzen wären ok...das hätte ich mir auch so gedacht....werde das am mittwoch ausprobieren..noch fehlen mir die busabschluss widerstände..bekomme ich mittwoch wenn ich wieder in der firma bin...poste dann auch die einstellungen..ach ja c bzw. Den ground habe ich auch angeschlossen...ist auf dem foto noch nicht geschehen...
Dann habe ich aber immer boch das thema mit den hex werten..
kann zu den modbus teilnehmer adressen jemand licht ins dunkle bringen? Hat jemand mehr wie ein gerät eingebunden?
-
Dann habe ich aber immer boch das thema mit den hex werten.. `
HEX Werte müssen in Dezimal umgerechnet werden. Dann muss für die richtige Funktion :
A) der richtige Port gewählt werden
B) die Einstellungen Geschwindigkeit, Parity, Bits etc. mit denen der/des Zählers übereinstimmen
C) Bei RS-485 der Bus abgeschlossen sein und ein vernünftiges Kabel verwendet werden.
D) zu 99% der haken bei „Nutze Aliases“ raus, danach nochmal die Registeradressen prüfen
E) Bei den Registern das richtige Format ausgewählt werden: Signed, Unsigned, Float, 16bit, 32bit …. etc.
Es ist richtig das es sich um ein BusSystem handelt, nutzt aber nichts wenn der Adapter wie bereits geschrieben nur eine Geräteadresse unterstützt.
Andere Frage, warum hast du für jede Phase einen eigenen Zähler genommen und keinen 3-Phasigen.... zum ermitteln der Leistung etc. viel einfacher.
-
> Andere Frage, warum hast du für jede Phase einen eigenen Zähler genommen und keinen 3-Phasigen…. zum ermitteln der Leistung etc. viel einfacher.
weil ich diese kostenlos bekommen habe bzw. Noch übrig waren…Des weiteren ist das erst der einstand... wollte noch weitere geräte einbinden ...
-
Gegen kostenlos ist natürlich nichts einzuwenden [emoji16]
Gesendet von iPhone mit Tapatalk Pro
-
Also du hattest natürlich recht…ich kann nicht mehrere Instanzen über einen USB Rs232-Rs485 Konverter laufen lassen. Die zusätzlichen 2 Adapter bleiben dann im Status gelb und melden:
modbus.2 2018-05-01 13:28:12.579 warn On error: {}
modbus.1 2018-05-01 13:28:12.128 warn On error: {}
Hoffe es gibt über kurz oder lang einen iobroker.modbus adapter update welcher dann auch über Serial mehrer Adressen abfragen kann...
hab das mal im Adapter Test Forum angefragt...
-
Hoffe es gibt über kurz oder lang einen iobroker.modbus adapter update welcher dann auch über Serial mehrer Adressen abfragen kann…
hab das mal im Adapter Test Forum angefragt... `
Am besten du trägst das mal als issue bei dem adapter auf Github ein :
https://github.com/ioBroker/ioBroker.modbus/issues
-
jetzige Situation
-
gewünschte Situation
-
-
Also du hattest natürlich recht…ich kann nicht mehrere Instanzen über einen USB Rs232-Rs485 Konverter laufen lassen. Die zusätzlichen 2 Adapter bleiben dann im Status gelb... `
In der Zwischenzeit könntest Du es auch mal mit Node-Red versuchen. -
Hallo Zusammen,
ich habe mich nun schon ein bisschen mit dem Thema auseinandergesetzt. Leider komme ich nicht weiter.
Ich nutze einen ioBroker-Pi und zum ansprechen meines vsm-103 Zählers eine Silicon Labs VCP USB Serial Bridge CP2102. Diese wird auch im io.Broker erkannt und als Device /dev/ttyUSB0 angezeigt.
Ich habe einen VSM-103 im Einsatz. Datenblatt hier:
https://produktinfo.conrad.com/datenbla … AEHLER.pdf
Bei Volkszähler habe ich dazu auch etwas gefunden:
https://wiki.volkszaehler.org/hardware/ … redirect=1
Nur fehlt mir der Ansatz, wie ich diese Informationen nun im ioBroker eingeben kann um das zum laufen zu bekommen…
Könnte mir hierbei jemand auf's Pferd helfen?
Hier noch ein Auszug des Logfiles:
modbus.0 2018-05-01 23:26:04.923 warn Poll error count: 3 code: "App Timeout" modbus.0 2018-05-01 23:25:59.689 info Disconnected from slave 127.0.0.1 modbus.0 2018-05-01 23:25:58.866 warn Poll error count: 2 code: "App Timeout" modbus.0 2018-05-01 23:25:58.716 warn Poll error count: 1 code: {"err":"timeout"} modbus.0 2018-05-01 23:25:58.683 warn Error: undefined modbus.0 2018-05-01 23:25:53.661 info Connected to slave modbus.0 2018-05-01 23:25:52.955 info starting. Version 1.1.1 in /opt/iobroker/node_modules/iobroker.modbus, node: v6.12.0 modbus.0 2018-05-01 23:25:52.859 info States connected to redis: 127.0.0.1:6379 modbus.0 2018-05-01 23:25:48.647 info terminating modbus.0 2018-05-01 23:15:47.352 info List of port: [{"comName":"/dev/ttyAMA0"},{"manufacturer":"Silicon Labs","serialNumber":"0001","pnpId":"usb-Silicon_Labs_CP2102_USB_to_UART_Bridge_Controller_0001-if00-port0","vendorId":"10c4","produ modbus.0 2018-05-01 23:11:47.048 info List of port: [{"comName":"/dev/ttyAMA0"},{"manufacturer":"Silicon Labs","serialNumber":"0001","pnpId":"usb-Silicon_Labs_CP2102_USB_to_UART_Bridge_Controller_0001-if00-port0","vendorId":"10c4","produ modbus.0 2018-05-01 23:08:58.026 error Reconnect did not help, restart adapter modbus.0 2018-05-01 23:08:58.025 warn Poll error count: 14 code: {"err":"timeout"} modbus.0 2018-05-01 23:08:53.017 info Connected to slave modbus.0 2018-05-01 23:07:53.011 info Disconnected from slave 127.0.0.1 modbus.0 2018-05-01 23:07:52.013 error Reconnect did not help, restart adapter modbus.0 2018-05-01 23:07:52.011 warn Poll error count: 13 code: {"err":"timeout"} modbus.0 2018-05-01 23:07:52.009 warn Error: undefined modbus.0 2018-05-01 23:07:47.001 info Connected to slave modbus.0 2018-05-01 23:06:52.187 warn Poll error count: 12 code: "App Timeout" modbus.0 2018-05-01 23:06:46.983 info Disconnected from slave 127.0.0.1 modbus.0 2018-05-01 23:06:46.174 warn Poll error count: 11 code: "App Timeout" modbus.0 2018-05-01 23:06:45.984 warn Poll error count: 10 code: {"err":"timeout"} modbus.0 2018-05-01 23:06:45.980 warn Error: undefined modbus.0 2018-05-01 23:06:40.972 info Connected to slave modbus.0 2018-05-01 23:05:46.165 warn Poll error count: 9 code: "App Timeout" modbus.0 2018-05-01 23:05:40.960 info Disconnected from slave 127.0.0.1 modbus.0 2018-05-01 23:05:40.155 warn Poll error count: 8 code: "App Timeout" modbus.0 2018-05-01 23:05:39.960 warn Poll error count: 7 code: {"err":"timeout"} modbus.0 2018-05-01 23:05:39.957 warn Error: undefined modbus.0 2018-05-01 23:05:34.953 info Connected to slave modbus.0 2018-05-01 23:04:40.147 warn Poll error count: 6 code: "App Timeout" modbus.0 2018-05-01 23:04:34.941 info Disconnected from slave 127.0.0.1 modbus.0 2018-05-01 23:04:34.130 warn Poll error count: 5 code: "App Timeout" modbus.0 2018-05-01 23:04:33.942 warn Poll error count: 4 code: {"err":"timeout"} modbus.0 2018-05-01 23:04:33.938 warn Error: undefined modbus.0 2018-05-01 23:04:28.927 info Connected to slave modbus.0 2018-05-01 23:03:34.127 warn Poll error count: 3 code: "App Timeout" modbus.0 2018-05-01 23:03:28.910 info Disconnected from slave 127.0.0.1 modbus.0 2018-05-01 23:03:28.086 warn Poll error count: 2 code: "App Timeout" modbus.0 2018-05-01 23:03:27.921 warn Poll error count: 1 code: {"err":"timeout"} modbus.0 2018-05-01 23:03:27.904 warn Error: undefined modbus.0 2018-05-01 23:03:22.884 info Connected to slave modbus.0 2018-05-01 23:03:22.168 info starting. Version 1.1.1 in /opt/iobroker/node_modules/iobroker.modbus, node: v6.12.0 modbus.0 2018-05-01 23:03:22.089 info States connected to redis: 127.0.0.1:6379
-
Hoffe es gibt über kurz oder lang einen iobroker.modbus adapter update welcher dann auch über Serial mehrer Adressen abfragen kann…
hab das mal im Adapter Test Forum angefragt... `
habe ein issue bei Github aufgemacht… `
-
Also du hattest natürlich recht…ich kann nicht mehrere Instanzen über einen USB Rs232-Rs485 Konverter laufen lassen. Die zusätzlichen 2 Adapter bleiben dann im Status gelb...
In der Zwischenzeit könntest Du es auch mal mit Node-Red versuchen.
Mit diesem Adapter habe ich mich noch nicht auseinader gesetzt…werde ich die Tage mal machen...Danke für den Hinweis....