Stromsparen atmega16

#3047037
Lesenswert?

Hallo,

ich habe da eine Frag zum Stromsparen mit dem atmega16. Entschuldigt 
bitte den nicht allzu schönen Schaltplan, aber dies ist mein erstes 
Projekt.
Sinn der Schaltung: Sie soll einen Motor morgens und abends ansteuern um 
ein Türchen zu öffnen/schließen.

Mein Problem ist nun, dass wenn ich in den Power-down Mode gehe, ich nur 
entweder mit den externen Interrupts INT0, INT1 oder mit dem WDT 
aufwachen kann.

Das Problem mit dem WDT ist aber, dass er immer einen Reset durchfüht. 
Nun wollte ich fragen ob es eine bessere Lösung gibt für das Aufwachen. 
Externe Schaltung die einen Interrupt auslöst oder ähnliches? Das ganze 
natürlich Stromsparend, soll ja Batteriebetrieben sein das ganze.

Oder eine Softwaretechnische Lösung. Ist es möglich lange 
Batterielaufzeiten mit dem Idle-Mode zu bekommen?

Vielen Dank für eure Tipps!
Angehängte Dateien:
#3047065
Lesenswert?

Mathias G. schrieb:
> atmega16.
Wo hast du den denn ausgebuddelt?

Mathias G. schrieb:
> Das Problem mit dem WDT ist aber
Den kannst du, wie schon gesagt wurde, auch als Timer benutzen. 
Verbraucht aber zuviel Strom.
Günstiger ist ein Uhrenquarz am Timer 2.

Und wenn du es ein bisschen moderner und richtug stromsparend möchtest 
nimmst du einen Atmega164pa:
>>Power-save Mode: 0.6μA (Including 32kHz RTC)

mfg.
#3047073
Lesenswert?

Mathias G. schrieb:
> Ja ich weiß, dass das zB mit dem Atmega168 möglich wäre. Beim Atmega16
> funktioniert das aber leider nicht so weit ich das gelesen habe...

Warum hast Du denn überhaupt so einen alten Chip genommen? Ein 
Atmega164PA hat die gleiche Pinbelegung, ist aber von sich aus deutlich 
stromsparender, hat den erweiterten Watchdog, der auch einen Interrupt 
anstelle eines Resets auslösen kann, und noch etliche andere Vorteile. 
Es gibt keinen Grund, neue Projekte mit alten Chips anzufangen. Die sind 
noch nicht einmal billiger.

So, fürs nächste Mal weißt Du das.

fchk
Gast #3047097
Lesenswert?

Wenn es sparsam werden soll, ist der 7805 als Spannungsregler schon mal 
der erste Fehler - da gibt es deutlich sparsamere Ausführungen, und sei 
es nur ein 78L05. Deutlich sparsamer wäre z.B. ein MCP1703. Weniger als 
5 V wären Stromsparender, machen aber die direkte Ansteuerung der 
H-Brücke noch schwieriger.

Die H-Brücke für den Motor klappt so nicht, denn die P-Kanal Mosfets 
werden nie ausschalten. Dafür reicht die Spannung vom µC nicht. Da muss 
also noch was anderes hin, z.B. 2 extra stufen mit NPN Transistoren 
davor. Strom brauchen die nur wenn der Motor läuft, und das auch 
deutlich weniger als der Motor.

Je nach Anforderungen des Programms könnte man den µC als Ganzes mit 
einem 32 kHz Quarz laufen lassen - das ist nicht optimal, aber relativ 
einfach.

Eine andere Möglichkeit wäre es Timer2 mit einem externen 32 kHz Quarz 
laufen zu lassen und zum aufwecken zu nutzen. Der µC selbst wird dann 
z.B. mit dem internen RC Ttakt laufen.

Wenn es wirklich sparsam sein soll, wäre ggf. noch ein anderer 
modernerer µC sinnvoll, z.B. ein Mega324P oder ähnliches.

Der Teiler für die Messung der Batteriespannung darf viel hochohmiger 
(z.B. 4,7 M und 2,2 M || 100 nF)  werden, wenn man einen Kondensator 
einplant. Der FET zum Abschalten funktioniert so ohnehin nicht - man 
müsste schon die High Side schalten, und das braucht 2 Transistoren.

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