Forum: Mikrocontroller und Digitale Elektronik ADC Wert ändert sich bei ändernder Versorgungsspannung


von Günta (Gast)


Lesenswert?

Hallo,

ich hab einen üblichen KTY81 mit Spannungsteiler an einen STM32 
angeschlossen.

Mir ist nun aber aufgefallen das ich trotz nutzen der Referenzspannung, 
der ADC Wert nicht nur bei Temperatur änderung ändert sondern auch bei 
änderung der Versorgungspannung.

Da das Ganze Batteriebetrieben laufen soll ist das natürlich ziemlich 
ungünstig.

Ich hab noch nie was mit einem ADC + referenzspannung gemacht deswegen 
kenn ich mich da nicht so aus.

Ist das Normal das der ADC Wert dann auch schwankt?

Das soll meines Verständnissis nach ja die Referenzspannung verhindern.

Freundliche Grüße

Günta

von Achim S. (Gast)


Lesenswert?

Günta schrieb:
> ich hab einen üblichen KTY81 mit Spannungsteiler an einen STM32
> angeschlossen.

Und womit wird dieser Spannungsteiler versorgt? Mit der 
"Referenzspannung" oder mit der Versorungsspannung? Wenn sich die 
Versorgung des Teilers ändert, dann ändert sich natürlich auch die 
Spannung, die du im Teiler abgreifst.

Wenn sich die Referenzspannung im selben Maß ändert, sollte dein 
ADC-Wert gleich bleiben. Aber wenn die Referenzspannung des ADCs gleich 
bleibt, dann muss sich natürlich der ADC-Wert ändern, weil sich ja die 
Eingangsspannung des ADC ändert.

von c-hater (Gast)


Lesenswert?

Günta schrieb:

> Mir ist nun aber aufgefallen das ich trotz nutzen der Referenzspannung,

Welcher genau? Denn: irgendeine mußt du ja immer benutzen.

> der ADC Wert nicht nur bei Temperatur änderung ändert sondern auch bei
> änderung der Versorgungspannung.

Wenn du natürlich die Versorgung als Referenz benutzt, dann brauchst du 
dich nicht zu wundern, wenn sich der Messwert ändert, wenn sich die 
Versorgung=Referenz ändert. Das ist so logisch, dass es nichtmal 
erwähnenswert ist...

Weil das so ist, gibt es typisch weitere Referenzquellen zur Wahl. Die 
haben zwar typisch auch eine gewisse Abhängigkeit zur Versorgung, nur 
ist diese halt deutlich geringer, als würde man direkt die Versorgung 
als Referenz benutzen.

Versorgung als Referenz ist nur bei ratiometrischer Messung sinnvoll. 
D.h.: wenn die zu messende Spannung eine direkte Abhängigkeit von der 
Versorgung hat. Weil: genau dann (und nur dann) passt es zur gewählten 
Referenz.

von Günta (Gast)


Lesenswert?

Sorry, das muss ich natürlich dazuschreiben, als Referenzspannung hab 
ich die interne 1,224 Volt des STM32 genommen.

Diese liegt auch Konstant an PB0 an, also verändert sich nicht bei 
änderung der versorgungspannung, deswegen find ich es ja so komisch das 
sich dann trotzdem der ADC wert ändert.

So ist das Ganze aufgebaut:
1
GND -----------
2
              |
3
              || KTY81/210 2.02kΩ
4
              |
5
ADC IN --------        
6
              |
7
              || 2K
8
              |
9
PB0 (Vref) ----

von Günta (Gast)


Lesenswert?

Achim S. schrieb:
> Wenn sich die Referenzspannung im selben Maß ändert, sollte dein
> ADC-Wert gleich bleiben. Aber wenn die Referenzspannung des ADCs gleich
> bleibt, dann muss sich natürlich der ADC-Wert ändern, weil sich ja die
> Eingangsspannung des ADC ändert.

Das würde im endeffekt bedeuten das, wenn ich eine von der 
Versorgungspannung unabhängige ADC werte will, das ich dann die 
versorgungsspannung als referenzspannung nehmen muss statt der internen?

von Flip B. (frickelfreak)


Lesenswert?

ja genau, der adc hat nämlich AVCC als referenz, nicht Vref

von Achim S. (Gast)


Lesenswert?

Günta schrieb:
> als Referenzspannung hab
> ich die interne 1,224 Volt des STM32 genommen.
>
> Diese liegt auch Konstant an PB0 an

