Forum: Mikrocontroller und Digitale Elektronik Batterie messen in low power Design


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Stefan (Gast)


Lesenswert?

Hallo,

ich würde gerne mit dem ADC eines AVR die Batteriespannung messen. Die 
Batteriespannung liegt über VCC (max. 1,5V).
Das ganze ist in einem Gerät das möglichst wenig Strom verbrauchen soll. 
Daher war die ursprüngliche Idee einen Spannungsteiler zu machen, bei 
dem Masse des Spannungsteilers vom AVR geschaltet wird, um in den 
Ruhephasen keinen Strom zu verbrauchen. Nur würde in dem Fall die 
Spannung an den beiden Pins auf VBAT ansteigen und wäre dementsprechend 
zu hoch für den AVR.
Schwierigkeit zwei ist, dass ein abfallen der Spannung auf 0V (entnehmen 
der Batterie) einen Interrupt auslösen soll.
Beides war kein Problem als der AVR noch direkt aus der Batterie 
gespeist wurde (VCC war VBAT und in den Ruhephasen war der Analog Pin 
als IO mit PCINT geschaltet). Aber ein paar Peripheriegeräte brauchen 
3,3V und die ganzen Pegelwandler sind wahrscheinlich aufwändiger als die 
gesammte Schaltung auf 3,3V zu bauen.

Welche Möglichkeiten gibt es nun möglichst stromsparend die 
Batteriespannung zu messen und den Spannungsabfall zu detektieren (und 
das möglichst mit einem Pin)?

von Lurchi (Gast)


Lesenswert?

Vermutlich wird der immer vorhandene Spannungsteiler die passende Lösung 
sein. Wenn man parallel 1 oder 2 Kondensatoren hat, darf der 
Spannungsteiler auch sehr hochohmig sein ( z.B. 2 mal 1 M Ohm). Zur 
Detektion eignet sich dann der analoge Komparator, der meist auch auf 
einen der ADC Pins fällt. Vermutlich wird der Komparator mehr Strom 
verbrauchen als die Widerständen.

Wenn man unbedingt den Teiler abschalten will, ginge das ggf. über einen 
P-Kanal MOSFET mit passender Einschaltschwelle von etwa 2-3 V.

von Stefan (Gast)


Lesenswert?

Ja, den PMOS hatte ich auch schon im Kopf, dann fällt aber leider die 0V 
Erkennung weg.
AINs und ADCs sind leider verschiedene Pins, was dann einen verbrauch 
von 3 Pins bedeuten würde. Da lässt sich was einfacheres mit einem PNP 
machen.
Hat jemand noch eine andere Idee als den hochohmigen Spannungsteiler?

von Konrad S. (maybee)


Lesenswert?

Stefan schrieb:
> Hat jemand noch eine andere Idee als den hochohmigen Spannungsteiler?

Details wären nützlich.

Welcher Batterie-/Akku-Typ?
Welcher Spannungsregler?
Was willst du mit der gemessenen VBAT anfangen (z.B. Warnung 
Batterie/Akku bald leer)?
Welcher µC kommt zur Einsatz?
Wie hoch ist der (maximale) Stromverbrauch der Schaltung?

> Schwierigkeit zwei ist, dass ein abfallen der Spannung auf 0V (entnehmen
> der Batterie) einen Interrupt auslösen soll.

Ich sehe da noch die Schwierigkeit, dass der µC bei 0V nicht läuft und 
somit auch keinen Interrupt abarbeiten wird. Oder was meintest du mit 
dieser Anforderung?

von Stephan (Gast)


Lesenswert?

Wenn der AVR von dem Akku versorgt wird, wie kannst du dann die Spannung 
mit einem ADC vom AVR zuverlässig messen?
Die Referenz des ADC würde sich doch mit der Spannung des Akkus 
verändern und du müsstest doch dann kontinuierlich eine Wertekorrektur 
durchführen.

von Bitflüsterer (Gast)


Lesenswert?

Es kommt mir so vor, als wenn die Brown-Out-Detection die Lösung wäre, 
da ja der AVR auch von der zu messenden Batterie versorgt wird. 
Vielleicht bräuchte man die Messung dann gar nicht mehr. Wozu soll die 
dienen?

von Lurchi (Gast)


Lesenswert?

Der eine Pin des analogen Komparators ist bei den meisten AVRs auch ein 
ADC Eingang. Wenn der ADC aus ist, lässt sich der analoge Komparator 
auch über den MUX vom ADC verteilen. Als Vergleichswert für den 
Komparator lässt sich die Bandgap Ref. wählen. Man muss dann nur den 
Teiler entsprechend wählen.

von Joachim B. (jar)


Lesenswert?

Stephan schrieb:
> Die Referenz des ADC würde sich doch mit der Spannung des Akkus
> verändern

wer sagt den das AREF = VCC sein soll?
nicht wenn man die interne REF wählt, die liegt immer unterhalb der 
Versorgung, mal 2.56V, mal 1.1V

http://arduino.cc/en/pmwiki.php?n=Reference/AnalogReference

oder ins Atmel AVR Datenblatt schauen

von Stone (Gast)


Lesenswert?

Es kommt wirklich drauf an was für dich wenig Stromverbrauch bedeutet. 
Reden wir von 1uA oder 1mA da liegen vom Aufwand Welten dazwischen. Die 
interne ref. Braucht ~50uA bei ner Knopfzellen ist das viel bei her 
Autobatterie kannst es vernachlässigen.

Gruß Matthias

von Stefan (Gast)


Lesenswert?

>Welcher Batterie-/Akku-Typ?
3x AA in Serie.

>Welcher Spannungsregler?
LDO mit 0,15V Drop bei der Höchstbelastung von 300mA

>Was willst du mit der gemessenen VBAT anfangen (z.B. Warnung
>Batterie/Akku bald leer)?
Jop, Akkuprotokollierung bzw. warnung

>Welcher µC kommt zur Einsatz?
ATMEGA164

>Wie hoch ist der (maximale) Stromverbrauch der Schaltung?
Wie oben geschrieben 300mA.

>Ich sehe da noch die Schwierigkeit, dass der µC bei 0V nicht läuft und
>somit auch keinen Interrupt abarbeiten wird.
Die Schaltung ist ausreichend mit Kondensatoren gepuffert, dass für den 
Fall des Entnehmens noch was ins EEPROM geschrieben werden kann.


@Lurchi
Danke für den Tipp, das werde ich mir mal genauer anschauen

@Stone
Ich kämpfe mit den uA. Das ganze Gerät macht im Endeffekt nix bis ein 
externer Interrupt es weckt. Das passiert regulär ein mal am Tag, oder 
bei einem besonderen Ereignis. In der Ruhephase bin ich im Moment bei 
ca. 1uA vom AVR, 0,5uA von der RTC, mein aktueller Stromfresser LDO mit 
4uA und wahrscheinlich noch mal bis zu 50uA in Form diverser Leckströme. 
Ein Spannungsteiler mit 100k gesammtwiderstand und dementsprechend 45uA 
Strom ist da schon sehr schmerzhaft.

von Konrad S. (maybee)


Lesenswert?

