Hallo zusammen, ich benötige nochmal euren Rat. folgendes Ergebnis soll meine Schaltung am Ende liefern. Ein Atmega 328P läuft im pwr down Modus (Verbrauch paar uA) an einem Li-Io Akku und wird beim Öffnen einer Tür durch einen externen Interrupt (Reed-Sensor) aus dem Tiefschlaf geweckt. (High Signal) Problem: Der Atmega verbraucht aktuell 4,4uA. Der notwendige Pullup Widerstand am digitalen Eingang R2 22k verbraucht im Zustand (Tür geschlossen) bei 4,2V aber 0,19mA. Da die Tür (abgelegenes Gebäude) zu 99% aber geschlossen ist, wollte ich mal fragen, ob es sinnvoll ist den Hauptteil der verfügbaren Akku Kapazität am Pullup zu verheizen und ob es ggf. noch eine andere Möglichkeit gibt. VG und vielen Dank im voraus.
Türschalter mit bei geschlossenener Tür geöffnetem Kontakt verwenden: https://www.elektrotechnik-schabus.de/products/reed-kontaktschalter-offner-sht-3002?srsltid=AfmBOop-blajHPJw8fGyXu9jhm75PKCTLF-JFR7haw7fElrlh-Hkf45X
Genau, der Reed-Kontakt sollte schließen wenn die Tür geöffnet wird. Ggf. mit einem Transistor die Polrität ändern.
:
Bearbeitet durch User
Olli Z. schrieb: > Ggf. mit einem Transistor die Polrität ändern. Tolle Idee, das würde den Ruhestrom nur noch mehr erhöhen. Reed-Kontakte gibt es als Umschalter, damit hat man auch einen Öffner. Dann sollte man aber einen Pulldown hinzufügen, damit der Eingang nicht schwebt. Welchen Grund hat der 10k in Reihe?
Alex schrieb: > und ob es ggf. noch eine andere Möglichkeit gibt. Mach das Ganze um zwei Zehnerpotenzen hochohmiger. Dann sinkt der Energieverbrauch über dem Pullup um den Faktor 100. Den Kondensator würde ich in dem Fall auf 220nF erhöhen. Olli Z. schrieb: > Ggf. mit einem Transistor die Polrität ändern. Zeig mal mit einem Schaltplan, wie da was zu sparen sparen wäre. Oliver R. schrieb: > Welchen Grund hat der 10k in Reihe? Tiefpass gegen Störungen.
:
Bearbeitet durch Moderator
Den R2 könnte man auch verdoppeln, also 47K, ausprobieren. Wenn der Reedkontakt offen ist kann man sich aber leichter Störungen einfangen. Bei sehr langen Leitungen kann das ein Problem werden. Deswegen Abgeschirmte Leitungen verwenden. Vielleicht ginge auch was mit CD4050 oder CD4049. Die laufen bis 3V UB.
Alex schrieb: > Der Atmega verbraucht aktuell 4,4uA. Läuft da vielleicht noch irgendwas (Brownout-Detektor, Watchdog, Strom an einen anderen Pin, ...)? > ob es ggf. noch eine andere Möglichkeit gibt. - Den Sensor wechseln oder ihn anders montieren, wie schon jemand gesagt hat - Mit dem Sensor einen MOSFET schalten, der dann das Signal für den µP liefert - Den Pullup vergrößern - Die Taktfrequenz senken -
Oliver R. schrieb: > Reed-Kontakte gibt es als Umschalter, damit hat man auch einen Öffner. Bei einem Umschalter kann der Reed-Kontakt direkt zwischen VCC und GND umschalten. > Dann sollte man aber einen Pulldown hinzufügen, damit der Eingang nicht > schwebt. Wenn sichergestellt werden kann, dass der Reed-Umschalter immer angeschlossen ist, benötigt man für die paar Mikrosekunden Umschaltzeit keinen Pulldown. Der weitere große Vorteil besteht darin, dass auch bei lange geöffneter Tür die Batterie nicht entladen wird. > Welchen Grund hat der 10k in Reihe? Er stellt mit dem 22 nF-Kondensator einen Tiefpass gegen Störungen und einen ziemlich gut ESD-Schutz dar.
Wie schnell muß denn eine Änderung erkannt werden? Wenn es nicht fast Echtzeit sein muß, kann man den ATMega auch in Intervallen aufwachen lassen, Pull up einschalten und Pin messen. Danach Pull up wieder aus und wieder schlafen legen bis zum nächsten Timer interrupt.
Habe grade mal bei meiner alten Alarmanlage nachgeschaut. Die läuft allerdings mit 12V. Den R2 kannst Du auch locker auf 100K erhöhen. Parallel zum Reed eine Zenerdiode und VDR. Und dann mal den Ruhestrom messen. Ich würde bei einem “Öffner“ bleiben.
Hallo zusammen, ich möchte euch schonmal für all die Rückinfos und Input bedanken. Fritz G. schrieb: > Türschalter mit bei geschlossenener Tür geöffnetem Kontakt verwenden: Das hatte ich auch schon auf dem Schirm. Der aktuell verbaute Reedkontakt (offen bei offneren Tür) hat halt den Scharm, dass man relativ schnell weitere Türen bzw. Fenster per Schleife mit einbinden kann. Des weiteren kann man auch so schneller eine Unterbrechnung in der Leitung feststellen. Lothar M. schrieb: > Mach das Ganze um zwei Zehnerpotenzen hochohmiger. Dann sinkt der > Energieverbrauch über dem Pullup um den Faktor 100. > Den Kondensator würde ich in dem Fall auf 220nF erhöhen. Wenn das funktioniert, klingt das für mich nach der besten Lösung. Ich hatte nur die Befürchtung, dass beim Erhöhen des Pullup die Störanfälligkeit des Digitalen-Eingangs größer wird und es zu Fehlern kommt. Im Netz hatte ich oft von 10k Ohm gelesen, ich dachte mit den 22k bin ich da schon drüber. Aber wenn es mit 2,2MOhm auch funktioniert wäre das top. Thomas B. schrieb: > Deswegen Abgeschirmte Leitungen verwenden. Werde ich berücksichtigen. Rolf schrieb: > Läuft da vielleicht noch irgendwas (Brownout-Detektor, Watchdog, Strom > an einen anderen Pin, ...)? Nicht benutzte Digitale-Eingänge habe ich auf LOW, ADC ist aus, BOD aus. Und dann in den Sleep-Modus. Es kann aber auch gut sein, dass mein Voltcraft Multimeter den Wert im uA Bereich nicht mehr ordentlich abbildet Rolf schrieb: > Die Taktfrequenz senken (um unter die 4,4 µA zu kommen) Ich habe mit Hilfe dieser Anleitung den Bootlader „Atmega328 on a breadboard (8 MHz internal clock)“ drauf gebrannt. https://wolles-elektronikkiste.de/atmega328p-standalone-betreiben Wie ich unter die 8Mhz komme weiß ich leider nicht. Thomas B. schrieb: > Parallel zum Reed eine Zenerdiode und VDR. Alles klar, da muss ich mich aber erstmal belesen was die Funktion der beiden Bauteile ist. VG und vielen Dank, Alex
:
Bearbeitet durch Moderator
Alex schrieb: > Lothar M. schrieb: >> Mach das Ganze um zwei Zehnerpotenzen hochohmiger. Dann sinkt der >> Energieverbrauch über dem Pullup um den Faktor 100. >> Den Kondensator würde ich in dem Fall auf 220nF erhöhen. > Wenn das funktioniert, klingt das für mich nach der besten Lösung. Es wird auch mit 2M2 funktionieren, der Leckstrom des Eingangs ist gering. > Ich hatte nur die Befürchtung, dass beim Erhöhen des Pullup die > Störanfälligkeit des Digitalen-Eingangs größer wird und es zu Fehlern > kommt. Im Netz hatte ich oft von 10k Ohm gelesen, ich dachte mit den 22k > bin ich da schon drüber. Aber wenn es mit 2,2MOhm auch funktioniert wäre > das top. Die Störsicherheit macht bei dir sowieso das RC-Glied mit 10k und dem Kondensator, bei dem ich wie gesagt noch ein paar nF drauflegen würde. Was dieser Kondensator auch macht, ist übrigens eine "Zeitverzögerung", denn nach dem Öffnen des Reedkontakts müssen erst mal ein paar ms vergehen, bis der Kondensator über den 2M2 bis zur Schaltschwelle aufgeladen ist. Alex schrieb: > Wie ich unter die 8Mhz komme weiß ich leider nicht. CLKDIV8 wäre der erste verzweifelte Schritt. Besser wäre ein entsperechend langsamer interner Oszillator: der 328P hat einen 128kHz RC Oszillator, der ist super für Batterieanwwendungen. Dazu dann noch der CLKDIV8, dann wird die SW quasi im SinlgeStep ausgeführt... ;-)
:
Bearbeitet durch Moderator
Alex schrieb: > ob es ggf. noch eine andere Möglichkeit gibt. Du legst den pull up nicht an VCC sondern einen Portpin. Der ist nur Mikrosekunden wahrend der Auswertung high und sonst low. Die Tur öffnet/schließt sich ja langsam genug, dass man nur jede Sekunde nachgucken muss. Damit sinkt der mittlere Stromverbrauch auf 1/100000. Der C muss naturlich weg an deinem Eingang. Du brauchst nicht msl einen extra PortPin, wenn du den eingebauten pull up des AVR nutzt. Du brauchst dann gar keine zusätzlichen externen Bauteile, nur den Reed der nach Masse schaltet. Auch Reed-Kontakte haben einen Mindeststrom, goldbeschichteten reichen 10uA also der interne pull up von 50-90k.
Alex schrieb: > Der notwendige Pullup Widerstand am > digitalen Eingang R2 22k verbraucht im Zustand (Tür geschlossen) bei > 4,2V aber 0,19mA. Dann aktiviere den Pull-Up doch nur für kurze Zeit. Für den Akku kommt es nicht auf die mA, sondern auf die mAh an. Olli Z. schrieb: > Genau, der Reed-Kontakt sollte schließen wenn die Tür geöffnet wird. Das kann nach hinten losgehen. Ein Kabelbruch kann nicht erkannt werden. Aus Sicht der Elektronik sieh bei einem n.o.-Kontakt ein Kabelbruch genauso aus, wie eine ordnungsgemäß geschlossene Tür. Ob das relevant ist, hängt davon ab, was an dem Kontakt für eine Funktion hängt.
:
Bearbeitet durch User
Lothar M. schrieb: > Alex schrieb: >> Wie ich unter die 8Mhz komme weiß ich leider nicht. > CLKDIV8 wäre der erste verzweifelte Schritt. > Besser wäre ein entsperechend langsamer interner Oszillator: der 328P > hat einen 128kHz RC Oszillator, der ist super für Batterieanwwendungen. > Dazu dann noch der CLKDIV8, dann wird die SW quasi im SinlgeStep > ausgeführt... ;-) Geht noch um Faktor 256 langsamer, dank CLKPR.
Alex schrieb: > Hallo zusammen, > > ich benötige nochmal euren Rat. > > ... Schalte den Pullup mit deinem Reed. An den Mega einen Pulldown im unteren MOhm-Bereich.
Alex schrieb: > hat halt den Scharm, dass man Auah! Alex schrieb: > Ich hatte nur die Befürchtung, dass beim Erhöhen des Pullup die > Störanfälligkeit des Digitalen-Eingangs größer wird und es zu Fehlern > kommt. Du hast einen Mikrocontroller und dessen Software in Deiner Hand. Die Türe wird nicht im Bereich von Zehntelsekunden offen sein, sondern deutlich länger. Also was: Der Impuls kommt, der µC fragt den Kontakt mit ein paar ms Verzögerung erneut ab und legt sich wieder hin - oder eben nicht. Jetzt kommt mir gleich die Frage in den Kopf, was bei geöffneter Tür und später dessen Schließen passiert.
H. H. schrieb: >> CLKDIV8 wäre der erste verzweifelte Schritt. >> Besser wäre ein entsperechend langsamer interner Oszillator: der 328P >> hat einen 128kHz RC Oszillator, der ist super für Batterieanwwendungen. >> Dazu dann noch der CLKDIV8, dann wird die SW quasi im SinlgeStep >> ausgeführt... ;-) > > Geht noch um Faktor 256 langsamer, dank CLKPR. Ihr müsst dem TE dann aber schon sagen, daß ISP Programmierung dann extrem langsam läuft und dem Programmer möglich sein muss und das sich bei etwaigen seriellen Bootloadern die Baudrate drastisch niedrig wird. Schon einen auf WDCLK und CKDIV8 programmierten MC kannste nur mit max. 4kHz ISP Frequenz proggen. Das kann nicht jeder.
Matthias S. schrieb: >> Geht noch um Faktor 256 langsamer, dank CLKPR. > Ihr müsst dem TE dann aber schon sagen, daß ... er gewisse kluge Kommentare ignorieren soll. Mit seinen 4,4µA im sleep kommt er klaglos hin, sein 'Problem' ist an anderer Stelle.
Michael B. schrieb: > Du legst den pull up nicht an VCC sondern einen Portpin. > > Der ist nur Mikrosekunden wahrend der Auswertung high und sonst low. > ... > Auch Reed-Kontakte haben einen Mindeststrom, goldbeschichteten reichen > 10uA also der interne pull up von 50-90k. Da hats ne kleine Misere... 0,0A beim Schalten. Die 22nF(?) direkt an den Kontakt, ~1MOhm an VCC?!
Teo D. schrieb: > Die 22nF(?) direkt an den Kontakt, ~1MOhm an VCC?! Dadurch dass der Kontakt sowieso 99% der Zeit geschlossen ist, braucht man den 22k Pull-Up Widerstand eigentlich in der langen Zeit nicht. Man braucht den 22k Pull-Up Widerstand nur in der kurzen Zeit, wo der Kontakt geöffnet ist. Könnte man nicht mit einer intelligenten Transistorschaltung, in genau dem Moment wo der Kontakt geöffnet wird, den 22k Widerstand mit einem Transistor dazuschalten?
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.
