NEWS
Modbus adapter
-
Habe gerade meinen PC wieder am laufen. Heute Abend gehen ich noch Mal an die arduino s.
Bräuchte nur noch Mal Hilfe bei den Datentyp.
Hab eigentlich immer nur 1 oder 0
Temperaturen mit einer komma stelle
Und Werte von 0-255
Habe Jetzt wieder alles in Holding regs gepackt weil die anderen irgendwie immer noch mehr Probleme gemacht haben.
Hatte auch schon den Abschluss Widerstand in Verdacht aber bei einer buslänge von 30cm und 3 Teilnehmern glaube ich nicht das das das Problem ist
Gesendet von meinem Pixel mit Tapatalk
-
Abschluss widerstand ist wichtig. Ich hatte bei meinen Tests ohne widerstand und ca. 50cm Leitung Länge auch Probleme. Dann widerstände angeklemmt und gut war es.
Gesendet von iPhone mit Tapatalk Pro
-
OK welchen hattest du wie geklemmt
Gesendet von meinem Pixel mit Tapatalk
-
OK welchen hattest du wie geklemmt
Gesendet von meinem Pixel mit Tapatalk `
Bei mir hat ein 120Ohm Widerstand jeweils am Slave und am Master zwischen den BUS Pins geholfen.
Also ohne PullUp/Down Widerstand.
-
OK ich benutze den max485 da sind die pullup/down integriert.
Jetzt muss ich nur noch 2 120er finden.
Gesendet von meinem Pixel mit Tapatalk
-
Die "Leitung" könnte auch noch Probleme machen.
Ich hatte am Anfang ganz einfache 2 adrige litze und die musste ich auch gegen "Telefon" Leitung iysty 2x2x0 6 tauschen.
Gesendet von iPhone mit Tapatalk Pro
-
Ich hab jetzt ja alles noch auf ne Platine gelötet und benutze die Kabelchen vom breadboard.
Habe aber das Gefühl das meine ersten Versuche mit einem arduino auf m breadboard besser liefen wie jetzt mit 3 slaves auf einer lochraster Platine
Gesendet von meinem Pixel mit Tapatalk
-
OK.
Ich habe das nur mit einen Zweirichtungszähler mit Modbus RS485 und einem USB/RS485 Adapter getestet.
10m Kabel dazwischen und Abschlußwiderstände.
-
So hier Mal ein Log von mir.
Denke es ist kein Abschluss Widerstand Fehler
~~![](</s><URL url=)<link_text text="https://uploads.tapatalk-cdn.com/201702 ... f9e04e.jpg">https://uploads.tapatalk-cdn.com/20170212/0b2beac26eb7a6587e1d684e00f9e04e.jpg</link_text>" />
Was muss ich eigentlich nehmen Little oder big endian
Was mache ich bei Länge rein
Gesendet von meinem Pixel mit Tapatalk~~
-
So hier Mal ein Log von mir.
Denke es ist kein Abschluss Widerstand Fehler
~~![](</s><URL url=)<link_text text="https://uploads.tapatalk-cdn.com/201702 ... f9e04e.jpg">https://uploads.tapatalk-cdn.com/20170212/0b2beac26eb7a6587e1d684e00f9e04e.jpg</link_text>" />
Was muss ich eigentlich nehmen Little oder big endian
Was mache ich bei Länge rein
Gesendet von meinem Pixel mit Tapatalk~~ ` ~~Auf dem Bild kann man leider den Text nicht erkennen bzw. lesen.
Besser als Text hier einstellen.
Little/Big Endian und Länge hängt von dem Gerät ab welches du auslesen möchtest.
Wenn es dafür eine Modbus Register Beschreibung gibt sollte das daraus hervorgehen.~~
-
https://drive.google.com/file/d/0B0rdlg … p=drivesdk
Probiere Mal den Link
Ich habe einen arduino Slave selbst gebastelt
Weiß nicht ob Little oder big
-
Bin nicht der Adapter Profi aber ist im Adapter das richtige Device mit der richtigen Baudrate eingetragen?
Und hast du einen Link zur Slave Beschreibung?
Konntest du den über mbus auslesen/ansprechen?
-
Wie gesagt, diverse Fehler werden noch nicht abgefangen, Es muss also fasst alles stimmen, dass der richtig läuft.
Ganz wichtig ist, dass die Schnittstelle UND Geräte-ID stimmen. Die gelben Fehler kommen von falschen Registern/Adressen.
Die Endian Frage kann nur durch die Doku der Gegenstelle oder pröbeln beantwortet werden. Die Adressen sind manchmal auch hmmmgrpmpffff.
Einfach mal -1 und +1 durchprobieren.
Hast Du keine Details zu verwendeten Geräten, Software Libraries … whatever.??
-
Die Register habe ich selber festgelegt. In der Doku von den libs ist nicht so viel drin. Werde Mal selbst durch die libs lesen.
Eigentlich lief es über mbusd immer aber werde es nochmals testen.
Gesendet von meinem Pixel mit Tapatalk
-
Also ich kann per qmodbus ein Register schreiben aber es kommt da eine Fehlermeldung das mit dem CRC was nicht stimmt.
Habe auch noch eine andere lib probiert aber sie will auch nicht.
Werde als nächstes Mal den Aufbau anders gestalten und Abschluss Widerstand einsetzen
Gesendet von meinem Pixel mit Tapatalk
-
So ihr werdet es nicht glauben aber es läuft.
Der Fehler war echt ein Witz.
Auf meinem USB rs485 Adapter sind 4 Jumper.
Gnd 5v a und b
Wenn ich die Jumper von gnd und 5v entfernt habe und den Slave eigenständig mit 5v versorgt habe und nur die gnd von der Klemme am Adapter verbunden habe lief das Ding mit qmodbus und auch mit iobroker.
Jetzt muss ich nur die Banane neu installieren und alles darauf testen und morgen Abend dann mit 2 oder 3 slaves in Reihe…
Ohh ich freue mich endlich ein Fortschritt.
Gesendet von meinem Pixel mit Tapatalk
-
Ich habe gestern Abend probiert 2 Instanzen mit einem seriellen Port laufen zu lassen um auf 2 Slaves auf den selben Bus zuzugreifen.
Ging natürlich nicht.
Aber ich muss sagen das rs485 sehr anfällig gegen Störung bei schlechter Verkabelung ist. Iobroker würgt dann sofort ab.
Was zum Beispiel garnicht ging ist Stromversorgung der slaves über den USB RS 485 Adapter. Musste schon eine extra Versorgung machen.
Gesendet von meinem Pixel mit Tapatalk
-
Wo ist der RS485 Adapter eingesteckt?
Die alten Pi (1&2) sind laut Internet für schwache/schlechte USB spannungsversorgung bekannt.
Ich habe an einem PI3, versorgt mit einem Apple iPad Netzteil, kein Problem.
Gesendet von iPhone mit Tapatalk Pro
-
Ne ist nicht am Pi ist am Desktop gewesen.
Habe dann extra USB Anschluss genommen und das ganze mit 5v versorgt. Und plötzlich lief es.
Was jetzt natürlich noch ober Hammer wäre wenn man mehrere ID s Anfragen könnte [emoji12]
Gesendet von meinem Pixel mit Tapatalk
-
Ne ist nicht am Pi ist am Desktop gewesen.
Habe dann extra USB Anschluss genommen und das ganze mit 5v versorgt. Und plötzlich lief es.
Was jetzt natürlich noch ober Hammer wäre wenn man mehrere ID s Anfragen könnte [emoji12]
Gesendet von meinem Pixel mit Tapatalk `
Ich habe letzten Modbus Adapter noch nicht veröffentlicht. Sind deine Tests mit der GitVersion oder StandardVersion?