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.)
Hier ist die Oszilloskopausgabe der Originalsignale:
Beachten Sie, dass an der fallenden Flanke von Signal A
eine 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:
Obwohl signal B
es immer noch nicht perfekt ist, scheinen sich die Servos nicht mehr gegenseitig zu beeinflussen.
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
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.)
Als erstes bemerkte ich ein mögliches LC-Klingeln:
Also habe ich diese Schaltung aufgebaut (in LTSpice) und es wurde ein Klingeln beobachtet.
Was ich auch beobachtet habe war folgendes:
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:
Was meiner Meinung nach erklärt, was Sie gesehen haben. Jetzt habe ich beide Ergebnisse überlagert, um Folgendes zu erhalten:
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.
Eine andere Art von Kappe:
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.
Das Rauschen in diesen Servosignalen kann aus mehreren Quellen stammen:
Gegen-EMK verursacht durch den Servomotor. (Angenommen Bürstenmotoren)
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.
glen_geek
Bort
glen_geek
Bort
Tony Stewart EE75