Forum: Mikrocontroller und Digitale Elektronik Batteriespannung im Auto mit Arduino messen


von Olli Z. (z80freak)


Lesenswert?

Ich würde gern mit dem ADC des Arduino die Batteriespannung messen um 
sie in einem Programm auszuwerten. Die Messung sollte auf 0,1V genau 
sein und die gesamte Schaltung soll aus dem Bordnetz betrieben werden.
Ich denke das ein einfacher Spannungsteiler hier nicht reicht :-) und 
dazu ein Messverstärker notwendig ist der über eine 
präzisionsspannunsquelle und einer Temperaturkompensation verfügt.
Wie bekomme ich das hin?
Kann sich so eine Schaltung über eine Referenzspannung irgendwie selbst 
kalibrieren um eine schleichende Verschiebung von Kennlinien zu 
kompensieren?

von Harry L. (mysth)


Lesenswert?

Spannungsteiler und interne Referenz reicht für 0,1V 
Genauigkeit/Auflösung vollkommen aus.

von Marc V. (Firma: Vescomp) (logarithmus)


Lesenswert?

Olli Z. schrieb:
> sie in einem Programm auszuwerten. Die Messung sollte auf 0,1V genau
> sein und die gesamte Schaltung soll aus dem Bordnetz betrieben werden.

 12V / 4 = 3V / 1024 = 0.003V Auflösung * 4 = 0.012V Eff. Auflösung.
 Genauigkeit ist aber eine ganz andere Baustelle.


> Ich denke das ein einfacher Spannungsteiler hier nicht reicht :-)

 Warum denkst du das ?

 Denke lieber über ungewollte Spannungsspitzen.

 P.S.
 Was glaubst du, wie genau wird die Spannung in einem Auto geregelt ?

: Bearbeitet durch User
von Klaus (Gast)


Lesenswert?

Kauf dir doch ein USB-Adapter für den Zigarettenanzünder. Da ist alles 
schon fertig.

von Olli Z. (z80freak)


Lesenswert?

Was ist denn mit Temperaturkompensation? -20 bis +60 Grad sind durchaus 
realistische Werte, also 80 Kelvin Temperaturbereich.

Und wie halte ich die Spannungsspitzen aus dem Bordnetz fern? Reicht da 
sowas wie eine Z-Diode auf 9V oder etwas weniger (=unterster zu 
erwartender Wert der Batterie)?

Ich glaube das 0,1V Genauigkeit garnicht so leicht hinzubekommen sind. 
Die AD-Auflösung ist dabei nebensächlich.

von Patrick J. (ho-bit-hun-ter)


Lesenswert?

Hi

Was soll denn an der Genauigkeit nicht passen, wenn der ADC deutlich 
kleiner auflöst, als von Dir genannt?
Wäre der ADC auf ~0,08, wäre ich auf Deiner Seite, bei 0,012 ist der 
Faktor 8 noch drin.

Wie genau muß die Spannung erfasst werden bei -20°C/+60°C (und wo sollen 
diese Temperaturen sein, der Innenraum hat nicht viel mit der 
Bordspannung zu tun).

Taxiservice Wüste <-> Moskau Nord (wobei da das Auto deutlich 
warmgefahren sein dürfte und Spannungsprobleme nicht mehr am Wetter 
liegen sollten)

Womit hast Du bisher gemessen - nur, daß wir eine Hausnummer haben, was 
zu schlagen ist.

MfG

von Manfred (Gast)


Lesenswert?

Marc V. schrieb:
> 12V / 4 = 3V / 1024 = 0.003V Auflösung * 4 = 0.012V Eff. Auflösung.
Ich bin kein Mathematikass, aber die überflüssige 4 sollte schon ein 
Grundschüler erkennen können. Die 3V erschließen sich mir auch nicht, 
aktuell übliche Arduinos kommen mit dem AT328 mit einer Bandgap mit 1,1V 
Nennwert.

Für den Akku einschließlich Ladezustand legt man 15 Volt als 
Bereichsende an, geteilt durch 1024 gibt das eine Auflösung von rund 15 
Millivolt.

> Genauigkeit ist aber eine ganz andere Baustelle.
Ja, das ist richtig! Ein Bit tanzt der Wandler, ein 
Rechen-Rundungsfehler kommt hinzu. In einem realen Aufbau mit einem 
ProMini (stationärer Betrieb) mit Oversampling bin ich nicht besser als 
50mV.

Jetzt gucke ich in die Beschreibung vom DVM "UNI-T UT61D":
Auflösung 0,01 Volt, ±(0,5%+1Digit)

0,5% von 12V sind 60mV, 1 Digit drauf - da klemmt es also schon, den 
Arduino anständig zu kalibrieren.

Ein Fluke 87 beschreibt immerhin ±(0,1%+1Digit),
das 8050/8060 will sogar ±0,03%+2Digit können.

Sei es so, für einen Bleiakku genügt der Arduino allemal.

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.