Arduino Nano: Messung winziger Spannungen mit einem Analogeingang


9

Ich muss 0 V bis 40 mV mit dem 10-Bit-ADC auf einem Arduino Nano so genau wie möglich messen . Ich brauche nur ungefähr eine Probe pro Sekunde.

Ich plane, den AREF-Pin auf 40 mV über dem Boden zu halten, alles ordnungsgemäß abzuschirmen, Tiefpassfilter in Hardware und Software zu verwenden und eine ordnungsgemäß geglättete Stromversorgung zu verwenden.

  • Welche Genauigkeit werde ich wahrscheinlich erreichen?

  • Was könnte ich noch tun, um die Genauigkeit zu verbessern?


Überprüfen Sie das Datenblatt Ihres Controllers auf verfügbare Bandlückenreferenzspannungen. Entwerfen Sie dann einen Verstärker, der das maximale Signal unter dieser Referenzspannung zu wenig verstärkt.
Jippie

Antworten:


9

Es gibt bessere Experten für den ADC des Nano als ich, aber ich bin mir sicher, dass es einige Probleme geben wird, daher würde ich mit Sicherheit einen Verstärker vorschlagen. Ich würde einen Operationsverstärker empfehlen, der mit 5 V (oder was auch immer der Nano verwendet) und 0 V betrieben wird. Der Operationsverstärker benötigt Rail-to-Rail-Funktionen für Ein- und Ausgang und ist im nichtinvertierenden Modus mit einer Verstärkung konfiguriert, die 40 mV auf dem Nano in vollen Maßstab umwandelt.

Geben Sie hier die Bildbeschreibung ein

Wenn der volle Maßstab (sagen wir) 3 V beträgt, benötigen Sie eine Verstärkung von 3 / 0,04 = 75. Dies bedeutet R2 / R1 = 74 (75 minus 1).

