Was hat dieses Rauschen in diesen Servosignalen verursacht und wie beschreibe ich die Lösung richtig?

Bitte beachten Sie, dass ich nicht um Hilfe bei der Behebung meines Geräuschproblems bitte. Ich habe es bereits behoben.
Bei dieser Frage geht es eher darum, das Problem zu beschreiben und die richtige Terminologie zu verwenden.

Ich habe zwei kleine 5-V-Servos, die von einer etwa 10 cm entfernten Tischversorgung gespeist werden.

Die Signale der beiden Servos werden jedoch über ein zweiadriges Lautsprecherkabel zu einem 2,5 Meter entfernten Arduino übertragen. (1 "Kabel" mit 2 Leitern, die jeweils ein Servosignal führen, plus 1 separater 2,5-m-Zusatzdraht für gemeinsame Masse.)

Lautsprecherkabel

schematisch

Hier ist die Oszilloskopausgabe der Originalsignale:

Servosignalrauschen ohne Kappen

Beachten Sie, dass an der fallenden Flanke von Signal Aeine große Spitze angezeigt wird . Das Ergebnis war, dass die Servos nicht unabhängig voneinander waren und sich direkt gegenseitig beeinflussten.Signal B

Unten ist das Ergebnis nach dem Platzieren von 0,1-μF-Keramikkappen zwischen jedem Signal und Masse, kurz vor den Servos selbst:

Servosignale mit Filterkappen

Obwohl signal Bes immer noch nicht perfekt ist, scheinen sich die Servos nicht mehr gegenseitig zu beeinflussen.

Schaltung mit Kappen:
Schaltplan mit Kappen


Was wäre die wahrscheinlichste Ursache für das ursprüngliche Problem, und wie beschreibe ich richtig, wie die Kondensatoren es lösen?

Ich denke, dass das Problem hauptsächlich die lange Distanz war. Da sich die Signale jedoch gegenseitig beeinflussten, frage ich mich, ob es auch damit zusammenhängen könnte, dass die beiden Signale direkt nebeneinander liegen (Übersprechen)?

Ich frage mich auch, wie ich die Lösung mit der richtigen Terminologie richtig erklären kann.
Die Kappen erzeugen einen Tiefpassfilter, richtig? Aber ist das auch "Entkoppeln"? Weil die Signale "gekoppelt" schienen, bevor ich die Kappen hinzufügte. Ich bin mir nicht sicher, ob es richtig ist, sie "Entkopplungskondensatoren" zu nennen

Sie erwähnen die beiden Servosignale, aber Sie erwähnen nicht, wie Masse mit diesen vier Elementen verbunden ist: Arduino, Servostromversorgung, Servo1, Servo2. Vielleicht liegt das Signal von Servo1 auf dem Kupferdraht, während das Signal von Servo2 auf dem Zinndraht liegt? Kein guter Plan.
@glen_geek - Bitte sehen Sie sich den neuen Schaltplan an. Können Sie bitte auch näher auf „Kein guter Plan“ eingehen?
Die kapazitive Kopplung von Kupferdraht zu Zinndraht ist erheblich und verursacht wahrscheinlich den "Glitch". Ein besserer Plan ist, zwei Sätze von Drahtpaaren zu betreiben, um Arduino mit dem Servo zu verbinden. Eine Ader des Paares ist Masse, die andere Signal. Sollte fast störungsfrei werden und keine Kondensatoren benötigen. Aber es erfordert mehr Draht.
@glen_geek - Ich verstehe. Die Kupfer / Zinn-Kopplung ist also "gut" für Audio? Wenn ich zwei Drahtpaare (jeweils mit Masse) hätte, würde das nicht eine große Masseschleife erzeugen? Ich fand die schlecht.
Das Übersprechen zwischen Servo 1 & 2 ist sowohl induktiv als auch kapazitiv. 4-Draht-Twisted Pairs sollten sie isolieren. Es kann auch eine Masseverschiebung durch den Motorstrom geben, der in die Servosignalmasse gelangt, oder sogar ein Übersprechen. Twisted-Pair zum Motor wird mit Ferrit-CM-Drossel bei Hochstromimpulsen zum Motor empfohlen. Es ist gut, dass Ihre Bandbreite niedrig ist, sodass das Laden der Brute-Force-Kappe die Quellenimpedanz am Servo senkt und so das Übersprechen des C-Verhältnisses von den Signalleitungen zur Shunt-Kappe reduziert.

Antworten (2)

Hier ist, was ich herausgefunden habe:

Wir wissen, dass lange Drähte einen gewissen Widerstand R, eine gewisse Induktivität L und eine gewisse Kapazität in Bezug auf einen anderen Leiter C haben. Aber die Frage ist, wie man diese verteilt?

