Fragen zu Ultra Low Power Design

Hallo,

ich versuche mich gerade in der Konzeption meiner ersten Mikrocontroller gesteuerten Anwendung. Ich habe mir schon diverses angelesen, wäre aber dankbar, wenn einer mit mehr Erfahrung kurz seine Meinung zu meinen Überlegungen äussern würde und ein paar Fragen beantworten könnte, damit ich mich nicht komplett verrenne.

Das ganze soll ein einfacher Tauchcomputer werden (besser Tiefenlogger mit Anzeige der Momentanen Tiefe/Zeit). Da das ganze so stromsparend wie möglich werden soll, bin ich bei folgendem gelandet:

Prozessor MSP430 Sensor Intersema ms5535[1] Stromversorgung Ladungspumpe tps60311[2], macht aus 0,9-1,8V 3V bzw 3,3V

Den Sensor wollte ich per SPI an den Mikrocontroller anschliessen, da der Sensor im Standby noch 0,4µA sparen kann, wenn man den 32,xx kHz Takt abschaltet, wäre die Frage, wie man das am besten macht? Kann der Controller ein stabiles Taktsignal generieren, da der Sensor sehr empfindlich auf Schwankungen reagiert? Oder kann man den Takt von Quarz vernünftig durchschalten ohne das die Schaltung mehr Strom braucht als der Standby Modus einspart? Das Taktsignal brauche ich übrigends auch am Controller.

Zweite Frage ist, wie ich sinnvoll externen Speicher anschliessen kann. Bisher bin ich auf Flash Speicher Module mit I2C, bzw SPI Schnittstelle gestossen. Interresant wäre es ja, eine MMC Card per SPI anzuschliessen, dann wäre definitiv genug Speicher vorhanden, nur habe ich nichts gefunden, das genug Speicher hat (min. 512KByte) und mit einen Strom von max 19mA (tps60311 kann max. 20mA) auskommt. Das Übertragen wollte ich direkt durch den PC, per Multimaster Schaltung auf dem seriellen Bus machen lassen. Wobei sich mir hier noch die Frage stellt, ob ein SPI Bus, mit Sensor (muss mit Tri-State abgekoppelt werden), Speicher und PC ausreicht, oder ob ich gleich einen Controller mit zwei seriellen Ports nehmen soll und den Sensor an einen und den Speicher und PC an den zweiten hängen soll.

Wo kann ich ein stromsparendes 2x16-Display bekommen, das mit 3,0 Volt funktioniert. Das interessanteste ist bisher ein reflektives dog[3] Modul, das braucht aber 3,3 Volt (gibt es eigentlich schon E-Ink E-Papers auf dem Freien Bastlermarkt).

Und vorerst letzte Frage, wie schaltet man einen Verbraucher (hier Sensor oder Speicher) am besten komplett ab? Ich würde da spontan einen Transistor für nehmen und einfach die Versorgungsspannung abdrehen, aber wie viel Stromverlust würde das bedeuten, bzw. gibt es da elegantere Methoden?

Ware super, wenn mir jemand noch Tipps oder Hinweise zum weiterlesen geben kann.

Grüße

Bastian

[1]
formatting link
[2]
formatting link
[3]
formatting link
Reply to
Bastian Scholz
Loading thread data ...

"Bastian Scholz" schrieb im Newsbeitrag news: snipped-for-privacy@gmx.de... ..

hi, ne aeltere quarzuhr? oder ein taschenrechner? sooviele pixel bauchst du doch garnicht.

fuer tauchen in beliebige tiefe? oelgefuelltes case mit druckausgleichsblase besser als harzvergossen, dazu reed-relais mit magnetischem "fernausloeser" aka schiebeschalter. alle energieintensiven anwendungen mit fremdstrom, z.b. vom usb her. aber angesichts der vermutlich noetigen displaybeleuchtung bzw der led-ziffern waer ein dicker akku doch leicht machbar. nen moderner handyakku hat laessig genug power fuer tagelanges tauchen. oder willst du unterwasser dein mikrodisplay mit ner gameboylupe vergroessern? was machst du bei dunkelheit oder schlamm? da lieber overkill und mit dem strom nicht sparsam sein. lithium-polymer sind etwa so dicht wie wasser, deine "druck-uhr" behindert dich also kaum.