Kann dieser "Vref-Ausgang" an PB0 auch genügend Strom liefern oder ist 
der hochohmig und darf nicht belastet werden?

Günta schrieb:
> So ist das Ganze aufgebaut:

Na: dann sollte - wenn alles ideal wäre - der ADC-Wert nicht von der 
Versorgung abhängen. Wenn er es trotzdem tut, dann ist wohl etwas nicht 
ideal. Das sollte sich durch Messung herausfinden lassen.

Hast du ein Multimeter? Dann miss doch mal den Wert von PB0. Entspricht 
er dem erwarteten von 1,224V? Ändert sich die Spannung, wenn du den 
Teiler als Last an PB0 anschließt? Ändert sich die Spannung, wenn die 
Versorgung variiert?

Miss parallel dazu auch die Spannung an ADC_in mit dem Multimeter. Wie 
verhält sich die, wenn die Versorgung variiert.

Günta schrieb:
> Das würde im endeffekt bedeuten das, wenn ich eine von der
> Versorgungspannung unabhängige ADC werte will, das ich dann die
> versorgungsspannung als referenzspannung nehmen muss statt der internen?

Es bedetet, dass die Versorgung des Teilers und die Referenzspannung des 
ADCs gleich sein und in gleicher Weise variieren sollten. Das ist die 
ratiometrische Messung.

Welche Spannung das dann ist (die Versorgung des µC oder die gepufftere 
interene Referenzspannung) ist in erster Näherung egal (nur wenn man 
genauer hinschaut, macht es wieder einen Unterschied, weil beide 
Spannungen unterschiedlich "sauber" sein dürften).

von rmf (Gast)


Lesenswert?

Rein aus Neugierde und weil ich jetzt nicht mal schnell einige Hundert 
STM32 Datenblätter durchschauen möchte folgende Frage:
Welcher STM32 hat denn auf PB0 einen VRef Ausgang?

von Gerald K. (geku)


Lesenswert?

Wie hoch ist die Spannungsversorgung?

Für eine gut funktionierende Stabilisierung der Referenzspannungsquelle 
wird eine Differenz zwischen Versorgungsspannung und Referenzspannung 
benötigt.

Daher hat der MSP430G2553 wegen des großen Versorgungsspannungsbereiches 
(1,8-3,6V) eine umschaltbare Referenzspannungsquelle (3V <=> 1,5V). ). 
Bei 1,8V Versorgungsspannung bleibt für die 1,5V Referenzspannung nur 
0,3V für die Stabilisierung übrig.

von Günta (Gast)


Lesenswert?

Hallo,

wie bereits von Flip B. (frickelfreak) arbeitet der ADC mit AVCC als 
referenz.

Hab jetzt am spannungsteiler auch AVCC welches mit VCC 
paralellgeschaltet ist als referenz.

Jetzt Klappt das Probblemlos, egal wie voll oder leer die Batterie ist 
der ADC wert ändert sich nur noch bei temperaturänderung :)

rmf schrieb:
> Rein aus Neugierde und weil ich jetzt nicht mal schnell einige Hundert
> STM32 Datenblätter durchschauen möchte folgende Frage:
> Welcher STM32 hat denn auf PB0 einen VRef Ausgang?

das ist soweit ich weiss die L0 und die L1 Serie, vermutlich die anderen 
L serien auch.

Vielen Dank

von rmf (Gast)


Lesenswert?

Günta schrieb:
> das ist soweit ich weiss die L0 und die L1 Serie, vermutlich die anderen
> L serien auch.

Habe das gerade mit einem L071 positiv geprüft.

viele Dank für die schnelle Antwort.

von Achim S. (Gast)


Lesenswert?

rmf schrieb:
> Habe das gerade mit einem L071 positiv geprüft.

ok, jetzt habe ich auch in dessen Datenblatt geschaut. Dort steht, dass 
man VREF_out an PB0 mit maximal 1µA belasten darf, wenn sich der Wert 
der Spannung nicht um mehr als 1% verschieben soll.

Der Spannungsteiler von Günta überlastet PB0 mit sehr viel mehr Strom, 
so dass sich Vref an verschiedenen Stellen (beim ADC, an PB0) 
unterschiedlich einstellen kann. Und dieser Unterschied darf sich dann 
auch verändern, wenn die Versorgungsspannung sich ändert - und 
dementsprechend wackelt der ADC-Wert.

