Ich versuche, ein Potentiometer von einem Arduino-ADC zu messen. Das Potentiometer hat einen maximalen Wert von 100 kOhm und befindet sich etwa 1 Meter vom Arduino entfernt. Der Wischer des Potentiometers ist mit dem ADC-Pin und dem Pin mit Masse verbunden. Ich habe den internen 20k-Pullup am ADC-Pin aktiviert, sodass das Potentiometer an den Extremen ein logisches Hoch und Tief erzeugt. Ich habe das Potentiometer mit zwei ungeschirmten 24-AWG-Litzendrähten verdrahtet, die miteinander verdrillt sind.
Um Rauschen herauszufiltern, verwende ich einen exponentiellen gleitenden Durchschnitt auf dem Arduino. Aber selbst damit sehe ich immer noch eine Änderung von +/- 10 Einheiten mehrmals pro Sekunde, selbst wenn das Potentiometer völlig still steht.
Die zwei Möglichkeiten, die ich zum Reduzieren von Rauschen in Kabeln gelesen habe, die analoge Signale übertragen, sind:
Würde es einen Unterschied machen, wenn ich stattdessen ein zweiadriges abgeschirmtes Audiokabel verwenden würde? Ich habe ein Audiokabel mit einem roten und schwarzen Draht sowie einer Metallabschirmung. Wenn ich den Stift meines Potentiometers an die beiden Drähte anschließe, sollte ich dann auch die Abschirmung mit Masse verbinden oder sie unbefestigt lassen?
Ich sehe viele widersprüchliche Meinungen darüber, wie die Abschirmung belassen werden soll, wobei Kommentatoren in diesem Thread vorschlagen, sie ungeerdet oder am Sensorende geerdet oder am Arduino-Ende geerdet zu lassen, aber definitiv nicht an beiden Enden geerdet. Welches ist das Beste für meinen Fall?
Wie viel Unterschied würde es machen, wenn ich einen 0,1-uF-Kondensator als Tiefpassfilter über die Drähte legen würde? Soll ich es auf der Sensorseite oder der Arduino-Seite platzieren? Auch hier habe ich viele widersprüchliche Ratschläge dazu gesehen.
Warum schließen Sie das Potentiometer nicht wie gewohnt zwischen GND und VCC an ? Wenn Sie ein 5-10K-Potentiometer verwenden, sehen Sie viel weniger Rauschen am Eingang.
Der Grund, warum Sie so viel Rauschen sehen, ist, dass Ihre Quellenimpedanz zu hoch ist. Sie lassen einfach nicht genug Strom durch, um den Abtastkondensator im ADC aufzuladen. Sie können nicht weniger als 22 k verwenden, wenn Sie internes Pull-up verwenden, während ADC in MCUs normalerweise für eine Quellenimpedanz von etwa 10 k optimiert sind.
Es gibt drei Methoden, die wir bei Elektrorollern mit ungefähr dem gleichen Abstand zu mehreren Widerstandssensoren verwenden.
Zusamenfassend:
1) Verwenden Sie ein 5-10K-Potentiometer.
2) Verbinden Sie es zwischen VCC und GND.
3) Deaktivieren Sie den internen Pull-up.
4) Fügen Sie einen 0,1-uF-Kondensator in der Nähe des ADC-Pins hinzu
Ihre Frage definiert nicht das leitungsgebundene oder abgestrahlte Rauschen Ihres Netzteils oder die Erdungsmethode. Somit ist abgestrahltes Rauschen, leitungsgebundenes Grundrauschen und lokales Gleichtaktrauschen von SMPS unbekannt.
Um Ihr Problem zu isolieren, können Sie eine Kappe direkt über dem Quellenausgang platzieren und messen, dann bewegen, um Eingang zu empfangen und zu messen.
Zc (0,1 uF) = 30 kOhm bei 50 Hz
Wenn das Rauschproblem mit 0,1 uF behoben ist, wissen Sie, dass das Rauschen nicht 50 Hz beträgt, sondern viel höher ist.
Wenn dies nicht behoben ist, vermuten Sie möglicherweise 50 Hz und versuchen es mit 100 uF oder mehr. Wenn dies zu einer Verbesserung führt, können Sie aufgrund der Anordnung von Kabeln und Versorgung ein Gleichtaktrauschen vermuten, das ein differentielles Rauschsignal erzeugt. Betrachten Sie dann eine 0,1-uF-Kappe von der Erdung bis zu 0 V DC auf dem Arduino. erneut testen und Ergebnisse vergleichen.
Erdabgeschirmte Twisted-Pair-Kabel können ebenfalls eine gute Lösung sein.
Indem Sie sowohl das DC-Stromkabel als auch das Signalkabel greifen und die Rauschergebnisse überprüfen, können Sie daraus schließen, dass die CM-Rauschkopplung ein Problem mit einer unsymmetrischen Eingangsimpedanz für den ADC ist, was dazu führt, dass der CM-Streurauschstrom in eine Differenzspannung umgewandelt wird. Kabelnähe und 0V ref. und die Entkopplung kann ebenfalls verbessert werden.
Ja, zu 1. Ein gutes Stück Koaxialkabel wird Ihre Geräuschprobleme mit ziemlicher Sicherheit vollständig lösen. Keine Kappe notwendig. Aber es muss ein Vollschutzschild sein. Es kann entweder eine Folien- oder eine Kupferwicklung sein, aber wenn das Kabel überhaupt bewegt wird oder sogar wenn es eine kleine Vibration gibt, kann eine Folienabschirmung Rauschen erzeugen, daher ist eine Wickelabschirmung besser. Wenn die Pot-Anschlüsse 1 für CW, 2 für Schleifer und 3 für CCW sind, verbinden Sie das Koax-Signalkabel mit 1 und 2 und dann die Abschirmung mit 3. Versuchen Sie, die Abschirmung so nahe wie möglich an Pin 2 zu bringen. Am ADC-Ende geht der Leiter offensichtlich zum ADC-Pin und die Abschirmung zur Masse von uC. Verwenden Sie den internen Zug wie angegeben.
Wenn dies das Problem nicht zu Ihrer Zufriedenheit löst, können Sie die Dinge weiter verbessern, indem Sie ein 2-Leiter-Kabel mit Abschirmung verwenden (wie es bei der Verkabelung von Audio-Patchbays wie Redco TGS-02 mit entfernter Ummantelung verwendet wird) und einen Leiter für verwenden Topfklemme 1, die andere für den Schleifer und Pin 3 für die Abschirmung. Legen Sie dann die logische Hochspannung über einen 100R-Widerstand an Klemme 1 an und verwenden Sie einen 10k-Pot. Verwenden Sie in diesem Fall KEINEN internen Pullup. Dadurch wird die Impedanz des Ganzen drastisch reduziert und das Rauschen entsprechend reduziert.
Keines dieser Szenarien lässt die Abschirmung an beiden Enden unverbunden. Sie würden dies nur in Betracht ziehen, wenn Sie am anderen Ende mehr Schaltkreise hätten, die mit einer anderen Masse verbunden sind.
crj11
Rechteck