Forum: Analoge Elektronik und Schaltungstechnik Akku-Spannung mit ADC überwachen


von Stephan P. (stevep)


Lesenswert?

Hallo,

ich möchte die Spannung eines 9,6V Akku-Pack an dem ein Raspberry Pi 
hängt überwachen. Für die Spannungsversorgung des Raspberrys verwende 
ich einen LM2574-5.

Zum Einen soll mittels der Überwachung der Raspberry herunterfahren, 
wenn die Spannung zu gering wird. Zum Anderen hängen an dem Akku noch 
zwei 12V-Getriebemotoren, deren Geschwindigkeit ich anhand der aktuellen 
Versorgungsspannung ausrechnen möchte. Das soll nicht genau sein, 
sondern nur zirka. Also wenn die Akkus ganz voll sind hätten sie mit 
zirka 11,2V 93,3% der Nenngeschwindigkeit, im Normalfall mit den 9,6V 
80% und wenn sie fast leer sind mit 73,3%.

Für die Überwachung hätte ich einen ADC081C027 von TI verwendet, den ich 
mit dem Raspberry über I2C auslese. Der IC würde (auch wegen anderer 
Komponenten in der Schaltung) mit den 5V des Raspberry's betrieben 
werden und die Batterie-Spannung habe ich vor mit einem Spannungsteiler 
(z.B. 150kOhm zu 100kOhm ergibt 4,8V bei 12V) in den 5V Bereich zu 
verschieben. So weit so gut (hoffe ich :-) ).

Was ich nun eigentlich wissen wollte: Meine Batteriespannung wird nie 
unter 8V fallen. Deshalb ist es eigentlich schade, dass ich bei dem 
8-bit ADC zwei Drittel des Wertebereich (0-170) verschwende und mit dem 
Rest auf 255 (85) den eigentlich interessanten Spannungsbereich messe. 
Grundsätzlich ergibt das eine Genauigkeit von 0,05V (bezogen auf die 
12V), was eh in Ordnung ist. Mich hat nur interessiert, ob es eine 
einfach Schaltung gibt, die Spannung zwischen 3,2V und 4,8V beim 
Spannungsteiler (kommen ja aus 8V bis 12V) auf 0V und 4,8V (oder noch 
besser 5V) zu dehnen/verschieben, um die volle Auflösung des ADC nutzen 
zu können. Das wären dann statt 0,05V eben 0,02V.

Wie gesagt, diese Verbesserung ist nicht kriegsentscheidend, aber wenn 
es einfach geht, dann würde ich es gerne machen.

von MaWin (Gast)


Lesenswert?

Es ist egal ob du den Wandlerbereich nicht ganz nutzt. Du müsstest 
mindestens einen zusätzlichen IC spendieren, ein OpAmp als Subtrahierer, 
um den nutzen zu können. Da wäre ein ADC101C027 die einfachere Wahl. Da 
der ADC aber von der Versirgungsspannung abhängig misst, und die um ein 
paar Prozent schwankt, ist die Genauigkeit eh überflüssig.

von Bernd K. (prof7bit)


Lesenswert?

Stephan P. schrieb:
> verschieben.

Zenerdiode fällt mir bei dem Stichwort spontan ein, vielleicht lässt 
sich damit und ein paar Widerständen der Bereich passend zurechtbiegen.

von Joachim B. (jar)


Lesenswert?

Bernd K. schrieb:
> Zenerdiode fällt mir bei dem Stichwort spontan ein, vielleicht lässt
> sich damit und ein paar Widerständen der Bereich passend zurechtbiegen.

ja oder Z-Diode an KST oder Referenzquelle mit KST eingebaut an R2R OP 
als Subtrahierer und schon hast du den Resthub voll aufgelöst.

9,x V - Referenz LM4040 gibt 9,x - 4,096V = 5,xV

Ref an + R an GND gibt immer VCC - Vref

von MaWin (Gast)


Lesenswert?

Bernd K. schrieb:
> Zenerdiode fällt mir bei dem Stichwort spontan ein, vielleicht lässt
> sich damit und ein paar Widerständen der Bereich passend zurechtbiegen.

Super Idee, bei einem nominellen Strom von 5mA bis 10mA ist der Akku 
dann schneller leer als du messen kannst.

von Joachim B. (jar)


Lesenswert?