Also drei NiMH-Zellen. Wenn du dich auf Akku-Warnung beschränken kannst, 
dann könnte das auch ganz ohne Spannungsteiler und ohne einen einzigen 
Pin funktionieren. Dazu einfach die Bandgap-Reference messen mit AVCC 
als AREF. Die Warnung löst du aus, sobald VCC einzubrechen beginnt. Bei 
nomineller VCC 3.3V sind die Akkus noch ein gutes Stück von der 
Tiefentladung entfernt. Voraussetzung dafür ist allerdings, dass sich 
der Spannungsregler bei der eigentlich zu geringen Eingangsspannung 
gutmütig verhält.

von Joachim B. (jar)


Lesenswert?

Stefan schrieb:
> Ich kämpfe mit den uA.
> Ein Spannungsteiler mit 100k gesammtwiderstand und dementsprechend 45uA
> Strom ist da schon sehr schmerzhaft.

wer hindert dich einen Port zu AVCC zu legen?

Die AVCC nur vom Port einzuschalten bei Bedarf und die interne Referenz 
1.1V oder 2.56V von AVCC mit dem Spannungsteiler an AVCC zu nutzen?

Port AUS -> keine AVCC -> kein Verlust durch Teiler.

: Bearbeitet durch User
von Konrad S. (maybee)


Lesenswert?

Joachim B. schrieb:
> wer hindert dich einen Port zu AVCC zu legen?
>
> Die AVCC nur vom Port einzuschalten bei Bedarf

Aus dem Datenblatt:
"AVCC is the supply voltage pin for Port A and the Analog-to-digital 
Converter. It should be externally connected to VCC, even if the ADC is 
not used. If the ADC is used, it should be connected to VCC through a 
low-pass filter."

von Joachim B. (jar)


Lesenswert?

Konrad S. schrieb:
> Aus dem Datenblatt:

und was wolltest du mitteilen?

Das erschliesst sich aus deinem Posting nicht!

Er will den Stromverbrauch minimieren, das ginge mit einem geschalteten 
Spannungsteiler vom Port, der Port ist niederohmig genug so um 100 Ohm 
für einen rel. hochohmigen Spannungsteiler so im 10kOhm Bereich. Sogar 
der AVCC Verbrauch kann davon gedeckt werden und wird mit abgeschaltet, 
also was sollte da hindern?

Konrad S. schrieb:
> If the ADC is used, it should be connected to VCC through a
> low-pass filter."

ob der nun mit dem "low-pass filter" nach VCC oder nach Port geschaltet 
wird ist egal.

Aber vielleicht erklärst du ja deine Gedanken.

von Wolfgang (Gast)


Lesenswert?

Joachim B. schrieb:
> und was wolltest du mitteilen?

Wie verträgt sich deiner Meinung nach denn

Konrad S. schrieb:
> Aus dem Datenblatt:
> "... It should ..."

mit

Joachim B. schrieb:
> Die AVCC nur vom Port einzuschalten ...

von Joachim B. (jar)


Lesenswert?

Wolfgang schrieb:
> Wie verträgt sich deiner Meinung nach denn
>
> Konrad S. schrieb:
>> Aus dem Datenblatt:
>> "... It should ..."

na bestens!

soweit mein Englisch reicht und google meint:

"es sollte"

das ist kein Beton!

Der Stromverbrauch eines AVR ATmega ist bekannt, i.d.R. komplett so um 
50mA in meinen Applikationen von m32 bis 1284p sowie 328p auch als 
Arduino Clone. Davon wird am AVCC nur die Referenz und bei evtl. Port A 
gespeist, aber nicht mit allen mA.

Ein Port kann locker bis 20mA übernehmen, das sollte reichen für keine 
Lasten an Port A und für die Referenz.

Wenn ich zitieren darf:

Stefan schrieb:
> Das ganze ist in einem Gerät das möglichst wenig Strom verbrauchen soll.

gehe ich davon aus das nicht an jedem Port eine 20mA LED hängt, ergo was 
wird wirklich an Strom gebraucht an AVCC? kann man messen mit einen 
µA/mA Meter nach VCC.

: Bearbeitet durch User
von Mark S. (voltwide)


Lesenswert?

ich sehe kein Problem darin, mit einem Teiler bis 10MOhm auf einen 
Comparator oder ADC-Eingang zu, also Querströmen <1uA.
100nF parallell zum Eingang und die Sache läuft.

von Konrad S. (maybee)


Lesenswert?

Joachim B. schrieb:
> und was wolltest du mitteilen?

Ich denke, dass es keine gute Idee ist den µC nur über VCC zu versorgen.

von Joachim B. (jar)


Lesenswert?

Mark Space schrieb:
> ich sehe kein Problem darin, mit einem Teiler bis 10MOhm auf einen
> Comparator oder ADC-Eingang zu, also Querströmen <1uA.
> 100nF parallell zum Eingang und die Sache läuft.

OK wenn du weisst wovon du schreibst?

Ich lese immer für AVR ADC eine Eingangsimpedanz im 10k-100k Ohm 
Bereich.

Mit MOhm Teiler wäre ich skeptisch, ist aber auch egal weil das ja nicht 
nötig ist.

Wer mag misst mit einem RV von 1 Mohm die Eingangsimpedanz vom ADC.

Gutes Messgerät mit Ri von >10MOhm Bedingung, erst die Spannung hinter 
dem 1M messen, dann mit angeschaltetem ADC und durch die Differenz 
bekommt man die Last durch den ADC raus.

: Bearbeitet durch User
von Stefan (Gast)


Lesenswert?

Also, der AVR hängt an einem LDO. Dadurch ist VCC < VABT. Da AVCC 
maximal VCC + 0,3V sein soll, wird das nichts das ich AVCC direkt an die 
Batterie hänge. Oder habe ich die Diskussion mit AVCC jetzt falsch 
verstanden?

Die Referenz zu messen und festzustellen, dass der LDO nicht mehr 3,3V 
liefert ist eine Möglichkeit um zu erkennen, dass die Batterie langsam 
schwächelt, ich würde aber gerne durchgehen wissen welche Spannung die 
Batterie hat und nicht erst wenn sie langsam gegen Ende geht.

Ich habe schon öfter von Spannungsteiler in MOhme bereich mit 
nachgeschaltetem Pufferkondensator gehört.
Grob über den Daumen gepeilt würde ich mit zwei 470k als Spannungsteiler 
und einer 100nF Diode nach einer Millisekunde den PCINT durch 
entnommenen Akku haben. Ich muss mal schauen wie weit in der Zeit die 
Spannung über den Pufferkondensatoren abgefallen ist und ob dann noch 
sicheres Schreiben in den EEPROM möglich ist. Da der ADC S/H Kondensator 
mit 14pF angegeben ist, könnte ich sicherlich auch noch bisal unter die 
100nF gehen. Aber irgendwann ist der Spannungsteiler so hochohmig/die 
Kapazität so klein, dass der ADC mehr Antenne als anders ist. Ich werde 
dahingehend mal bisal experimentieren.

von Joachim B. (jar)


Lesenswert?

