Datenübertragung EL6021 an TwinCat Systemmanager

Thoras

Level-1
Beiträge
4
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo alle Miteinander

Ich versuche nun schon seit gestern eine EL6021 Klemme von Beckhoff zum Laufen zubringen, komme aber einfach nicht weiter und habe mich deswegen jetzt mal angemeldet. ;)

Das Problem sieht wie folgt aus. Ich will eine funktionstüchtige Testumgebung um ein Messinstrument erweitern. Dieses sendet einen Messwert mittels ModBus, die EL6021 soll die Verbindung zur SPS übernehmen. Es sind bereits mehrere Klemmen anderen Types vorhanden, sie funktionieren wie gesagt tadellos. Die EL-Klemme leuchtet auch Grün, daher gehe ich davon aus, dass es nicht zuviele Klemmen in einem Block sind. Nur während die anderen Klemmen direkt einen Signalwert senden, welche man im Systemmanager unter Online ablesen kann, passiert bei der 6021 gar nichts. Ich befüchrte ich habe etwas grundlegendes vergessen bzw. noch nicht verstanden um die Datenverbindung herzustellen, komme aber auch mit der Dokumentation von Beckhoff nicht weiter. Ich hoffe ihr könnt mir weiterhelfen?

Weitere Infos:
Andere Klemmen funktionieren weiterhin
Es wird TwinCat 2 verwendet
Serial Comm (TS6340) ist installiert
ModbusServer ist installiert
Die Kabel des Messinstrumentes sind an TxD+ bzw. RxD+ angeschlossen
Die Baudrate ist bei 9600 und der Halbduplex ist deaktiviert
Virual Com Port ist auch deaktiviert

Ich hoffe die Infos können euch ein ausreichend gutes Bild verschaffen, ansonsten kann ich auch gerne noch Informationen nachliefern.

Vielen Dank schonmal und Beste Grüße
Thoras
 
Äh, das die EL6021 eine RS485-Klemme und keine RS232 Klemme ist weißt Du? Soweit Dein Messgerät tatsächlich via RS485 kommuniziert und "nur" zwei Leitungen hat musst Du an der EL6021 zwischen TxD+ und RxD+ eine Brücke legen und dann ein Kabel zum nicht invertierten oder + Eingang der Schnittstelle von Deinem Messgerät legen, und das Selbe dann bei den - Leitungen genauso. Außerdem muss dann halbduplex aktiviert sein.
 
Mehr Info. Im Moment sind alle Katzen grau.