R1 wird gerne 100 Ohm sein und daher wird R2 7400 Ohm sein (7k5 parallel zu 560k ergibt 7k401, was hoffentlich nahe genug sein wird. Der Operationsverstärker muss nur mit langsamen Geschwindigkeiten laufen, nachdem er Ihre Frage gelesen hat, und es gibt mehrere Geräte, die passen. Halten Sie Feuer, während ich die Antwort poste und schauen ...

Der AD8538 sieht gut aus, ebenso wie der AD8628, aber es gibt wahrscheinlich noch einige, die problemlos in die Rechnung passen


1
Der volle Maßstab ist Vcc, aber das Bereitstellen einer Referenzspannung am AREF-Pin ermöglicht bei Bedarf einen niedrigeren vollen Maßstab. Die Verstärkung ist jedoch immer noch wünschenswert, da AREF unter 1,0 Volt AFAIC nicht funktioniert (keine dokumentarischen Beweise, nur einige Probleme, mit denen ich konfrontiert war).
Anindo Ghosh

Warum nicht häufigere E12-Widerstände? Das genaue Verhältnis ist nicht zu wichtig, solange Sie wissen, um es zu kompensieren. Z.B. 12k ≤ 150 = 80 oder 33k ≤ 470 ≤ 70. Dies ist natürlich bei 3 V Ausgangsspannung der Fall, was wahrscheinlich nicht optimal ist.
Jippie

@jippie Ich stimme vollkommen zu, aber meine Antwort "schlägt" vor, wie Widerstände parallel geschaltet werden sollen, und ich war mir nicht sicher, ob das OP dies wusste. Er hat eine zusätzliche Antwort kostenlos bekommen !!
Andy aka

+1 für den Vorschlag für einen Operationsverstärker ist der AD8538 ein persönlicher Favorit, insbesondere im SOT23-Paket - keine bedeutungslosen Stifte, ausgezeichnetes thermisches Verhalten.
Anindo Ghosh

1
@ AnindoGhosh - 20 Monate später. Das ATMega328-Datenblatt scheint auf seinen 650 Seiten nirgendwo zu sagen, welcher Wertebereich für die EXTERN angelegte Aref-Spannung gültig ist, ABER alle vielen Diagramme, in denen es erwähnt wird, haben eine Untergrenze von 1,8 V :-(. Vcc kann> = 1,8 sein V und AVcc können Vcc-0,3 V sein, so dass nur 1,5 V zulässig sind. Die Verwendung der internen 1,1-V-Bandlückenreferenz ergibt eine niedrigere maximale ADC-Spannung. Ein niedrigeres externes V_ARef kann zulässig sein, ist jedoch nicht sicher.
Russell McMahon

1

Ich hatte ursprünglich nicht vor, dies als Antwort hinzuzufügen, aber es scheint zu wichtig, es irgendwo in Kommentaren ertrinken zu lassen.

Es ist von größter Wichtigkeit, auf das Datenblatt Ihres Mikrocontrollers zurückzugreifen. Und wenn ich richtig bin, dass Arduino Nano ATmega 168 hat, hier ist das Datenblatt . Die elektrischen Eigenschaften sind ein Abschnitt, den Sie kennen und zuerst überprüfen müssen.

Der Punkt ist: Die minimale Referenzspannung beträgt 1,0 V - Sie können sie auf Seite 311 sehen. Sie müssen Ihr Signal mindestens um den Faktor 25 verstärken, um eine angemessene Genauigkeit zu erzielen und auf die minimale Spannungsreferenz zu skalieren.

Jetzt würde die beste Auswahl an Elementen, die ich kenne (obwohl ich das Thema kaum kenne), einen rauscharmen Operationsverstärker erfordern, der wie @Andyaka als Rail-to-Rail-Verstärker arbeiten kann und vorzugsweise mit Ihrer Versorgungsspannung betrieben wird. Dann denke ich, dass die beste Wahl der Spannungsreferenz die interne ist. Obwohl sie zwischen den Geräten variieren können, denke ich, dass die Stabilität am vernünftigsten sein sollte. Darüber hinaus sollte Ihre Auswahl an Widerständen eher bei niedrigeren als bei höheren Widerständen liegen, da diese rauschresistenter sind. Vergessen Sie nicht, dass sie über Zeit und Temperatur stabil sind!

Die beste Konfiguration der Verstärker kann variieren - ein nicht invertierender Verstärker ist möglicherweise zunächst gut, aber die hohe Eingangsimpedanz funktioniert möglicherweise nicht gut mit Ihrem Signal (obwohl dies in Ordnung sein sollte).


1
Warum sollte eine hohe Eingangsimpedanz mit dem Signal nicht gut funktionieren? Die Arduino-GPIOs im Eingangsmodus haben übrigens alle eine hohe Eingangsimpedanz, wie auch die meisten ADCs.
Anindo Ghosh

1
@AnindoGhosh Wenn die Signalquelle zum Messen geladen werden muss und dies nicht richtig gemacht wird. Ich kann nichts über die Art des OP-Signals sagen. Ich denke, dass der Vorschlag in meinem Beitrag zu hart für den Verstärker war - es sollte wahrscheinlich nicht passieren, aber eine hohe Eingangsimpedanz ist eine Sache, von der ich denke, dass es besser ist, sich dessen bewusst zu sein.
TNW

Ich glaube, dass das Laden einer Signalquelle bei Bedarf eine bekannte Wissenschaft ist, und ebenso streben Designer typischerweise eine hohe Eingangsimpedanz und eine niedrige Ausgangsimpedanz an. Daher meine Ablehnung dieser uneingeschränkten Aussage.
Anindo Ghosh

1
@AnindoGhosh Ich denke, es ist besser anzunehmen, dass die Person weniger als mehr weiß (insbesondere, dass mich ein 40-mV-Ref verdächtig gemacht hat). Ich wollte darauf hinweisen, dass die Wahl zwischen invertierendem und nichtinvertierendem Verstärker nicht nur davon abhängt, ob wir eine Polaritätsänderung zulassen können.
TNW

-4

Für maximale Genauigkeit sollten Sie einen Verstärker verwenden.


Danke - aber warum? Würden zusätzliche Stufen nicht das Rauschen und die Ungenauigkeiten erhöhen? Welche Art von Verstärkerschaltung würde die besten Ergebnisse liefern?
CL22

1
Ich nehme an, dass ein rauscharmer Operationsverstärker in nichtinvertierender Konfiguration dies tun könnte, solange Sie stabile Widerstände verwenden, um die Spannungsverstärkung aufrechtzuerhalten.
TNW

3
Für jemanden, der andere Benutzer wegen fehlender Informationen rügt, ist dies sicher eine bloße Antwort. Könnten Sie vielleicht einige Schaltpläne oder zusätzliche Details hinzufügen?
Chris Laplante
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.