Hi!
Mein AVR Tiny26 Misst über den ADC und einen Spannungsteiler unter
Benutzung der internen Referenzspannugn alle 10 Sekunden seine
Versorgungsspannung und speichert diese in zwei Registern ab. Das
Hauptprogramm fragt diesen Wert nun periodisch ab und schaltet die LEDs
am AVR ab sobald die Spannung unter einen bestimmten Wert (bei mir 2,8V)
gesunken ist.
Zusätztlich wird über I²C und einen Mega8 das Messergebnis immer an den
PC gesendet um den Spannungsverlauf der Akkus zu beobachten.
Leider stellte ich schon 2 mal fest dass die Abschaltung der LEDs bei
Akkubetrieb nicht funktionieren mag. Ich verstehe das garnicht, der µC
arbeitete scheinbar korrekt weiter. Nur er wollte sich nicht abschalten.
Noch paradoxer: bei Netzbetrieb mit meinem Labornetzteil funktioniert
die Abschaltung!?
Jemand ne Ahnung was für ein Mysterium dahinter steckt? Ist es die nur
sehr langsam sinkende Versorgungsspannung? Zufall? Arbeitet der µC schon
bei 2,8V nicht mehr richtig? Läuft auf 8Mhz.
mfg PoWl
Geht über einen Spannungsteiler, überlesen? :-)
ADCwert von 1023 entspricht einer Betriebsspannung von ca. 4,21V. Wie
gesagt funktioniert es ja am Netzteil, wenn ich die Spannung langsam
verringere, einwandfrei. Nur mit den Akkus geht es eben nicht.
mfg PoWl
Also der µC kann seine Referenzspannung aufrechterhalten bis die
Versorgungsspannung darunter sinkt. Als AREF hab ich allerdings auch
sowas um die 2,8V gemessen, darunter sinkt der ADCwert natürlich einfach
nicht mehr. So genau hab ich jetzt nicht nachgeschaut. Ich glaub der
niedrigste ADCwert war 640 den ich bekommen hab.
Jedenfalls wird das ding bei einem ADC-Wert gleich oder kleiner 680
abgeschaltet. Diese Erkennungsroutine wird immer durchlaufen. Ob das
Programm weiterläuft oder sich irgendwo im nirgendwo verfängt weiß ich
nicht. Die Timer-ISR die die ADC-Messung startet und die ganze Routine
um die Messergebnisse per TWI wegzuschicken funktionieren aber auch noch
einwandfrei, deshalb versteh ich beim besten Willen nicht wo hier der
Fehler liegt.
Funktioniert unterhalb von 3V beim Tiny26 irgendwas nicht mehr richtig
sodass er das nicht mehr erkennen kann? Habe jetzt die Grenze mal auf 3V
gelegt, vielleicht geht es besser.
Allerdings versteh ich dann auch nicht wieso das alles einwandfrei mit
dem Netzgerät funktioniert. Alles sehr komisch.
mfg PoWl
Kleiner Tip am Rande: Wenn du als ADC-Referenz Vcc nimmst und den
ADC-Muxer auf die 1,1V-Referenz einstellst und diese misst, kriegst du
ein vergleichbares Ergebnis komplett ohne externem ADC-Eingang und
Spannungsteiler.
Belehrt mich eines Besseren aber afaik hat der Tiny26 keine 1,1V
referenz, konnte auch im Datenblatt diesbezüglich nix finden. Aber ich
schau nochmal, danke! Würde mir zumindest Portpins einsparen.
Allerdings liegt das Prob nicht am ADC! Der funktioniert, immerhin
bekomme ich ja die Werte noch weiterhin zuverlässig an den PC geschickt.
Das ist ja das merkwürdige :-( Irgendwie ist das aussichtslos. Ich
probiers nun mal in dem ich die untere Spannungsgrenze auf 3V stelle ob
es da besser geht.
mfg PoWl
Hallo,
könnte es eventuell daran liegen, das nach abschalten der LEDs die
Spannung bei Akkubetrieb wieder leicht ansteigt, was beim Netzgerät ja
nicht der Fall sein wird ?
Es grüßt,
Arno
Eine Batterie kann man sich als Konstantspannungsquelle mit
Reihenwiderstand vorstellen. Die Spannung bleibt immer konstant, bloß
der Widerstand nimmt zu.
Beim Netzteil bleibt der Innenwiderstand aber klein und Du drehst die
Spannung runter.
Warscheinlich sinkt die Spannung, die LEDs schalten ab, die Spannung
steigt wieder, die LEDs schalten zu usw. bis irgendwann die Spannung zu
klein ist, um rechtzeitig abzuschalten.
Du müßtest ne große Hysterese oder nen Einschalttaster nehmen, um die
LEDs wieder anzuschalten.
Peter
Die LED wird garnicht erst abgeschaltet. Ist sie erstmal abgeschaltet
bleibt sie auch aus und die Software springt in eine Schleife rein.
Allein schon um zu verhindern dass sie ständig ein und aus geht wenn die
ADC-Messung schwankt.
Naja, hab schon seit ein paar Stunden akkus dran hängen und grade ist
die Spannung mal wieder rapide am fallen. Werde das ganze mal "live"
beobachten.
mfg PoWl
Seltsam, jetzt hat es funktioniert?
Lag es doch daran dass vorher die Spannung des AVR zu niedrig war um
diese Operation gescheit auszuführen?
mfg PoWl