Hallo, ich habe eine Schaltung, die vereinfacht so wie die im Anhang aussieht. Die Schaltung wird mit einer Batterie/Akku (4x 1,2V) betrieben. Irgenwie scheint es möglich zu sein mit dieser schaltung die eigene Bordspannung zu messen. Nur wie? List man den AD Port ein, so kommt immer der gleiche Wert heraus. Ist ja auch logisch. Ändert sich die Spannung am AD Port, so ändert sich die Referenzspannung in gleichem maße. Der relative Wert bleibt also immer gleich. Wie kann ich nun also mit dieser Schaltung die Betriebsspannung messen. Oder ist das gänzlich unmöglich. Welche anderen Schaltungen könnte es geben? Vielen Dank Gruß Martin
Der Spannungsteiler sollte Dir schon den richtigen Hinweis geben! Interne Referenz einschalten und freuen :-) Gruß, Patrick...
hm hat das teil nicht ne interne Referenzspannung von 2.56V die während der Laufzeit eingestelt werden kann? die Spannung der batterie muss den halt nur über nen Spannungsteiler dem port zugeführt werden. seb
Jo, AREF nicht an + anschliessen sondern frei lassen (noch besser: 10nF Kondensator dran), und auf interne Referenz programmieren.
Wow, hätt ich nicht gedacht, dass es so ne einfache Lösung gibt.. Vielen Dank! Jetzt weiß ich halt nicht wie man interen Referenz einstellt? Kann mir das schnell einer sagen... sonst such ich halt mal im Datanblatt.. Gruß Martin
So, ich glaub ich habs rausgefunden: #define BATTERIE 1 ADMUX = (1 << REFS0) |(1 << REFS1) | BATTERIE; Vielen Dank für die Hilfe Martin
Darf ich den Thread nochmal aufgreifen? Hab ein ähnliches Problem... 1.wie hoch darf ich die Spannungsteilerwiderstände ansetzten, damit ich eine möglichst genaue messung am ADC vornehmen kann, sprich: der Input mir nicht die zu messende Spannung verfälscht? 2. Ist es genauer die interen Referenz oder den AREF zu nehmen? Hab eine Step-UP-Wandler für die Versorgung des µC... THX
Warum so kompliziert? Man kann einfach die Bandgap referenz gegen Vcc messen, ohne externe Beschaltung. Die interne Ref. hat Toleranzen, genaueres steht im Datenblatt. Sonderlich genau ist sie nicht.
Samuel K. schrieb: > Warum so kompliziert? Man kann einfach die Bandgap referenz gegen Vcc > messen, ohne externe Beschaltung. Weil mein µC von einem Stepup-Wandler versorgt wird, und ich die Batteriespannung vor dem Wandler messen möchte... Oder gibts ein besseren Vorschlag?
Tweaker schrieb: > 1.wie hoch darf ich die Spannungsteilerwiderstände ansetzten, damit ich > eine möglichst genaue messung am ADC vornehmen kann, sprich: der Input > mir nicht die zu messende Spannung verfälscht? MAch ruhig ganz hoch. So 1 meg gesamtwiderstand z.B. Dann aber nen Zusatz-Kondensator an den ADC-eingang. => Beim Messen läd sich der interne S/H-Kondensator aus dem externen, und verfälscht die Spannung nicht (merklich). Du kannst halt nur noch langsame Spannungsänderungen messen, aber sooo schnell wird sich deine Batterie ja nicht entladen.
Bei Stepup brauchst du keinen Spannungsteiler. Du kannst z.B die Spannung der Batterie direkt an AREF hängen. Die Genauigkeit hängt nun von der Genauigkeit des Stepups ab. Wichtig: Es darf keine Referenz eingestellt werden, da diese sonst an AREF anliegt / an deiner Batterie. Nachteil dabei ist, dass du nicht tiefer messen kannst als die Bandgap-Referenz, d.h. 1.1V. Bei einer Zelle wird das schon knapp.
> 1.wie hoch darf ich die Spannungsteilerwiderstände ansetzten, 10k. Aber wenn du einen Kondensator von zumindest 10nF vom A/D-Eingang nach Masse legst, darf es auch viel mehr sein, bis Megaohm. Steht alles im Datenblatt. > 2. Ist es genauer die interen Referenz > oder den AREF zu nehmen? Ja was willst du denn an AREF extern anschliessen ? Je nach Kostenaufwand kann das dann schon genauer sein, als die interne Referenz. Die interne Referenz ist nicht so besonders exakt (steht alles im Datenblatt) aber um Faktor 1000 stabiler als die Versorgungsspannung.
Man kann, wenn die Spannung niedriger als Vcc ist, die Batterie direkt an einen ADC-Pin hängen. Ich frage nochmals: Warum so kompliziert?
Samuel K. schrieb: > Man kann, wenn die Spannung niedriger als Vcc ist, die Batterie direkt > an einen ADC-Pin hängen. > > Ich frage nochmals: Warum so kompliziert? Weil man dann nur mit Ref=VCC (also extrem ungenau, je nach Step-Up) messen kann. Wenn die Batteriespannung kleiner als Aref ist, dann gehts genauer. Also z.B. wenn die Schaltung aus einer einsamen NiMH-Zelle versorgt wird. Deshalb: Generische Lösung mit Spannungsteiler, exakte Widerstände kosten auch nur cent-Beträge.
Εrnst B✶ schrieb: > Weil man dann nur mit Ref=VCC (also extrem ungenau, je nach Step-Up) > messen kann Wenn man einen Stepup nutzt, wird die Batteriespannung höchstwahrscheinlich unter 2.56V also der int. Ref. liegen. Selbst mit Spannungsteiler braucht man eine Referenz. 8bit Messungen machen bei den Avr-Refs sowieso keinen Sinn da diese 5-10% unterschiedlich je Typ sein können (ok, man könnte sie kalibrieren).
Die Fragen nach dem warum so kompliziert ist berechtigt... Ich würde es auch sofort umsetzten, aber ich habe ein li-ion. Im Ladezustand hab ich 4.2 und da regelt mein step-up die spannung ab, deshalb kann ich es nicht so einfach machen;-) Wo finde ich das im Datenblatt, das ich mit nem megaohm an einen ADC Pin gehen kann wenn ich ihn mit 10nF entkopple? Hab den atmega324pa im einsatz?
Tweaker schrieb: > Wo finde ich das im Datenblatt, das ich mit nem megaohm an einen ADC Pin > gehen kann wenn ich ihn mit 10nF entkopple? Steht nirgends. Das funktioniert auch nur bei Raumtemperatur wenn die Leckströme der Eingangsschutzdioden noch niedrig sind. Über den gesamten Temperaturbereich sind meist 10kOhm spezifiziert. 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.