MaWin schrieb:
> Super Idee, bei einem nominellen Strom von 5mA bis 10mA ist der Akku
> dann schneller leer als du messen kannst.

stimmt wobei eine REF LM4040 nur 100µA oder weniger benötigt und ich 
diese ja auch abschalten kann mit einem OC Trasi im R nach GND für den 
LM4040 und die VCC für den R2R OP

: Bearbeitet durch User
von MaWin (Gast)


Lesenswert?

Joachim B. schrieb:
> und ich diese ja auch abschalten kann mit einem OC Trasi im R nach GND

Dann ist sie immer noch mit dem Messeigang verbunden

> und die VCC für den R2R OP

und der ist abgeschaltet, also darf deren Eingang nicht mehr als 0V 
bekommen. Bekommt sie über die LM4040 aber, also fliesst Strom nicht 
direkt nach GND sondern einfach über die Eingangsschutzdiode des OpAmps 
in dessen VCC und versorgt ihn parasität.


Es ist immer wieder erbärmlich, wie unausgegoren hier Vorschläge für 
fremde Leute sind weil die Antwortenden selbst keine Ahnung und keinen 
Überblick haben sondern wahlfrei rumratseln.

von Bernd K. (prof7bit)


Lesenswert?

MaWin schrieb:
> Super Idee, bei einem nominellen Strom von 5mA bis 10mA ist der Akku
> dann schneller leer als du messen kannst.

Wer hat gesagt daß Du soviel Strom durch die Diode fließen lassen 
sollst? Ein paar µA sollten wohl reichen:
1
+9V...11.2V _________________
2
              |
3
              |
4
            __|__
5
             / \ \  8.2V
6
            /___\
7
              |
8
              |_____________________ ADC  0.8V....3V
9
              |                  |
10
             _|_                 |
11
            |   |                |
12
            |   | 1M             |
13
            |   | (0.8µA...3µA)  |
14
            |___|                |
15
              |               ___|___
16
              |               _______
17
              |                  |
18
 0V___________|__________________|___

Immerhin will er gleichzeitig an der Batterie noch nen Raspi und 2 fette 
Motoren betreiben, da wirds ja auf das bisschen kaum ankommen.

: Bearbeitet durch User
von MaWin (Gast)


Lesenswert?

Bernd K. schrieb:
> Wer hat gesagt daß Du soviel Strom durch die Diode fließen lassen
> sollst?

Das Datenblatt

> Ein paar µA sollten wohl reichen:

Ja bau es doch mal auf bevor du Humbugvorschläge machst.

IZL liegt bei 10uA, Input current bei 1uA.

von Bernd K. (prof7bit)


Lesenswert?

MaWin schrieb:
> Bernd K. schrieb:
>> Wer hat gesagt daß Du soviel Strom durch die Diode fließen lassen
>> sollst?
>
> Das Datenblatt

Das Datenblatt von was? Das Datenblatt ist übrigens auch kein Gesetz. 
Man kann davon abweichen (insbesondere nach unten) wenn man weiß das das 
die Anwendung nicht beeinträchtigt.

von Irgendwer23 (Gast)


Lesenswert?

Bernd K. schrieb:
> MaWin schrieb:
>> Super Idee, bei einem nominellen Strom von 5mA bis 10mA ist der Akku
>> dann schneller leer als du messen kannst.
>
> Immerhin will er gleichzeitig an der Batterie noch nen Raspi und 2 fette
> Motoren betreiben, da wirds ja auf das bisschen kaum ankommen.

Theoretisch eine wirklich schöne Lösung.

Für den Praxischeck nehmen wir mal die Wald- und Wiesenserie BZV55 an:
- Die 8,2V gelten für 5mA
- Typisch +4,6mV / K Temperaturkoeffizient
Quelle : NXP, Datenblatt BZV55 series. Von hier:
http://www.nxp.com/products/diodes/zener_diodes/series/BZV55_SERIES.html

Natürlich kann man sich jetzt einen Punkt suchen, der zwischen dem 
"leakage current" (5V @700nA) und Iz (8V2 @ 5mA) liegt. Aber wie genau 
ist das? Wie verhält sich das mit der Temperatur? Nichts genaues weiß 
man nicht.

Dazu landet der Fehler vom TK landet zu 100% in der Messung. Satte 
4,6mV/K.
Natürlich kann man die Temperatur kompensieren. Wenn man sie kennt. Dazu 
kann man sie messen.