Ich entschied mich für R = 1 Ohm. L und C wären sehr klein. Zuerst habe ich diese drei Drähte aus Ihrem Diagramm erstellt. Signal A, Signal B bzw. GND-Leitung. Unter stabilen Bedingungen ging ich davon aus, dass Servosignale 5 mA ziehen würden, also 1000 R Innenwiderstand. (Ich weiß, ich weiß, das ist nur eine Vermutung.)

Geben Sie hier die Bildbeschreibung ein

Als erstes bemerkte ich ein mögliches LC-Klingeln:

Geben Sie hier die Bildbeschreibung ein

Geben Sie hier die Bildbeschreibung ein

Also habe ich diese Schaltung aufgebaut (in LTSpice) und es wurde ein Klingeln beobachtet.

Geben Sie hier die Bildbeschreibung ein

Was ich auch beobachtet habe war folgendes:

Geben Sie hier die Bildbeschreibung ein

Also habe ich eine andere Schaltung erstellt, um den L-Kopplungseffekt zu erzielen, und gehofft, dass die Überlagerung beider Ergebnisse mir die richtige Antwort geben würde.

L-Kopplungseffekt auf Signal A nachgebildet:

Geben Sie hier die Bildbeschreibung ein

Was meiner Meinung nach erklärt, was Sie gesehen haben. Jetzt habe ich beide Ergebnisse überlagert, um Folgendes zu erhalten:

Geben Sie hier die Bildbeschreibung ein

Geben Sie hier die Bildbeschreibung ein

Geben Sie hier die Bildbeschreibung ein

Ich konnte Ihre Ergebnisse natürlich nicht wirklich reproduzieren, da ich denke, dass es viel mehr Parameter gibt, als ich verwendet habe. Aber ich denke, das letzte Ergebnis scheint Ihren Beobachtungen ziemlich ähnlich zu sein.

Nun zu deinen Kondensatoren:

Ich denke, Sie haben genau die richtige Menge hinzugefügt, um das Klingeln und Koppeln zu stoppen.

Geben Sie hier die Bildbeschreibung ein

Eine andere Art von Kappe:

Geben Sie hier die Bildbeschreibung ein

Bitte beachten Sie, dass die Kapazität genauso wichtig ist wie der Innenwiderstand (und andere Eigenschaften) des hinzugefügten Kondensators. Durch Hinzufügen dieses Kondensators haben Sie auch einen hohen Widerstand zwischen Signalleitung A und B hinzugefügt.

Oh, und ich habe vergessen hinzuzufügen: Wenn Sie ein Osilloskop verwenden, erhalten die Sonden manchmal unterschiedliche Ergebnisse, da sie selbst auch Übertragungsleitungen sind.

Erwähnenswert ist auch, wie Sie die Messung durchführen, um diese Art von Problemen zu verschlimmern und Sie dazu zu bringen, Geister zu jagen.
Exakt! Mein Punkt zu Osilloskopsonden ...

Was hat dieses Rauschen in diesen Servosignalen verursacht?

  • Das Rauschen in diesen Servosignalen kann aus mehreren Quellen stammen:

    1. Gegen-EMK verursacht durch den Servomotor. (Angenommen Bürstenmotoren)

    2. Das PWM-Signal und die Gegen-EMK in einem Draht verursachen elektromagnetische Interferenzen im zweiten.

  • Wenn Sie beispielsweise die Spannung in Draht A ändern, kommt der Gegen-EMK-Kick vom Servo durch den Draht zurück, aber auch die Spannungsänderung in Draht A induziert eine Änderung des Magnetfelds von Draht B, wodurch eine Spannung erzeugt wird Draht B.

    Elektromagnetische oder magnetische Induktion ist die Erzeugung einer elektromotorischen Kraft (dh Spannung) über einen elektrischen Leiter aufgrund seiner dynamischen Wechselwirkung mit einem Magnetfeld.

  • In diesem Fall erzeugte das Magnetfeld von Draht B eine Spannung in Draht A, als Sie das Magnetfeld von Draht B änderten, indem Sie den Strom änderten, den Sie während der fallenden Flanke von B durch ihn schickten, da die Gegen-EMK wann von Ihrem Servo kommen könnte

  • Umgekehrt scheint dies auch der Fall zu sein, obwohl dies nicht die Spitze an der ansteigenden Flanke von A erklärt, von der ich annehme, dass sie eine Gegen-EMK ist.

Wie beschreibe ich die Lösung richtig?

  • Diese Kondensatoren sind tatsächlich Entkopplungs- oder Überbrückungskondensatoren. Die Signale sind in dem Sinne miteinander gekoppelt , dass ihre Signale Rauschen auf dem anderen induzieren. Sie bieten einen Bypass für transiente Spannungsspitzen in der Signalleitung und senden sie direkt an Masse.