Forum: Projekte & Code 2-Kanal analoger Datenlogger, mobil


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Mi N. (msx)


Angehängte Dateien:

Lesenswert?

Zur Erfassung langsamer Spannungsänderungen wie zum Beispiel Lade-/ 
Entladekurven von Akkus oder Fehlererkennung (Heizungsbrenner) kann man 
unter Umständen ein Oszilloskop verwenden. Damit ist dieses Gerät 
blockiert und müßte ggf. an einem anderen Ort ohne direkte 
Stromversorgung betrieben werden.

Für einfache Anwendungen und geringen Anforderungen reicht es, analoge 
Signale mit einem µC zu messen, in einen Flash-Speicher zu schreiben und 
später per PC auszuwerten. Hierzu ein Schaltungsvorschlag mit einem 
STM32G031F µC und einen SPI-Flash W25Q128, der mit einer passenden 
Batterie oder besser LiIon-Zelle betrieben werden kann.
Mit bis zu 1000 Messungen/s und einem Kanal reicht der Speicherplatz für 
gut zwei Stunden. Mit 1 Messung/s für ganze 3 Monate. Da die Messwerte 
permanent ausgegeben werden können, kann auch ohne direkte Speicherung 
ein angeschlossener PC die Werte speichern/auswerten.

Die gezeigte Schaltung verwendet ein fertiges µC Modul (WeACT 
STM32G031), welches noch mit einem SPI-Flash (hier W25Q128) und ein paar 
diskreten Bauteilen nach Bedarf ergänzt werden muß bzw. kann. Damit ist 
ein Aufbau auf Lochrasterplatine möglich.

Eine genauere Beschreibung findet sich hier: 
http://mino-elektronik.de/Gemischtes/2-Kanal%20Datenlogger.html
Abschließend ist dort auch das vorläufige Programm zu finden, was noch 
weiterentwickelt wird. Es kann für eigene Bedürfnisse angepasst werden.

Letztlich sollen noch ein USART-USB-Modul mit CH340 (bzw. 
MAX232-Treiber)  und ein LiIon Lademodul mit TP4056 und 
Unterspannungsabschaltung ergänzt, und alles zusammen in ein Gehäuse 
gepackt werden. Bis dahin bleibt alles noch ‚vorläufig‘.
Konstruktive Anregungen sind willkommen.

von Niklas G. (erlkoenig) Benutzerseite


Lesenswert?

Wenn du den Flash-IC abschaltbar machst und einen STM32 der L- oder 
U-Reihe verwendest senkst du den Stromverbrauch noch mal und erhöhst die 
Batterielebensdauer.

Mi N. schrieb:
> Letztlich sollen noch ein USART-USB-Modul mit CH340 (bzw.
> MAX232-Treiber)

Ziemlich umständlich, nimm doch einen STM32 mit USB-Peripherie, dann 
brauchst du nur noch eine USB-Buchse.

von Mi N. (msx)


Lesenswert?

Der W25Q geht in den Stromsparmodus mit <= 25 µA sobald /CS auf '1' 
liegt. Beim Abschalten wird zudem der Befehl 'power off' gesendet, 
wodurch die Stromaufnahme auf <= 1 µA sinkt. Da ist kein Sparpotential.
Vergleiche ich die Typen G031 und L031, so scheint die Ersparnis beim 
L031 bei 10 - 20 % zu liegen. Dummerweise sind beide Typen nicht pin- 
und funktionskompatibel, sodaß bei Bedarf nicht 1:1 gewechselt werden 
kann.
Die Module für den G031 gibt es aktuell zu 2,09 Euro, was sehr günstig 
ist.

USB ist erst einmal ein Gimmick, was nicht zwingend notwendig ist aber 
eventuell gleich als Ladeanschluß (für LiIon) mit 5 V genutzt werden 
kann.
Ein Modul mit CH340N von USB-C auf 'TTL'-Signale gibt es ebenfalls 
günstig, ohne spezielles Layout oder SMD-Löterei, die nicht für 
jedermann einfach ist.

So ist meine Planung, was ich nicht als umständlich sondern eher als 
einfach und nachbaubar ansehe.

von Niklas G. (erlkoenig) Benutzerseite


Lesenswert?

Mi N. schrieb:
> wodurch die Stromaufnahme auf <= 1 µA sinkt. Da ist kein Sparpotential.

Naja, die sparsamen MCUs haben im Powerdown-Mode einen Verbrauch von 
<<1uA, somit ist das 1uA vom Flash ziemlich signifikant und könnte somit 
den Verbrauch im Powerdown verdoppeln, was mit einem simplen Transistor 
zu verhindern wäre.

Mi N. schrieb:
> ohne spezielles Layout oder SMD-Löterei, die nicht für jedermann einfach
> ist.

Es gibt doch einige MCU-Module mit USB-Buchse drauf, da hat man die 
USB-Verbindung direkt fertig...

: Bearbeitet durch User
von Mi N. (msx)


Lesenswert?

Niklas G. schrieb:
> Es gibt doch einige MCU-Module mit USB-Buchse drauf, da hat man die
> USB-Verbindung direkt fertig...

Ich kenne kein geeignetes Modul.

Im Ruhemodus mit <= 10 µA und einem kleinen LiPo-Akku, wie er in 
Mobiltelefonen verwendet wird (0,8 - 1 Ah) komme ich auf eine Laufzeit 
von über 10 Jahren. Wenn das nicht reicht, verwendet man einfach einen 
EIN-AUS-Schalter. Da Daten und Messparameter nichtflüchtig gespeichert 
sind, ist das problemlos machbar.
Aber das ist doch überhaupt nicht der Punkt. Hauptverbraucher ist der 
NOR-Flash-Speicher beim Löschen und Beschreiben. Danach kommen der µC 
und die LEDs, deren Einschaltdauer man noch reduzieren oder sie ganz 
abschalten sollte.

Bislang habe ich die PLL weggelassen und nur HSI16 als Takt verwendet. 
Da werde ich noch testen, ob ich sie doch verwende und nur die CPU damit 
takte. Da reichen 1 - 2 MHz wohl aus. Rechenintensiv ist nur die 
hex-dez-Wandlung; diese Routine kann sich den Takt ja kurzfristig auf 64 
MHz hochschalten. Dann gibt es auch bei 1 - 2 MBd keine Lücken bei der 
Ausgabe. Mehr lassen die USB-Wandler eh nicht mehr zu.

: Bearbeitet durch User
von Mi N. (msx)


Angehängte Dateien:

Lesenswert?

Die optional genannten L- und U-Typen der STM32 hatte ich mir noch 
einmal angesehen. Wie oben schon geschrieben, ist mir das 
Einsparpotential beim Versorgungsstrom zu gering, als diese Richtung 
weiter zu verfolgen.

Es sind ergänzende Optionen hinzugekommen. Zum einen SMD-Taster und 
SMD-LEDs als Anterntive zu den großen THT-Ausführungen. Ferner auf der 
Unterseite ein optional abschaltbarer RS232-Treiber und ein 
Sense-Eingang 'ext', womit man ggf. die USART-Signale direkt oder 
invertiert ausgeben könnte. Dann noch ein Lochrasterfeld für Zusatzkram. 
Mal sehen, ob das alles klappt.
Falls nicht, kann ich die Platine (43 x 59 mm²) minimalbestückt als 
blinkenden Weihnachtsbaumschmuck verwenden.

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
Noch kein Account? Hier anmelden.