Hallo liebe Leute, Ich plane gerade ein kleines Batterie betriebenes Gerät welches mit einem Motor das Tor unseres Hühnerstalls öffnet und schliesst. Die Batterie sollte natürlich möglichst lange halten. Nun frage ich mich, ob ich die Echtzeit Uhr (RTC) sowie das LCD direkt von je einem Output Pin des Mikrocontrollers (ATMEGA328P-PU) speisen kann. Damit erhoffe ich mir, das LCD und die RTC abzuschalten indem ich die entsprechenden Outputs auf Low schalte. (Die RTC sollte dann automatisch von einer Knopfzelle gespiesen werden) Ich habe folgende Ströme berechnet (bei 4.85V): LCD: 2.5 mA Trimmer 20 kOhm: 0.2 mA DS1307+ I_CCA: 1.5 mA 2 x PullUP 2.7 kOhm: 3.6 mA Was haltet ihr davon? Ist die Idee an sich gut oder eher schlecht? - Sollte ich zusätliche Strom limitierende Widerstände und decoupling Kondensatoren verwenden? - Sind die verwendeten Bauteile ok oder gibt es bessere alternativen? Ich hänge einen aufs wesentliche reduzierten Plan an diesen Beitrag an. Vielen Dank für eure Kommentare! nette Grüsse aus der Schweiz, Philip
Philip schrieb: > Was haltet ihr davon? Ist die Idee an sich gut oder eher schlecht? Von den Strömen her ist das alles kein Problem. Allerdings solltest du schon am LCD einen Stütz-C einfügen (z.B. 47nF-100nF) und du musst daran denken, das alle Daten- und Kontrollpins auf low gehen, bevor du das LCD abschaltest. Das wird nämlich sonst munter weiter gespeist durch die anderen Pins und verbraucht wieder Strom. Ausserdem wirst du jedesmal nach dem aktivieren neu initialisieren müssen. Ich sehe übrigens keine Benutzereingabe, wie soll das LCD aufwachen?
>Was haltet ihr davon? Ist die Idee an sich gut oder eher schlecht?
Im Verhältnis zur Stromaufnahme des Motors wirken
sich deine Stromsparmassnahmen vermutlich nicht die Bohne aus.
Lieber Matthias, Vielen Dank für deine Tipps! Ich habe nun einen 0.1 μF Kondensator beim LCD eingefügt. Ich werde wie du vorgeschlagen hast alle LCD pins auf low schalten und das Display jeweils neu initialisieren. Was denkst Du über die RTC mit den zwei 2.7 kOhm Pullups, wird dies auch klappen mit der Speisung über den MCU? Was das Aufwachen angeht hast Du natürlich auch recht ich habe einige Schalter sowie die Spannungsversorgung auf dem Schaltplan weggelassen, damit es etwas übersichtlicher ist. Wenn Du möchtest kann ich den gesamten Plan noch hochladen? Danke! :o)
holger schrieb: > Im Verhältnis zur Stromaufnahme des Motors wirken > sich deine Stromsparmassnahmen vermutlich nicht die Bohne aus. Lieber Holger, Vielen Dank für Deine Antwort. Das könnte natürlich sein. Ich habe versucht die Strom aufnahmen über einen Tag auszurechnen und bin auf ein anderes Ergebniss gekommen. Vielleicht habe ich jedoch etwas nicht berücksichtigt bitte kontrollier doch kurz meine annahmen/berrechnungen: Strohmaufnahme pro Tag: LCD 2.7 mA * 24h = 64.8 mAH RTC 5.1 mA * 24h = 122.4 mAH Motor 500 mA * 2 min = 16.7 mAH Deshalb denke ich, dass es schon sinnvoll ist LCD/RTC abzuschlaten. (bzw die RTC von der Knopzelle her zu versorgen) Lieber Gruss Philip
Nimm' eine temperaturkompensierte RTC wie DS3231. Die DS1307 rennt dir grob 5s am Tag weg. Als Display würde ich ein 5110-LCD nehmen. Die kommen unter 1mA (Backlight aus lassen!); wenn du die Anzeige nicht all zu oft auffrischt, sogar mit ~240µA. Die DS3231 nimmt 100µA auf, wenn sie über Vcc mitgespiesen wird. Auf Backup-Batterie laufend jedoch <1µA. Die I2C-Transfers schlagen kurz mit etwa 4mA zu Buche.
:
Bearbeitet durch User
Hi
>Als Display würde ich ein 5110-LCD nehmen.
Oder DOG-Display -> 250µA.
MfG Spess
Dirk K. schrieb: > Nimm' eine temperaturkompensierte RTC wie DS3231. Die DS1307 rennt dir > grob 5s am Tag weg. Hey Dirk, Vielen Dank für diese Bemerkung. 5s/tag ist klar zuviel. Ich werde mir die DS3231 genauer anschauen. Was die beiden vorgeschlagen Displays betrifft bin ich noch ein wenig skeptisch.
Ich würde die RTC weglassen, das kann der Mikrocontroller selber, wenn Du als Taktquelle den internen 8MHz RC-Oszillator verwenden kannst, dann kommt der Uhrenquarz an PB6 und PB7, der Timer 2 wird so konfiguriert, das er als Uhr läuft, auch wenn der Controller im Sleep ist. Die Uhr mußt Du dann natürlich in Software realisieren. Zum witerzählen der Zeit muß der Controller zwar immer wieder (z.B. 1x pro Sekunde) aufwachen, aber das fällt, vom Stromverbrauch her, kaum ins Gewicht, und im aktiven Betrieb verursacht die Uhr gar keinen zusätzlichen Stromverbrauch. Bei den größeren ATmegas sind die Pins für CPU-Quarz, und Uhrenquarz getrennt, da geht dann auch beides gleichzeitig. Mit freundlichen Grüßen - Martin
Martin S. schrieb: > Ich würde die RTC weglassen, das kann der Mikrocontroller selber Hey Martin, Das ist eine gute Idee. Wobei die Uhr dann halt neu eingestellt werden muss wenn die Battrien gewechselt werden. (Dies sollte aber nicht allzu häufig vorkommen). Kannst Du etwas über die zu erwartende Genauigkeit sagen? (Über ein Jahr mit Temperaturen von ca. -5 bis 35 grad C) Gruss Philip
Mit der selbstgestrickten µC-RTC kommst du auf das Niveau der DS1307, um es einfach zu formulieren. Oder du steckst viel (und ich meine viel) Geld in einen temperaturkompensierten Quartz (TCXO). Da ist eine DS3231 zu 50 Eurocents ein echter Schnapper. Ich habe aus den Komponenten eine Uhr gebastelt, die halt nur Uhrzeit, Datum, bisschen Gedöns und Luftfeuchte/Temperatur anzeigt. Und komme da auf ordentliche Laufzeiten. Das wird mit diesen 1620-Displays jedoch nichts, die ziehen deutlich mehr Strom.
Dirk K. schrieb: > Mit der selbstgestrickten µC-RTC kommst du auf das Niveau der > DS1307, um > es einfach zu formulieren. Oder du steckst viel (und ich meine viel) > Geld in einen temperaturkompensierten Quartz (TCXO). Da ist eine DS3231 > zu 50 Eurocents ein echter Schnapper. > > Ich habe aus den Komponenten eine Uhr gebastelt, die halt nur Uhrzeit, > Datum, bisschen Gedöns und Luftfeuchte/Temperatur anzeigt. Und komme da > auf ordentliche Laufzeiten. Das wird mit diesen 1620-Displays jedoch > nichts, die ziehen deutlich mehr Strom. Hey Dirk, Das Display soll halt nur so ein paar Minuten pro Monat laufen. (Wenn Schliess/Öffnungszeiten neu eingestellt werden müssen) Meine Frage ist deshalb ob ich das LCD/RTC mit dem MC zuverlässig von der Spannungsversorgung trennen und wieder verbinden kann. Ob es dann während der kurzen Betriebszeit ein wenig mehr Strom braucht wird nicht allzusehr zu Buche schlagen (hoffe ich) :) Danke und Gruss Philip
Philip schrieb: > Kannst Du etwas über die zu erwartende Genauigkeit sagen? Genaue Messungen kann ich Dir nicht bieten, aber, hier im Zimmer, laufen schon mehrere Aufbauten, mit Wald und Wiesen Uhrenquarz vom Reichelt, und 10nF Keramikkondensatoren. Abweichung ca. 2 - 3 Minuten / Monat. Temperatur ist allerdings relativ konstant, ca. 20 .. 26 Grad C. Will aber, für einen Aufbau, der gerade am entstehen ist, mal einen der Kondensatoren durch einen Trimmer ersetzen, zwecks Abgleich. Das Problem mit dem Batterie-Wechsel ist einfach zu lösen: wenn der Controller nur die Zeit weiterzählt, ist die Stromaufnahme so gering, daß ein Elko von ein paar Tausend uF locker ein paar Minuten überbrückt. Wenn die genaue Zeit so wichtig ist, hast Du schon mal über ein DCF77-Modul nachgedacht, reicht ja, wenn es alle paar Tage mal kurz eingeschaltet wird, und die Uhr nachgestellt wird. Mit freundlichen Grüßen - Martin
Martin S. schrieb: > Wenn die genaue Zeit so wichtig ist, hast Du schon mal über ein > DCF77-Modul nachgedacht, reicht ja, wenn es alle paar Tage mal kurz > eingeschaltet wird, und die Uhr nachgestellt wird. Hallo Martin :) Das ist ja eine coole Idee :) Für dieses Projekt jedoch denke Ich ist einfacher und billiger den DS3231 von Dirk zu verwenden. (Hoffe ich jedenfalls) Aber ich freue mich in einem anderen Projekt mal das DCF77 Signal empfangen zu können. :) Danke und Gruss
Philip schrieb: > Strohmaufnahme pro Tag: > > LCD 2.7 mA * 24h = 64.8 mAH > RTC 5.1 mA * 24h = 122.4 mAH > Motor 500 mA * 2 min = 16.7 mAH RTC 5 mA ist doch völliger Unsinn, realistisch sind weniger als 500 µA, und das Konzept ist auch unsinnig, von einer Batterie auf eine andere umzuschalten (die auch noch weniger Kapazität hat). RTCs sind darauf ausgelegt, im abgeschalteten Zustand des Systems jahrelang mit Batterie zu laufen, es ist eine völlige Illusion, dass du daran mit irgendeiner irren Schaltung was verbessern könntest. Georg
Georg schrieb: > RTC 5 mA ist doch völliger Unsinn, realistisch sind weniger als 500 µA, > und das Konzept ist auch unsinnig, von einer Batterie auf eine andere > umzuschalten (die auch noch weniger Kapazität hat). RTCs sind darauf > ausgelegt, im abgeschalteten Zustand des Systems jahrelang mit Batterie > zu laufen, es ist eine völlige Illusion, dass du daran mit irgendeiner > irren Schaltung was verbessern könntest. Hallo Georg, Die RTC hat doch zwei Strom aufnahmen eine wenn Vcc=5V und eine wenn Vcc=0V (im zweiten Fall wird die RTC dann durch die Knopfzelle versorgt). Sagen wir mal: I_ccs = 0.2 mA (Vcc=5V) und I_BAT1 = 0.0005 mA (Vcc=0V) Würde es dann keinen Sinn machen mit einer Schaltung Vcc zu trennen?
Hast du mal in das Datenblatt des DS1307 (klick mal auf "DS130729 geguckt? Electrical Characteristics, Seite 2: Active Supply Current (fSCL = 100kHz) max. 1.5mA Standby Current max. 200µA (ICCS specified with VCC = 5.0V and SDA, SCL = 5.0V.) Damit noch immer ein Stromverschwender im Vergleich zum genaueren DS3231. Beim trennen von Vcc fällt der auf Standby (Timekeeping) zurück und spart gut Strom.
:
Bearbeitet durch User
Philip schrieb: > Die RTC hat doch zwei Strom aufnahmen eine wenn Vcc=5V Philip schrieb: > Sagen wir mal: I_ccs = 0.2 mA (Vcc=5V) Zuerst behauptest du, deine RTC braucht 5 mA, jetzt sind es noch 0,2 mA - so kann man nicht ernstahft diskutieren. Das ist immerhin ein Unterschied von Faktor 25. Was fällt dir als nächstes ein? Mach das so wie du willst, Argumente nützen ja eh nichts. Georg
Georg schrieb: > Philip schrieb: >> Die RTC hat doch zwei Strom aufnahmen eine wenn Vcc=5V > > Philip schrieb: >> Sagen wir mal: I_ccs = 0.2 mA (Vcc=5V) > > Zuerst behauptest du, deine RTC braucht 5 mA, jetzt sind es noch 0,2 mA > - so kann man nicht ernstahft diskutieren. Das ist immerhin ein > Unterschied von Faktor 25. Was fällt dir als nächstes ein? Mach das so > wie du willst, Argumente nützen ja eh nichts. > > Georg Wieso bist du so gemein? :^(
Der Stromverbrauch mit Motor und LCD und RTC und pipapo ist schon ein Proobleeeem. Bevor ich mit Bauteilnamen um mich werfe, noch eine Frage zum Konzept: Da du für den Motor nur 2 Aktivierungen pro Tag vorsiehst, nehme ich mal an, dass die Hühner morgens raus dürfen und abends, wenn der Fuchs auf Jagd geht, eingesperrt werden sollen. Was nützt da eine hochgenaue Uhr? Tiere synchronisieren ihre "innere Uhr" auf das Tageslicht. Bei denen sind die "Umschaltzeiten" Morgendämmerung und Abenddämmerung. Ein µC mit ungenauem internal RC-Oszillator und einem LDR (von mir aus auch ein Licht-Frequenzwandler) als Lichtsensor im sparsamsten Stromsparmodus könnte dieses Verhalten wunderbar und (bei schlauer Programmierung) noch störsicherer, als das Tierverhalten nachbilden. Wenn sich das Programm an den Ablauf der letzten 7 Tage orientiert, ist die Sommer-Winter-Anpassung gleich eingebaut... Da kommst du auf Genauigkeiten von vielleicht 5...15 Minuten pro Tag - aber die werden nicht summiert, sondern passen sich immer wieder an den Tagesablauf an. LCD? Wozu?
Georg schrieb: > Zuerst behauptest du, deine RTC braucht 5 mA, jetzt sind es noch 0,2 mA > - so kann man nicht ernstahft diskutieren. Das ist immerhin ein > Unterschied von Faktor 25. Was fällt dir als nächstes ein? Mach das so > wie du willst, Argumente nützen ja eh nichts. Aber du hast natürlich recht ich habe verschiedene Zahlen verwendet. Zuerst ging ich von 5.1 mA aus. Dies setzte sich zusammen aus (Active Supply Current) I_CCA = 1.5 mA + der Strom der durch die I2C Pullups fliesst. Unterdessen habe ich bemerkt, dass dies eine schlechte Annahme ist da der I2C ja nicht immer aktiv ist. Besser ist es vom Standby Current I_CCS = 0.2 mA auszugehene. I_CCS ist immer noch 400 höher als I_BAT1 = 500 nA wenn V_CC = 0V ist. Alle werte habe ich vom DS1307 Datenblatt. Deshalb denke ich man einsparungen machen wenn man mite microcontroller VCC auf 0V setzt. Gruss Philip
Jacko schrieb: > Der Stromverbrauch mit Motor und LCD und RTC und pipapo ist > schon ein Proobleeeem. > > Bevor ich mit Bauteilnamen um mich werfe, noch eine Frage > zum Konzept: Hallo Jacko, Vielen Dank für Deine Antwort. Ich denke Du hast das Konzept richtig erfasst. :) Ich habe über die realisierung mit einer Photodiode nachgedacht und obwohl sie viele Vorteile hat, hat sie auch einige Nachteile. Vorteile: -Keine RTC nötig -Kein LCD nötig -natürlicher zykluss Nachteile: -Sensor benötigt einmalige Kalibrierung. -anfälliger auf äussere veränderungen (verschiebung des Stalles, Schnee, etc.) -erhöhter programmier und debug aufwand Alle diese Nachteile kann man sicherlich überwinden. Aber bevor ich mich an die Programmiererei mache wollte ich halt noch abklären ob es möglich ist LCD und RTC per Mikrocontroller von der Versorgungs Spannung abzuschneiden. (Worauf ich immer noch keine Antwort habe ;) klar ist mit dieser Lösung müsste ich dann die Öffnungs und Schliesszeit alle paar Monate anpassen. (Deshalb brauche ich auch ein LCD (entsprechende Buttons sind übersichtshalber nicht auf dem Schaltplan eingezeichnet)). Danke und viele Grüsse, Philip
Straßenbeleuchtungen etc. werden recht zuverlässig mit LDR-Erfassung geschaltet, wenn der Sensor so aufgestellt ist, dass ihm Wetter nichts anhaben kann. Mit Kontrolle durch einen ungenau getakteten µC wird das nur noch störsicher. Ansonsten ist 5 Minuten DCF-Empfang pro Tag auch kein Stromfresser - da musst du aber eine grobe Tabelle vorhalten, die die Tageslänge im Jahresverlauf kennt - UND darfst die Sommer/Winterzeit-Bits nicht vernachlässigen! Sonst gibts Krawall im Hühnerstall! (Oder vorm Tor!) Ansonsten noch ein Vorschlag für das LCD: Einschaltung nur bei Bedarf! Dann kannst du das billigste "stromfressendste" Display von Pollin etc nehmen. Kosten: 1 PortPin IN + Taster 1 PortPin OUT + R + Transistor zum Einschalten des LCD Ginge aber auch mit externem Schalter fürs LCD und nur 1 PortPin IN, der die LCD-Versorgung erkennt. Bei Abschaltung des LCD alle OUT-Pins zur LCD-Ansteuerung in den INPUT-Modus schalten. Bei Einschaltung des LCD muss es natürlich initialisiert werden. Viel Glück bei deiner weiteren Suche!
Jacko schrieb: > Ansonsten noch ein Vorschlag für das LCD: > Einschaltung nur bei Bedarf! Dann kannst du das billigste > "stromfressendste" Display von Pollin etc nehmen. > Kosten: > 1 PortPin IN + Taster > 1 PortPin OUT + R + Transistor zum Einschalten des LCD Könnte man auch R + Transistor weglassen? das LCD zieht ja nur 2.5 mA (max). Oder sollte man immer mit R + Transistor arbeiten?
Philip schrieb: > Könnte man auch R + Transistor weglassen? das LCD zieht ja nur 2.5 mA > (max). > > Oder sollte man immer mit R + Transistor arbeiten? mit weglassen meine ich direkt vom PortPin Out zum Spannungseingang der LCD zu gehen
Philip schrieb: > Ich plane gerade ein kleines Batterie betriebenes Gerät welches mit > einem Motor das Tor unseres Hühnerstalls öffnet und schliesst. > Die Batterie sollte natürlich möglichst lange halten. Martin S. schrieb: > Ich würde die RTC weglassen, das kann der Mikrocontroller selber, wenn > Du als Taktquelle den internen 8MHz RC-Oszillator verwenden kannst ich würde eher die RTC DS3231 wählen die kann mit dem Alarmregister den ganzen Atmel wecken der tief schläft bis er morgens und abends was tun soll! Da muss er nicht selber Sekunden zählen. mit dieser Erweiterung könnte man auch noch den Atmel die letzten µA im sleep klauen https://www.mikrocontroller.net/articles/Datei:Schaltplan_transistortester.png
:
Bearbeitet durch User
Bei einem 2 x 16 Display für 5 EU von Po..in stehen 1,5...3 mA ohne Beleuchtung im Datenblatt - das kannst du auch direkt von einem Out-Pin versorgen. Es gehen maximal 0,1 V im µC verloren. Oder eben (auch MIT Beleuchtung) das Display über einen externen Taster, oder Schalter aktivieren. "Oder sollte man immer...?" - Nein, nur wenn der Strom zu hoch wird, besonders wenn mehrere Ausgänge gleichzeitig Strom von etlichen mA ziehen. Im Extremfall quälst du den µC mit zu hoher Verlustleistung. Ansonsten sollte man bei Anwendungen, die sich auf stabile Ausgangsspannungen verlassen, wie z.B. eine 16-Bit-PWM o.ä. darauf achten, dass nicht alles durch Schalten eines anderen PortPins mit einer Last > 10...20 mA (oder auch einiges weniger) durcheinander kommt. Spielt beim von dir geschilderten Problem aber keine Rolle.
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.