-Welches Gerät ist nun der aktive Teilnehmer (CX oder externes Gerät)?
-Was sagt die Online-Anzeige des EtherCAT-Masters
-SystemManager wäre nett (um zu schauen ob die Verknüpfungen zwischen EL und deinem Programm korrekt sind
-Ändern sich in der EL-Klemme die Control/Status Werte. Was für Werte gibt es denn.



Guga
 
Bei aktiver Kommunikation wirst Du im Sysman nur schnell wechselnde Bitwerte sehen.
Aktive Kommunikation setzt voraus, das die Verknüpfungen zum Programm vorhanden sind. Das geht erst, wenn die entsprechenden Kommunikationsbibliotheken eingebunden und ausprogrammiert sind. Den Pufferinhalt = Bytefolge siehst Du dann erst im Programm.
Im Falle, das die 6021 der Master sein soll siehst Du garnix ausser evtl. wechselnden Statusbits (Toggle) im Systemmanager.
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo

-Das es eine RS485 Klemme ist, ist mir bewusst, aber Danke für den Hinweis mit der Verkabelung oliver. Ich habe wirklich "nur" zwei Kabel welche vom Messgerät herkommen und daher die Verkabelung entsprechend umgeändert und auch den Halbduplexbetrieb aktivert.
-Der aktive Teilnehmer sollte das Messgerät sein. Dieses soll den Messwert an die SPS leiten und der dann als Kontroll- bzw. Steuergröße verwendet werden soll.
-Die Online Anzeige des EtherCat zeigt mir den Status OP und den CRC Wert 0 (weiß leider nicht genau was der bedeutet) für die Klemme an.
-Die Status Werte der Klemme Transmit accepted, Receive request, Init accepted, Buffer full, Parity error, Framing error, Overrun error, Input length sowie alle Ein- und Ausgänge zeigen mir Null im Online tab an und bewegen sich auch nicht. Ich kann also auch keine schnell wechselnden Bitwerte dort nachvollziehen.

Ich habe noch keine Codezeilen in TwinCat verfasst. Ist das vielleicht das Hauptproblem? Ich dachte im System Manager muss erstmal etwas angezeigt werden, bevor ich etwas schreiben und auf die Variablen zugreife, daher fehlt dieser Teil noch. Reichen dann die Standardbibliotheken und die oben Genannten aus oder brauche ich noch etwas spezielles?

Vielen Dank für eure Hilfe bisher und beste Grüße
Thoras
 
Ich habe noch keine Codezeilen in TwinCat verfasst. Ist das vielleicht das Hauptproblem? Ich dachte im System Manager muss erstmal etwas angezeigt werden, bevor ich etwas schreiben und auf die Variablen zugreife, daher fehlt dieser Teil noch. Reichen dann die Standardbibliotheken und die oben Genannten aus oder brauche ich noch etwas spezielles?
Das ist das Hauptproblem, das Messgerät kommuniziert via Modbus und da senden die Teilnehmer eigentlich nicht automatisch die Daten, sondern Du musst über Dein Programm die entsprechenden Register anfragen. Falls Du mit Standardbibliotheken die Bibliotheken meinst die TC3 beim Erstellen eines neuen Projektes automatisch hinzufügt lautet die Antwort nein, da musst Du noch die Modbus-Bibliotheken hinzufügen.
-Die Online Anzeige des EtherCat zeigt mir den Status OP und den CRC Wert 0 (weiß leider nicht genau was der bedeutet) für die Klemme an.

Das OP bedeutet, dass der EtherCAT-Slave (In dem Fall die EL6021) im Betriebsmodus "Operational", was bedeutet, dass die Klemme EtherCAT seitig richtig arbeitet. CRC 0 heißt, dass bisher auf dem Bus keine Prüfsummenfehler aufgetreten sind.
 
Zuletzt bearbeitet:
OK das hört sich doch nach einer Lösung an, auch wenn ich befürchte das wir dann nochmal in die Tasche greifen müssen. Wir haben aktuell die TcModBusSrv.lib installiert aber nicht die ModBus RTU, brauchen wir die noch?

Grüße
Thoras
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Du brauchst eigentlich nur die Modbus RTU Bibliothek. Die kommt mit dem Supplement TS6255 | Modbus RTU.
Wenn dein Messgerät ein ModBus Slave ist, brauchst du den FB ModbusRtuMaster_KL6x22B. Wie der funktioniert, steht im Infosys.

Wenn du den FB in dein Projekt eingebunden hast, dann stehen dir im Systemmanager auch die Steuer-, Status-, und Datenstrukturen zur Verfügung die du mit der Klemme verknüpfen musst.
Im Infosys zur SerialCom Lib ist das glaube ich erklärt. Die Datenstrukturen kann du am besten als Multi-Verknüpfung zuweisen (sind Arrays)

Der Modbus FB steuert die Zustandsmaschine der Klemme, ohne passiert da nichts.
In der Regel muss man als Master die Slaves Pollen. D.h. du sendest dem Gerät einen Befehl, aus welchen Coil oder Register du die Daten haben willst und das Gerät antwortet.
Wenn dein Messgerät ein Master ist, wäre das ungewöhnlich, aber auch kein Problem. Dann nutzt du den entsprechenden Slave FB.

Im Infosys sind auch Beispielprojekte verlinkt....
 
Ja, da werdet Ihr wohl in die Tasche greifen müssen oder versuchen die für Euch nutzlose Lizenz für das Supplement TS6250 (Modbus TCP) zurückzugeben. Für die Kommunikation via Modbus über die serielle Schnittstelle benötigt Ihr das Supplement TS6255 (Modbus RTU). Soweit Ihr schon eine Lizenz für die serielle Kommunikation habt könntet Ihr versuchen Euch etwas selber zu schreiben. Ich habe dies einmal für einen Frequenzmesser gemacht, wo lediglich ein paar Register ausgelesen werden mussten, allerdings war das über TCP und nicht seriell. Bei der Kommunikation via serieller Schnittstelle müsst Ihr Euch, wenn Ihr selber etwas programmiert, auch um die Prüfsumme kümmern, das entfällt bei der Übertragung via Netzwerk.
 
Ok, Herzlichen Dank erstmal für die ganzen Hinweise!! Ich werde dann am Montag mal ausprobieren die Klemme anzusprechen und etwas auszulesen. Die Lizenz für die Serielle Kommunikation haben wir auch, vielleicht probier ich erstmal das, bevor was neues gekauft und "geliefert" werden muss. Muss ich da noch etwas beachten?

Grüße und schönes Wochenende
Thoras
 
Zurück
Oben