--
unter allervorzüglichster Höchstachtung,
gUnther
Reply to
gUnther

Bastian Scholz schrieb:

Wesahlb nicht gleich eine direkt geeignete Batterie?

Kein Problem, einfach einen HCMOS-Puffer dazwischenhängen.

512KB für einen *einfachen* Tauchcomputer?

Nö, der Controller (ST7036) läuft ab 2,7V.

Kann man machen, am besten mittels LLL-MOSFET. Allerdings sollten dann auch alle Eingänge des abgeschalteten Bausteins auf Low liegen, sonst fließt Strom über die Schutzdioden nach Vdd.

Gruß Dieter

Reply to
Dieter Wiedmann

Der Kontroller kann nur mit einem Quartz einen takt erzeugen der genau ist.

Schau dir den at45db041 an. 4mA aktiv,8u stabdby, spi, pagemode mit 2x264 bytes ram,4 megabit, 2.7-3.3 V im so8 gehäuse.

Das DOG ist schon nicht schlecht. Ich komm mit dem passiven Reicheltteil nicht unter 80 uA. Aktiv ca 200 uA . Sparsamer wird nur ein passives LCD Display.

Ich hab hier einen Atmega8 mit LM75, DCF77 und IR-empfänger die ich direkt über einen portpin schalte. Man muss nur alle Datenleitungen passend mitschalten und schauen ob die Spannungsqualität noch gut genug für den Sensor ist. Laufen tut der interne RC-Oszilator+powersavemode. Das Timing macht der interne 32768khz Quarzoszilator. Was hier unschön ist sind die 100uA stromverbrauch des LP2950.

--
MFG Gernot
Reply to
Gernot Fink

Am Wed, 05 Jul 2006 14:23:27 +0200 schrieb Dieter Wiedmann:

Ich fand die Idee nett, das Ding aus einer Standard AA Batterie oder Akku zu speisen. In der Hoffnung die auch im Hintersten Teil der Welt noch zu bekommen.

Der Sensor liefer den Druck und Temperatur mit 15Bit Genauigkeit. Bei der Platzplanung bin ich von Druck sekündlich und Temperatur alle ein bis zwei Minuten ausgegangen plus Header sind das im Schnitt 7-8 KB pro Stunde. Das ganze soll aber zur Not einen Tauchurlaub ohne Computerverbindung auskommen ohne das Informationen überschrieben werden. Und 15 Stunden Unterwasser in sieben Tagen habe ich schon geschafft. Die Sekunde möchte ich übrigends haben, da ich auch manchmal in Apnoe Unterwegs bin, da sind mir 10,20 oder 30 Sekunden zu lang für einen Aufzeichnungsintervall. Und ob ich jedesmal ans Umschalten denke...

War bei LCDs nicht das Display selbst das Problem? Es reicht ja nicht, das der Contoller die Daten anzeigt, wenn dann das Display im Kalten Wasser so träge wird, das nichts mehr geht.

Reply to
Bastian Scholz

Bastian Scholz schrieb:

Arbeitest du zufällig für Microsoft? Überleg dir mal was an deinem Algorithmus unsinnig ist.

Deshalb Displayhersteller dazu befragen, der muss wissen ob die Ladungspumpe des Controllers für die Kontrastspannung noch ausreicht.

Gruß Dieter

Reply to
Dieter Wiedmann

Bastian Scholz schrieb:

32kHz Quarz am MSP430 und über ACLK-Pin an den Sensor senden?

Der MSP hat einen internen DCO, der aber nicht soo genau ist. Ich würde einen Uhrenquarz nehmen.

formatting link
SST25VF040? Braucht aber min. 2.7V. Der MSP rennt ab

1.8V.

Reicht auch ein passives Panel? Es gibt ja auch MSP mit LCD-Ansteuerung, allerding nur 160(?) Pixel/Segmente.

Versorgung direkt durch I/O-Pin? Low-level-FET?