Stefan schrieb:
> Also, der AVR hängt an einem LDO. Dadurch ist VCC < VABT. Da AVCC
> maximal VCC + 0,3V sein soll, wird das nichts das ich AVCC direkt an die
> Batterie hänge.

richtig,

Stefan schrieb:
> ich würde aber gerne durchgehen wissen welche Spannung die
> Batterie hat und nicht erst wenn sie langsam gegen Ende geht.

OK

Stefan schrieb:
> Ich habe schon öfter von Spannungsteiler in MOhme bereich mit
> nachgeschaltetem Pufferkondensator gehört.

ich nicht, jedenfalls nicht so......

was gehen könnte, eine abgewandelte Schaltung von dem hier:
http://www.mikrocontroller.net/articles/Datei:Schaltplan_transistortester.png

Dein Spannungsteiler im Bereich Summe 10k-20k setzt die maximale 
Meßspannung (?) unter die Referenzspannung (? -> 1,1V oder 2,56V)

angenommen Vbat max. 5,5V (3x Mignon oder Micro Alkaline je 1,7V 
maximal, so meine Messungen mit frischen Zellen)
Uref 1,1V gibt einen Teiler von 5,5 zu 1,1 = 1/5
der obere R hat also 4/5 der unter R 1/5 Summe 20k gibt oben 16k unten 
4k
oder eben passende nahe dran -> 16k und 3,9k

dieser Teiler kommt an Transistor T3 Collector

Der Teiler wird angeschaltet nicht vom Taster S1 sondern vom µC mit T1, 
die LED kann entfallen, überbrückt werden.

Wie hier glaubhaft versichert wurde liegt der Strom so unter 20nA wenn 
off ist.

http://www.mikrocontroller.net/articles/AVR-Transistortester
Stromverbrauch im ausgeschalteten Zustand: < 20 nA

nur das eben nicht der ganze AVR damit eingeschaltet wird, hier nur der 
Spannungsteiler.

Stefan schrieb:
> Oder habe ich die Diskussion mit AVCC jetzt falsch
> verstanden?

weiss ich nicht, wäre noch eine Möglichkeit den Strom am AVCC 
abzuschalten durch einen Port, ob das noch was zusätzlich bringt, bzw. 
das lohnt weiss ich nicht, die Theorie meint ja bringt evtl. noch wenige 
µA denn wenn gerade nicht gemessen werden soll und auch keine A Ports 
gebraucht werden warum AVCC versorgen.

von holger (Gast)


Lesenswert?

>denn wenn gerade nicht gemessen werden soll und auch keine A Ports
>gebraucht werden warum AVCC versorgen.

Deshalb:

The ADC has a separate analog supply voltage pin, AVCC. AVCC must not 
differ more than ±0.3 V from VCC.

AVCC ist nicht optional.

von Joachim B. (jar)


Lesenswert?

holger schrieb:
> Deshalb:
>
> The ADC has a separate analog supply voltage pin, AVCC. AVCC must not
> differ more than ±0.3 V from VCC.
>
> AVCC ist nicht optional.

was willst du aussagen?

Wer glaubt denn das AVCC aus einem Port um mehr als 0,3V von VCC 
abweicht wenn on?

Ich wüsste nicht das ein Port 0,3V weniger als VCC liefert ohne Last, 
wer hat das schon mal gemessen, wo an welchem AVR?

Prüfe ich gerne Montag mit einem 6,5-stelligen Voltmeter nach.

von Konrad S. (maybee)


Lesenswert?

Joachim B. schrieb:
> Wer glaubt denn das AVCC aus einem Port um mehr als 0,3V von VCC
> abweicht wenn on?

Die Frage stellt sich nicht bei "on", sondern bei "off"!

von Joachim B. (jar)


Lesenswert?

Konrad S. schrieb:
> Die Frage stellt sich nicht bei "on", sondern bei "off"!

wenn es nicht benutzt wird?

sehe ich nicht so, aber gut, ich weiss es nicht, du vielleicht? dann 
schreib mehr darüber, so diffuse Halbsätze helfen ja auch nicht weiter.

von Stefan (Gast)


Lesenswert?

@Joachim B.
Das wäre wieder der geschaltete Spannungsteiler den ich oben schon 
erwähnt habe, nur mit PNP statt PMOS. Das würde mir aber wieder die 
Batterieentnahmeerkennung versauen.
In irgend einem englischsprachigen Forum gab es mal eine recht lange und 
interessante Diskussion zu den hochohmigen Spannungsteilern mit 
Pufferkondensator. Was ich da so rausgelesen habe muss es sehr 
zuverlässig und genau sein, da es ja quasi einen Tiefpass darstellt.

von Bitflüsterer (Gast)


Lesenswert?

Hm. Vielleicht ist mein Beitrag 
Beitrag "Re: Batterie messen in low power Design" ja überlesen worden. 
Dort habe ich die Brown-Out-Erkennung genannt.
Mag auch sein, dass er nicht relevant ist - allerdings kann ich darauf 
keine Hinweise erkennen. Die Erkennung der Batterieentnahme spielt ja 
immer noch eine Rolle.

von Joachim B. (jar)


Lesenswert?

Stefan schrieb:
> Das wäre wieder der geschaltete Spannungsteiler den ich oben schon
> erwähnt habe, nur mit PNP statt PMOS. Das würde mir aber wieder die
> Batterieentnahmeerkennung versauen.

wegen der Last beim Messen? oder wie belieben?

verstehe ich grad nicht, 1x pro Stunde 250µA (5V/20000 Ohm) für 50ms zu 
entnehmen ist ein Problem?

Stefan schrieb:
> In irgend einem englischsprachigen Forum gab es mal eine recht lange und
> interessante Diskussion zu den hochohmigen Spannungsteilern mit
> Pufferkondensator. Was ich da so rausgelesen habe muss es sehr
> zuverlässig und genau sein, da es ja quasi einen Tiefpass darstellt.

OK wenn Tau bekannt ist kann man es ja versuchen, nur hängt der eben 
immer dran ist halt ne Abwägung zwischen Dauer und Messzeit.

Bitflüsterer schrieb:
> Dort habe ich die Brown-Out-Erkennung genannt.

nur dann ist es vielleicht zu spät?

ich denke er will vorher informiert werden wenn die Spannung kritisch 
wird.

: Bearbeitet durch User
von Lurchi (Gast)


Lesenswert?

AVCC abzuschalten oder nicht zu belegen macht keinen Sinn. Zum einen 
verlangt das Datenblatt da eine Spannung im Bereich VCC +-0,3 V und zum 
anderen dürfte man dadurch auch nichts gewinnen. Teile wie den ADC, die 
interne Ref. usw. kann man auch ganz regulär intern abschalten. Auch 
wenn AVCC offen ist, darf die Spannung an den Eingängen nicht höher 
werden, denn die internen Dioden in Richtung VCC/AVCC sind parasitäre 
Pfade über das Substrat. Die verschwinden nicht einfach.

Die Probleme die man bekommen kann, wenn AVCC nicht angeschlossen ist, 
sind Fehler beim Brown-out-Detektor, und wenn es ganz dumm kommt ggf. 
auch ein Latchup beim einschalten. Auch ein erhöhter Stromverbrauch ist 
möglich, weil intern ggf. undefinierte Pegel auftreten - weniger wird es 
eher nicht.

