Hi,
unter Beitrag "Röhrenuhr IV-18" stelle ich
eine Röhrenuhr auf Basis der IV-18 vor. Diese kann u.a. auch die
Temperatur messen.
Die Temperatur wird analog über einen LM35 mittels des internen
A/D-Wandlers des Mega168 erfasst. Referenz ist Aref mit 1.1V, Kapazität
für Aref ist vorhanden.
Schaltpläne und Software sind komplett im anderen Thread zu finden.
Jetzt zum Thema:
Die Uhr kennt einen Nachtmodus, in dem das Display inkl. Heizung und die
LEDs abgeschaltet werden.
Weckt man die Uhr aus dem Nachtmodus und liest direkt danach die
Temperatur ab, zeigt sich Abweichung von etwa +1,5 Grad gegenüber dem
normalen Betrieb.
Messungen haben recht schnell gezeigt, das der "Schuldige" die
Referenzspannung Aref ist, diese sinkt(!) im Nachtmodus um etwa 15 mV
(also z.B. von 1,06V auf 1,045V).
Gemessen direkt an aREF und aGND sowie aREF und GND des yC.
Infolge dessen steigt der vom ADC ausgegebene Wert natürlich an.
Ursache scheint nach derzeitigem Kenntnisstand folgendes zu sein:
In Folge des Abschaltens der Röhrenheizung und der LEDs sinkt die
gesamte Stromaufnahme von ca 100mA auf 10mA. Dadurch steigt VCC leicht
(ca +0.1V) an, da ich den Spannungsregler LM7805 wegen des
Batteriebackups mit einer Diode entkoppeln musste.
Auf den Anstieg von VCC und damit auch aVCC reagiert die Referenz
wiederum mit besagtem Spannungsabfall.
Nun ist das nur ein Schönheitsfehler, aber es stört mich.
Temporär habe ich mir beholfen, in dem ich einfach während der
Temperaturmessung im Nachtmodus die Röhrenheizung kurz einschalte.
Schön ist diese Lösung allerdings nicht.
Was ich bis jetzt getestet habe:
-Den mega168 von außen auf ca 60 Grad erhitzt, um Temperaturbedingte
Effekte zu prüfen. Die Referenz driftet, aber nur minimal (5 mV
gegenüber 20 Grad). Zudem wird der Mega168 im Betrieb auch kaum warm,
etwa 5 Grad über Umgebungstemperatur.
-Sukzessive alle Abschaltungen im Nachtmodus deaktiviert. Der größte
Sprung war bei der Röhrenheizung zu sehen, was auch einer der größten
Verbraucher ist.
-Testweise den MAX6921 entfernt, um mögliche Rückwirkungen
auszuschließen. Keine Änderung.
-Die Referenz testweise direkt mit dem Output des 7805 verbunden.
Ja jetzt bleibt sie stabil, auch im Nachtmodus.
Aber so fehlt jede Filterung von aVCC und außerdem liegt aVCC so
0.1-0.2V über VCC.
Eigentlich sollte die Referenz doch grad dafür da sein, leichte
Schwankungen von VCC/aVCC zu kompensieren und stabile Messungen zu
ermöglichen. Ist sie wirklich so "schlecht" oder übersehe ich etwas?
Mir ist klar, das ich das Problem mit einer externen Referenz oder einer
separaten Anbindung von aVCC/aGND lösen kann, aber ich frage mich, ob es
nicht auch irgendwie anders lösbar ist, da die Hardware komplett fertig
gebaut ist.
Vielleicht übersehe ich ja nur etwas.
Wenn hier mal jemand drüber schauen kann, wäre ich dankbar.
Wenn es keine andere Lösung gibt, werde ich wohl eine externe präzise
Referenz einsetzen.
gruß und danke
tobi
Korrektur:
statt:
-Die Referenz testweise direkt mit dem Output des 7805 verbunden.
Ja jetzt bleibt sie stabil, auch im Nachtmodus.
Aber so fehlt jede Filterung von aVCC und außerdem liegt aVCC so
0.1-0.2V über VCC.
muss es heißen:
-aVCC testweise direkt mit dem Output des 7805 verbunden.
Ja jetzt bleibt sie stabil, auch im Nachtmodus.
Aber so fehlt jede Filterung von aVCC und außerdem liegt aVCC so
0.1-0.2V über VCC.
hacker-tobi schrieb:> Ja jetzt bleibt sie stabil, auch im Nachtmodus.> Aber so fehlt jede Filterung von aVCC und außerdem liegt aVCC so> 0.1-0.2V über VCC.
Ja nun, na und?
Aber fürs Verständnis: du legst eine externe Referenzspannung an, und
benutzzt nicht die interne mit 1.1V?
Oliver
Nein, siehe korrektur. Hier war aVCC gemeint, nicht aREF
Was mich wundert ist schlicht, das aREF so stark auf Schwankungen von
aVCC im Bereich 0.1V reagiert.
gruß
tobi
> Was mich wundert ...
Mich auch. Wenn ich hier bei einem ATmega328P Vcc==AVcc von 4.50 V auf
5.25 V erhöhe, bleibt Aref trotzdem wie festgenagelt auf 1.0949 V.
(mein einziger ATmega168PA ist leider verbaut)
-MC tauschen? Vielleicht ein Ausreisser, wer weiss.
-eigenen Regler für AVcc
-besser aber eigenen Regler fürs filament. Wenn du nicht auf 78xx
festgelegt bist: Regler gibts auch mit enable, so dass der Schalter für
die Heizung entfallen kann
-rechnerisch korrieren? Ja, ist nicht schön.
HI,
Danke für die antworten.
Ich kann grad nicht auf alle eingehen.
Das board ist im verlinkten thread im eagle Format und als PDF
hinterlegt.
Gruss tobi
hacker-tobi schrieb:> Die Referenz testweise direkt mit dem Output des 7805 verbunden.> Ja jetzt bleibt sie stabil, auch im Nachtmodus.> Aber so fehlt jede Filterung von aVCC und außerdem liegt aVCC so> 0.1-0.2V über VCC
Hallo, du hast auf dem Weg vom (stabil bleibenden) 7805 zu VCC des uC
einen Verlust von 0.2V ? Und das nur, wenn die ca. 100mA Heizung
eingeschaltet wird ? Dann hätte deine VCC Zuleitung 2 Ohm, vermutlich
verteilt auf VCC und GND Leitung, und du zapfst deine Heizung direkt am
uC am.
Nutze eine sternförmige Verdrahtung, vom Ausgang (und Massepin) des 7805
je eine Leistung: zur Heizung, zu VCC des uC, und (durchaus über die
üblichen 100uH) zu AVCC, ebenso nutze 3 (oder mehr) Leitungen für GND
und AGND, wobei dein LM35 an AGND gehört.
Noch mehr kräftige Verbraucher ? Dann bekommen die auch eine eigene
Leitung ab 7805.
Ich denke übrigens nicht, dass die eingebaute Referenzspannung des uC zu
mit der Betriebsspannung schwankt, sondern dass der Spannungsabfall auf
GND zwischen LM35 und uC auf Grund schlechter Leitungsführung so hoch
ist.
icecubev1.2.pdf hat auch wirklich verdammt dünne Leitungen (deren GND
Verlauf ich mit nicht hetausgefummelt habe).
Hi,
der Spannungsabfall entsteht fast nur durch die diode hinter dem 7805.
Ich war gestern Nacht noch ein wenig in der Werkstatt und habe das
Problem wahrscheinlich gefunden.
Mit dem oszi sah ich insbesondere zwischen vcc und gnd (pin 7 / 8)
direkt am yC gemessen Rauschen mit ca 50mV VSS.
Ich hab dann gestern mal direkt an pin 7/8 100n angelötet und sowohl das
Rauschen als auch das Problem mit der Referenzspannung war weg.
Ich werd nachher noch meine provisorische Umgehung des Problems in
Software wieder entfernen und das Problem an einer zweiten Uhr
verifizieren. Aber es sieht so aus wie als ob der abblock Kondensator
für den yC zu weit weg oder defekt ist.
Vielen dank erstmal für alle antworten ich meld mich später nochmals.
Gruss tobi
hacker-tobi schrieb:> der Spannungsabfall entsteht fast nur durch die diode hinter dem 7805.
Ich habe gerade so ein Bild im Kopf, wo aus einer schön mühsam
stabilisierten 5V Versorgungsspannung instabile 4,3V werden, weil das
durch eine Diode geht. Ist das wirklich so gestaltet worden?
> Mit dem oszi sah ich insbesondere zwischen vcc und gnd (pin 7 / 8)> direkt am yC gemessen Rauschen mit ca 50mV VSS.
Das ist nicht ungewöhnlich viel.
> Ich hab dann gestern mal direkt an pin 7/8 100n angelötet und sowohl das> Rauschen als auch das Problem mit der Referenzspannung war weg.
Erstaunlich, dass das trotzdem geholfen hat. Noch erstaunlicher, dass da
kein Abblock-Kondensator vorgesehen war. Der ist doch an jedem VCC/GND
Pärchen Pflicht!
Ziege bitte nochmal den Schaltplan und das Layout als Bild-Datei. Ich
habe kein Eagle und will es auch nicht extra dafür installieren.
Hi,
der Abblock-Kondensator war zu weit weg und war das Problem.
Ich habe jetzt an PIN7/PIN8 bei jeder Uhr direkt einen 100n angelötet
und das Problem ist beseitigt.
Da ich es ganz genau haben wollte, habe ich zusätzlich noch den
Leiterzug zwischen GND, GND des LM35 und GND (yC)/aGND mit einem Draht
verstärkt, um dort den Spannungsabfall zu minimieren.
@MaWin: 100mA ist die gesamte Stromaufnahme, die Heizung nimmt ca
40-50mA (streut etwas je nach Röhre).
Der Spannungsabfall GND (Eingang) zu GND (yC) sind < 5 mV , ebenso von
Vcc (Ausgang hinter der Diode am 7805) zu VCC (yC).
@Stefan: Der Schaltplan hängt im verlinkten Thread (siehe erster Post)
als PDF an.
Ja, hinter dem 7805 hängt eine Schottky-Diode, welche die Spannung um
etwa 0.2V (Nachtmodues) bzw. 0.3V (Betrieb) absenkt. Das ist für die
Schaltung aber ansich unerheblich.