Da ist mir die Lösung mit dem Spannungsteiler doch lieber. Trotz der 
reduzierten Auflösung.

von Bernd K. (prof7bit)


Lesenswert?

Stephan P. schrieb:
> Zum Anderen hängen an dem Akku noch
> zwei 12V-Getriebemotoren, deren Geschwindigkeit ich anhand der aktuellen
> Versorgungsspannung ausrechnen möchte. Das soll nicht genau sein,
> sondern nur zirka.

Wie wäre es stattdessen die Dehungen der Wellen (oder was auch immer da 
sich bewegt) direkt zu zählen oder Sensoren an den Stellen anzubringen 
die angefahren werden sollen anstatt indirekt über die Betriebsspannung 
die nötige Zeit zu schätzen?

@Irgendwer23: Er kann doch auch den Widerstand ne Größenordnung kleiner 
machen. Spätestens bei 10µA ist jede Zenerdiode sicher jenseits des 
Knies (ich hab aber auch schon Kennlinien gesehen die waren bis runter 
zu 1µA so gerade wie mit dem Lineal gezogen). Und da die ganze Mimik 
immer parallel zu einem ohnehin permanent laufenden RPi läuft (etliche 
Watt) würde selbst der 10 oder 100fache Strom noch nicht den geringsten 
merklichen Einfluß auf die Batterielaufzeit haben.

: Bearbeitet durch User
von Joachim B. (jar)


Lesenswert?

MaWin schrieb:
> Bekommt sie über die LM4040 aber, also fliesst Strom nicht
> direkt nach GND sondern einfach über die Eingangsschutzdiode des OpAmps
> in dessen VCC und versorgt ihn parasität.
>
> Es ist immer wieder erbärmlich, wie unausgegoren hier Vorschläge für
> fremde Leute sind weil die Antwortenden selbst keine Ahnung und keinen
> Überblick haben sondern wahlfrei rumratseln.

stimmt deine Kritik ist nicht immer ausgegoren, habe hier leider schon 
mehr von dir gefunden,

aber prüfen wir mal,
wieviel Strom fliest duch einen LM4040 ohne R?
wieviel Strom fliest duch einen LM4040 über den Eingangswiderstand eines 
OPV?

beantworte die Fragen bevor du meckerst.

von MaWin (Gast)


Lesenswert?

Joachim B. schrieb:
> beantworte die Fragen bevor du meckerst.

Du hättest mal über das nachdenken sollen was ich schreibe.
Aber du bist ja zu faul deinen Humbug aufzuzeichnen, die Realität könnte 
deine Überheblichkeit ja ausbremsen.
Das ist die Schaltung die du vorgeschlagen hast:
1
11.2V           +5V
2
  |             E|
3
LM4040-4.096     >|-- PNP
4
  |              |
5
  +-------------|-\
6
  |             |  >
7
  R             |-/
8
  |              |
9
  >|-- NPN       |
10
 E|              |
11
Masse          Masse
Die beiden Transistoren mit denen du die LM4040 und den OpAmp abschalten 
willst sind eingeseichnet, stell sie dir ausgeschaltet vor. Die interne 
Schutzdiode einen CMOS OpAmps zeiche ich dur mal ein.
Der Stromkreis ist ja wohl leicht erkennbar.
1
11.2V             
2
  |                
3
LM4040-4.096  
4
  |              Schutzdiode     
5
  +-------------|-|>|-+ 
6
                |     |
7
                | OpAmpIntern
8
                      |
9
                      |
10
                      |
11
                    Masse

von Joachim B. (jar)


Lesenswert?

MaWin schrieb:
> die Realität könnte
> deine Überheblichkeit ja ausbremsen.

wie ist denn die Realität? Der Strom durch einen LM4040 in den OP 
Eingang?

Die Frage beantwortest du nicht!

von Bülent C. (mirki)


Lesenswert?

Nur mal so am Rande...
Wie wäre es mit einem Supervisory wie dem MCP130 und einem entsprechend 
vordimensioniertem Spannungsteiler? Das Signal vom MCP130 könnte 
abgefangen werden und einen shutdown triggern.
Einen zweiten MCP130 mit entsprechend vordimensioniertem Spannungsteiler 
könnte man einen Schwellenwert abfangen um die Motoren in ihrer 
Geschwindigkeit zu reduzieren.

Wäre so ein Konstrukt ein vernünftiger Ansatz?

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.