Hallo, Ich habe einiges über Spannungsmessung per MCU gelesen und mir ist klar, dass es über einen Spannungsteiler laufen muss, da ich eine LiFePo4 Batterie messen muss und die 1,1V Referenzspannung dazu nutzen wollte. Der Akku geht nicht über 3,6V, also nutze ich R1=10k und R2=30k. Das müsste soweit funktionieren oder sehe ich was falsch ? Mir ist klar, dass es ungenau ist, aber ich nutze nur ca80% der Akkukapazität und da sind 10% Messfehler noch Ok. Die Schaltung verbraucht leider Strom auch wenn nicht gemessen wird, allerdings ist die einzige andere Möglichkeit, die ich gefunden habe mit Schaltbaren Opamps, dies ist jedoch um weiten komplizierter und die Seite, die ich gefunden hatte war auf russisch, so dass ich die Schaltung nicht ganz verstanden habe. Gibts da eine Möglichkeit der Messung ohne, dass ich ständig Strom verbrauche ? Mohm Widerstände sind auch nicht drin, da der AVR, den ich benutze keine so hohen Impendanzen mag. Meine zweite Frage ist : wie mache ich eine isolierte Messung ? Es ist in meinem Fall notwendig, dass der Akku vollständig galvanisch getrennt vom MCU ist. Geht sowas und mit welchen Bsuteilen könnte ich das machen ? Ich hoffe ihr könnt mir da helfen. Danke im Vorraus.
Was ich noch vergessen habe : der Akku ist nicht die Spannungsquelle des AVRs. Der AVR bekommt seinen Strom aus dem Netz.
>Mohm Widerstände sind auch nicht drin, da der AVR, den ich >benutze keine so hohen Impendanzen mag. Doch das geht. Es muss nur ein ausreichend grosser Kondensator an den Spannungsteiler. 10nF sollten reichen. Dann so alle 60s mal messen und gut.
Danke, ich probiere das mal aus. Verfälscht der Kondensator nicht die Messung ? Damit verliere ich weniger Strom, das löst schonmal ein Problem. Wie sieht es mit der Isolation aus ? Jemand eine Idee ?
eventl kann man auch das GND Ende des Spannugsteilers auf einen Pin legen, denn man zusammen mit dem ADC Eingangspin zwischendurch TriState (Portpin als Eingang und Pullup deaktivieren) schaltet. Aber bei ausreichend hohen Widerständen ist die Selbstentladung des Akkus wahrscheinlich größer als die Verluste über den Spannungsteiler.
Moin, Isoliert eine Spannung zu messen ist im Vergleich zu den anderen Problemen ziemlich sportlich. Warum muß das isoliert sein? Wenn der AVR (8-Bit also Mega oder Tiny???) vom Netz versorgt wird, hängt der doch bestimmt an einem Linearregler. Die sind weit genauer als diese gammeligen internen 1,1V. Für 2% muss man da schon ganz miese Komponenten nehmen. Gruß, Norbert
> Die sind weit genauer als diese gammeligen internen 1,1V.
Das ist nicht war (siehe Datenblatt des µCs).
VINT_max = 1,2 V, VINT_min = 1,0 V Das ist schon eine ziemliche Spanne.
Bernd schrieb: >> Die sind weit genauer als diese gammeligen internen 1,1V. > > Das ist nicht war (siehe Datenblatt des µCs). Aha, Linearregler mit knapp 10% Toleranz sind also üblich? Warum schreibt man so einen Schwachsinn? Gruß, Norbert
Die Eingangsimpedanz der Analogeingänge ist typ. 100 MOhm, kannst also ruhig Widerstände 3MOhm und 1MOhm nehmen. Und Widerstände mit 0,1% kosten heute auch kein Geld mehr. Der größte Fehler ist sind die 1,1V.
Linuxfan schrieb: > der Akku ist nicht die Spannungsquelle des > AVRs. Der AVR bekommt seinen Strom aus dem Netz. Schade, denn sonst gäbe es eine schöne schicke Alternative. Wenn du nach Alternativen fragst, wäre eine komplette Beschreibung hilfreich um weitere Optionen zu prüfen. Welchen Zweck erfüllt der Akku denn, wenn er nicht der Versorgung des Mikrocontrollers dient? Linuxfan schrieb: > Gibts da eine Möglichkeit der Messung ohne, dass ich ständig Strom > verbrauche ? Mohm Widerstände sind auch nicht drin, da der AVR, den ich > benutze keine so hohen Impendanzen mag Da wäre der genannte Kondensator bei hochohmigen Spannungsteiler oder man opfert einen weiteren Pin um den Spannungsteiler erst kurz vor der Messung mit dem anderen Pol zu verbinden.
:
Bearbeitet durch User
Norbert S. schrieb: > Bernd schrieb: >>> Die sind weit genauer als diese gammeligen internen 1,1V. >> >> Das ist nicht war (siehe Datenblatt des µCs). > > Aha, Linearregler mit knapp 10% Toleranz sind also üblich? > Warum schreibt man so einen Schwachsinn? > > Gruß, > Norbert Jeder 7805 aus Opas Bastelkiste hat eine engere Toleranz als die interne 1.1V Bandgapreferenz. Sie ändert sich aber über die Lebensdauer nicht so sehr. Bei der Temperatur habe ich ganz grob mal nen Drift von 70ppm/*C ermittelt. Wenn Mensch also ein halbwegs genaues Multimeter hat, kann ein Korrekturfaktor mit eingerechnet werden. Oder halt nen LM4040 o.Ä, kostet ja nun auch nicht die Welt. Viele Grüße Matze
:
Bearbeitet durch User
Hallo, hochohmig geht schon, aber nicht galvanisch getrennt. Das lässt sich nur machen, wenn man für die Senderseite der galvanischen Trennung eine extra Stromversorgung vorsieht, etwa mit DC-DC-Wandler von der AVR-Versorgung. Dann kann man auf der Akku-Seite eine hochohmige Messschaltung vorsehen, die die Daten an die AVR-Seite überträgt, z.B. einen V/F-Wandler und einen Optokoppler. Dafür braucht man eine Hilfsenergie. Georg
Die Meiner Erfahrung nach beste Lösung galvanisch getrennt Messungen durchzuführen ist einen externen AD-Umsetzer zu verwenden und den über die Isolationsbarriere mit SPI oder I²C anzuschließen. Dann einen einfachen transformatorischen Isolator rein der auch die Hilfsenergie zur Verfügung stellt (gibts z. B. von Analog Devices) und den Spannungsteiler mit einem MOSFET schaltbar machen. Ich würde da keine Widerstände im 1e6 Bereich verwenden, da ist man dann anfälliger gegen Störungen. Lieber einen Spannungsteiler im 10..100 kOhm Bereich und den dann schaltbar. Die Isolatoren gibts oft mit vier Kanälen, einen für den Transistor und zwei für den I²C ADU. Habe ich schon oft verwendet und verwenden lassen und hat immer sehr gut funktioniert.
Ach da habe ich den zweiten Teil doch komplett vergessen. Ich habe fast den verdacht daß da mehrere Akkus in Serie einzeln vermessen werden sollen. spekulier Aber wenn es nur um eine einzelne Zelle geht: Galvanisch getrennt kommunizieren, da gibt es viele Möglichkeiten, Infrarot LED optokoppler, per Übertrager... Allerdings muß die Logik ja auch irgendwie versorgt werden. Da könnte man auch über einen kleinen Tiny nachdenken, welcher dann im Tiefschlaf wartet. Die Messung sähe dann so aus: Wähle die Akkuspannung als Versorgung und Referenz. Messe die Bandgap Referenz. Errechne daraus die Akkuspannung. Sende Daten.
> Ach da habe ich den zweiten Teil doch komplett vergessen. Ich habe > fast > den verdacht daß da mehrere Akkus in Serie einzeln vermessen werden > sollen. spekulier Aber wenn es nur um eine einzelne Zelle geht: Wenn das die Anwendung sein sollte, dann würde ich eher einen dafür passenden IC nehmen und das wäre ein IC für Akku Batterie Management. Gibts schöne Sachen von Linear Technology.
Die 1,1 V - Referenz ist nur auf +/-10% GENAU, aber recht STABIL. Man erreicht leicht 1...2% GENAUIGKEIT, wenn man bei Ersteinschaltung einen Abgleich vorsieht und den Korrekturfaktor in's EEPROM schreibt, um ihn bei jedem weiteren Einschalten dort abzurufen. - Etwas Programmierarbeit, kostet einmalig etwas Zeit, was aber nur bei einem Serienprodukt als Kostenfaktor relevant ist. Potentialfrei messen? Das bekommst du nicht so billig!
Moin, Ich würde erstmal klären wollen, warum das denn getrennt sein muß. Wenn es nur ein begrenzt anderes Potential ist, also so im Bereich 10-25V darüber oder darunter, bekommt man das auch gut ohne galvanische Trennung hin. Wie Simon das beschreibt ist es tatsächlich die "amtliche" Lösung aber für einen Bastler ohne viel Erfahrung kann das in gestörter Umgebung auch sauber in die Hose gehen. Mit Transienten geht da garantiert mal ein Telegramm in die Hose und ohne Fehlerbehandlung steht der unbedarfte Bastler dann blöd da. Ausserdem scheint mir das angesichts der Fragestellung den Aufwand um eine Grössenordnung aufzubohren. Wenn man sich gerade den Spannungsteiler angelesen hat, sind I2C oder SPI mit einem AD-Wandler ja schon kein Selbstgänger, wenn vor zwei Wochen die erste blinkende LED Begeisterung ausgelöst hat. LiFePo4 kenne ich nun nicht so gut aber bei LiPo und 80% Kapazität sind 10% der Spannung durchaus ein Problem. 25% der Spannung sind 100% der Kapazität (so ungefähr). Linuxfan: Beschreibe doch mal bitte genauer was Du da vorhast. Das klingt nach einer Problematik, die man vielleicht anders und viel einfacher lösen kann. Strombelastung: Bei 100k und 3,6V hält ein 1000mAh Akku rechnerisch gut 3 Jahre. Da wäre der Akku auch von alleine längst leer. (Sondermüll) Taschenrechner immer in Reichweite haben kann manchmal nicht schaden... Gruß, Norbert
Jakob schrieb: > Die 1,1 V - Referenz ist nur auf +/-10% GENAU, aber recht STABIL. > Man erreicht leicht 1...2% GENAUIGKEIT, wenn man bei Ersteinschaltung > einen Abgleich vorsieht und den Korrekturfaktor in's EEPROM > schreibt, um ihn bei jedem weiteren Einschalten dort abzurufen. > > - Etwas Programmierarbeit, kostet einmalig etwas Zeit, was aber > nur bei einem Serienprodukt als Kostenfaktor relevant ist. Warum zum Teufel sollte man das tun wenn der µC an einem 7805 oder sowas hängt? Und das mit dem Kostenfaktor hast Du wohl falsch herum verstanden: Genau anders herum. In der Serie könnte das Sinn machen um den Spannungsregler bei Batteriebetrieb einzusparen. Bei Netzbetrieb ist das aber vollkommener Nonsens. Matthias Q. schrieb: > Drift von 70ppm/*C Prima, selbst an einem Exemplar gemessen oder steht das im Datenblatt? Immerhin ist das etwa 50% besser als die Drift von z.B. einem LP2950. Edit: Ca. +-1% von -25 bis +85°C. Also das kann nicht die Lebensberechtigung der internen 1,1V Referenz sein. Gruß, Norbert
:
Bearbeitet durch User
Selbst gemessen mit Kältespray und Sommersonnefensterbank mit sagenhafter n=2. Also Ca -40 bis +40. Ich mache es so, dass ich die interne Referenz für ADC verwende, jeweils ausmesse und das Ergebnid als Korrekturfaktor speichere. So kann ich auch gleich die ggf. vorhandene Toleranz der Messschaltung ausmessen und auch korrigieren. Offset der OPV, Widerstandstolleranzen etc. lassen sich Exemplarspezifisch bestimmen, messen und korrigieren. Viele Grüße Matze
Linuxfan schrieb: > Meine zweite Frage ist : wie mache ich eine isolierte Messung ? Um welche Isolationsspannung geht es? Eine Möglichkeit für die isolierte Messung wäre, einen kleinen µC zu nehmen, der galvanisch mit dem Akku verbunden ist und über einen isolierenden DC/DC-Wandler versorgt wird. Der überträgt dann die Daten seriell über einen Optokoppler/Adum zu deinem Zielsystem.
Linuxfan schrieb: > Die Schaltung verbraucht leider Strom auch > wenn nicht gemessen wird, allerdings ist die einzige andere Möglichkeit, > die ich gefunden habe Dann schau hier im Forum mal nach Batteriewächter Dort wird über einen FET im Spannungsteiler der Spannungsteiler deaktiviert solange nicht gemessen wird. 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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.