Schaltung zieht trotz SLEEP-Mode 20mA?

Gast #2126584
Lesenswert?

Hallo Leute,

habe eine kleine Uhr gebaut mit 10LEDs und zwei CD4094-Registern, Herz 
der Schaltung ist der PIC16F627A. Die Helligkeit der LEDs kann über ein 
Poti eingestellt werden, die Uhrzeit wird über den Taster eingestellt.

Die Uhr hat zudem 3 x 1.5V AAA Batterien eingebaut, die bei Ausfall der 
Hauptspannungsversorgung (Steckernetzteil) über ein Relais automatisch 
zugeschaltet werden.

Nun erkennt die Software automatisch, wenn an RA2 kein Saft mehr anliegt 
(denn genau dann ist ja die Primärversorgung aus), und schaltet dann das 
PWM aus und den PIC in den Sleep-Mode.

Über Timer1 wird der PIC alle 2s geweckt, und wenn immer noch kein Saft 
da ist, geht er wieder schlafen.

Aber: Die Schaltung zieht im Sleep-Mode immer noch so um die 20mA, 
gemessen an der markierten Stelle.

Aber so viel kann das doch nicht sein. Wo kommt das her? Alle LEDs sind 
ausgeschaltet, ENABLE ist auf 0, und die CMOS ICs bekommen sogar gar 
keinen Strom mehr ab.

Ich hoffe, ihr könnt mir helfen, den Stromfresser zu finden.

Beste Grüße
Jens
Angehängte Dateien:
Gast #2126596
Lesenswert?

Hallo Jan,

danke für den Tip.

Ich hätte erwähnen sollen, dass beim Schlafengehen PWM ausgeschaltet 
wird, sowie alle Outputs auf 0 gesetzt werden. Mache ich also schon.

Ist es unsauber, die CMOS-ICs und den ADC per Diode so vom Saft 
abzuschneiden? Fließt da vielleicht was gerade deswegen?

Gruß
Jens
Gast #2126625
Lesenswert?

Nö, der hängt ja vor der Diode.

Habe nochmal genau nachgeguckt und das Problem glaube ich gefunden, war 
softwaretechnisch (habe das PWM-Modul immer wieder eingeschaltet bei 
ISR-Aufruf, blöd, ich weiß ;-)).

Nun liegt der Ruhestrom bei 40uA, und bei ISR-Aufruf kurzzeitig bei etwa 
0.7mA. Ist immer noch ein bisschen viel, oder ist das normal?

Gruß
Jens
Gast #2126639
Lesenswert?

Datenblatt ist ein gutes Stichtwort - was Interrupts usw. angeht finde 
ich mich auch immer besser drin zu Recht, aber gerade was die 
elektrischen parameter angeht bin ich immer von der Flut der Zahlen 
erschlagen.

Findet jemand die entsprechende Seite? Ich jabe nach "sleep" im PDF 
gesucht aber dazu keinen Strom gefunden, ich fühle mich gerade etwas 
blind.

Gruß
Jens
Gast #2126653
Lesenswert?

Habe die Software übrigens nochmals leicht korrigiert, und komme und auf 
31uA im Sleep-Mode. Da kann man nicht meckern.