Gruß Gunther

Reply to
Gunther Mannigel

Am Thu, 06 Jul 2006 10:40:34 +0200 schrieb Alfred Jäger:

Erstmal danke an alle die bisher Tipps gegeben haben.

Das hatte ich im Datenblatt bisher überlesen, ein externer ACLK bleibt bis einschliesslich LPM3 aktiv so das das anscheinend genau das ist was ich suche. Welchen 430 ich genau benutze weiss ich noch nicht, bisher habe ich das Datenblatt von einem der größeren vor mir. Wenn die grobe Planung steht, werde ich gucken, welcher mir minimal reicht.

Vor allem haben die meisten einen maximalen Schreibstrom von bis zu 35mA angegeben, das wird mit der Ladungspumpe wieder eng... Das Schreiben wollte ich auch gepuffert machen, $PAGESIZE im RAM zwischenspeichern, und sobald die Größe erreicht ist auf den Flash schieben und den Ram wieder freigeben. Am Ende des TG wird der letzte Block dann mit 0 aufgefüllt und geschrieben.

So etwas in der Art hatte ich vor. Trotzdem muss ich doch für die Speicherplatzberechnung davon ausgehen, das ich zwischen 11 (verringerte Auflösung) bis 15Bit (maximale Sensorauflösung) Speicher pro Sekunde (plus Temperatur) brauche, wenn ich nachher ein komplettes TG-Profil haben möchte. Ich glaube das hatte ich nicht richtig rübergebracht. Wenn ich nur die "Zusammenfassung" haben möchte, würden die 512KB vermutlich ewig reichen. Im "Header" zum passenden TG würden dann Dinge wie Luftdruck bei TG-Begin, TG-Nummer und in späteren Versionen eventuell Uhrzeit (RTC folgt ;) und Oberflächenpause stehen. Im Inhaltsverzeichnis dann noch die gesamte mit dem TC verbrachte Unterwasserzeit, Anzahl der TG, ... Wenn dann die 512KB voll sind, soll der (oder die) ältesten Profile überschrieben werden.

Das Gehäuse wollte ich (bis auf den Sensor natürlich :) Druckdicht ausführen, so das das Display unter Normaldruck bleibt. Ein Bekannter mit Zugriff auf eine passende (Alu-)CNC Maschine ist vorhanden. Das mit den Tastern muss ich wirklich noch klären.

Gruß

Bastian

Reply to
Bastian Scholz

Bastian Scholz schrieb:

Nein, das brauchst du nicht. Oder tauchst die innerhalb *einer* Sekunde von 0 auf 50m bzw vice versa? Speichere Differenzen, und natürlich einen Startwert, das spart enorm Speicherplatz, und weil das Speichern erheblich Energie kostet auch noch Batteriekapazität.

Gruß Dieter

Reply to
Dieter Wiedmann

Bastian Scholz schrieb:

er

den.

e

Hallo,

statt stur mit festen Zeitabst=E4nden zu speichern kann man das auch=20 flexibler angehen, etwa so: Die Tiefe wird im minimalen Zeitabstand von einer Sekunde und maximal=20 etwa einer Minute gespeichert, sie muss sich aber um mindestens 0,1 m=20 ver=E4ndert haben.

Wenn Du wirklich Strom sparen willst darfst Du nicht zu oft speichern=20 und musst den Prozessor in Pausen wo er nichts zu tun hat in einen=20 stromsparenden Zustand bringen.

Bye

Reply to
Uwe Hercksen

Hallo Gernot,

Das ist beim MSP430 nicht mehr ganz so. Die F2xx Familie bietet fabrikgeeichte DCO. Ob deren Rest-Toleranz reicht, muesste man durchrechnen. Ich benutze gerade so einen hier. In meiner Anwendung kommt es auf die Praezision des Taktes allerings nicht an, Hauptsache, er ist da.

Was Bastian aber ueberlegen muss: Irgendetwas muss den uC periodisch oder beim Veraendern einer Groesse (z.B. Druck) aufwecken. Kann aber durchaus ein externer CMOS Oszillator sein, der per Interrupt "anklingelt".