Der Teiler darf schon recht hochohmig sein. Man muss aber ggf. mit etwas 
Offset durch Leckströme rechnen. Solange man nicht bei hohen 
Temperaturen ist, sollte das aber in Grenzen bleiben. Eine Abschrimung 
gegen Störungen wird man wohl schon brauchen.

Ein schnelles Sinken der Spannung (etwa weil die Akkus entnommen werden) 
kann man ggf. über einen Kapazitiven Teiler erkennen. Also nicht nur 
einen Kondensator nach Masse nutzen, sondern auch einen zum Akku. Dann 
reagiert der Teiler trotz hoher Widerstände auch auf schnelle 
Änderungen.

von Konrad S. (maybee)


Lesenswert?

Stefan schrieb:
> ich würde aber gerne durchgehen wissen welche Spannung die
> Batterie hat und nicht erst wenn sie langsam gegen Ende geht.

Ja, das bekommst du auf die Art natürlich nicht gebacken. Für diesen 
"Luxus" wirst du wohl einen gewissen Preis zahlen müssen, z.B. den 
P-MOSFET und zwei Pins.

Stefan schrieb:
> Batterieentnahmeerkennung

... da war noch die Möglichkeit, jeden Slot im Batteriehalter mit einer 
(Schottky-)Diode zu versehen. Dann kannst du einen Akku nach dem anderen 
austauschen, ohne die Stromversorgung zu unterbrechen. Bei insgesamt nur 
drei Zellen wird das allerdings etwas eng mit der Spannung: zwei weit 
entladene Zellen minus Spannungsverlust durch eine Diode.

von Bitflüsterer (Gast)


Lesenswert?

Joachim B. schrieb:
> Bitflüsterer schrieb:
>> Dort habe ich die Brown-Out-Erkennung genannt.
>
> nur dann ist es vielleicht zu spät?

Das ist möglich. Worauf stützt sich Deine Vermutung? Habe ich da etwas 
überlesen?

> ich denke er will vorher informiert werden wenn die Spannung kritisch
> wird.

Mit einem Kondensator könnte man Vcc noch recht lange puffern, so dass 
Zeit für einige Aktionen bleibt. Ist das bedacht und ich habe es nur 
überlesen?

von TomA (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Stefan,

ich habe jetzt nicht alle Beiträge hier gelesen, trotzdem mein 
Vorschlag.

Nimm einen dynamischen Spannungsteiler. Das Bild zeigt die Schaltung mit 
einer 2,7V Zenerdiode. Die Spannung am Messpin ist damit um 2,7V kleiner 
als die Batteriespannung, sofern an PX.Y Low ansteht. Wird PX.Y auf High 
geschaltet, fließt kein Strom mehr, da die Flußspannung der Diode nicht 
erreicht wird. Nachteilig ist die Temperaturdrift der Diode, aber sie 
ist so gering (Siehe Datenblatt), daß sie bei der Messung einer 
Versorgungsspannung keine Rolle spielt.

Ist keine geeignete Zenerdiode verfügbar, geht es auch mit drei, in 
Serie geschalteten Silizium Dioden (z.B: 1N4148), daran fallen ca 2V ab. 
Die drei Dioden haben allerdings drei Temperaturdriften, welche sich 
addieren (3 x 2mV/°C).

Und falls Geld keine Rolle spielt (da ohnehin keines vorhanden), kannst 
du auch ein 2,5V Referenzelement einsetzen. Dann gibt es kaum 
Temperaturdrift.

Je nach benötigter Genauigkeit, kannst du dir eine Möglichkeit 
aussuchen. Gemeinsam ist allen Lösungen, Strom fließt nur, wenn der 
Spannungsteiler eingeschaltet wird.

Viel Erfolg. Tom

von Bernd K. (prof7bit)


Lesenswert?

Stefan schrieb:
> Batterieentnahmeerkennung

Könntest Du nicht sowas machen:
1
VBat------------------------------------------
2
           |
3
           |
4
       ---------
5
       ---------
6
           |
7
           |     |\  |     |----Vcc
8
           |     | \ |     |
9
           |-----|  -|-----|
10
           |     | / |     |
11
           |     |/  |     |      
12
           |               |
13
           |               |
14
           |    _______    |
15
           |---|_______|---|
16
           |    R sehr gross 
17
           |
18
           |                     ___
19
           |-------------------> INT
20
           |
21
      _____|_____
22
          /\
23
         /  \
24
        /    \
25
       /______\
26
           |
27
         __|__
28
         GND
Bei schnellem Einbruch von Vbat gibts (vielleicht) einen Low-Impuls an 
INT. Vielleicht funktioniert das oder was ähnliches in der Art?

: Bearbeitet durch User
von Joachim B. (jar)


Lesenswert?

Bitflüsterer schrieb:
> Joachim B. schrieb:
>> Bitflüsterer schrieb:
>>> Dort habe ich die Brown-Out-Erkennung genannt.
>>
>> nur dann ist es vielleicht zu spät?
>
> Das ist möglich. Worauf stützt sich Deine Vermutung? Habe ich da etwas
> überlesen?

oder ich falsch verstanden:

Stefan schrieb:
> Das würde mir aber wieder die
> Batterieentnahmeerkennung versauen.

ich verstand Batterieentladeerkennung......

Die Idee hat was:

Konrad S. schrieb:
> ... da war noch die Möglichkeit, jeden Slot im Batteriehalter mit einer
> (Schottky-)Diode zu versehen. Dann kannst du einen Akku nach dem anderen
> austauschen, ohne die Stromversorgung zu unterbrechen.

von Konrad S. (maybee)


Lesenswert?

Joachim B. schrieb:
> Die Idee hat was:

Ist zwar nicht meine Idee, aber ich hab' sie mir gemerkt und bei einem 
Gerät mit vier NiMH-Zellen auch schon mal eingebaut. Ja, hat was! 
Andererseits rechnet "niemand" damit und nimmt gewohnheitsmäßig erst 
alle Zellen raus und setzt dann erst die geladenen Zellen ein. Die 
Software braucht also ggf. immer noch Sicherheitsmechanismen gegen 
Black-Out.

von Stefan (Gast)


Lesenswert?

Der BOD macht genau eines, das ist den uC in einen definierten Zustand 
zu setzen wenn die Spannung unter ein gestimmtes Level absinkt. Und er 
Zustand ist Reset. Das ist also nichts mehr mit noch schnell Daten in 
den EEPROM schreiben.
Der Bod an sich läuft auch schon, nur eben zum sicheren Abschalten wenn 
die Batterien den Geist aufgeben.

Die Schaltung über eine Zener ist sinnlos, da durch Leckströme die 
Spannung auch wieder auf VBAT ansteigen wird, wenn die Unterseite des 
Spannungsteilers abgeschaltet wird. Und auf ein Kampf zwischen den 
Leckströmen der Zener und den der Dioden der Pins habe ich keine Lust...

Im Moment scheint es wirklich auf den hochohmigen Teiler und ein 
Kondensator dazu hinaus zu laufen. Es ist die sicherste Methode, die 
zusätzlich alles an einem Pin abwickelt.
Ich habe vorhin ein bisschen experimentiert (2x 470k, 100nF) und die 
Messergebnisse sind wirklich hervorragend, auch bei mehreren aufeinander 
folgenden Messungen. Es gibt zwar einen absoluten Fehler, aber der 
bleibt immer gleich, insofern schreibe ich den der internen Referenz zu.
Ob und in wie weit der Puffer reicht um noch in den EEPROM zu schreiben 
nach dem ein PCINT erkannt wurde muss ich noch schauen. Sollte aber 
jemand während der Phase des maximalen Strombedarfs eine Batterie 
entnehmen, bricht es mir halt das Genick, aber einen Tod muss man ja 
sterben.

von Bitflüsterer (Gast)


Lesenswert?

> Der BOD macht genau eines, das ist den uC in einen definierten
> Zustand zu setzen wenn die Spannung unter ein gestimmtes Level
> absinkt. Und er Zustand ist Reset. Das ist also nichts mehr
> mit noch schnell Daten in den EEPROM schreiben.


Tja. Hübsch. Da habe ich mich falsch ausgedrückt. Sorry. Dann verstehe 
ich auch den Mangel an Begeisterung. :-)

