So verbessern Sie die Genauigkeit der gemessenen ADC-Spannung in einem an Vcc angeschlossenen Schaltkreis

Die Frage basiert auf dem folgenden Setup.

Wie abgebildet, gibt es einen IC, um den realen Wert der 3,3-V-Versorgungsspannung genau zu messen. Der Messwert der 3,3V-Quelle wird über SPI an den Mikrocontroller übertragen. Dieser Mikrocontroller misst den Spannungsteiler zwischen 3,3 V und GND und hat eine Referenzspannung für seinen ADC.

schematisch

Simulieren Sie diese Schaltung – Mit CircuitLab erstellter Schaltplan

Problem: Wenn sich die 3,3-V-Versorgungsspannung ändert, wird die ADC-Messung vom Mikrocontroller beeinflusst.

Frage: Kann ich mit der Messung des ICs eine wechselnde 3,3V-Quelle kompensieren, wenn die Genauigkeit bei diesem Chip in meinen Grenzen liegt.

Der ADC sollte eine interne niedrigere Referenz V und eine akzeptable Toleranz haben. Wenn Sie eine Fehlerkorrektur benötigen, bitte. Definieren Sie Spezifikationen, z. B. Temp vs. Fehler
"Es gibt einen IC, um den tatsächlichen Wert der 3,3-V-Versorgungsspannung genau zu messen." Welchen IC verwendest du?
Scheint, als hätten Sie zwei Dinge, die dieselbe Spannung messen. Warum wählst du nicht einfach die genauere aus? Und wenn es einen Grund gibt, erklären Sie, was Sie erwarten zu kompensieren und wie Sie beabsichtigen, die Variable für die Vergütung zu messen.
Wenn sich die Versorgungsspannung von 3,3 V ändert ... Spannungen, die sich ständig ändern, eine Spannung, die immer genau 3,3 V beträgt, gibt es nicht. Die eigentliche Frage ist, was wird benötigt ? Wenn die 3,3 V von einem Spannungsregler kommen, sind sie möglicherweise bereits stabil genug, überprüfen Sie die Spezifikationen des Spannungsreglers. Auch der ADC spielt eine Rolle, wenn der ADC beispielsweise nur 4 Bit hat (Extrembeispiel), kann er nicht einmal kleine Spannungsänderungen erkennen. Fragen Sie sich, welche Genauigkeit erforderlich ist und was das für die Genauigkeit anderer Spannungen bedeutet?
Wie gezeichnet, macht der Spannungsteiler + Mikrocontroller in Ihrem Schaltplan möglicherweise nichts Nützliches! In vielen uCs ist die ADC-Referenz die Versorgungsspannung (sofern Sie dies nicht anders programmieren). Die Spannung vom Spannungsteiler ist auch direkt abhängig von der Versorgungsspannung. Ihr ADC würde also einfach eine Zahl ausgeben, die den Teilungsfaktor des Spannungsteilers unabhängig vom Wert der Versorgungsspannung angibt ! Um dies zu beheben, benötigt der ADC eine unabhängige Referenzspannung, siehe Markos Antwort.
Ich mache keinen Sinn aus diesem Vorschlag. Wenn der IC auf der linken Seite die 3,3 Volt genau misst, verwenden Sie seinen digitalen Ausgang.
@Andyaka Du meinst als Verstärkung im Mikrocontroller rechts wie: ((3,3 V gemessen vom linken IC) / 3,3 V) * ADC-Messung vom Mikrocontroller rechts) = kompensierte ADC-Messung?
Nein, laut Spehros Kommentar, warum haben Sie zwei verschiedene Methoden, um dasselbe zu messen - verwenden Sie einfach die genauere Methode und vergessen Sie die ungenaue Methode.
Beide Teile haben unterschiedliche andere Aufgaben, deshalb sind sie da, aber der Spannungsteiler ist mit dem ADC des Mikrocontrollers verbunden und jetzt ist die Frage, ob die Genauigkeit mit der Knolledege der gemessenen 3,3 V vom IC nach links verbessert werden kann.
Ist dieser Spannungsteiler ein Sensor ? Ich denke, die meisten von uns sehen, dass Sie versuchen, 3,3 V zweimal zu messen, nicht den Wert eines Sensors zu messen und ihn mit einer 3,3-V-Messung zu korrigieren.
@TimWescott ja, es ist ein Sensor, deshalb habe ich ihn als Potentiometer gezeichnet. Vielleicht habe ich es verwirrend ausgedrückt.

Antworten (2)

Wenn Sie gelegentlich genauere Messungen der 3,3 V erhalten, können Sie die Messung über den Spannungsteiler korrigieren, was häufiger durchgeführt werden kann. Die Details, wie z. B. die Filterung, würden davon abhängen, wie sich die 3,3 V ändern (wie schnell und wie stark). Es könnte schwierig sein, wenn die Änderungen relativ groß und sprunghaft sind

Vielleicht könnten Sie sogar eine einmalige Selbstkalibrierung durchführen und den Faktor in einem EEPROM speichern. Was sinnvoll ist, hängt sehr stark von den Details dessen ab, was Sie zu tun versuchen. Zum Beispiel haben wir für eine Anwendung die Überwachung aller Versorgungsschienenspannungen und -ströme hinzugefügt, da das Instrument während des Betriebs sehr unzugänglich sein würde.

Ich schlage vor, den maximal zulässigen Korrekturfaktor bescheiden, aber groß genug zu machen, um Änderungen aufgrund von ADC-Referenztoleranz, Drift, Temperaturdrift und Widerstandstoleranz entgegenzuwirken. Und überlegen Sie, was passieren muss, wenn die genaue Messung verspätet oder nie empfangen wird oder eindeutig aus dem Gleichgewicht geraten ist – Probleme auf Systemebene.

Also in Software mit zusätzlichen Einschränkungen, wie ich kommentiert habe: ((3,3 V gemessen vom linken IC) / 3,3 V) * ADC-Messung vom Mikrocontroller rechts) = kompensierte ADC-Messung?
(Aktueller uCADC/Referenz-uCADC)*(genaue Referenzmessspannung). Angenommen, es gibt einen minimalen Versatz, dass der größte Teil des Fehlers skaliert ist.
Entschuldigung, dass ich es verwirrend ausgedrückt habe. @TimWescott gab mir den richtigen Hinweis, dass der Spannungsteiler etwas irreführend ist, der untere Teil ist ein Sensot, der seinen Widerstand ändert. Ich habe versucht, es mit dem Potensiometer-Symbol darzustellen. Um dies zu verdeutlichen, habe ich der Zeichnung in meiner Frage einen Hinweis hinzugefügt. (Die 3,3V werden nicht zweimal gemessen)
Okay, das gleiche Prinzip gilt in jedem Fall.

schematisch

Simulieren Sie diese Schaltung – Mit CircuitLab erstellter Schaltplan

Sie können einen Operationsverstärker verwenden, um die interne Vref Ihrer MCU zu puffern, und sie wird zu einem ratiometrischen ADC. Beispiel für 12-Bit-ADC:

C Ö D e = 4095 v R e F v A D C = 4095 v R e F v R e F R 2 R 1 + R 2 = 4095 R 2 R 1 + R 2

Wie Sie sehen, hebt sich die V_ref auf.