Ich versuche, meinen Arduino dazu zu bringen, die 10K-Potentiometer auf einem Joystick mit analogRead() zu lesen, aber die zurückgegebenen Werte schwanken zu stark, wenn der Joystick nicht berührt wird. Ich verwende keine abgeschirmten Kabel, aber sie sind sehr kurz (die Entfernung vom Joystick zur MCU beträgt nur etwa die Länge der MCU selbst).
Das Arduino, das ich verwende, ist ein Teensy 3.2, also ging ich auf ihre Website, um technischen Support zu erhalten. Die Lösung, die ich am meisten fand, war die Verwendung eines Unity-Gain-Puffers, also hoffte ich, etwas Hilfe beim Aufbau einer Schaltung für meine Situation zu bekommen.
Der Teensy 3.2 ist ein 3,3-V-Gerät, das 5-V-tolerante Pins hat und USB verwendet, um die Programme direkt hochzuladen. Ich habe einige 358 Operationsverstärker zur Hand, aber ich verstehe, dass diese keine Rail-to-Rail-Spannung liefern, die ich benötigen würde, wenn sich der Schleifer des Potentiometers in der minimalen und maximalen Position befindet. Ich habe auch viele 4558 Operationsverstärker, aber ich glaube nicht, dass diese für Einzelversorgungsschaltungen geeignet sind, von denen ich gehofft hatte, sie über den USB mit Strom zu versorgen, den dieses Gerät verwendet.
Der richtige Weg ist, Software zu filtern, nicht Hardware hinzuzufügen. Wenn Sie den Treiber bereits so geschrieben haben, dass er bei Änderung sofort einen neuen Wert sendet, hilft ein Filter hier nicht weiter. Befindet sich ein analoges Signal zwischen zwei Werten, liegt es nach der Filterung immer noch zwischen zwei Werten und kann beim Lesen mit dem ADC zwischen diesen springen.
Die üblichen Lösungen könnten zum Beispiel sein, eine Totzone in der angenommenen Mittelposition zu haben, wo keine neuen Positionen an den PC gesendet werden, vorausgesetzt, dass eine Art Kalibrierung durchgeführt wird, um die tatsächliche Mitte zu kennen, anstatt sie anzunehmen. Ein Filter erster Ordnung könnte in Software verwendet werden, aber die Ausgabe könnte immer noch zwischen zwei Werten umschalten, wenn die Eingabe dies tut.
Nur ich
TRS-80
Nur ich
Zeichnete
jsotola
TRS-80
TRS-80
TRS-80
Frosch
Spehro Pefhany
Antonio51