TIA TIA15.1 - S71200 Janitza Modbus Kommunikation

D4K!ZZ4

Level-2
Beiträge
149
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Gemeinde,

ich dokter jetzt schon Tage an der Kommunikation meines Janitza UMG806 und meiner S71214 mit CB1241 herum.

Einige Artikel im Forum haben mir auch schon weitergeholfen aber es fehlt immer noch das letzte das bisschen das es funktioniert.

Hab die Kommunikaation auch schon mal mit einem RS485 USB Wandler und dem Janitza Modbustool getestet. Hier bekomme ich werte.

Mein Data Buff DB bleibt aber leer. Mittlerweile bekomme ich zumindest keinen error mehr. Aber wie gesagt das letzte quant fehlt noch.

Hier mal Fotos meines Programms.

Vielen Dank schon mal im Vor aus.

Aufnahme3.jpg

Aufnahme4.jpg

Aufnahme5.jpg
 
Die Janitza.de-Webseite ist bei mir gerade nicht erreichbar um die technischen Details des UMG806 anzusehen. Du hast eine RS485-Verbindung zwischen Deiner S7-1200 und dem UMG806? Ist die Baudrate, Paritätsbits und MB-Geräteadresse richtig eingestellt, auch am UMG806? Vertausche mal versuchsweise die beiden Drähte an A und B der RS485 des UMG806. Ist an dem UMG806 auch ein Busabschlußwiderstand gesetzt oder eingeschaltet?

Harald
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

vielen dank für deine schnelle Antwort.

Verdrahtung sollte passen, Widerstand am UMG ist auch drin.

Bin aktuell auf den Modbus Slave Simulator ausgewichen um den UMG auszuschließen.

Hier bekomme ich auch eine kommunikation angezeigt, der MB_Master Baustein hat aktuell auch keine Fehler mehr.

Es werden allerdings die Werte nicht in den Buffer gschrieben.

Aufnahme6.jpg
 
Zuletzt bearbeitet:
Wurde MB_COMM_LOAD wenigstens einmal ausgeführt? Die Anweisung benötigt laut TIA-Hilfe eine steigende Flanke an REQ. Wenn da FirstScan angeschaltet ist, dann erkennt die Anweisung möglicherweise die steigende Flanke nicht. Nimm da testweise ein Bit was erst/nur im zweiten OB1-Durchlauf TRUE ist (oder testweise eine BOOL-Variable, die Du per Beobachtungstabelle steuerst).
(PS: ich sehe gerade in der TIA-Hilfe, daß das Siemens-Beispiel FirstScan verwendet - geht also anscheinend)
Wieso ist in Deinem Bild der Ausgang DONE TRUE? Das sollte nur einen Zyklus lang TRUE sein - hast Du tatsächlich genau dann den Screenshot gemacht??

Tipp: bei FUP braucht der EN-Eingang nicht beschaltet werden, wenn die Anweisung immer ausgeführt werden soll.


MB_MASTER DATA_ADDR 419000 - probiere mal 419001 (gewünschte Registernummer + 400001)
Liefert MB_MASTER einen Error-STATUS? Welchen Wert? (den Wert kopieren bei ERROR = TRUE)


Ist im UMG806 Parameter 200 die Geräteadresse 17 eingestellt?
UMG806 Parameter
200 = 17 // Geräteadresse
201 = 3 // 9600
202 = 0 // Parität keine, 1 Stop
203 = 0 // Modbus RTU Slave

Flackern am CB1241 die TxD- und RxD-LEDs entsprechend MB_MASTER.REQ?

Harald
 
Zuletzt bearbeitet:
Guten Morgen Harald,

MB_Commload ist meiner Erinnerung nach die ganze Zeit auf Done.

Die Variablen FirstScan und Req habe ich auch schon gesteuert getestet um mehr Kontrolle über die Ausführung zu haben..

Der beschaltete EN Eingang ist ein Versuch meiner Verzweiflung gewesen. :D

Alles außerhalb des Data_Adress Bereichs verursacht einen Fehler. Hier habe ich schon ettliche varianten getestet.
419001 erscheint mir am sinnvollsten.

Mein Janitza hat noch das kleine Problem das er FW <V1.18 ist und die Parameter etwas anders sind. Aber Adresse konnte prüfen ist def. 17 baudrate und bits passen auch. Den Paramter der den Janitza als Slave konfiguriert gibt es bei mir noch nicht, konnte ich also nicht prüfen. *facepalm*