--
Gruesse, Joerg

http://www.analogconsultants.com
Reply to
Joerg

Der DCO ist gut genug um eine serielle schnittschtelle zu takten aber für eine Uhr ist er völlig ungeeignet. Die Frage ist auch ob ein so erzeugter takt ausreicht um die externen Sensoren zu versorgen. TI hat ein gutes beispiel wie man DCO und Quartz nutzt.

formatting link

--
MFG Gernot
Reply to
Gernot Fink

Hallo Gernot,

formatting link

Stimmt, ich wollte nur sagen, dass es bei der MSP430 Serie inzwischen so etwas gibt. Ich weiss nicht, wie praezise Tauch Trips erfasst werden muessen. Allerdings wuerde ich so etwas nicht selbst bauen. Ein Bekannter hat sich einen solchen kleinen Logger gekauft. Nach dem Auftauchen geht es zum Truck und er schliesst ihn an einen Laptop an, wo die entsprechende (recht komfortable) Software drauf ist.

--
Gruesse, Joerg

http://www.analogconsultants.com
Reply to
Joerg

Bastian Scholz :

Tauchst Du im Eismeer? Mhh, im Ernst, bis +5°C sind alle LCD's noch ausreichend schnell.

M.

--
Bitte auf mwnews2@pentax.boerde.de antworten.
Reply to
Matthias Weingart

Matthias Weingart schrieb:

Hallo,

im Bergsee etwas tiefer unter der Sprungschicht und man hat 4 =B0C.=20 Eismeer braucht es dazu nicht.

Bye

Reply to
Uwe Hercksen

Matthias Weingart schrieb:

en=20

n.

Hallo,

verschiedene kommerziell hergestellte Tauchcomputer werden einfach mit=20 einem glibberigen Silikon vergossen das den Druck voll =FCbertr=E4gt, der= =20 Drucksensor wird n=E4mlich auch so mit vergossen. Man kommt so um ein=20 druckfestes und druckdichtes Geh=E4use herum.

Bye

Reply to
Uwe Hercksen

Uwe Hercksen :

Aha, ist ja interessant und das funktioniert mit Standardbauteilen dann noch? Auf so eine Quarz-Blechhülse drücken dann ja u.U. 10bar; naja die Fläche ist klein und die Kraft dann vermutlich auch so, dass sie kein Unheil anrichtet.

M.

--
Bitte auf mwnews2@pentax.boerde.de antworten.
Reply to
Matthias Weingart

Matthias Weingart schrieb:

=20

die=20

=20

Hallo,

wie sie es beim Quarz genau machen wei=DF ich nicht. Aber bei sehr kleinen Bauteilgeh=E4usen reicht schon eine recht geringe=20 Wandst=E4rke f=FCr die n=F6tige Druckfestigkeit. Bauteile die keinerlei=20 gasgef=FCllte Hohlr=E4ume enthalten sind ja kein Problem bei sehr deutlic= h=20 erh=F6htem Umgebungsdruck.

Wenn eine Testschaltung mit dem Quarz unabh=E4ngig vom Umgebungsdruck ( 1= =20 bis 6 bar, mit etwas Reserve 9 bis 11 bar) auf der gleichen Frequenz=20 schwingt und das Geh=E4use nicht bleibend verformt wird, dann ist der=20 Quarz daf=FCr wohl halbwegs geeignet.

Bye

Reply to
Uwe Hercksen

Am Wed, 05 Jul 2006 18:00:29 +0000 schrieb Gernot Fink:

Etwas naive Frage, aber was ist ein passives Display? Ist das eins ohne eigenen Controller und die einzelnen "Bildpunkte" werden direkt vom MSP430 angesteuert? Welches Display von Reichelt benutzt du genau, die die ich gefunden habe hatten alle einen Controller?

Grüße

Bastian

Reply to
Bastian Scholz

Hallo Uwe,

Weia. Unser Pool ging letzte Nacht unter 27C und meine Frau sagte, das sei ihr aber jetzt echt zu kalt.

--
Gruesse, Joerg

http://www.analogconsultants.com
Reply to
Joerg

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.