Welche beschriebene Schalt-/Verstärkungsmethode eignet sich besser zum genauen Lesen der variablen Spannung mit ADC?

Ich versuche, ein relativ genaues variables Netzteil mit einer Ausgangsspannung von 2 bis 24 V zu entwickeln, das von einer MCU mit handelsüblichen Teilen gesteuert wird.

Damit die MCU den gesamten Spannungsbereich lesen kann, bestand der einfachste Ansatz darin, einen Spannungsteiler zu verwenden, um die Skala von 0 bis 24 V auf 0 bis 3,3 V für die ADC-Einheit abzubilden. In Anbetracht von Rauschen und ADC-Präzision ist die Genauigkeit für die gewünschte Spannungsauflösung von 10 mV gering, daher habe ich 3 Abhilfemaßnahmen gefunden.

Ich bin ein bisschen verloren, um herauszufinden, was einen stabileren Messwert ergibt. Der Ansatz selbst ist mein Anliegen. Die gelieferten Werte (zB Eingangsspannung) sind nicht so kritisch.

Annahmen:

  • Die ungeregelte Eingangsspannung beträgt 25V.
  • Die Ausgangsspannung ist variabel von 2~24V.
  • Die gewünschte Spannungsauflösung beträgt etwa 10 mV. (z. B. ein Messwert von 7,24 V. Es ist nicht streng, wenn es nicht erreichbar ist.)
  • Digitalteile und Operationsverstärker haben eine linear geregelte Versorgung von 5V.
  • Der wichtigste einstellbare Regler, was den Ausgang betrifft, ist ein LM2596 mit im Datenblatt entworfener Schaltung.
  • ADC ist 10 Bit mit einer 3,3-V-Referenz von einer STM8S-MCU.
  • Der analoge Mux kann je nach Schaltspannungsbereich entweder CD4051 oder 74HC4051 sein.
  • Softwarekalibrierungen sind anwendbar.

Die Methoden:

A: Operationsverstärker mit variabler Verstärkung mit analogen Schaltern.

Bei diesem Design wird die Eingangsspannung geteilt, sodass der gesamte Eingangsbereich auf den ADC-Eingang skaliert wird. Aus Gründen der Genauigkeit wird jedoch ein einfacher Operationsverstärker mit einem MCU-gesteuerten analogen MUX platziert, um verschiedene Widerstände für die selektive Verstärkung auszuwählen. Korrekturen und Kalibrierungen sind per Software möglich. Die MCU beginnt mit der niedrigsten Verstärkung, addiert die Verstärkung, bis ein guter Wert erreicht ist.

Operationsverstärker mit variabler Verstärkung mit analogen Schaltern


B: Mehrere Teiler, Vorwiderstände zum Schutz

In diesem Design habe ich nur verschiedene Teiler für das analoge Zoomen verwendet (ist das richtig?) Ich habe Vorwiderstände für den Fall verwendet, dass die Eingangsspannung hoch ist, damit die geteilte Spannung (die vielleicht immer noch größer als die Eingangstoleranz der MCU ist) durch den internen Schutz geht Dioden und beschädigt die MCU nicht. Diese Methode benötigt 3 ADC-Eingänge (auch ein analoger Schalter ist anwendbar.)

Mehrfachteiler, Vorwiderstände zum Schutz


C: Mehrere Teiler, Analogschalter und Komparatoren für die Teilerauswahl.

Für den Fall, dass die B-Methode nicht anwendbar ist, habe ich hier Spannungskomparatoren und einen analogen Schalter hinzugefügt, um den Teiler basierend auf dem Eingangsspannungsbereich auszuwählen. Es benötigt keine Eingangswiderstände oder 3 ADC-Eingänge, die in B verwendet werden.

mehrere Teiler, Analogschalter und Komparatoren zur Auswahl

