Verwendung eines abgeschirmten Audiokabels für den Potentiometersensor

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:

  1. Verwendung eines abgeschirmten Kabels

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?

  1. Verwendung eines Kondensators

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.

Es könnte nur ein Rauschen sein, das dem ADC innewohnt. Wie viel Rauschen gibt es, wenn Sie einfach einen Festwiderstand direkt am Arduino anbringen, ohne dass Poti und Kabel angeschlossen sind?
Nein. Ein Arduino ADC sollte absolut stabil sein, wenn die Impedanz niedrig genug ist (selbst 100K sollten in Ordnung sein).

Antworten (3)

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.

  • Fügen Sie einen 0,1-uF-Kondensator zwischen dem Wischerdraht und GND direkt vor dem MCU-Pin hinzu. Der Kondensator erfüllt zwei Funktionen. Erstens filtert es hochfrequentes Rauschen heraus. Zweitens reduziert es die Quellenimpedanz weiter, indem es während der Abtastung als lokale Quelle mit niedriger Impedanz fungiert.
  • Verwenden Sie ein abgeschirmtes Kabel, dessen Abschirmung mit der Systemmasse in der Nähe der MCU verbunden ist. In Ihrem Fall ist dies keine Option, aber Sie sehen möglicherweise eine gewisse Rauschunterdrückung, wenn Sie die Abschirmung mit GND verbinden.
  • Hinzufügen eines Ferritkerns zu Hochstromschaltleitungen. Auch dies ist möglicherweise nicht der Fall für Sie.

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

Denn dafür bräuchte man einen extra Leiter (2 Leiter mit Abschirmung für Masse).
Ja, und Sie würden dabei das Rauschen eliminieren. Was meinst du?
Ich habe es so angeschlossen, wie ich es getan habe, mit nur 2 Drähten und dem internen Pullup, um die Verkabelung zu reduzieren. Ich habe einige davon installiert, und obwohl es nicht viel erscheint, reduziert das Vorhandensein von 2 Drähten pro Sensor anstelle von 3 eine Menge Unordnung. Wie würde eine herkömmliche Pin-1 = VCC, Pin-3 = GND-Verdrahtung das ADC-Rauschen reduzieren?
@Maple - Weil zwei Leiter mit einer richtigen Abschirmung viel seltener sind als Koaxialkabel. Wenn sie trotzdem etwas bestellen müssen, stimme ich zu, verwenden Sie 2 Leiter mit Abschirmung, um eine niedrigere Impedanz zu ermöglichen. Das würde das Problem definitiv lösen.
@Cerin - Sie würden 2 Leiter + Abschirmung benötigen, um Vcc separat an Pin 1 zu liefern, wie in meiner Antwort angegeben. Das würde es Ihnen ermöglichen, einen 10k-Pot zu verwenden, der eine niedrigere Impedanz hat und mindestens um den Faktor 10 (20 dB) weniger Rauschen aufnimmt. Das und der Schild würden das Problem definitiv lösen.
@Cerin Siehe eine Erklärung am Anfang der Antwort. Durch die Verwendung einer herkömmlichen Verdrahtung mit GND und VCC können Sie einen Widerstand mit niedrigerem Wert verwenden, dh die Quellenimpedanz auf die für ADC geeignete reduzieren.
@squarewav Das OP fragte speziell nach "abgeschirmtem Audiokabel mit zwei Leitern". Kein Koax. Genau genug, um einen normalen 3-Draht-Anschluss zu haben.
Ja, es sieht so aus, als würde die Verwendung eines 10k-Pots allein mit einer herkömmlichen Verkabelung ausreichen, um das Problem zu beheben. Jetzt ist der ADC-Messwert absolut stabil. Ich wusste, dass Töpfe mit niedrigerem Widerstand empfohlen werden, um das Rauschen zu reduzieren, aber ich wusste nicht, wie volatil 100k sein würden. Danke.
Beachten Sie, dass Sie, wenn Sie nur 2 Drähte mit einem unteren Pot haben, einen Spannungsteiler mit dem Pullup-Widerstand wie in 20k / 10k herstellen, was bedeutet, dass Sie nur das untere 1/3 des ADC trainieren, was bedeutet, dass es statt 10 Bit mehr ist wie 8 Bit. Das heißt, wenn Sie den Pot senken möchten, sollten Sie wirklich auf 3 Drähte umschalten und Vcc separat liefern. Aber wenn es funktioniert...
Ich glaube, "allein mit einer konventionellen Verkabelung" bedeutet genau das

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.

"Wenn es eine kleine Vibration gibt, kann eine Folienabschirmung Geräusche erzeugen" Huh?! Nur woher hast du das? "Coax wird Ihre Lärmprobleme mit ziemlicher Sicherheit vollständig lösen" Wo kam Coax ins Spiel? Abgeschirmtes Kabel und Koaxialkabel sind zwei verschiedene Dinge.
Ja, es heißt „Handling Noise“. Google es. Koax ist eine Art abgeschirmtes Kabel, daher unterscheiden sie sich nicht wirklich. Ich würde $5 wetten, dass Koax funktionieren würde, weil die Schirmimpedanz sehr niedrig wäre und den Signalleiter schützen würde. Wenn nein, dann ja, 2 Leiter + Schirm sind notwendig.
Ich habe es gegoogelt. Die meisten sogenannten „Handhabungsgeräusche“ beziehen sich auf das Mikrofon. Sehr wenige Hinweise auf das abgeschirmte Kabel "durch Biegen erzeugtes Rauschen". Liest sich eher wie Science Fiction oder Marketing für leichtgläubige Audiophile.
Nein. Ich habe ein billiges Mikrofonkabel, das Geräusche macht, die Sie tatsächlich hören können. Wenn Sie es nur hin und her bewegen, macht es ein knisterndes Geräusch.
Sie stellen fest, dass die mit Mikrofonen verbundenen Ströme, Spannungen und Verstärkerverstärkungen bei weitem nicht den typischen ADC-Anwendungsfällen in MCUs entsprechen. Anders als bei Mikrofonen gibt es eine Flexibilität bei der Wahl der Potentiometer. Das Reduzieren der Quellenimpedanz ist eine einfache und sichere Möglichkeit, mit ADC-Rauschen umzugehen. Die Verwendung von Koax mit hochohmigem Topf bekämpft im Grunde ein selbst geschaffenes Problem ohne Erfolgsgarantie.
Ich diskutiere nicht wirklich mit dir. Die Verwendung von Koax ist ein Hack. Zumal Sie nur einen Teil des ADC trainieren, weil Sie mit dem Pullup-Widerstand einen Spannungsteiler herstellen. Aber es würde funktionieren. Die Impedanz im ungünstigsten Fall beträgt 20k+100k / 4 = 30k. Es ist nicht schön, aber es würde funktionieren, und jeder hat RCA-Kabel in einer Kiste in seinem Keller.