von Falk B. (falk)


Lesenswert?

Achim S. schrieb:
> ok, jetzt habe ich auch in dessen Datenblatt geschaut. Dort steht, dass
> man VREF_out an PB0 mit maximal 1µA belasten darf, wenn sich der Wert
> der Spannung nicht um mehr als 1% verschieben soll.

Und die Moral von der Geschicht, belaste deine Referenzspannung 
übergebührlich nicht.

von ElektroFH (Gast)


Lesenswert?

Günta schrieb:
>> Rein aus Neugierde und weil ich jetzt nicht mal schnell einige Hundert
>> STM32 Datenblätter durchschauen möchte folgende Frage:
>> Welcher STM32 hat denn auf PB0 einen VRef Ausgang?

Achim S. schrieb:
> man VREF_out an PB0 mit maximal 1µA belasten darf, wenn sich der Wert
> der Spannung nicht um mehr als 1% verschieben soll.

Das ist genau der wichtige Punkt: Es geht um hier Mikrocontrollern, mit 
integrierten ADCs und REFs.

Wegen verschiedenen Gründen (z.B. Analog vs Digital IC Techniken) werden 
solche uCs **nie** der Leistung erreichen, die Analog-Schaltungen selber 
ausliefern können.
Eine nimmt AVCC als Referenz, der Andere limitiert den Ausgang Strom zu 
1uA.
(Macht mal mit MegaOhms einen Teiler und wundert sich allein auf 
Rauschwerte und Fehlern)
Bei beiden werden ENOB deutlich kleiner als die Auflösung haben.
Eine Andere hat große Fehlern über VCC oder Temperaturen.
 Es wird mindestens Eine dieser Problemen immer auftauchen.

von Günta (Gast)


Lesenswert?

Hallo,

mir fällt grad auf das ich so ja das problem hab das die ganze zeit 
Strom durch den Spannungsteiler fließt, ich wollte den vref out 
eigentlich nur einschalten wenn er gebraucht wird.

Heisst ich kann auch die 1,224V Referenzspannung von PB0 nehmen wenn der 
Wiederstand bestehend aus NTC/PTC und Festwiderstand etwa 1224 KOhm 
beträgt?

das entspräche dann ja 1µA

ist das nicht etwas viel widerstand?

von Falk B. (falk)


Lesenswert?

Günta schrieb:
> Heisst ich kann auch die 1,224V Referenzspannung von PB0 nehmen wenn der
> Wiederstand bestehend aus NTC/PTC und Festwiderstand etwa 1224 KOhm
> beträgt?

Theoretisch ja, praktisch nein. Denn erstens gibt es keine so 
hochohmigen NTCs und 2. ist das alles unnötig hochohmig, was es 
empfindlich gegen Feuchtigkeit und eingekoppelte Störungen machen.

Praktisch kann man mit den 1uA nix anfangen. INdirekt sagt dir der 
Hersteller damit, lass die Finger von den Pin und schieße nix an, 
bestenfalls einen kleinen Kondensator zur HF-Entkopplung.

Wenn du sowieso VCC als Referenzspannung nutzt aber dennoch deinen 
Spannungsteiler abschaltbar machen willst, häng ihn an einen normalen 
IO-Pin. Den kann man bei Bedarf einschalten, dessen Ausgangsspannung ist 
nahezu VCC (CMOS-Ausgang). Die paar Dutzend Ohm Ausgangswiderstand 
spielen kaum eine Rolle und sind halbwegs konstant. Damit ist der 
Fehlereinfluß gering.

von Dietrich L. (dietrichl)


Lesenswert?

Falk B. schrieb:
> lass die Finger von den Pin und schieße nix an,
> bestenfalls einen kleinen Kondensator zur HF-Entkopplung.

... oder häng einen OpAmp als Impedanzwandler dran, wenn du unbedingt 
Vref verwenden willst.

von Günta (Gast)


Lesenswert?

Falk B. schrieb:
> Wenn du sowieso VCC als Referenzspannung nutzt aber dennoch deinen
> Spannungsteiler abschaltbar machen willst, häng ihn an einen normalen
> IO-Pin.

Das ich da nicht selbst drauf gekommen bin ... wäre zu einfach gewesen 
:D

Vielen Dank für den Tipp

von Guest (Gast)


Lesenswert?

Oder du fängst an anständige Schaltungen zu bauen und knaupst nicht rum.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.