Forum: Analoge Elektronik und Schaltungstechnik Batteriespannung mit ADC über einen Spannungsteiler messen


von Mathias (Gast)


Lesenswert?

Hallo!

Ich möchte mit einem Mikrocontroller (P89LPC936), welcher mit 3.3V 
versorgt wird, die Spannung eines Lithium-Polymer Akkus messen.

Dazu werde ich die Batteriespannung mittels eines hochohmigen 
Spannungsteilers an den ADC anpassen. Da meine Schaltung im Sleepmodus 
recht sparsam sein muss (~5uA), muss der Spannungsteiler natürlich recht 
hochohmig gewählt werden.

Leider habe ich keinen Pin mehr frei, um die Spannung eventuell mit 
einem Transistor wegzuschalten.

Meine Frage ist jetzt nur, wie hochohmig das ganze maximal sein darf. Im 
Datenblatt konnte ich hierzu leider nichts finden.

Mein Ansatz wäre ein 3.3MOhm Widerstand in Serie zu einem 1MOhm 
Widerstand. Parallel zum 1MOhm (also zwischen meinem Messpunkt und 
Masse) hätte ich noch einen 100nF Keramikkondensator gehängt.

Die Genauigkeit spielt keine alzu große Rolle, 0.05V wären ausreichend.

Müsste das Ganze so funktionieren, oder ist es doch zu hochohmig? Spielt 
weiters die Wandlergeschwindigkeit eine Rolle?

Danke, mfg Mathias

von Falk B. (falk)


Lesenswert?

@  Mathias (Gast)

>Müsste das Ganze so funktionieren, oder ist es doch zu hochohmig?

Das passt.

> Spielt weiters die Wandlergeschwindigkeit eine Rolle?

Nein.

MFG
Falk

von Philipp C. (ba4_philipp)


Lesenswert?

Ich kenne deinen µC zwar nicht, aber die Megas von Atmel wollen eine 
Quellimpedanz von 10k oder niedrieger weil sonst der SH Kondensator 
nicht vernünftig geladen werden kann.

von Philipp C. (ba4_philipp)


Lesenswert?

Sorry, die 100nF hab ich jetzt erst gelesen.... Ja, ok dann schließe ich 
mich Falks Meinung an. Du darfst dann aber halt nur so oft samplen, dass 
man davon ausgehen kann, dass der 100nF Kondensator auch wieder geladen 
ist. Sonst misst Du eine zu kleine Spannung.

von Mathias (Gast)


Lesenswert?

Hi!

Danke für eure Antworten.

Habe das Ganze jetzt aufgebaut und ohne den 100nF Kondensator getestet 
und es funktioniert ohne Probleme!

Die Spannung wird ja nur beim Einschalten 1x gemessen.

MfG

von Philipp C. (ba4_philipp)


Lesenswert?

Wenn Du nur 1-2 pro Sekunde misst sollte es keine Probleme geben, wenn 
ich richtig überschlagen habe

von Mathias (Gast)


Lesenswert?

Thx Philip du meinst jetzt mit dem 100nF Kondensator oder? Eine einzige 
Messung ohne Kondensator, sollte aber doch auch funktionieren? Zumindest 
funktioniert es in der Praxis recht gut!

von Falk B. (falk)


Lesenswert?

@ Mathias (Gast)

>Messung ohne Kondensator, sollte aber doch auch funktionieren? Zumindest

Würde ich nicht machen.

>funktioniert es in der Praxis recht gut!

Bei diesem einen AVR im jetzigen Laboraufbau.

MFG
Falk

von Philipp C. (ba4_philipp)


Lesenswert?

Genau, das SH Glied öffnet den Schalter für eine gewisse Zeit in dieser 
Zeit muss der Hold Kondensator auf die zu messende Spannung geladen sein 
und da ist die Frage ob man das schafft mit 1M Quellimpedanz. Was 
spricht denn gegen die 100nF?

EDIT: In dem Datenblatt zu Deinem Controller steht übrigens auch der 
Hinweise mit den 10k Quellimpedanz.

von Mathias (Gast)


Lesenswert?

Hi! Gegen den 100nF spricht eigentlich nur der Platz, sonst nichts :-)

Aber sonst werde ich ihn doch einmal einbauen..