Ich meinte so eine oder eine ähnliche Schaltung wie hier: 
http://www.mikrocontroller.net/articles/Speicher#EEPROM_Schreibzugriffe_minimieren

von TomA (Gast)


Lesenswert?

Hallo Stefan,

du ziehst den Querstrom eines Spannungsteilers (im mA/µA-Bereich) dem 
Leckstrom einer Diode (im pA-Bereich) vor?

Nun es soll jeder nach seiner Fason glücklich werden!

Viel Erfolg. Tom

von Stefan (Gast)


Lesenswert?

Bitflüsterer schrieb:

> Tja. Hübsch. Da habe ich mich falsch ausgedrückt. Sorry. Dann verstehe
> ich auch den Mangel an Begeisterung. :-)
>
> Ich meinte so eine oder eine ähnliche Schaltung wie hier:
> 
http://www.mikrocontroller.net/articles/Speicher#EEPROM_Schreibzugriffe_minimieren

Naja, genau das mache ich ja im Moment. Ein Spannunsgteiler der vor dem 
LDO hängt und einen ADC Pin versorgt, der in den Ruhephasen als normaler 
Eingang mit Pin Change Interrupt geschaltet ist.
Nur habe ich halt einen sehr hochohmigen Spannungsteiler den ich per 
Kondensator bisschen puffere. Fällt VBAT weg wird der Kondensator über 
den Widerstand nach Masse entladen und nach ca. 2 x tao meldet sich der 
PCINT.
Meine Schwierigkeit ist gerade ein Kompromiss zwischen Widerstand, und 
Kapazitäten zum Puffern von VCC bzw. des Spannungsteilers zu finden, 
damit noch genügend Energie übrig ist, wenn der PCINT anschlägt, um noch 
ins EEPROM zu schreiben einerseits und andererseits dem ADC eine gute 
Spannungsquelle zu liefern.

von Joachim B. (jar)


Lesenswert?

Stefan schrieb:
> Meine Schwierigkeit ist gerade ein Kompromiss zwischen Widerstand, und
> Kapazitäten zum Puffern von VCC

nun endlich verstehe ich mal was du willst......................

war das ne schwere Geburt, an keiner Stelle hattest du vorher 
beschrieben was dein Ziel ist, ist schon ärgerlich.
Ich sehe deine Schwierigkeit eher in Schaltungsbeschreibung,

du willst die VCC solange puffern das wenn die Versorgung wegbricht du 
noch Daten ins EEPROM schreiben kannst und redest die ganze Zeit von 
Spannungsteiler an ADC in und entladen der Batterie.

Logisch entlädt ein dauerhafter Spannnungsteiler die Batterie.
Logisch darf der nicht zu groß werden wegen Fehlmessungen.
Ich grübel die ganze Zeit wie ein Kondensator das am ADC verhindern 
soll, aber von dem hast du nie geschrieben, das blieb dein Geheimnis bis 
eben.

von Lurchi (Gast)


Lesenswert?

Der ADC ist im mittel recht hochohmig. Wenn dauernd gemessen wird, 
irgendwas im Bereich 1 MOhm, bei seltener Messung in der Größenordung 
100 M. Eine niedrige Impedanz wird nur für kurze Zeiten zum Laden des 
S&H Kondensators von etwa 15 pF benötigt.

Ein Kondensator von 15 nF am ADC Eingang reicht aus damit die Spannung 
beim laden des S&H Kondensators nur um etwa 1 LSB einbricht. Bis zur 
nächsten Messung ist dann Zeit zum nachladen. Ohne den Kondensator muss 
die Quelle relativ niederohmig ( < etwa 20 K) sein um die 15 pF in z.B. 
10 µs zu laden. Mit Kondensator darf es dann auch 10-1000 mal mehr sein 
- vor allem wenn der ADC nicht schnell mehrfach misst.

von Bitflüsterer (Gast)


Lesenswert?

Stefan schrieb:
> Bitflüsterer schrieb:

> Meine Schwierigkeit ist gerade ein Kompromiss zwischen Widerstand, und
> Kapazitäten zum Puffern von VCC bzw. des Spannungsteilers zu finden,
> damit noch genügend Energie übrig ist, wenn der PCINT anschlägt, um noch
> ins EEPROM zu schreiben einerseits und andererseits dem ADC eine gute
> Spannungsquelle zu liefern.

Dann habe ich evtl. Dein Ziel immer noch nicht verstanden:

Wozu brauchst Du einen Kompromiss? Das sind doch zwei verschiedene 
Kondensatoren, hätte ich jetzt gedacht. Der Spannungsteiler kommt 
parallel zu R3 aus der von mir verlinkten Schaltung und daran ein 
weiterer Kondensator, der für den ADC puffert. Den Teiler kannst Du, wie 
gewünscht abschalten. Die Teile beeinflussen sich auch nicht, oder doch?

von Stefan (Gast)


Lesenswert?

Also was ich suche ist im Eingangspost sehr klar beschrieben.
Eine stromsparende Schaltung um die Batterispannung zu messen und das 
Einbrechen durch herausnehmen der Batterie zu detektieren.

Die einzig brauchbare Lösung die aufgekommen ist, ist ein hochohmiger 
Spannungsteiler, der per Kondensator gepuffert wird.
Da diese Lösung den Spannungseinbruch nicht sofort signalisiert, sondern 
verzögert, da der Kondensator entladen werden muss, kommt das neue 
Problem dazu, dass die Stützkondensatoren für den uC so groß 
dimensioniert werden müssen, dass sie in dieser Zeit nicht so weit 
entladen werden, dass ein Schreiben ins EEPROM nicht mehr sicher möglich 
ist.

Da hier irgendwie viele Leute entweder Sachen übersehen oder falsch 
verstehen und ich meine Lösung habe, würde ich die Diskussion für 
beendet erklären und möchte mich herzlich bei allen für die Hilfe 
bedanken.

