ich habe hier ein Projekt bei dem mir empfohlen wurde, die Daten differentiell zu übertragen. Ich kenne die Vorteile, frage mich aber ob sich der Aufwand in diesem konkreten Fall lohnt.
Kurz gesagt werden 5V-Impulse zur Steuerung von Schrittmotortreibern über abgeschirmte Ethernet-Leitung geschickt. Die maximale Pulsfrequenz liegt bei 200KHz. Ebenfalls im Kabel ist eine 5V-Leitungen für die Richtungsanweisung des Motors und eine Signal-Leitung für den Endschalter (auf 3.3V). Desweiteren Stromversorgung für den den Endschalter (GND, 3.3V). Das Kabel ist 5m lang. (Die eigentlichen Schrittmotoren sind dann direkt am Treiber mit kurzen Leitungen angeschlossen).
Hier der Aufbau des Anschlusses im Überblick, GND liegt auch auf der Schirmung:
1
- PUL+ \
2
- GND \
3
- DIR+ \
4
- GND \------- 5 Meter shielded twisted pair-------
5
- ENA+ /---------- zu Schrittmotor-Treiber ---------
6
- 3.3V /
7
- GND /
8
- SIG /
Mit einem weiteren 5m langen Ethernet-Kabel werden Dynamixel-Servos angesteuert. Das ist ein serielles Signal mit - hier - 2.000.000 Baud. Die Stromversorgung mit 12V läuft auch im Ethernet-Kabel. Der RJ45-Stecker ist wie folgt angeschlossen, GND ist wieder ebenfalls auf der Schirmung:
1
- 12V \
2
- 12V \
3
- 12V \
4
- 12V \------- 5 Meter shielded twisted pair-------
5
- 12V /---------- zu Dynamixel-Servos -------------
6
- 12V /
7
- GND /
8
- DATA /
(Hinweis: Die Dynamixel-Servos gibt es sogar mit RS485, haben wir aber leider nicht für dieses Projekt)
Nun die Frage: Wäre es eurer Meinung nach sinnvoll, überall symmetrische Datenübertragung einzusetzen? Oder sollten die 5V-Signale in einem abgeschirmten Kabel auf "nur" 5m stabil genug sein?
Vielen Dank für eure Einschätzung und viele Grüße!
Die Stromversorgung mit 12V läuft auch im Ethernet-Kabel.
Das ist im Grunde eine arg ungeschickte Idee. Beleg das Kabel dann wenigstens so, dass nicht der Netzwerktrafo im Laptop abfackelt, wenn man dort zufällig diesen allseits bekannten RJ45 einsteckt.
Oder was passiert, wenn einer "zufällig" mal einen Backloop zwischen diesen beiden Steckern macht und 12V auf alle die Signale legt?
Hier der Aufbau des Anschlusses im Überblick
Die Pärchen sind beim RJ45 aber anders belegt als 1-2, 3-4, 5-6 und 7-8. Sieh dir einfach mal ein übliches Kabel an:
Für die meisten RJ45 Buchsen ist nicht spezifiziert, dass und wieviel Strom über den Schirm fließen kann. Zudem leiern die Kontaktfedern nach ein paarmal Einstecken aus.
Und auch die Kabel sind oft nur ein "Geflecht" aus 12 dünnen Eisendrähten und einem hauchdünnem Aluschirm.
ich habe hier ein Projekt bei dem mir empfohlen wurde, die Daten
differentiell zu übertragen. Ich kenne die Vorteile, frage mich aber ob
sich der Aufwand in diesem konkreten Fall lohnt.
Vermutlich nicht, wenn man es richtig macht.
Hier der Aufbau des Anschlusses im Überblick, GND liegt auch auf der
Schirmung:- PUL+ \
GND \
DIR+ \
GND ------- 5 Meter shielded twisted pair-------
ENA+ /---------- zu Schrittmotor-Treiber ---------
3.3V /
GND /
SIG /
Wenn immer Signal + GND verdrillt sind, ist es OK. Deine naive Belegung tut das aber nicht, den Ethernet hat, warum auch immer, eine andere Belegung.
Siehe der Beitrag von Lothar.
Mit einem weiteren 5m langen Ethernet-Kabel werden Dynamixel-Servos
angesteuert. Das ist ein serielles Signal mit - hier - 2.000.000 Baud.
Das ist schon etwas anspruchsvoller. Hier ist eine Serienterminierung am Sender (Sensor) sinnvoll, siehe Wellenwiderstand.
Die Stromversorgung mit 12V läuft auch im Ethernet-Kabel. Der
RJ45-Stecker ist wie folgt angeschlossen, GND ist wieder ebenfalls auf
der Schirmung:
12V \
12V \
12V \
12V ------- 5 Meter shielded twisted pair-------
12V /---------- zu Dynamixel-Servos -------------
12V /
GND /
DATA /
Hier ist die Belegung OK.
Nun die Frage: Wäre es eurer Meinung nach sinnvoll, überall symmetrische
Datenübertragung einzusetzen?
Nein
Oder sollten die 5V-Signale in einem
abgeschirmten Kabel auf "nur" 5m stabil genug sein?
Das ist im Grunde eine arg ungeschickte Idee. Beleg das Kabel dann
wenigstens so, dass nicht der Netzwerktrafo im Laptop abfackelt, wenn
man dort zufällig diesen allseits bekannten RJ45 einsteckt.
Erinnert mich an ISDN Kabel, die ebenfalls RJ45 waren. Wenn man das ISDN Kabel versehentlich in die LAN Buchse gesteckt hat, wurde auch "die Hardwarefirewall" dauerhaft aktiviert.
Das ist im Grunde eine arg ungeschickte Idee. Beleg das Kabel dann
wenigstens so, dass nicht der Netzwerktrafo im Laptop abfackelt, wenn
man dort zufällig diesen allseits bekannten RJ45 einsteckt.
Erinnert mich an ISDN Kabel, die ebenfalls RJ45 waren. Wenn man das ISDN
Kabel versehentlich in die LAN Buchse gesteckt hat, wurde auch "die
Hardwarefirewall" dauerhaft aktiviert.
Kann ich nicht glauben. Die Fernspeisung bei S0 ist doch nicht wesentlich anders als PoE.
Erinnert mich an ISDN Kabel, die ebenfalls RJ45 waren. Wenn man das ISDN
Kabel versehentlich in die LAN Buchse gesteckt hat, wurde auch "die
Hardwarefirewall" dauerhaft aktiviert.
Kann ich nicht glauben. Die Fernspeisung bei S0 ist doch nicht
wesentlich anders als PoE.
Na ja, S0 hat dauerhaft Spannung, im Gegensatz zu PoE wird da nichts verhandelt.
S0 nutzt die Paare 4-5 und 3-6, an beiden sitzt ein Übertrager mit Mittelanzapfung. Die Spannung wird über diese eingespeist, somit liegt die Speisung zwischen 4-5 und 3-6 und nicht auf dem jeweiligen Paar.
Ethernet nutzt 1-2, 3-6, 4-5 und 7-8, auch mit jeweils einem Übertrager drauf. Es gibt keinen Grund, dass der versehentlich angeschlossene S0 Schaden verursachen könnte.
An einer Telefonanlage mit Up0 / UpN hat man nur zwei Adern, typisch 4-5, wo dann auch die Speisung drauf liegt. Würde ich diese auf ein Ethernet klemmen, käme tatsächlich Strom durch deren Übertrager zustande. Passieren dürfte dennoch nichts, weil die Leistung begrenzt ist und die Tk-Anlage die Leitung wegen Überstrom abtrennt.
Ich kenne die Vorteile, frage mich aber ob
sich der Aufwand in diesem konkreten Fall lohnt.
Ich denke nein. Allerdings wuerde ich auch nicht unbedingt mit einem UHS Gatter direkt auf die Leitung gehen. Sorge dafuer das deine Flanken fuer 200khz angemessen sind. Also noch eckig aber leicht verrundet. Ausserdem passenden Abschluss auf beiden Seiten.
Die Stromversorgung mit 12V läuft auch im Ethernet-Kabel. Der
RJ45-Stecker ist wie folgt angeschlossen,
GND ist wieder ebenfalls auf der Schirmung:
Irgendwie frag ich mich, welchen Sinn die 6 Adern mit 12V hier haben? Ich mein, klar die Servos ziehen vermutlich ordentlich Strom, aber der muß ja nicht nur zu den Servos fließen, sondern klaraweise auch wieder retour und dabei muß er sich dann durch eine einzige (+Schirm) GND Ader durchquetschen; das Gedränge führt dann zu 'nem Spannungsabfall auf ebendieser einen GND-Ader und plötzlich kommt auf der Data-Leitung eine (relativ zu GND) negative Spannung beim Servo an. Keine Ahnung ob der das auch goutiert?
Kurz gesagt, z.B. 4 Adern mit 12V und 3 (+Schirm) mit GND würde da für ausgeglichenere Verhältnisse sorgen.
Serienterminierung, Wellenwiderstand und "passender Abschluss an beiden Seiten" meint das gleiche, oder? Danke für den Hinweis, ich werde mich einlesen. Ich kenne das nur noch aus den alten BNC-Netzwerkkabel-Zeiten.
Allerdings wuerde ich auch nicht unbedingt mit einem UHS
Gatter direkt auf die Leitung gehen.
Könntest du mir hier eine kurze Erklärung geben bzw. Stichworte, wie du
es lösen würdest?
Man sollte ein Logikgatter aus einer eher langsamen Familien nehmen, damit die Anstiegszeiten nicht unötig kurz sind und damit die HF-Probleme mit Reflektionen etc. unnötig hoch. Ein HC Gatter oder ein kleiner AVR sind OK.
Allerdings wuerde ich auch nicht unbedingt mit einem UHS
Gatter direkt auf die Leitung gehen.
Könntest du mir hier eine kurze Erklärung geben bzw. Stichworte, wie du
es lösen würdest?
Man sollte ein Logikgatter aus einer eher langsamen Familien nehmen,
damit die Anstiegszeiten nicht unötig kurz sind und damit die
HF-Probleme mit Reflektionen etc. unnötig hoch. Ein HC Gatter oder ein
kleiner AVR sind OK.
Danke für die Erläuterung, Falk. Super spannend, ich beginne zu verstehen...
Ich nutze den SN74AHCT125 als Logic Level Shifter um die Pulse von 3.3V auf 5V zu setzen. Diese gehen dann durch besagtes Ethernet-Kabel an die Schrittmotor-Treiber.
Im Datenblatt (https://www.ti.com/lit/ds/symlink/sn74ahct125.pdf) finde ich auf Seite 6 die Information einer Switch-Zeit von 1 bis 6.5/8.5ns, siehe Screenshot im Anhang. Ist es das, was du meinst? - und, ist das in diesem Kontext "schnell"?
Danke für die Erläuterung, Falk. Super spannend, ich beginne zu
verstehen...
Ich nutze den SN74AHCT125 als Logic Level Shifter um die Pulse von
3.3V auf 5V zu setzen. Diese gehen dann durch besagtes Ethernet-Kabel an
die Schrittmotor-Treiber.
Ist gerade noch OK, auch wenn die schon deutlich schneller als HCT sind.
Im Datenblatt (https://www.ti.com/lit/ds/symlink/sn74ahct125.pdf) finde
ich auf Seite 6 die Information einer Switch-Zeit von 1 bis 6.5/8.5ns,
siehe Screenshot im Anhang. Ist es das, was du meinst?
Nicht ganz. Das sind alles nur Verzögerungszeiten zwischen Ein- und Ausgang.
Die Anstiegszeiten sind nicht angegeben, lieben aber in der gleichen Größenordung, eher sogar noch darunter.
und, ist das in
diesem Kontext "schnell"?
Ja, ist schon recht schnell. Nimm lieber HCT, ohne A.