Bei meinen verwendeten Batterien 
(http://www.reichelt.de/?ACTION=3;ARTICLE=100559;PROVID=2402) mit so ca. 
900mAh (ist das realistisch? habe den kleinsten Wert für 
Alkali-Mangan-Batterien von Wikipedia genommen) wären das T = 900mAh / 
30uA = 900mA / 0.031mA h = ca. 30000h > 3 Jahre ?!

Das kann ja nicht. Was ist ne realistische zahl?

Gruß
Jens
#2126717
Lesenswert?

Also wenn extern keine Spannung anliegt, dann ist die Batterie 
abgeklemmt. Und wenn eine dran ist, dann ist sie überflüssig. Hmm, 
seltsame Logik.

Ausserdem ist das ein Öffner. Die Batterien sind abgeklemmt, wenn 
Primärspannung anliegt und angeklemmt wenn keine da ist. Was ja der Sinn 
einer Batteriepufferung ist. Nur wird dieser Job bereits von D1/D2 
erledigt, ganz ohne Relais. Bei Primärspannung > Batteriespannung sperrt 
D2 und es fliesst kein Batteriestrom.

Hängt mal die Relaisspule ab und probiers aus.
Gast #2126786
Lesenswert?

Und was ist wenn Versorgungsspannung da ist, die aber kleiner ist als 
die Batteriespannung? Dann fließt was aus den Batterien, obwohl es nicht 
sein muss.

Aber nochmal zu den Zeiten: Stimmt die obige Berechnung mit den 3 Jahren 
grob?

Gruß
Jens
#2126934
Lesenswert?

Jens schrieb:

> Und was ist wenn Versorgungsspannung da ist, die aber kleiner ist als
> die Batteriespannung? Dann fließt was aus den Batterien, obwohl es nicht
> sein muss.

Das ist doch genau das der Standby-Fall, der vom Controller erkannt 
werden soll und zum Stromsparmodus führt.

Mit Relais kann dir hingegen ein Problem entstehen, dass es ohne nicht 
gibt: Wenn deine externe Versorgung auf z.B. 2V fällt und dabei bleibt. 
Relais bleibt an, Batterie aus, Controller verhungert. Ohne Relais: 
Controller kriegt Batteriestrom, erkennt Unterspannung und geht auf 
Standby.
Gast #2127026
Lesenswert?

Na das Relais würde dann aber auch ausgehen, ist ja für 4 bis 5V 
konzipiert. Aber OK, ich sehe es ein, eigentlich ist es sinnlos.

Übrigens, es ist defintiv KEINE gute Idee bei solch einem Projekt das 
Brownout-Detect aktiviert zu haben....

Gruß
Jens
Gast #2127234
Lesenswert?

Ach mann!! Das kann doch nicht sein!

Ich habe die Uhr testweise mit Hauptversorgung laufen lassen (so ca. 10 
Minuten), und dann mal die Versorgung abgeklemmt und mit Batterie 
weiterlaufen lassen. Und was passiert?

Der PIC wird heiß!! Zu heiß zum Anfassen. Ich hab ihn natürlich erstmal 
rausgenommen und abkühlen lassen.

Ich hab danach versucht, das Verhalten zu reproduzieren, aber erfolglos.


Was ist da passiert?!



Gruß
Jens
#2127723
Lesenswert?

Mal ins Blaue geraten, einer deiner Ausgänge war noch aktiv, und hat 
irgendwie eines der nicht versorgten ICs betrieben. In dem Fall kann, 
von einem Kurzschluss bis zu einem Diodeneffekt auf einen deiner anderen 
Ausgänge auf GND Pegel, alles mögliche passieren.
Gast #2127787
Lesenswert?

A. K. schrieb:
> eine Haltespannung
> von gerade mal 0.75V (min).

Ja, hat mein Reed-Relais auch. Aber meine externe Spannung kommt von 
einem geregelten 5V-Netzteil.

Ich glaube als Fazit könnte mensch stehen lassen: Das Relais ist unnötig 
(ihr habt mich überzeugt), aber schaden tut es unter meinen 
Betriebsbedingungen nicht.


Jan S. schrieb:
> Mal ins Blaue geraten, einer deiner Ausgänge war noch aktiv, und hat
> irgendwie eines der nicht versorgten ICs betrieben. In dem Fall kann,
> von einem Kurzschluss bis zu einem Diodeneffekt auf einen deiner anderen
> Ausgänge auf GND Pegel, alles mögliche passieren.

Also die Ausgänge schalte ich definitiv ab vor dem SLEEP();. Zudem wird 
auch das PWM-Modul ausgeschaltet, und der korrespondierende Pin RB3 auch 
noch auf 0 gesetzt.

Könnte es sein, dass die Eingänge da muchsen? Also die lieber auf 
TRISRXX = 0; und dann auf GND-Pegel legen?

Ein bekannter von mir meinte, das könnte auch ein CMOS-Latching-Effekt 
sein.. na super, den bekomme ich ja nur weg durch "have you tried 
turning it on and off again" aber genau das soll ja bei mir gerade nicht 
gemacht werden...

Bin über jede Idee / jeden Ratschlag dankbar.

Beste Grüße
Jens
Gast #2127818
Lesenswert?

Jens schrieb:
> Ich glaube als Fazit könnte mensch stehen lassen: Das Relais ist unnötig
> (ihr habt mich überzeugt), aber schaden tut es unter meinen
> Betriebsbedingungen nicht.

Doch - schluckt unnötig Platinenplatz, zieht Strom, ist Mechanik, muß 
bestückt werden und überhaupt...
Gast #2127863
Lesenswert?

Ja, Latch-Up meinte ich, danke. Aber so sensitiv sind die Schaltungen 
doch nicht. Ich habe schon dutzende Platinen mit PIC & 
CD4094-Konstellation aufgebaut, nach dem selben Schema, nur ohne 
Batteriepuffer, und da ist sowas noch nie passiert.

Es scheint irgendwie an dem Batterie-Modus zu liegen.

Kann es sein, dass - obwohl alle Ausgänge ausgeschaltet sind - da 
trotzdem Kurzschlüsse durch die CD4094 oder TLC549 entstehen, die nicht 
am Saft hängen?

Gruß
Jens
#2127864
Lesenswert?

Stromversorgung der 4094er an die gepufferte Versorgung hängen. Richtig 
angesteuert benötigen die keinen Strom (OE inaktiv). Dann kann es nicht 
passieren, dass sie auch nur kurzzeitig durch die Eingänge Strom ziehen 
und dadurch ggf. in den Latchup laufen.

Wenn der TLC ebenfalls auf Standby betrieben werden kann, dann wäre das 
dort ebenfalls sinnvoll.
#2127871
Lesenswert?

Jens schrieb:
> ber so sensitiv sind die Schaltungen
> doch nicht. Ich habe schon dutzende Platinen mit PIC &
> CD4094-Konstellation aufgebaut, nach dem selben Schema, nur ohne
> Batteriepuffer, und da ist sowas noch nie passiert.
Ja nee is klar.

> Es scheint irgendwie an dem Batterie-Modus zu liegen.
Aha, woher weisst du das?

> Kann es sein, dass - obwohl alle Ausgänge ausgeschaltet sind - da
> trotzdem Kurzschlüsse durch die CD4094 oder TLC549 entstehen, die nicht
> am Saft hängen?

Öhm ohne Saft über Versorgung oder Eingang bzw Ausgang des PICs?
Fällt dann wohl unter Perpetuum mobile.

EDIT mir fällt gerade eine Möglichkiet ein ja, der Kurzschluss könne 
beim Abschalten der ICs entstehen, und dann nicht mehr kontrollierbar 
sein, da hast Du wohl recht. Eine einfache ösung wären Schutzwiderstände 
in den Leitungen.
Gast #2127912
Lesenswert?

Hallo,

danke für eure Antworten.

A. K. schrieb:
> Stromversorgung der 4094er an die gepufferte Versorgung hängen. Richtig
> angesteuert benötigen die keinen Strom (OE inaktiv). Dann kann es nicht
> passieren, dass sie auch nur kurzzeitig durch die Eingänge Strom ziehen
> und dadurch ggf. in den Latchup laufen.

Na gut, dann hänge ich die noch davor. OE ist auf null, definitiv. Aber 
wozwischen sollen die CD4094 im Latchup denn den Kurzschluss auslösen? 
Da liegt ja nichts an?

A. K. schrieb:
> Wenn der TLC ebenfalls auf Standby betrieben werden kann, dann wäre das
> dort ebenfalls sinnvoll.

Das weiß ich nicht so recht, finde dazu im Datenblatt des TLC549 nichts. 
Kann mir jemand helfen?

Jan S. schrieb:
> Aha, woher weisst du das?

Weil es immer dann diese Erwärmungen gab (bzw. sie dann starteten), wenn 
das Steckernetzteil nicht verbunden war, und die Uhr auf Batteriepuffer 
lief.

Jan S. schrieb:
> EDIT mir fällt gerade eine Möglichkiet ein ja, der Kurzschluss könne
> beim Abschalten der ICs entstehen, und dann nicht mehr kontrollierbar
> sein, da hast Du wohl recht. Eine einfache ösung wären Schutzwiderstände
> in den Leitungen.

Das verstehe ich nicht so ganz. Ich sehe das genau wie du (Perpetuum 
mobile). Aber was meinst du passiert beim Abschalten der ICs? Und wo 
würdest du die Schutzwiderstände hinpacken?

Gruß
Jens
#2127932
Lesenswert?

Hallo Jens,

wie A.K. schon schrieb die 4094 über OE in Standby schalten, sollten 
dann so gut wie keinen Strom ziehen. Den TLC würde ich komplett 
sparen... hat der PIC 16 keinen ADC bzw. nen Komarator?

Siehe 
http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial#Analog-Digital-Wandlung_ohne_internen_ADC

Oder PDF im Anhang.

Gruß Steffen
Angehängte Dateien:
#2127943
Lesenswert?

Jens schrieb:
> Aber was meinst du passiert beim Abschalten der ICs?
Keine Ahnung, das ist es ja. ;-) Möglicherweise verhällt sich der eine 
oder andere Eingang dann wie ne simple Diode und leitet voll gegen 
Masse. Dadurch kann dein PIC Ausgang in einen Latch-up Zustand geraten.