von Joachim B. (jar)


Lesenswert?

Stefan schrieb:
> Also was ich suche ist im Eingangspost sehr klar beschrieben.Stefan schrieb:
> Die einzig brauchbare Lösung die aufgekommen ist, ist ein hochohmiger
> Spannungsteiler, der per Kondensator gepuffert wird.

die zwei passen nicht zusammen,
bitte wer puffert Spannungsteiler? (ich will abnehmen und du kaufst 
weniger zu essen)

fürs nächste Mal, du pufferst den µC damit der noch Saft für seine 
Aufgaben hat und nicht den Spannungsteiler, soviel Verständnis sollte 
schon sein, aber egal:

Stefan schrieb:
> würde ich die Diskussion für
> beendet erklären

von Stefan (Gast)


Lesenswert?

Joachim B. schrieb:
> Stefan schrieb:
> Also was ich suche ist im Eingangspost sehr klar beschrieben.
>
> nö
Dann würde ich empfehlen den Eingangspost noch mal zu lesen.


> Stefan schrieb:
> Die einzig brauchbare Lösung die aufgekommen ist, ist ein hochohmiger
> Spannungsteiler, der per Kondensator gepuffert wird.
>
> die zwei passen nicht zusammen,
> bitte wer puffert Spannungsteiler? (ich will abnehmen und du kaufst
> weniger zu essen)
Alles über 500k bis 1M an Widerstand an einem Pin macht den zu einer 
besseren Antenne. Der, der keine Lust hat Radio auf dem Pin zu hören 
puffert ihn. Zusätzlich gibt es an die Impedanz der Spannungsquelle für 
einen ADC Eingang gewisse Anforderungen. Der, der diese trotz einer 
hochohmigen Spannungsquelle einhalten will, Puffert ihn.


> fürs nächste Mal, du pufferst den µC damit der noch Saft für seine
> Aufgaben hat und nicht den Spannungsteiler, soviel Verständnis sollte
> schon sein, aber egal:
Bitte noch mal aufmerksam lesen, was wie mit einem Kondensator gepuffert 
wird. 1. der Spannungsteiler und 2. die Versorgungsspannung des UC, nur 
ist da ein Tradeoff zu machen zwischen den beiden.

von batman (Gast)


Lesenswert?

Rote LED sollen doch ne ziemlich konstante Durchlaßspannung haben aber 
ich weiß nicht, bei welcher Spannung der Strom so unter 10uA geht?

von Bitflüsterer (Gast)


Lesenswert?

@ Stefan

Ich denke Du schmeisst uns hier zu früh, jedenfalls aber aus dem 
falschen Grund die Flinte vor die Füsse.

Es ist absolut unklar, inwiefern zwischen dem Kondensator am 
Spannungsteiler und dem Kondensator zur Pufferung ein Konflikt bestehen 
soll. Das habe ich oben schon geschrieben und darauf hast Du nicht 
geantwortet. Wenn Du das denkst, irrst Du Dich. Die Diode verhindert ja 
gerade, dass der Spannungsteiler davon irgendwas mitbekommt. Der 
Spannungsteiler sieht die tatsächliche momentane Spannung von der 
Batterie.

So klar war und ist Deine Erklärung durchaus nicht, dass sie Deinen 
Unmut rechtfertigt.

von Yoschka (Gast)


Lesenswert?

Anderer Ansatz:
Alle drei Akkus entladen sich gleichmässig.
Also nur die Spannung einer Zelle überwachen und gut ist.
Kein Spannungsteiler nötig.
Nur für die Batterieentnahme musst Du noch eine Lösung finden.

von batman (Gast)


Lesenswert?

Der ist gar nicht so schlecht. Wenn man nun noch vorschreibt, daß die 
gemessene Zelle immer zuerst rausgenommen wird, klappts auch easy mit 
dem Abspeichern.

von Joachim B. (jar)


Lesenswert?

Stefan schrieb:
> Dann würde ich empfehlen den Eingangspost noch mal zu lesen.

wie oft soll ich das lesen?

es bleibt falsch beschrieben, puffern tust du den µC damit er nach 
Wegfall der Batterie noch was erledigen kann, basta

Stefan schrieb:
> Alles über 500k bis 1M an Widerstand an einem Pin macht den zu einer
> besseren Antenne. Der, der keine Lust hat Radio auf dem Pin zu hören
> puffert ihn.

da wird nix gepuffert sondern gefiltert

puffern und filtern sind 2 Dinge, die du nie unterschieden hast was aber 
für das Verständnis leichter rüberkommt.

Woher soll ich ohne Schaltbild mit purer Prosa wissen wovon du 
schreibst?

Aber da du eh alles besser weisst benötigst du ja keine weitere Hilfe, 
jedenfalls von mir.

von Mark S. (voltwide)


Lesenswert?

Joachim B. schrieb:
> OK wenn du weisst wovon du schreibst?

Ja, das trifft zu.

von Stefan (Gast)


Lesenswert?

Hallo,

ich habe keinen Unmut. Nur finde ich es nicht schön wenn jemand sich die 
Schaltung nicht vorstellen kann, anstatt dann aber nach einem Schaltbild 
zu fragen eher unfreundliche Äußerungen tätigt. Da ich meine Lösung zu 
dem Zeitpunkt hatte, bestand für mich kein Grund den Thread weiter zu 
betreiben.
Da hier aber scheinbar mehrere die gleiche Frage haben, bzw. die Lösung 
verstehen möchten, erkläre ich es gerne und versuche auf die Fragen 
einzugehen.
1
 .--------------------------------------.
2
 |                                      |
3
 |                                     .-.
4
 |                                     | |R1
5
 |                                     | |
6
 |               .-----------.         '-'
7
 |    D1         |           |          |
8
 o---->|----o----|VCC     ADC|----o-----o
9
 |          |    |           |    |     |
10
---      C1---   |           | C2---   .-.
11
 -         ---   |           |   ---   | |R2
12
 |          |    |           |    |    | |
13
 |          |    |    AVR    |    |    '-'
14
 |          |    |           |    |     |
15
 |          |    |           |    '--o--'
16
 |          |    |           |       |
17
 |          |    |           |      ===
18
 o----------o----|GND        |      GND
19
 |               |           |
20
===              '-----------'
21
GND
Das ist die gedachte Schaltung. D1 soll hier der Einfachheit halber eine 
Diode als auch den LDO darstellen.

R1/R2 sind ein Spannungsteiler mit in Summe ~1MOhm was den Ruhestrom auf 
erträgliche ~4,5uA bringt und die Spannung nicht über VCC steigen lässt. 
Dadurch wird die Impedanz an dem Pin jedoch so hoch, dass er als Antenne 
dient. C2 filtert dies.
Zusätzlich sollte die Impedanz für eine AD Wandlung laut Datenblatt 
nicht über 10kOhm liegen, was hier deutlich überschritten wird. C2 
spielt also gleichzeitig Spannungspuffer für die Spannung über R2 
(@Joachim B. du hast recht es geht hier um einen Filter, aber eben 
primär auch um einen Puffer*).
Das ganze geht nach meinen Versuchen gestern sehr gut.