Wie gesagt mit dem Slave Simulator und gleichen Werten, habe ichs auch nicht hinbekommen. Ich konnte nur eine Communikation im log vom Slave Simulator aufzeichnen. Ob hier Daten flossen kann ich nicht beurteilen.

Das komische ist wenn ich an den Einstellungen bastle bekomme ich ziemlich schnell errors, bei den vermeintlichen richtigen Einstellung nur ein busy aber keinen Datentransfer.

Eins muss ich noch erwähnen mit meiner V15.1 kann ich nur CPUs bis FW4.3 programmieren. Online ist aber eine FW4.4. Hab dies mit der Warnung abgetan. Bekomme aber Montag / Dienstag das Upgrade geliefert dan werde ich das auch noch ausschließen.

Die Konfiguration des Buffers passt so oder? Nicht das es nur an der Datenablage scheitert.

Grüße Christian
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Guten Morgen nochmal,

als habs nachgeprüft grade, MB_Commload "Done" ist immer true und bleibt es auch.

Hab es hier auch mit der Flanke getestet.

RX / TX blinkt auch, allerdings nur wenn er kurz den busy Status verliert da das ganze ja mit REQ verundet ist.

Danke Grüße
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Servus zusammen,

also V16 installiert, Hardware getauscht. Keine Besserung.

Hab heute auch den neuen Janitza bekommen wo ich vollen Zugriff auf die Config habe. Werte geprüft. Keine Besserung.

Schön langsam verzweifel ich hier. :confused:
 
hier im Anhang mal was ich mitgeloggt habe.
Das sieht mir überhaupt nicht wie Modbus RTU aus (die Geräteadresse 17 = 11 hex kommt kein einziges mal darin vor, und die Bytes sind zu oft "zu groß"), sondern eher wie RS485 A und B vertauscht. Hast Du mal versuchsweise die Drähte A und B am Janitza vertauscht wie ich in meinem ersten Beitrag #2 schon empfohlen hatte?

PS: und/oder Dein Sniffer-Adapter war falsch'rum angeschlossen

PPS: Um vom Gerät 17 10 Register ab 19000 zu lesen, müsste der Modbus-Master diese Bytefolge auf den RS485 senden (alles hexadezimal 16#..):
Code:
11 03 4A 38 00 0A 52 B2
Nur dann antwortet der Modbus Slave

Harald
 
Zuletzt bearbeitet:
Guten Abend,

gut das man die schamröte nicht übers Forum sehen kann.
Den Punkt habe ich tatsächlich überlesen, das war aber genau das Zünglein an der Waage. :sm5:

Funktionierte nun auf Anhieb. Deine Signatur passt ja treffend :D

Vielen Dank auf jeden Fall für die Hilfe.

Grüße Christian
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Schön daß es nun läuft :D

Wenn man RS485-Schnittstellen verschiedener Hersteller verbindet, dann kann es immer wieder vorkommen, daß man A und B tauschen muß, egal wie die Anschlüsse beschriftet sind, weil es leider keine einheitliche Handhabung der Bezeichnungen A und B gibt. Manche Hersteller/Elektronikentwickler übernehmen kurzentschlossen die Bezeichnungen vom Standard-Treiber-IC (z.B. TI SN65HVD1176) und manche verwenden die Bezeichnungen wie die Normen ANSI/TIA/EIA-485-A und Profibus. Manche Hersteller gehen der A/B-Verwirrung auch aus dem Weg, indem sie RX/TX+ und Rx/Tx-, oder RxD/TxD-P und RxD/TxD-N, oder D+ und D-, oder D1 und D0, oder einfach + oder und - dranschreiben. In den meisten/verbreitetsten Fällen ist B die positive und A die negative Signalleitung.

Besonders bei Schwierigkeiten im Zusammenhang mit der Installation neuer Geräte sollte jede Fehlersuche mit der Überprüfung/Testung der Buspolarität begonnen werden.

Harald
 
Guten Morgen,

alles klar, auf das hätte ich ja nie gedacht.

Optisch habe ich die Leitung glaube ich 15 mal geprüft.

Sogar die Leitung getauscht.

Aber naja, wieder was gelernt :D

Vielen Dank
 
Zurück
Oben