EtherCAT über Ethernet UDP empfangen

flambert

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

Ich bin leider eine absolute Feldbus Niete. Meine Frage ist einfach ob es möglich wäre ein EtherCATfähiges Geräte z.B. Beckhoff EK1100 an einen PC mit einer Ethernetkarte anzuschließen. Mein Problem ist, dass ich ein realtime Linux verwende für das es, zumindest im Kernelspace, keinen EtherCAT Stack gibt. Daher würde ich es gerne mit meinem UDP/TCP Stack versuchen. Ist das möglich?

Dank und Gruss,
flambert
 
Hallo zusammen,

Ich bin leider eine absolute Feldbus Niete. Meine Frage ist einfach ob es möglich wäre ein EtherCATfähiges Geräte z.B. Beckhoff EK1100 an einen PC mit einer Ethernetkarte anzuschließen. Mein Problem ist, dass ich ein realtime Linux verwende für das es, zumindest im Kernelspace, keinen EtherCAT Stack gibt. Daher würde ich es gerne mit meinem UDP/TCP Stack versuchen. Ist das möglich?

Dank und Gruss,
flambert
Ein EK1100 kann mit gewöhnlichen Ethernet-Telegrammen nichts anfangen. EtherCAT, wenn ich's richtig verstanden habe, funktioniert auf Ethernet-Basis, also eine Stufe unterhalb des IP-Protokolls.
Für Linux gibt's doch Ethercat Master. Schonmal ne Suchmaschine bemüht?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo trinitaucher,

ich glaube folgender Link beantwortet eine Reihe von Fragen.
http://www.ethercat.org/en/technology.html#5.1

Hans-Ludwig Göhringer

mit freundlichen Grüßen aus dem Schönbuch
Hans-Ludwig Göhringer
IVG Göhringer Mönchweg 5 71088 Holzgerlingen Tel.:07031 607880 Fax: 07031 607881 Mobil.:0172-7671463 eMail: H-L.Goehringer@t-online.de <http://www.i-v-g.de>

Messgeräte für Bussysteme, Dienstleistungen an Bussystemen: Abnahmemessungen, Troubleshooting und Schulungen für Profibus,Profinet, CAN, AS-Interface, usw.
 
Ein EK1100 kann mit gewöhnlichen Ethernet-Telegrammen nichts anfangen. EtherCAT, wenn ich's richtig verstanden habe, funktioniert auf Ethernet-Basis, also eine Stufe unterhalb des IP-Protokolls.
Für Linux gibt's doch Ethercat Master. Schonmal ne Suchmaschine bemüht?

Ich habe lange gesucht. Das Problem ist, dass es Ethercat Master (genauer gesagt einen) für Linux gibt. Aber ich brauche einen der mit Xenomai läuft. Also ein Linux das realtime erweitert ist. Das Problem ist, dass ich den Master dann auch mit Xenomai kompilieren muss und der Master nicht die "normalen" Linux NIC Treiber nehmen darf, sondern die RTnet Treiber (ein realtime Ethernet Stack).

Hallo trinitaucher,

ich glaube folgender Link beantwortet eine Reihe von Fragen.
http://www.ethercat.org/en/technology.html#5.1

Hans-Ludwig Göhringer

mit freundlichen Grüßen aus dem Schönbuch
Hans-Ludwig Göhringer

Danke für den Link. Ist auf jeden Fall eine gute Zusammenfassung und mir ist jetzt einiges auch klarer. Leider komme ich mit meinem eigentlichen Problem nicht weiter. Auf der Seite steht zwar, dass es Implementierungen auf den verschiedensten Plattformen gibt, aber ich finde trotzdem keine für Linux Xenomai.
 
Wenn du die Echtzeitfähigkeit brauchst, mußt du den Ethercat-Master in die Real-Time-Umgebung portieren.
Die Real-Time-Umgebung ist ja sozusagen ein eigenes Betriebssystem, was Linux als eine Task ausführt, wenn es nichts besseres zu tun hat...
Wenn der Source code zum Ethercat-Master vorhanden ist und wenn bereits ein Hardware-Treiber für den NIC in Xenomai existiert, sollte es möglich sein, das hinzukriegen.

Vielleicht brauchst du aber gar keine "Echtzeit" oder kannst eine gewisse Verzögerung beim Datenaustauch tolerieren. Dann könnte es auch so gehen:
Der Ethercat-Master läuft unter Linux und tauscht mit Xenomai Daten aus, z.B über sockets oder shared memory oder was da vorgesehen ist.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Wenn du die Echtzeitfähigkeit brauchst, mußt du den Ethercat-Master in die Real-Time-Umgebung portieren.
Die Real-Time-Umgebung ist ja sozusagen ein eigenes Betriebssystem, was Linux als eine Task ausführt, wenn es nichts besseres zu tun hat...
Wenn der Source code zum Ethercat-Master vorhanden ist und wenn bereits ein Hardware-Treiber für den NIC in Xenomai existiert, sollte es möglich sein, das hinzukriegen.

Vielleicht brauchst du aber gar keine "Echtzeit" oder kannst eine gewisse Verzögerung beim Datenaustauch tolerieren. Dann könnte es auch so gehen:
Der Ethercat-Master läuft unter Linux und tauscht mit Xenomai Daten aus, z.B über sockets oder shared memory oder was da vorgesehen ist.

Das Problem ist, dass ich bei einem schnell fahrenden Roboter die Position der Achsgeber mit den Daten des Lasertrackers vergleichen möchte. Insofern tun mit Jitter und Latenzen im mehrstelligen Microsekundenbereich bereits weh. Also, ja, ich brauche Echtzeit. Der Kernel den wir gebaut haben ist genau auf dieses eine Scenario ausgelegt und das ganze System darauf getrimmt. Es fehlt eben nur noch der EtherCat Master.
So wie du es beschreibst, hört es sich für mich fast so an als gäbe es "den EtherCat Master". Gibt es den? Ich nahm immer an es gibt eine Viezahl von verschiedenen Implementierungen. Falls dem so ist, woher bekomme ich den den Source Code. Protieren in Xenomai sollte kein Problem sein (sollange das Ding halbwegs POSIX konform ist). Das haben wir schon Xmal mit verschiedenen Programmen gemacht.
 
Zurück
Oben