Nund zur zweiten Funktion.
Wird die Batterie entnommen versorgt C1 den AVR für eine gewisse Zeit 
weiter. Die Spannung über R1/R2 bricht zwar sofort ein, nicht jedoch 
über R2. R2 entlädt C2 "langsam". Da der AVR im Schlafmodus ist und der 
ADC als Eingang mit PCINT geschaltet ist, wird aber ungefähr 0,2VCC ein 
Interrupt ausgelöst. 0,2VCC sind PI mal Daumen nach 2 tao 
(http://de.wikipedia.org/wiki/Zeitkonstante) erreicht. Innerhalb dieser 
Zeit darf die Spannung in C1 nicht so weit abgefallen sein, dass ein 
sicheres Schreiben in den EEPROM nicht mehr möglich ist.

Daher ist jetzt ein Kompromiss zwischen der Entladezeit von C2 
(möglichst kurz -> kleiner C) und der Pufferfunktion von C2 (möglichst 
gut -> großer C) in Abhängigkeit von C1 zu machen.


Bei weiteren Fragen gerne schreiben.


PS: Ich habe einen festen Batterihalter, daher geht das einlöten von 
Dioden nur schwer, zusätzlich wären die knapp 2V bei zwei leeren Zellen 
auch ziemlich knapp. Und die Überwachung nur einer Zelle ist damit auch 
nicht möglich.

von Stefan (Gast)


Lesenswert?

Sorry, schneller geschrieben als gedacht:
"wird ab ungefähr 0,2VCC ein Interrupt ausgelöst"
"darf die Spannung über C1 nicht so weit abgefallen sein" oder ""darf 
die Energie in C1 nicht so weit abgefallen sein

von Lurchi (Gast)


Lesenswert?

Das Problem mit der langsamen Reaktion kann man umgehen, wenn man auch 
parallel zu R1 noch einen Kondensator hat. Da mit kann man den Teiler 
Frequenzunabhängig machen, oder wenn man will auch schnelle Änderungen 
noch betonen.

Zur Detektion im Schlafmodus sollte man allerdings nicht den PCInt 
nutzen. Der digitale Eingang ist nicht besonders genau, und braucht an 
der Grenze recht viel Strom (wollte immer schon mal nachmessen wie 
viel). Besser ist es da den analogen Komparator zu nutzen. Den kann man 
auch auf jeden ADC Pin umlenken - als Vergleich dient dann die interne 
Ref. - die allerdings auch etwas Strom braucht.

Ob das mit der Detektion dann auch gut funktioniert, hängt davon ab wie 
schnell die Spannung vor dem LDO einbricht. Vor dem LDO braucht man in 
der Regel auch einen Kondensator von 100nF - 10 µF. Je nach LDO kann da 
ggf. auch noch ein Leckstrom zurückfließen, so dass die Spannung ggf. 
gar nicht so schnell zusammenbricht.

Als Notlösung ggf. ein (ggf. Reed) Kontakt am Deckel des Batteriefachs. 
Da hat man dann reichlich Zeit, noch bevor die Akkus überhaupt raus 
sind.

von batman (Gast)


Lesenswert?

Naja zum Glück passiert hier nichts Schlimmes, wenn in der Nähe ein 
Handy funkt und die Interrupts auslöst aber generell verstehe ich hier 
den Kampf mit den uA nicht. Wenn es Primärzellen wären, klar aber bei 
Akkus, die sowieso alle paar Monate geladen werden müssen? Ansonsten 
gute Lösung.

von Bernd K. (prof7bit)


Lesenswert?

Stefan schrieb:
> Daher ist jetzt ein Kompromiss zwischen der Entladezeit von C2
> (möglichst kurz -> kleiner C) und der Pufferfunktion von C2

C2 muss nur ausreichend puffern um vom Sample&Hold-Kondensator im ADC 
bei Beginn der Messung nicht übergebührlich belastet zu werden. 
Ansonsten ist der ADC-Eingang extrem(!) hochohmig, es ist nur der 
Sample&Hold der geladen werden will. Eventuell (ungetestet) wird selbst 
das kein Problem mehr wenn Du nicht zwischen den Messungen den ADC-Muxer 
immer wieder woanders hin schaltest. Probier mal den C2 kleiner zu 
machen und schau wie die Messungen werden (Rauschen, etc).

von Bernd K. (prof7bit)


Lesenswert?

Lurchi schrieb:
> Das Problem mit der langsamen Reaktion kann man umgehen, wenn man
> auch
> parallel zu R1 noch einen Kondensator hat. Da mit kann man den Teiler
> Frequenzunabhängig machen, oder wenn man will auch schnelle Änderungen
> noch betonen.

Bingo!

Schalte den C2 nicht nach GND sondern nach VBat!

von Bitflüsterer (Gast)


Lesenswert?

Ich hatte immer noch einen Satz aus dem ersten Posting im Kopf, das die 
Low-Side geschaltet wird. Daher meinte ich natürlich, dass der 
Spannungsteiler, bzw. nach der letzten Schaltung, der Kondensator mit 
dem unteren R von Gnd getrennt wird. Klar fliessen dann immer noch ein 
paar uA, aber so dachte ich halt.

von Konrad S. (maybee)


Lesenswert?

Wenn D1 für eine Diode und einen LDO steht, dann wird es mit drei 
NiMH-Zellen und 3.3V für VCC ganz schön eng werden.

von Anja (Gast)


Lesenswert?

Lurchi schrieb:
> Das Problem mit der langsamen Reaktion kann man umgehen, wenn man auch
> parallel zu R1 noch einen Kondensator hat.

Das ist ein Denkfehler: wenn die Batterie entnommen wird ist ein 
Kondensator parallel zu R1 wirkungslos. (da der Eingang hochohmig wird).

Stefan schrieb:
> Zusätzlich sollte die Impedanz für eine AD Wandlung laut Datenblatt
> nicht über 10kOhm liegen, was hier deutlich überschritten wird.

Die Forderung 10kOhm kommt nicht nur wegen der Sample-Kapazität sondern 
vor allem auch wegen dem maximalen Leckstrom des ADC-Pins von 1uA.

1uA * 1 Meg Eingangsimpedanz = 1V Messfehler.
Da hilft der Kondensator leider nicht dagegen.

Ich gebe zu: bei Raumtemperatur wird man in der Regel 1-2 
Größenordnungen unterhalb des maximalen Leckstroms liegen. Aber der 
Einsatztemperaturbereich fehlt noch als Angabe. (Genauso wie garantierte 
Leckstrom-Werte bei Raumtemperatur).

Für die Spannungsmessung könnte man auch einen N-Kanal FET im 
Spannungsteiler verwenden (bei reduziertem Messbereich). Siehe 
Batteriewächter
Für die Batteriewechsel-Erkennung habe ich leider keine Lösung.

Gruß Anja

von Joachim B. (jar)


Lesenswert?

Konrad S. schrieb:
> Wenn D1 für eine Diode und einen LDO steht, dann wird es mit drei
> NiMH-Zellen und 3.3V für VCC ganz schön eng werden.

war mein erster Gedanke, Entladeschußspannung sollte bei 2,7V gesetzt 
werden, das klappt nicht mit >8MHz

Anja schrieb:
> Das ist ein Denkfehler: wenn die Batterie entnommen wird ist ein
> Kondensator parallel zu R1 wirkungslos. (da der Eingang hochohmig wird).

dafür wird ja VCC gepuffert mit einem ausreichenden C um dem MC seine 
letzten Aufgaben machen zu lassen -> Daten ins EEPROM schreiben was erst 
viel zu spät im Thread benannt wurde.

Anja schrieb:
> 1uA * 1 Meg Eingangsimpedanz = 1V Messfehler.

das tut ja nicht weh wenn er nur den Wegfall der Spannung feststellen 
will, schlimmer finde ich die Dimensionierung, der C am Spannungsteiler 
verhindert ja auch die schnelle Detektierung weil er die letzte 
aufgeladene Spannung länger hält.

Bernd K. schrieb:
> Schalte den C2 nicht nach GND sondern nach VBat!

wäre ne Möglichkeit um schneller VCC runter festzustellen, müsste 
probiert oder gerechnet werden.

Bitflüsterer schrieb:
> Ich hatte immer noch einen Satz aus dem ersten Posting im Kopf, das die
> Low-Side geschaltet wird.

ne hi side Schaltung war schon richtig und dachte ich auch nur da hilft 
es nicht alle Minute zu schauen, nimmt einer dazwischen die Batterie 
raus ist Essig. Auch das fehlte die ganze Zeit im Thread was getan 
werden soll.

Stefan schrieb:
> Also was ich suche ist im Eingangspost sehr klar beschrieben.
> Eine stromsparende Schaltung um die Batterispannung zu messen und das
> Einbrechen durch herausnehmen der Batterie zu detektieren.

wo steht im Eingangspost das der AVR genau aus dieser Batterie gespeist 
wird? ich lese nur:

Stefan schrieb:
> ich würde gerne mit dem ADC eines AVR die Batteriespannung messen. Die
> Batteriespannung liegt über VCC (max. 1,5V).

aber egal, was übrig bleibt ist:

Stefan schrieb:
> Schwierigkeit zwei ist, dass ein abfallen der Spannung auf 0V (entnehmen
> der Batterie) einen Interrupt auslösen soll.

und das ist doch simpel:

Stefan schrieb:
> Da der AVR im Schlafmodus ist und der
> ADC als Eingang mit PCINT geschaltet ist, wird aber ungefähr 0,2VCC ein
> Interrupt ausgelöst. 0,2VCC sind PI mal Daumen nach 2 tao
> (http://de.wikipedia.org/wiki/Zeitkonstante) erreicht.

OK damit fällt Komperator raus, der müsste ja nicht bei 0,2 VCC 
ansprechen.

Also Kondi an +VCC und diesen Impuls schneller rüberbringen an PCINT
Kondi nach GND würde ja eher verzögern weil der durch die hochohmigen R 
sich nicht entladen kann, evtl. können alle R entfallen, du willst ja 
nur einen fetten negativen Impuls von VCC wenn eine Zelle entnommen 
wird.

Diode und Puffer C dahinter zur Versorgung für den µC muss aber bleiben.

: Bearbeitet durch User
von Konrad S. (maybee)


Lesenswert?

Joachim B. schrieb:
> Entladeschußspannung sollte bei 2,7V gesetzt
> werden

Für NiMH-Zellen 1.0V pro Zelle! Dann leben die ewig.

von Stefan (Gast)


Lesenswert?

@Joachim B.
Könntest du folgendes mal in ein Schaltbild fassen?
>Also Kondi an +VCC und diesen Impuls schneller rüberbringen an PCINT
>Kondi nach GND würde ja eher verzögern weil der durch die hochohmigen R
>sich nicht entladen kann, evtl. können alle R entfallen, du willst ja
>nur einen fetten negativen Impuls von VCC wenn eine Zelle entnommen
>wird.

@Anja
Danke für den Hinweis mit dem Leckstrom.

von LP2951 (Gast)


Lesenswert?

Schau mal der hier...
http://www.google.de/search?q=lp2951
...hat für solche Zwecke sogar einen Interrupt-/PowerGood-Ausgang.

von SeDa (Gast)


Lesenswert?

Bei dem Preis macht es keinen Sinn irgend was zu frickeln: 
http://www.dx.com/s/lson+probes
Habe selber verschiedenen in Gebrauch und bis jetzt keine Probleme.

von spess53 (Gast)


Lesenswert?

Hi

>Bei dem Preis macht es keinen Sinn irgend was zu frickeln:
>http://www.dx.com/s/lson+probes
>Habe selber verschiedenen in Gebrauch und bis jetzt keine Probleme.

Du bist im falschen Film:

Beitrag "Billigere Alternative zu Pogopins"

MfG Spess

von SeDa (Gast)


Lesenswert?

THX

kann des ein Mod bitte mal löschen, Danke!

von Joachim B. (jar)


Angehängte Dateien:

Lesenswert?

Stefan schrieb:
> @Joachim B.
> Könntest du folgendes mal in ein Schaltbild fassen?

OK hab ich wegen Pause und sogar mit Oszi Bild

links, Aufnahme vom C R - Glied (gespeist vom Generator)

oberste 2 Linien Channel 1 Spannung bricht weg

gelb gedehnt auf µs, weiss gemerkt ms

unterste Linien, Channe 2 Triggerimpuls für PCINT

türkis gedehnt auf µs, weiss gemerkt ms

wenn die Überhöhung stört kann sie mit Z-Diode D3 abgeschnitten werden 
oder mit einer weiteren Diode nach C2 abgeleitet werden, aber die 
Energie eines 10nF hier dürfte keinen AVR killen.

man sieht aber schön wie das Differenzierglied den negativen Impuls 
transportiert und der ist im µs Bereich so lang das der AVR aufwachen 
sollte, die ms zum Puffern der VCC obliegt dir ja.

von Stefan (Gast)


Lesenswert?

Keine Spannungsmessung, und an einem Generator der aktiv low treibt mag 
das gehen, eine entnommene Batterie ist jedoch HiZ.

von Joachim B. (jar)


Lesenswert?

Stefan schrieb:
> Keine Spannungsmessung, und an einem Generator der aktiv low
> treibt mag
> das gehen, eine entnommene Batterie ist jedoch HiZ.

probiere es aus......

notfalls bau das Batteriefach um das ein Schalter auf low zieht, oder 
hatten wir das schon?

so ganz klar ist mir dein Plan immer noch nicht

AVR im Tiefschlaf, da kann er sich nicht selber wecken um ab und an was 
sinnvolles zu machen.
Er läuft mit den Timern weiter? dann ist der Stromverbrauch nicht 
minimiert und da soll es auf µA ankommen?

ich kapiers nicht.

: Bearbeitet durch User
von Stefan (Gast)


Lesenswert?

Nimm es mir bitte nicht übel, wenn ich es jetzt so direkt sage, aber ich 
würde dich bitten zu dem Thread nicht weiter beizutragen.
Deine Antworten waren bis jetzt wenig hilfreich bis kontraproduktiv. 
Danke.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.