Hallo! Ich würde mal wieder gerne auf Euren Erfahrungsschatz zurückgreifen ;-) Ich möchte eine Schaltung bauen, die ein Outdoor-Pumpen-System gegen Frostschäden schützen soll. D.h. das System soll sich leerpumpen, sobald die Temperatur unter 2°C sinkt, damit das beim Gefrieren sich ausdehnende Wasser nicht die Leitungen/Pumpe beschädigt. Das Problem: Es ist ein System, dass im "Stand-By" auf Batteriebetrieb läuft. Daher kann nicht ständig die komplette Hardware auf Full-Power laufen und die Temperatur mit 100mA Stromaufnahme überwachen. Und genausowenig möchte ich bei jedem Ausschalten der Schaltung das ganze System leepumpen (wäre in den meisten Fällen ja unnötiger Stromverbrauch und zudem nicht gut für das Gesamtsystem - ohne da zusehr ins Detail gehen zu wollen). Der Idle-Sleep-Mode des Atmel AVR würde es ja ermöglichen, in regelmäßigen Abständen aufzuwachen, die Temperatur zu messen (irgendein Temp-Sensor) und sich wieder schlafen zu legen. Der Stromverbrauch in diesem Sleep Mode ist aber zu hoch... Es muss also einer der Sleep-Modes werden, wo nur noch ein externer Interrupt in der Lage ist den µC zu wecken (wo alle CLKs aber still stehen), da dann der Stromverbrauch minimal ist. Daher suche ich jetzt eine Lösung, für eine Schaltung mit Atmel Mikrocontroller, die bei einer festen Temperatur (so bei 1 bis 2°C) aus dem Sleep-Mode gerissen wird und insgesamt so gut wie keinen Strom verbraucht (1mA wäre schon recht viel...). Außerdem muss sie Temperaturen von -20° bis 50° aushalten können (ist halt Outdoor ^_^). Jetzt habe ich drei Überlegungen, die ich aber noch nicht ins Detail durchplanen konnte: 1.) RC-Glied am Interrupt-Pin, dass sich langsam auflädt und so alle 10 Minuten ein Wake-Up auslöst (zur Messung und danach wieder Sleep) 2.) Ein Bimetall Thermostat, dass bei 2° schaltet (z.B. Farnell Best.Nr. 732631) und somit einen Interrupt auslöst oder einfach gleich die ganze Schaltung bestromt (die Idee ist mir grad erst gekommen ^_^). 3.) Eine IC Lösung, wie z.B. mit dem "DS 1620" (Reichelt). Da kann ich per µC einstellen, bei welchen Temperaturen die Ausgänge geschaltet werden sollen, das Teil auf "fortlaufende Messung" stellen und den Controller schlafen legen. Sind die 2°C erreicht, geht einer der Pins auf HIGH und weckt den AVR. Leider verbraucht das gute Stück auch wieder 1mA. Habt Ihr da evtl noch weitere Vorschläge oder könnt mir Tipps zu den von mir gemachten geben? Wenn ich dann ne verbrauchsgünstige Lösung habe, wie ich den Controller wach bekomme, muss ich mir nur noch Gedanken machen, welchen Spannungsregler ich benutze stöhn Ich tendiere grad noch sehr stark zum Bimetall Thermostat, dass parallel zum Einschalter liegt und eine harte Stromtrennung ermöglicht. Im Betrieb muss die Schaltung nicht sonderlich stromsparend sein (geht im Vergleich zum Pumpenstrom unter), wobei weniger Verbauch natürlich immer gut ist. Ich danke Euch schonmal für Eure Hilfe. Gerade bei der Auswahl und Anbindung von Sensoren oder Aktoren ist es immer gut, den Rat von Außenstehendem zu hören. Finde ich zumindest... Gruß, André ____________________ http://www.Dark-Sun.de
Spendiere dem AVR einen zweiten Takt am asynchronen Timer (Mega8 aufwärts), der ihn in grösseren Abständen aus dem Tiefschlaf reisst. Darin braucht er extrem wenig Strom. Manche Controller können für sowas auch den Watchdog-Oszillator missbrauchen, ich weiss nur grad nicht ob auch die neueren AVRs dazu gehören.
@ André Wippich (sefiroth) >läuft. Daher kann nicht ständig die komplette Hardware auf Full-Power >laufen und die Temperatur mit 100mA Stromaufnahme überwachen. Und Die Temperatur wird na nicht tierisch schnell sinken. Ein Messung alle 5..10 min sollte reichen. >Der Idle-Sleep-Mode des Atmel AVR würde es ja ermöglichen, in >regelmäßigen Abständen aufzuwachen, die Temperatur zu messen (irgendein >Temp-Sensor) und sich wieder schlafen zu legen. Der Stromverbrauch in >diesem Sleep Mode ist aber zu hoch... Genau. Deshalb nimmt man hier sinnvollerweise den Power-Save Mode und betriebt einen 32 kHz Quarz al asynchronen Timer. Der weckt den AVR alle 2 Sekunden, der zählt für ein paar uS eine Variable hoch, prüft ob das Zeitfenster vergangen ist und legt sich wieder schlafen. Verbraucht Pi mal Dauem 10uA (MIKROampere). >verbraucht (1mA wäre schon recht viel...). Außerdem muss sie STARKSTROM! >Temperaturen von -20° bis 50° aushalten können (ist halt Outdoor ^_^). Kein Thema. >Habt Ihr da evtl noch weitere Vorschläge oder könnt mir Tipps zu den von >mir gemachten geben? Siehe ebn.Plus einen Temperatursensor deiner Wahl. >zum Bimetall Thermostat, dass parallel zum Einschalter liegt und eine Aua. Das ist für ein Bügeleisen oder Kühlschrank OK, aber nicht hier. MFg Falk
Nen Timer an den asynchronen Timer hatte ich auch schon überlegt. aber in den Datenblättern von ein zwei Oszillatoren, die ich mir schnell rausgesucht hatte stand was von 20mA Stromaufnahme. Da brauche ich ja ein Kraftwerk für ;-) Habt Ihr ein explizites Beispiel was man da nehmen könnte?
@ André Wippich (sefiroth) >in den Datenblättern von ein zwei Oszillatoren, die ich mir schnell >rausgesucht hatte stand was von 20mA Stromaufnahme. Dann hast du dich wohl verlesen. >Habt Ihr ein explizites Beispiel was man da nehmen könnte? ??? 32kHz Uhrenquarz und gut. Dann brauchst du nichtmal einen Quarz für den Hauptoszillator, der interne RC-Taktgeber reicht dann. MFG Falk P.S. Ist sicher einen Wiki-Artikel wert. AVR Sleep modes.
André Wippich wrote: > Nen Timer an den asynchronen Timer hatte ich auch schon überlegt. aber > in den Datenblättern von ein zwei Oszillatoren, die ich mir schnell > rausgesucht hatte stand was von 20mA Stromaufnahme. Da brauche ich ja > ein Kraftwerk für ;-) Du sollt da keine externen Oszillatoren dranhängen, sondern an die Oszillatoranschlüsse beispielsweise vom Mega8/Mega88 einen 32KHz Uhrenquarz. Den Controller dann so fusen, dass er seinen Haupttakt vom internen RC-Oszillator kriegt (das ist die Voreinstellung), und einer der Timer von diesem Quarz versorgt wird. Dann kannst du den Controller in einen Stromsparmodus versetzen, in dem nur noch dieser 32KHz-Takt läuft, und mit dem daran angeschlossenen Timer den Controller bei Ablauf zu Messung oder weiterzählen aufweckt. Der mittlere Stromverbrauch liegt dann im unteren Microampere-Bereich. EDIT: sind dann ca. 8µA während er im "power save mode" schläft (Mega88).
> Dann hast du dich wohl verlesen.
Ja, aber im Atmel Datenblatt ;-) Hatte übersehen, dass ein Quarz
ausreicht. War irgendwie auf dem Trichter, dass ich ein Taktsignal
einspeisen muss und daher einen eigenständigen Oszillator brauche (der
10 bis 20 mA frisst).
Danke Euch! Dann ist mein problem ja (fast) gelöst. Ich werde einfach
die ganze Peripherie über nen FET abschaltbar gestalten und dann
zyklisch Messungen durchführen. Jetzt muss ich nur noch nen
Spannungsregler finden, der mir aus 9 bis 14V (KFZ-Batterie) 5V macht
ohne dabei selbst Unmengen an Strom zu verbrauchen. Bei nem 7805 helfen
mir auch die schönsten Stromsparmodi nichts :-)
@ André Wippich (sefiroth) >Spannungsregler finden, der mir aus 9 bis 14V (KFZ-Batterie) 5V macht >ohne dabei selbst Unmengen an Strom zu verbrauchen. Bei nem 7805 helfen Für Extremisten. TPS715 von TI. MfG Falk
Echt nettes Teil, schafft aber leider nur 80mA. Ich glaube aber nicht, dass ich die Schaltung im Betrieb mit allen Sensoren/Aktoren und Anziegen auf unter 80mA dimensionieren kann. Die Lasten werde schon direkt über die Batteriespannung betrieben, aber es sind einfach zuviele Verbraucher da, die stabilisierte 5V brauchen. Werde bei Farnell mal schauen müssen, ob ich was mit 100 oder 150mA finde. Oder fällt Dir da sofort was für ein?
@ André Wippich (sefiroth) >Echt nettes Teil, schafft aber leider nur 80mA. Das reicht doch! Der versorggt nur den uC. Der Rest klassisch über 7805, welcher aber im Schlafzustand per FET abgeschaltet ist. >finde. Oder fällt Dir da sofort was für ein? LP2951. MFg Falk
Ich habe jetzt (endlich) mit dem Schaltplan anfangen können und habe jetzt einen besseren Überblick, was überhaupt alles in die Schaltung rein soll. 10µA - 20µA Stromaufnahme des AVRs wären sehr gut. Wenn ich jetzt aber einen externen 32kHz Uhrenquarz für den Timer zum Aufwachen benutze, geht (wenn ich es richtig verstehe) die Stromaufnahme laut Datenblatt (AT90CAN128 - S.388 - Kap 28.2 - Fig. 28-10) sehr in die Höhe. Bei 5V Supply liege ich dann bei 100µA, und das ist ja ein recht krasser Wert... Vor allem wollte ich eigentlich (weit) unter 100µA bleiben. Gibt es da eine Möglichkeit den Timer stromsparender anzusteuern? Sonst muss ich evtl. doch auf einen Thermoschalter zurückgreifen, der die Schaltung mittels Interrupt aus dem Sleep-Modus holt. DB: http://www.atmel.com/dyn/resources/prod_documents/doc7679.pdf
André Wippich schrieb: > Bei 5V Supply liege ich dann bei 100µA, und das ist ja ein > recht krasser Wert... Ähm... Du hast geschrieben, daß du eine Autobatterie verwenden möchtest. Deren Selbstentladung ist ERHEBLICH höher als diese 100µA. Die Selbstentladung liegt deutlich im mA-Bereich. Auch mal etwas mehr Luftfeuchte bringt mehr Entladung zusätzlich als die 100µA. MfG:AVR und mehr
Stimmt schon, aber auch wenn die Selbstentalfung im mA Bereich liegt, wird die Schaltung die Batterie noch schneller leeren, wenn sie mehr Strom zieht. Und Mit der ganzen Peripherie liege ich dann vielleicht bei 130µA, wobei mehr als die Hälfte nur auf den dusseligen Quarz zurückzuführen ist :-) Gut wäre ein Temperatur Switch, der bei 4 bis 5°C einfach nur einen Pin auf HIGH/LOW legt (Open-Source/Drain ist natürlich genausogut), damit ich damit den Interrupt auslösen kann. Oder eine Taktquelle, die mir in großen Abständen einen Impuls und Flankenwechsel genereirt, damit ich den Controller aufwachen lassen kann und eine Temperaturmessung mit einem seperaten IC durchführen kann (die brauchen so max 250µA). Die Zeitabstände können ruhig mehrere Minuten sein. Eine Messung alle 5 bis 10 Minuten wäre ideal. Und die Abstände müssen auch nicht auf die Sekunde genau sein. Es soll ja nur in regelmäßigen Abständen die Temperatur kontrolliert werden. Wenn es da Applikationen mit Stromaufnahmen von unter 100µA gäbe wäre das super. Aber meine Suche hat mir bisher immer nur ICs mit 100µA bis 1mA Stromaufnahme gebracht :-(
@ André Wippich (sefiroth) >Stimmt schon, aber auch wenn die Selbstentalfung im mA Bereich liegt, >wird die Schaltung die Batterie noch schneller leeren, wenn sie mehr >Strom zieht. Bitte? Wenn die Selbstentladung bei angenommenen 1 mA liegt, und dein Controller + Gemüse 130uA zieht, sind das gerade mal 13% mehr. Und nun rechne mal aus, wie lange eine Batterei mit beispielsweise 10 Ah hält? 10Ah / 1,13mA = 7692 h, das ist fast ein Jahr Ne grosse Autobatterie hat eher 40Ah und mehr. >130µA, wobei mehr als die Hälfte nur auf den dusseligen Quarz >zurückzuführen ist :-) Bei 3,3V braucht der 32k Quarz nur 10uA. Siehe Sleep Mode. >Gut wäre ein Temperatur Switch, der bei 4 bis 5°C einfach nur einen Pin >auf HIGH/LOW legt (Open-Source/Drain ist natürlich genausogut), damit >ich damit den Interrupt auslösen kann. Gibt es Dutzenende. Siehe Temperatursensor. >Oder eine Taktquelle, die mir in großen Abständen einen Impuls und >Flankenwechsel genereirt, damit ich den Controller aufwachen lassen kann Siehe Sleep Mode >Wenn es da Applikationen mit Stromaufnahmen von unter 100µA gäbe wäre >das super. Aber meine Suche hat mir bisher immer nur ICs mit 100µA bis >1mA Stromaufnahme gebracht :-( Bei DER Stromquelle kein Problem. MFG Falk
Hmm, ich glaube die 100µA habe ich da falsch herausgelesen... Beim IDLE-SleepMode ist aus dem Diagramm "Idle Supply Current vs. Vcc (32kHZ Watch Crystal)" ein Strom von 30µA angegeben. Bei "Power Save" sind es laut Diagramm nur noch 16µA - allerdings wird da nichts mehr vom Watch-Crystal erwähnt. Ich beziehe michjetzt auf die Diagramme in Kapitel 28. Nebenbei noch was anderes: Ich habe folgenden Oszillator gefunden: SG-3030JF DB: http://www.farnell.com/datasheets/91189.pdf Der braucht nur 2µA bei 5V Supply. Dann könnte ich doch den einfach an den TOSC1 Pin hängen und alles ist gut, oder?
Falk Brunner wrote: > Bitte? > Wenn die Selbstentladung bei angenommenen 1 mA liegt, und dein > Controller + Gemüse 130uA zieht, sind das gerade mal 13% mehr. Und nun > rechne mal aus, wie lange eine Batterei mit beispielsweise 10 Ah hält? > > 10Ah / 1,13mA = 7692 h, das ist fast ein Jahr > > Ne grosse Autobatterie hat eher 40Ah und mehr. Ok, das hätte ich vielleicht wirklich mal ausrechnen sollen, bevor ich hier Panik schiebe :-) Aber nur für die Theorie - würde der 2µA Uhrenquarz eine Stromersparnis bringen?
Ok, das hätte ich vielleicht wirklich mal ausrechnen sollen, bevor ich hier Panik schiebe :-) Aber nur für die Theorie - würde der 2µA Uhrenquarz eine Stromersparnis bringen? ---stellen sie sich eine Frage ...schenken sie sich eine Antwort---
Also eine Autobatterie hat sich nach einigen Monaten so oder so selbst entladen, deine paar µA weniger Stromaufnahme sind der Batterie vollkommen egal. Beispiel: Gehen wir davon aus das die Batterie nach 6 Monaten komplett tiefentladen ist. Bei 50Ah ergibt das 50/(6*30*24) = 0,0115 also 11,5mA. Jetzt überlege mal wieviel du durch 10µA weniger sparen kannst...
Jurij G. wrote:
> Jetzt überlege mal wieviel du durch 10µA weniger sparen kannst...
Ja, das hab ich doch akzeptiert ;-)
Aber es interssiert mich dennoch:
Bringt ein 2µA 32,768 kHz Oszillator am Timer2 TOSC1 Eingang eine
geringere Stromaufnahme im Vergleich zu einem 32,768 kHz Uhrenquarz an
TOSC1 & TOSC2? Oder umformuliert, wiviel Strom wird benötigt um den
Quarz zu nutzen.
Wäre sehr nett, wenn mir das noch jemand kurz beantworten könnte.
@ André Wippich (sefiroth) >Bringt ein 2µA 32,768 kHz Oszillator am Timer2 TOSC1 Eingang eine >geringere Stromaufnahme im Vergleich zu einem 32,768 kHz Uhrenquarz an >TOSC1 & TOSC2? Oder umformuliert, wiviel Strom wird benötigt um den >Quarz zu nutzen. Wenn du zur Abwechslung mal die geposteten Links lesen würdest, könntest du die Frage recht leicht beantworten. Siehe Sleep Mode >Wäre sehr nett, wenn mir das noch jemand kurz beantworten könnte. Wäre nett wenn du mal lesen würdest. MFG Falk
Den Artikel habe ich mir durchgelesen. Allso bitte nicht gleich böse werden... In dem Artikel wird aber doch nur beschrieben, wie man es mit einer RTC (übrigens ein sehr nettes Bauteil!) und dem tiefsten Power Down Mode extrem stromsparend realisieren kann. Meine Frage zielte aber mehr darauf welche Änderung sich ergeben würde, wenn ich im Power Save Modus eine andere Taktquelle verwende (auch wenn die Lösung mit der RTC besser ist).
@ André Wippich (sefiroth) >Den Artikel habe ich mir durchgelesen. Allso bitte nicht gleich böse >werden... Glaub ich nicht. Dort gibts eine sehr grosse Tabelle, wo der Stromverbrauch im Power Save Modus mit 32 kHz Quarz drinsteht. MFG Falk
Jaaa, aber es steht da nicht drin wieviel Strom gezogen wird wenn ich KEINEN Quarz verwende, sondern ein externes Taktsignal.
@ André Wippich (sefiroth) >Jaaa, aber es steht da nicht drin wieviel Strom gezogen wird wenn ich >KEINEN Quarz verwende, sondern ein externes Taktsignal. Ach soooo. Hab ich wohl ein weing überlesen. :-0 Entschuldigung. Offiziell wird das von Atmel nicht empfohlen, siehe Datenblatt. Besser ist das zyklische Aufwecken aus dem Power Down Modus. Siehe Artikel. MFG Falk
Jo kein Ding ;-) Ich glaube ich versuche es gleich mit dem DS1371. Ist an sich nicht nötig, aber auf die 2 Euro kommts nicht drauf anund man will sich ja auch weiterbilden...
Falk Brunner schrieb: > 10Ah / 1,13mA = 7692 h, das ist fast ein Jahr > > Ne grosse Autobatterie hat eher 40Ah und mehr. Wollen wir ihm jetzt auch noch verraten, daß er sich seine Autobatterie einfach kaputtsteht - egal, ob die Schaltung angeschlossen ist oder ob die Batterie nur so rumsteht? ;-) Gerade Autobatterien brauchen Ströme (und keine Stömlingchen), um eine Sulfatierung der Platten zu verhindern. Eine Autobatterie braucht immer mal wieder einen Entladestrom im A-Bereich und natürlich ebenso eine Ladung im A-Bereich. Diese Reglung könnte der Microcontroller sicher auch mit erledigen: 1x im Monat schaltet er zunächst z.B. eine KFZ- Scheinwerfer-Glühlampe für 2h an, wieder ab, und anschließend aktiviert er das Ladegerät, welches er bei erreichen der Ladeschlußspannung wieder abschaltet. :-) MfG:AVR und mehr
@ AVR und mehr (Gast) >Wollen wir ihm jetzt auch noch verraten, daß er sich seine Autobatterie >einfach kaputtsteht - egal, ob die Schaltung angeschlossen ist oder ob >die Batterie nur so rumsteht? ;-) Psssst. Die Industrie braucht doch Umsatz ;-) Aber wie ist das mit den Bleigel Akkus? Die sind doch auch für Alarmanlagen etc. geeignet, wo sie lange als Backup funktionieren müssen. MFG Falk
Muss ich mir eigentlich beim Pull-Up am Reset-Pin Gedanken machen? Gilt für den Reset auch das maximale Leakage von 1µA wie bei den IO Pins? Nicht dass mir da über denn Reset Pin Starkströme in den AVR fließen :-)
@ André Wippich (sefiroth) >Muss ich mir eigentlich beim Pull-Up am Reset-Pin Gedanken machen? Nicht kleiner als 10K. Braucht man allerdings nicht mehr wirklich, der eingebaute reicht meist. >Nicht dass mir da über denn Reset Pin Starkströme in den AVR fließen :-) Keine Bange, das passt schon. MFG Falk
Falk Brunner schrieb: > Aber wie ist das mit den Bleigel Akkus? Die sind doch auch für > Alarmanlagen etc. geeignet, wo sie lange als Backup funktionieren > müssen. Die Blei-/Bleigel-/...-Akkus für Alarmanlagen, Baustellenleuchten, USV etc. sind für wesentliche geringere Ströme ausgelegt, haben somit einen deutlich höheren Innenwiderstand. Die Selbstentladdung ist nicht ganz so groß wie bei den Autobatterien, aber immer noch deutlich. Aber sie werden ja ständig auf voller Ladung gehalten, sie entladen sich ja nur bei Stromausfall, wenn sie die Zeit des Stromausfalls brücken. Und je nach Auslegung ges Gerätes entladen sie gelegentlich den Akku und laden ihn dann wieder. Für den OP wäre darüber nachzudenken, ober er nicht lieber einen kleinen Bleiakku nimmt, bei dem er für regelmäßiges Nachladen sorgt. MfG:AVR und mehr
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.