> Und wo würdest du die Schutzwiderstände hinpacken?
In die Leitungen zwischen PIC und den restlichen ICs.
Gast #2127979
Lesenswert?

Steffen N. schrieb:
> wie A.K. schon schrieb die 4094 über OE in Standby schalten, sollten
> dann so gut wie keinen Strom ziehen.

Hab ich gerade so verschaltet. Aber die Schaltung zieht jetzt 700uA im 
Standby! Das ist zu viel. Weiß auch nicht wo das herkommt..

Steffen N. schrieb:
> Den TLC würde ich komplett
> sparen... hat der PIC 16 keinen ADC bzw. nen Komarator?

Also einen ADC hat der nicht, aber einen Komparator. Aber den zu 
verwenden ist jetzt nicht mehr so sinnvoll da die Platine quasi fertig 
ist.

Jens
Gast #2128045
Lesenswert?

Gut, das Relais werde ich rausnehmen. Ihr habt mich überzeugt ;-)

Die CD4094 sind ja jetzt echt parallel zum PIC, und zusammen ziehen sie 
im Sleep-Mode 3uA, das ist weniger als ich zu hoffen wagte.

Der TLC549 zieht allerdings satte 0.7mA... Also packe ich den lieber vor 
die Dioden an JP1, weil der ja sowieso nicht gebraucht wird im 
Sleep-Mode.

Auch nicht so sauber, oder?

Jens
Gast #2128086
Lesenswert?

Ja, sicherlich, aber das Teil ist ein Geburtstagsgeschenk und sollte 
morgen fertig sein ;-)

Also gut, ich werde den ADC rausnehmen, und einen Taster zur 
Helligkeitseinstellung verwenden. Wäre sowieso nicht so bequem gewesen, 
weil es ein blöder Print-Poti von Piher war (10mm Durchmesser) und der 
mit dem Schraubendreher hätte betätigt werden müssen.

Naja, ich melde mich wenn's Erfolgserlebnisse gibt,

Jens

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren