Hallo Forengemeinde,
ich steh vor einem kleinen Problem und wollte mal um Rat bitten.
Ich habe ein Arduino Nano welcher über eine Spannung von 6-12V Betrieben
wird (VIN). Diese lassen sich mit einen Schalter abstellen.
An den Pins A0 und A1 wird eine Spannunggemessen.
An D1 liegt ein Logik Signal an 0 oder 5V.
Schalte ich nun die Versorgungsspannung ab, läuft der Arduino einfach
weiter und versorgt sich über die Pins A0,A1 und/oder D1 mit Spannung.
Nun wie kann ich das um gehen, dass dies nicht mehr passiert und der
Arduino wirklich aus ist, wenn ich die Versorgungsspannung unterbreche?
Mach ein Relais in die zu messenden Signale, das trennt dann die
Leitungen auf, wenn du die Spannungsversorgung abschaltest. Somit wird
verhindert, dass Strom rückwärts in den µC fließen kann.
Arno schrieb:> Nun wie kann ich das um gehen, dass dies nicht mehr passiert und der> Arduino wirklich aus ist, wenn ich die Versorgungsspannung unterbreche?
Indem du die Datenblattspezifikationen ein hälst.
Sobald du die Versorgungsspannung abschaltest, sinkt VDD auf 0V. Die
Eingangsspannungen an den Pins dürfen maximal bei VDD+0.5V liegen, i.e.
du musst dafür sorgen, dass die Eingangsspannung unterhalb dieser Grenze
liegen.
Aber mal eine ganz andere Frage: Warum klaust du dem µC die
Versorgungsspannung, statt in schlafen zu legen?
Der mit dem Schalter ist erstmal eine Übergangslösung. Später soll der
Arduino über ein Akku versorgt werden welcher den Arduino trennt sobald
eine minimal Spannung unterschritten wird, um den Akku nicht zu
beschädigen, wobei dann das selbe Problem aufkommt.
Arno schrieb:> Im Tiefschlaf liegt die Stromaufnahme bei 13 mA und wäre damit zuhoch.
Dann wirst du dich von Schnick-Schnack wie LED, 16MHz?-Takt u.ä.
verabschieden und im Datenblatt von deinem Prozessor mal ein bisschen
lesen müssen. Für den ATmega328 steht dort z.B. für Power-down mode ein
maximaler Wert von 2.6µA bei 3V. Da scheint also noch Luft zu sein.
Arno schrieb:> 13 mA
Das ist ungefähr Faktor 1000 zu viel. Im Datenblatt stehen die genauen
Angaben für die Stromaufnahme in den einzelnen Sleep-Modi.
Höchstwahrscheinlich misst du die Stromaufnahme von dem vorhandenen
Festspannungsregler welcher natürlich einen hohen Eigenverbrauch hat.
Nimm den runter und deine Stromaufnahme sinkt dramatisch - mitunter
unter die Selbstentladung des Akkus.
Floh schrieb:> Nochmal die Frage: Warum legst du ihn nicht schlafen?Stefan S. schrieb:>> 13 mA> Das ist ungefähr Faktor 1000 zu viel.
Oh Leute, anstatt hier Dünschiss zu posten, guckt Euch doch mal den
A*-Nano an: Neben Spannungsregler und LED ist da noch die USB-Bridge
drauf (FTDI oder CH340), deshalb bekommt man den Strom nicht deutlich
runter.
Arno schrieb:> Damit sich das schalfenlegen lohnt müsste> er unter 2mA an stromverbrauch haben.
Du darfst Dir gerne mal etwas Mühe geben, ordentlich zu schreiben!
Der Nano ist für Akkubetrieb nicht sinnvoll, da setze ich einen ProMini
ein. Von diesem die LED und den Spannungsregler runter, die 5V werden
extern mit einem MCP1703 erzeugt. Da kein USB drauf ist, brauche ich für
die Programmierung einen externen Adapter, ansonsten ist der identisch
dem Nano zu benutzen.
Ohne mich zu verrenken, komme ich unter 30µA incl. Regler und
Leckströmen der benachbarten Elkos.
Mal wieder:
http://www.home-automation-community.com/arduino-low-power-how-to-run-atmega328p-for-a-year-on-coin-cell-battery/
Ach ja: Ich fuhrerke nicht mit der Kombizange herum, ich kann die
Bauteile ordentlich ablöten.
Arno schrieb:> Nun wie kann ich das um gehen, dass dies nicht mehr passiert
Lege vor die Eingänge einen 10k Widerstand.
Dann fliesst so wenig Strom, daß der Arduino keine ausreichende
Betriebspannung bekommt.
Aber die 10k reichen, damit der jeweilige uC-Eingang (ob digital oder
analog egal) noch das Signal sieht.
Wenn der Analogeingang schon aus einem Spannungsteiler stammt, nimm
statt 10k einfach 10k-Quellwiderstand des Spannungsteilers. Ein
Spannungsteiler z.B. aus 10k + 5k hat einen Quellwiderstand von 10k|5k,
also 1/((1/10k)+1/5k)) = 3k333, man würde also nur 6k667 ergänzen (na
ja, 6k8).
Die Geräte die an A0, A1 und D1 angeschlossen sind, woher bekommen diese
ihre Versorgung? Den Arduino über die gleiche Spannung versorgen?
Wäre es ein Problem auch die Geräte an A0, A1 und D1 von der Spannung zu
trennen, wenn der Akku eine kritische Spannung erreicht?
Sonnst halt die Verbindungen von A0, A1 und D1 zum Arduino trennen.
Würde ja auch über Mosfets gehen, wenn der Platz für Relais zu klein
ist.
Vielleicht hilft für mehr Lösungsansätze, wenn du genauer beschreibst,
was das Ganze am Ende werden soll. Und was du eigentlich an A0, A1 und
D1 angeschlossen hast