von Mathias (Gast)


Lesenswert?

So, habe das Ganze jetzt mit dem 100nF parallel zum 1MOhm aufgebaut und 
es funktioniert überhaupt nicht mehr.. Jemand eine Ahnung woran das 
liegen könnte?

von Falk B. (falk)


Lesenswert?

@ Mathias (Gast)

>es funktioniert überhaupt nicht mehr.. Jemand eine Ahnung woran das
>liegen könnte?

Schon mal überlegt, dass der Kondensator eine Weile zum Aufladen 
braucht?

Die Kondensatorladung ist nach etwa 5tau abgeschlossen.

MfG
Falk

von Mathias (Gast)


Lesenswert?

Ja natürlich :-) Aber ich messe immer, wenn ich vom Sleep-Modus aufwache 
und spätestens bei der 2ten Aktivierung (nach einigen Sec) müsste der 
Kondensator geladen sein.

MfG, Mathias

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Mathias wrote:

> Hi! Gegen den 100nF spricht eigentlich nur der Platz, sonst nichts :-)

Wenn du keinen Platz mehr für einen 0603 hast, nimmst du eben einen
0402.  Aber Vorsicht!, nicht husten beim Löten! :-)

von asdf (Gast)


Lesenswert?

Miss doch mal die tatsächlich anliegende Spannung mit einem Multimeter. 
Dann kannst du schon einmal eine Fehlerquelle ausschließen.

von Mathias (Gast)


Lesenswert?

Verwende so und so 0402 :-)

von Mathias (Gast)


Lesenswert?

Auf jeden Fall wandelt der ADC ohne Kondensator fast aufs mV (habe es 
jetzt sicher 100x getestet :-) ) genau und mit Kondensator misst er 
einen kompletten Schwachsinn..

von Philipp C. (ba4_philipp)


Lesenswert?

Sicher das den AD Wandler richtig eingestellt hast? Oder holst Du Dir 
den Wert nur einmal ab und der ist dauernd am samplen?

von Mathias (Gast)


Lesenswert?

Sry für die späte Antwort aber ich messe definitv nur einmal. Der ADC 
ist zwar durchgehend (außer natürlich im Sleep Mode) enabled, gemessen 
wird aber nur einmal

von Jan R. (janra)


Lesenswert?

Moin zusammen,
das klingt ja alles so, als würde das mit recht überschaubarem Aufwand 
an Bauteilen und Platz gut funzen.

Was ich mich jedoch frage: gibt es in den neueren MCUs das nicht schon 
integriert? Diese Funktion wird doch sehr häufig gebraucht. Da wäre doch 
ein Register im Controller ideal. Kann im Silizium nicht so teuer sein. 
Und würde den Verbrauch eines analogen Ports vermeiden.

Weiß jemand, ob Atmel das in einem Controller implementiert hat?

Schöne Grüße, Jan.

von Anja (Gast)


Lesenswert?

Mathias schrieb:
> Müsste das Ganze so funktionieren, oder ist es doch zu hochohmig? Spielt
> weiters die Wandlergeschwindigkeit eine Rolle?

Nein, Ja, Ja.

Für die Serie würde ich das nicht machen. Der Leckstrom ist mit +/- 10uA 
spezifiziert. D.h. das Ganze funktioniert nicht bei höheren Temperaturen 
falls die Quellimpedanz über den empfohlenen 10K-Ohm liegt.

Eine hohe Wandlergeschwindigkeit erhöht den mittleren Leckstrom wegen 
der Umladung der ADC-Eingangskapazität zusätzlich. Ein 100nF hilft hier 
nur wenn genügend Zeit zwischen den Wandlungen vorhanden ist. Gegen die 
statischen Leckströme hilft allerdings auch kein 100nF-Kondensator.

Mathias schrieb:
> Ja natürlich :-) Aber ich messe immer, wenn ich vom Sleep-Modus aufwache
> und spätestens bei der 2ten Aktivierung (nach einigen Sec) müsste der
> Kondensator geladen sein.

Was macht denn der Prozessor wenn er aufwacht? Geht er über Reset und 
schaltet erst mal alle Ports auf Pull-up oder bleibt der Pin ein 
ADC-Eingang?

Gruß Anja

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.