Sie müssen diese Teiler mit einer Diodenklemme versehen, sonst braten sie.
@DKNguyen meinst du, die internen GPIO-Schutzdioden reichen nicht aus?
Ach, ich schätze. Ich verlasse mich nicht gern. auf diesen.
@DKNguyen also die B-Methode mit zusätzlichen Klammern. Beeinflussen die Vorwiderstände die Messwerte? (Ich kann die Messwerte linear mit Software kalibrieren)
Sie wirken sich darauf aus, wie schnell Sie abtasten können, wenn sie nicht gepuffert sind. Der Thevnin-Widerstand und die ADC-Abtastkappe machen die RC-Zeit konstant.
@DKNguyen hat eine Sample-and-Hold-Obergrenze von 3pF. Ich denke ein paar Sample/ms sind kein Problem. Rechts ?
Es scheint, als wäre es in Ordnung.

Antworten (1)

Ich versuche, ein relativ zu entwerfen präzise variable Stromversorgung mit 2 ~ 24 V Ausgangsspannung, die von einer MCU gesteuert wird handelsübliche Teile .

ADC

Verwenden Sie einfach einen anständigen externen ADC mit einem einzelnen Potenzialteiler mit hohen Widerständen Genauigkeit (vielleicht 0,1 % und 15 ppm/°C). Ein 16-Bit-ADC hat eine Auflösung von 1 in 65536, sodass 24 Volt dividiert durch 65536 eine Auflösung von etwa 0,3662 mV ergeben. Sie können handelsübliche ADCs erhalten, die DNL und INLs von ein paar Bits haben und ungefähr die gleichen Verstärkungs- und Offset-Fehler aufweisen. Verwirren Sie sich nicht mit einer Menge externer Umschaltung von Verstärkungsstufen, holen Sie sich einen anständigen 16-Bit-ADC (serielle Ausgabe). Es gibt viele zur Auswahl.

Meine persönliche Präferenz, da ich buchstäblich Hunderte verwendet habe, ist folgende: -

Geben Sie hier die Bildbeschreibung ein

Es liefert nur die Ware. Der Fehler im schlimmsten Fall beträgt 4,15 LSb plus einen Nullpunktverschiebungsfehler von 0,5 mV - das liegt gut innerhalb dessen, was Sie brauchen (etwa ein Fehler von 2 mV).

Widerstandspotentialteiler

Natürlich müssen Sie anständige Widerstände haben, und 0,1-%-Typen erzeugen im schlimmsten Fall einen Vollausschlagsfehler von 48 mV, aber dies kann herauskalibriert werden, oder Sie verwenden 0,01-%-Widerstände, um im schlimmsten Fall einen Vollausschlagsfehler von 4,8 mV zu erhalten. Sie kosten natürlich ein bisschen, aber wenn Sie anständig wollen Genauigkeit dann musst du zahlen.

Spannungsreferenz

Sie müssen auch eine anständige Spannungsreferenz verwenden. Achten Sie auf den anfänglichen Genauigkeitsprozentsatz und Driftfaktoren mit der Temperatur. Ich neige dazu, wirklich gute wie den LTC6655B zu verwenden – er hat einen Anfangsbuchstaben Genauigkeit von 0,025 % und eine Drift von 2 ppm/°C, aber die C-Version ist billiger.

Leider habe ich aufgrund schwerer Sanktionen gegen das Land Zugang zu einem sehr kleinen Teil der elektronischen Teile. Ich habe auf lokalen Märkten nach AD7988 gesucht und nichts gefunden. Es gibt einige Modelle, die teuer sind. Die STM32-MCUs haben 12-Bit-ADCs, daher könnte ich in diesem Fall auf sie umsteigen. sie sind verfügbar und kosten weniger. Es ist ein Loadcell-ADC-Chip verfügbar, der auch mit 24 Bit (16 Bit effektiv) verfügbar ist.
@TirdadSadriNejad Du sagtest, Teile von der Stange zu verwenden. Sie sollten uns von Anfang an sagen, welche Teile Sie in Ihrem speziellen Regal haben.
@ TirdadSadriNejad Der AD7988 ist meine Wahl - Sie können einen beliebigen 16-Bit-ADC auswählen und die Zahlen mit dem vergleichen, was ich verwende, und eine Entscheidung treffen, die auf dem basiert, was Sie im Vergleich zu Genauigkeit und Auflösung erhalten können. Ich kann keine länderspezifischen Antworten geben, und Sie haben nach Teilen von der Stange gefragt, und diese Aussage impliziert normalerweise, dass es Regale mit einer Vielzahl von Teilen gibt und nicht, dass Ihr Land Importsanktionen hat.