Forum: Mikrocontroller und Digitale Elektronik Datenlogger Grundsätzliches


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 Ray M. (ray_m)


Lesenswert?

Ich baue mir gerade einen SD-Card Datenlogger, wie schon zig millionen 
Leute
vor mir würde ich sagen ;)

Nun hab ich aber einige Probleme für die mir aktuell keine Lösungen
einfallen wollen.

Voraus: Ich schreibe mit SDfat auf eine fat32 formatierte Micro-SD-Card

Ok, dass funktioniert auch soweit ganz gut.

Jetzt kommt es ab und zu vor, dass sich irgendwie das Filesystem auf der 
SD
zerlegt und nur noch Grütze auf der SD steht. Unleserliche Dateinamen 
usw.

Ich glaube die Ursache ist, dass manchmal die Spannungsverorung während
eines Schreibvorgangs unterbrochen wird. Der Log-Vorgang läuft noch und
jemand macht den Schalter aus ohne vorher den Logger zu stoppen.

Nun frag ich mich, wie ich das am besten lösen kann.

Ich dachte an eine Pufferung der Versorgungsspannung in einem SuperCap
und einen INT-Handler der die Spannung überwacht.
So nach dem Motto: bricht die Spannung unter XXX ein,
schliese das File auf der SD und schalte dich aus.

Hat jemand so etwas schon einmal gemacht und hat eine funktionierendes
Schaltungsbeispiel ?

von Erich (Gast)


Lesenswert?


von John P. (brushlesspower)


Lesenswert?

Du kannst auch die Datei nach jedem geschriebenen Datensatz wieder 
schließen.

Das löst nicht das Problem, verringert aber die Wahrscheinlichkeit, dass 
das Problem auftritt.

von Ray M. (ray_m)


Lesenswert?

danke, aber das ist etwas oversize für einen kleinen datenlogger
auf µc basis

aber ich werde das mal mit meinem pi testen

von Ray M. (ray_m)


Lesenswert?

John P. schrieb:
> Du kannst auch die Datei nach jedem geschriebenen Datensatz wieder
> schließen.

Das mache ich schon ... hilft nix ...

> Das löst nicht das Problem, verringert aber die Wahrscheinlichkeit, dass
> das Problem auftritt.

Genau ... und wie Murphys Gesetzt sagt ... bei mir schlägts öffter mal 
ein ;(

: Bearbeitet durch User
von Pandur S. (jetztnicht)


Lesenswert?

Wenn ich bedenke wie schnell geschrieben werden kann ... 90MByte/s ...
Ein wenig kann geholfen werden indem die Spannung vor dem 
Spannungsregler ueberwacht wird. Wenn zB die 12V vor dem Schaltregler 
auf 10V sinken, kann man den Schreibvorgang in vielleicht 20ms beenden 
und schliessen, weil die Caps noch genuegend Ladung drauf haben fuer 
diese 20ms.
Und dann kann man sich ein filesystem ueberlegen, dass optimiert ist 
fuer Abbruch. Allerdings dann nicht mehr PC Kompatibel.

von Ray M. (ray_m)


Lesenswert?

Zitronen F. schrieb:
> Wenn ich bedenke wie schnell geschrieben werden kann ... 90MByte/s ...
> Ein wenig kann geholfen werden indem die Spannung vor dem
> Spannungsregler ueberwacht wird. Wenn zB die 12V vor dem Schaltregler
> auf 10V sinken, kann man den Schreibvorgang in vielleicht 20ms beenden
> und schliessen, weil die Caps noch genuegend Ladung drauf haben fuer
> diese 20ms.
> Und dann kann man sich ein filesystem ueberlegen, dass optimiert ist
> fuer Abbruch. Allerdings dann nicht mehr PC Kompatibel.

Die 12V IN überwachen ist kein Problem, dass mache ich eh schon.
Sinkt die Spannung unter 10V kriege ich einen INT und mache das aktuell
offene File zu.
Das scheint aber nicht immer zu reichen.
Wie stecke ich den da am besten einen 5.xV Supercap dazwischen,
die Dinger gibt es ja schon so um die 2-3€

Reicht einfach dazwischen mit einer Diode ?

: Bearbeitet durch User
von Ray M. (ray_m)


Lesenswert?

Eventuell einen TPS3803 zur Spannungsüberwachung in Verbindung mit einem 
SuperCap, macht das irgendeinen Sinn ?

von Olaf (Gast)


Lesenswert?

> Das löst nicht das Problem, verringert aber die Wahrscheinlichkeit, dass
> das Problem auftritt.

Noch deutlich mehr laesst sich die Problemwahrscheinlichkeit reduzieren 
indem man als erstes nach der initialisierung die CRC einschaltet. Und 
zwar deshalb weil viele Fehler vermutlich eher die Ursachen in 
Stoerungen der Datenuebertragung haben.

Olaf

von Ray M. (ray_m)


Lesenswert?

Olaf schrieb:
>> Das löst nicht das Problem, verringert aber die Wahrscheinlichkeit, dass
>> das Problem auftritt.
>
> Noch deutlich mehr laesst sich die Problemwahrscheinlichkeit reduzieren
> indem man als erstes nach der initialisierung die CRC einschaltet. Und
> zwar deshalb weil viele Fehler vermutlich eher die Ursachen in
> Stoerungen der Datenuebertragung haben.

USE_SD_CRC steht bei mir auf 2

von Sebastian S. (amateur)


Lesenswert?

Theoretisch hilft ein HiCab, aber auch nur eine kurze Zeit;)
Nichts oder auch Daten zu schreiben, wahrscheinlich mittels I2C, kostet 
Strom (pull up).

Was ich machen würde ist:
Einen kleinen HiCab einbauen, der dem µP die Möglichkeit gibt zu 
überprüfen, ob die Messung noch läuft und gegebenenfalls um Hilfe zu 
rufen.
So muss der HiCab nur den Lautsprecher/Piepser eine Zeit lang betreiben 
können und hat noch zusätzlich die Möglichkeit (Energiereserve) das 
Speichersystem ordentlich herunterzufahren.
Dazu muss aber der µP vom restlichen System entkoppelt sein, damit er 
den HiCab, zusammen mit dem Piepser, ganz für sich alleine hat und 
natürlich eine Möglichkeit (Pin) die Betriebsspannung zu überwachen.

Unter dem Strich schaltest nicht mehr Du den µP aus, sondern er macht 
das selber, indem er die Betriebsspannung überwacht.

von NoName (Gast)


Lesenswert?

Ray M. schrieb:
> Ich baue mir gerade einen SD-Card Datenlogger, wie schon zig millionen

> Ich glaube die Ursache ist, dass manchmal die Spannungsverorung während
> eines Schreibvorgangs unterbrochen wird. Der Log-Vorgang läuft noch und
> jemand macht den Schalter aus ohne vorher den Logger zu stoppen.

Wenn du gerade erst beim Aufbau bist, wer ist dann der Jemand der am 
Schalter herumspielt?

Ich könnte mir auch vorstellen, daß die Versorgung nicht sauber ist, 
oder daß der uC oder das SD-Card Interface beim Aufbau/Abbau der 
Versorgungsspannung Amok läuft. Schaltplan?

Für einen schnellen Test kannst du ja einen Supercap vor den uC hängen 
(mit Diode vor dem Supercap), aber dann läuft beim Abschalten die 
Versorgung noch langsamer herunter, und das mögen manche uC auch nicht.

von Wolfgang (Gast)


Lesenswert?

NoName schrieb:
> Für einen schnellen Test kannst du ja einen Supercap vor den uC hängen
> (mit Diode vor dem Supercap), aber dann läuft beim Abschalten die
> Versorgung noch langsamer herunter, und das mögen manche uC auch nicht.

Manche µC haben dafür eine Spannungsüberwachungsschaltung (Brownout 
Detector) - muss man natürlich aktivieren, damit die einreifen kann.

von Ray M. (ray_m)


Lesenswert?

NoName schrieb:
> Ray M. schrieb:
>> Ich baue mir gerade einen SD-Card Datenlogger, wie schon zig millionen
>
>> Ich glaube die Ursache ist, dass manchmal die Spannungsverorung während
>> eines Schreibvorgangs unterbrochen wird. Der Log-Vorgang läuft noch und
>> jemand macht den Schalter aus ohne vorher den Logger zu stoppen.
>
> Wenn du gerade erst beim Aufbau bist, wer ist dann der Jemand der am
> Schalter herumspielt?
>
> Ich könnte mir auch vorstellen, daß die Versorgung nicht sauber ist,
> oder daß der uC oder das SD-Card Interface beim Aufbau/Abbau der
> Versorgungsspannung Amok läuft. Schaltplan?
>
> Für einen schnellen Test kannst du ja einen Supercap vor den uC hängen
> (mit Diode vor dem Supercap), aber dann läuft beim Abschalten die
> Versorgung noch langsamer herunter, und das mögen manche uC auch nicht.

Na ja, das ist eigentlich egal. Wenn er das Log-File zu bekommt
und das Filesystem damit heil bleibt kann er von mir aus jedesmal
bei ausschaltn auch abstürzen, ist halt dann aus und gut ;)

von Ray M. (ray_m)


Lesenswert?

Wolfgang schrieb:
> NoName schrieb:
>> Für einen schnellen Test kannst du ja einen Supercap vor den uC hängen
>> (mit Diode vor dem Supercap), aber dann läuft beim Abschalten die
>> Versorgung noch langsamer herunter, und das mögen manche uC auch nicht.
>
> Manche µC haben dafür eine Spannungsüberwachungsschaltung (Brownout
> Detector) - muss man natürlich aktivieren, damit die einreifen kann.

Zu dem Them ahab ich beim Teensy3.2 und 3.6 leider nix gefunden

von Wolle G. (wolleg)


Lesenswert?

Ray M. schrieb:
> Ich glaube die Ursache ist, dass manchmal die Spannungsverorung während
> eines Schreibvorgangs unterbrochen wird.

Eine Unterbrechung kann man in der Regel verhindern, indem man die 
Spannungsversorgung mittels Akku oder Batterie puffert. Dazu braucht man 
zusätlich nur noch 2 Dioden.
Das sollte man in die Rubrik "Grundsätzliches" einordnen.

: Bearbeitet durch User
von Manfred (Gast)


Lesenswert?

Ray M. schrieb:
>> Du kannst auch die Datei nach jedem geschriebenen Datensatz wieder
>> schließen.
> Das mache ich schon ... hilft nix ...

Ray M. schrieb:
> Die 12V IN überwachen ist kein Problem, dass mache ich eh schon.
> Sinkt die Spannung unter 10V kriege ich einen INT und mache das aktuell
> offene File zu.

Ja was nun, File.close nach jedem Schreibzugriff oder nur bei 
einbrechender Versorgung?

Ich habe hier zwei Geräte, wo der Arduino auf SD schreibt und noch kein 
kaputtes Filesystem gehabt, ich mache immer direkt wieder zu.

Was mir noch einfällt: Wie groß sind die Karten? Mein älteres Navigon 
kommt mit 2Gb-Karte, größere Karten (4Gb) werden nach einem 
undefinierbaren Zeitraum zerstört. Das WinCE kann diese nicht korrekt 
adressieren, trifft das evtl. auch auf Deine Library zu?

Zitronen F. schrieb:
> Wenn ich bedenke wie schnell geschrieben werden kann ... 90MByte/s ...

Was träumst Du, wenn es Nacht wird? Du kannst so schnell lesen, aber 
nicht schreiben. 90MByte/s wäre eine Class_90 Karte, nie gesehen.

von Ray M. (ray_m)


Lesenswert?

Manfred schrieb:
> Ray M. schrieb:
>>> Du kannst auch die Datei nach jedem geschriebenen Datensatz wieder
>>> schließen.
>> Das mache ich schon ... hilft nix ...
>
> Ray M. schrieb:
>> Die 12V IN überwachen ist kein Problem, dass mache ich eh schon.
>> Sinkt die Spannung unter 10V kriege ich einen INT und mache das aktuell
>> offene File zu.
>
> Ja was nun, File.close nach jedem Schreibzugriff oder nur bei
> einbrechender Versorgung?

in beiden fällen ...
normaleweise open,write,close
kommt ein INT, ruft er einfach close auf

> Ich habe hier zwei Geräte, wo der Arduino auf SD schreibt und noch kein
> kaputtes Filesystem gehabt, ich mache immer direkt wieder zu.
>
> Was mir noch einfällt: Wie groß sind die Karten?

4gb micro-sd, class 10

> Mein älteres Navigon
> kommt mit 2Gb-Karte, größere Karten (4Gb) werden nach einem
> undefinierbaren Zeitraum zerstört. Das WinCE kann diese nicht korrekt
> adressieren, trifft das evtl. auch auf Deine Library zu?

ich benutze die standart sdfat-lib

aber ich kann z.b. keine 2gb micro-sd benutzen, die erkennt er eifach 
nicht

> Zitronen F. schrieb:
>> Wenn ich bedenke wie schnell geschrieben werden kann ... 90MByte/s ...
>
> Was träumst Du, wenn es Nacht wird? Du kannst so schnell lesen, aber
> nicht schreiben. 90MByte/s wäre eine Class_90 Karte, nie gesehen.

: Bearbeitet durch User
von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Eine SD Karte erledigt nach dem Schreibvorgang ggfs. noch interne 
Verwaltungsaufgaben. Damit muss sie als SDHC-Karte laut Standard "SD 
Specifications Physical Layer Part1_3.01" spätestens 250ms nach den 
Abschluss des letzten Schreibbefehls fertig sein. Darüber hinaus steht 
dort aber auch eine allgemeine maximale Dauer dieses Vorgangs von 500ms 
unabhängig von der Operation. Du musst also zumindest die Spannung der 
SD-Karte für diese Zeit mit einem Elko puffern.

Die prinzipielle Frage ist somit: wie sieht der Spannungsverlauf in 
deiner Schaltung bzw. an deiner Karte bei einem Powerfail generell aus? 
Mit einem 4-Kanal-Oszi kannst du z.B. die 12V, die SCK-Leitung und die 
Versorgung der SD-Karte gleichzeitg messen und abschätzen, wo du 
nachbessern musst.


Mein Tipp: nimm Samsung Karten. Die haben sich bei meinen seit einigen 
Jahren laufenden Dauer-Schreib-und-Ausschalt-Tests als die 
zuverlässigsten herausgestellt. Karten mit Namen wie Kingston, 
Transcend, Sandisk,... waren allesamt nicht annähernd so robust. Und mit 
Intenso, Verbatim,... ist der Test, der z.B. mit Samsung ein halbes Jahr 
läuft, schon nach ein paar Tagen mit defekten Karten beendet.

Und wenn du das Ganze kommerziell in größeren Stückzahlen machst, dann 
nimm die Xmore-Pseudo-SLC-Karten von Glyn.

Manfred schrieb:
> Mein älteres Navigon kommt mit 2Gb-Karte, größere Karten (4Gb) werden
> nach einem undefinierbaren Zeitraum zerstört. Das WinCE kann diese nicht
> korrekt adressieren
Warum nicht? Windows CE (zumindest ab Version 6) kann das nach meiner 
Erfahrung mit zigtausenden Geräten problemlos...

: Bearbeitet durch Moderator
von Dietrich L. (dietrichl)


Lesenswert?

Ray M. schrieb:
> normaleweise open,write,close
> kommt ein INT, ruft er einfach close auf

Du wartest im INT aber schon, bis ein eventuell laufendes 
open,write,close beendet ist? Oder sind diese Vorgänge durch ein Disable 
Interrupt geschützt?

von Ray M. (ray_m)


Lesenswert?

Lothar M. schrieb:
> Eine SD Karte erledigt nach dem Schreibvorgang ggfs. noch interne
> Verwaltungsaufgaben. Damit muss sie als SDHC-Karte laut Standard "SD
> Specifications Physical Layer Part1_3.01" spätestens 250ms nach den
> Abschluss des letzten Schreibbefehls fertig sein. Darüber hinaus steht
> dort aber auch eine allgemeine maximale Dauer dieses Vorgangs von 500ms
> unabhängig von der Operation. Du musst also zumindest die Spannung der
> SD-Karte für diese Zeit mit einem Elko puffern.

Ich würde die Zeit gern mit einem Elko oder SuperCap puffern und
deshalb hier mein Problme mal reingeschrieben.

Gibt es dafür schon irgendwo mal ein Schaltungsbeispiel ?

> Die prinzipielle Frage ist somit: wie sieht der Spannungsverlauf in
> deiner Schaltung bzw. an deiner Karte bei einem Powerfail generell aus?
> Mit einem 4-Kanal-Oszi kannst du z.B. die 12V, die SCK-Leitung und die
> Versorgung der SD-Karte gleichzeitg messen und abschätzen, wo du
> nachbessern musst.

Ich hab leider kein 4ch Oszi ;( ... aber Weihnachten kommt ja bald ;)

> Mein Tipp: nimm Samsung Karten. Die haben sich bei meinen seit einigen
> Jahren laufenden Dauer-Schreib-und-Ausschalt-Tests als die
> zuverlässigsten herausgestellt.

Ok, das ist kein Problem. akne für den Tip ...

> Karten mit Namen wie Kingston,
> Transcend, Sandisk,... waren allesamt nicht annähernd so robust. Und mit
> Intenso, Verbatim,... ist der Test, der z.B. mit Samsung ein halbes Jahr
> läuft, schon nach ein paar Tagen mit defekten Karten beendet.
>
> Und wenn du das Ganze kommerziell in größeren Stückzahlen machst, dann
> nimm die Xmore-Pseudo-SLC-Karten von Glyn.

Nee, nix kommerziell.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Ray M. schrieb:
> Wie stecke ich den da am besten einen 5.xV Supercap dazwischen,
> die Dinger gibt es ja schon so um die 2-3€
Passen aber nicht zu deiner Aufgabe. Denn du solltest nach Möglichkeit 
dort puffern, wo du die größte Spannungsänderung erlauben kannst. Denn 
zusammen mit der Formel W= (C*U²)/2 kann man sehen, dass man ein 
möglichst großes deltaU erreichen sollte, um möglichst viel der 
eingespeicherten Energie zu nutzen.

> Reicht einfach dazwischen mit einer Diode ?
Du musst die Spannung unter 10V fallen lassen, dass du den Powerfail 
erkennst, und dann aber noch ausreichend lange puffern, dass die Karte 
fertig geschrieben werden kann. Also musst du die abfallende Versorgung 
von deiner Pufferung trennen:
1
       
2
                    ___
3
            .------|___|----o-----------------> Powerfailerkennung
4
            |               |
5
            |               -
6
            |              | |
7
            |              | |
8
            |               -
9
            |               |
10
            |              GND
11
   12V -----o-->|---o--------------------Spannungsregler--- Vcc
12
                    |                          |
13
                   === 1mF aufwärts            |
14
                    |                          |
15
   GND -------------o--------------------------o----

Ray M. schrieb:
> Ich würde die Zeit gern mit einem Elko oder SuperCap puffern und
> deshalb hier mein Problme mal reingeschrieben.
> Gibt es dafür schon irgendwo mal ein Schaltungsbeispiel ?
Man müsste für eine brauchbare Aussage mal wissen, wie deine Schaltung 
im Versorgungsbereich aktuell aussieht.

: Bearbeitet durch Moderator
von Wolle G. (wolleg)


Lesenswert?

In der Überschrift stand etwas von "Grundsätzliches".
Darunter kann man auch verstehen, dass man über einen gewissen Zeitraum 
(Stunden, Tage, Monate usw.) Daten (Temperatur, Druck, Spannungswerte 
usw.) sammeln und abspeichern will.
Wenn man dabei Daten nicht verlieren will, dann muss man u.a. 
"grundsätzliche" Vorkehrungen treffen, die z. B. verhindern, dass die 
Stromversorgung unterbrochen werden könnte.
Warum man dies nicht lesen sollte, ????  stehe auf dem Schlauch

von Ray M. (ray_m)


Angehängte Dateien:

Lesenswert?

Lothar M. schrieb:
> Ray M. schrieb:
>> Wie stecke ich den da am besten einen 5.xV Supercap dazwischen,
>> die Dinger gibt es ja schon so um die 2-3€
> Passen aber nicht zu deiner Aufgabe. Denn du solltest nach Möglichkeit
> dort puffern, wo du die größte Spannungsänderung erlauben kannst. Denn
> zusammen mit der Formel W= (C*U²)/2 kann man sehen, dass man ein
> möglichst großes deltaU erreichen sollte, um möglichst viel der
> eingespeicherten Energie zu nutzen.

[...]

> Man müsste für eine brauchbare Aussage mal wissen, wie deine Schaltung
> im Versorgungsbereich aktuell aussieht.

Ich hab es mal angehängt ...
Danke für deine Mühe ...

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Ray M. schrieb:
> Ich hab es mal angehängt ...
Wie weit "runter" läuft der TPS noch und gibt die korrekte Spannung aus?

> Ich hab es mal angehängt ...
Probier also doch einfach mal aus, den R16 (der ja vermutlich zur 
Kontrolle der Eingangsspannung da ist), vor die Diode D4 zu klemmen und 
bau beim C7 einen 1mF/25V Elko ein.

Ray M. schrieb:
> jemand macht den Schalter aus
Im Schaltplan ist kein Schalter. Wo ist dieser Einschalter in der 
Realität?

: Bearbeitet durch Moderator
von Ray M. (ray_m)


Lesenswert?

Lothar M. schrieb:
> Ray M. schrieb:
>> Ich hab es mal angehängt ...
> Wie weit "runter" läuft der TPS noch und gibt die korrekte Spannung aus?

Laut Datenblatt 6.5V

>> Ich hab es mal angehängt ...
> Probier also doch einfach mal aus, den R16 (der ja vermutlich zur
> Kontrolle der Eingangsspannung da ist), vor die Diode D4 zu klemmen und
> bau beim C7 einen 1mF/25V Elko ein.

Mach ich ...

> Ray M. schrieb:
>> jemand macht den Schalter aus
> Im Schaltplan ist kein Schalter. Wo ist dieser Einschalter in der
> Realität?

Links in der 12V Zuleitung mit einer Sicherung

von Markus F. (mfro)


Lesenswert?

Ray M. schrieb:
> akne für den Tip ...

Ich glaub', Du hast eine pubertierende Autokorrektur ;). Dafür würde 
ich mich entschuldigen...

von Ray M. (ray_m)


Lesenswert?

Markus F. schrieb:
> Ray M. schrieb:
>> akne für den Tip ...
>
> Ich glaub', Du hast eine pubertierende Autokorrektur ;). Dafür würde
> ich mich entschuldigen...

Ooops ... das kann auch an meiner Demenz liegen, scheint sich öffter
auf die tastatur zu übertragen ;)

von Dr Bunsenbrenner (Gast)


Lesenswert?

Die Schaltung wurde noch nicht vorgestellt, wenn möglich würde ich das 
ein / ausschalten des Loggers mit seinem dafür verwendeten 
Mikrocontroller schalten. Damit würde die Schaltung erst alle aktiven 
Vorgänge beenden und dann abschalten.

von Wolle G. (wolleg)


Lesenswert?

Ray M. schrieb:
> Ich hab es mal angehängt ...

sehe ich das falsch?
links steht -12V; rechts GND

von Ray M. (ray_m)


Lesenswert?

wolle g. schrieb:
> Ray M. schrieb:
>> Ich hab es mal angehängt ...
>
> sehe ich das falsch?
> links steht -12V; rechts GND

Beschriftungsfehler ... ist GND

von Wolle G. (wolleg)


Lesenswert?

Ray M. schrieb:
> Ich hab es mal angehängt ...

Ich mach mal weiter.
Wozu braucht man die 12V und die 5V?
Eine SD-Karte arbeitet mit 2,7V ... 3,6V und für den gleichen 
Spannungsbereich gibt es auch µC. Ein Spannungsregler mit einer 
Ausgangsspannung von 3V wäre hier zur Versorgung der Komponenten 
geeignet.
Vor dem Spannungsregler kommen dann das Netzteil und ein passender 
Pufferakku (mit Erhaltungsladung über Widerstand), sodass man tage- oder 
jahrelang aufzeichnen kann, ohne dass irgendwelche Daten verloren gehen 
würden.

von batman (Gast)


Lesenswert?

Vielleicht mal ne andere Karte probieren. Generell sollten Logfiles 
schon plötzliche Versorgungsausfälle während des Schreibens überleben, 
ohne komplett unbrauchbar zu werden, sonst wäre viele reale Loggerei zu 
diagnostischen Zwecken heutzutage sinnlos.
Anders kenn ich es auch bein SD-FAT nicht, wenn Dateien seriell 
geschrieben werden. Da darf i.d.R. nur am Ende was flöten gehen, was 
sich nicht wiederherstellen läßt. Vor Ausnahmen ist man nie sicher, vor 
allem bei Flashmedien.

von Ray M. (ray_m)


Lesenswert?

wolle g. schrieb:
> Ray M. schrieb:
>> Ich hab es mal angehängt ...
>
> Ich mach mal weiter.
> Wozu braucht man die 12V und die 5V?
> Eine SD-Karte arbeitet mit 2,7V ... 3,6V und für den gleichen
> Spannungsbereich gibt es auch µC. Ein Spannungsregler mit einer
> Ausgangsspannung von 3V wäre hier zur Versorgung der Komponenten
> geeignet.

Da kommt noch ein MCP1755 3.3 der die SD-Card versorgt

> Vor dem Spannungsregler kommen dann das Netzteil und ein passender
> Pufferakku (mit Erhaltungsladung über Widerstand), sodass man tage- oder
> jahrelang aufzeichnen kann, ohne dass irgendwelche Daten verloren gehen
> würden.

Darum geht es nicht, der Logger soll nicht weiterlaufen wenn die
Versorgungsspannung ausgeschaltet wird. Er soll aus gehen wenn er
ausgeschaltet wird. Er soll nur noch sauber das Log-FIle und die
SD-Card schließen bevor er sich erabschiedet.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Dr Bunsenbrenner schrieb:
> Die Schaltung wurde noch nicht vorgestellt, wenn möglich würde ich das
> ein / ausschalten des Loggers mit seinem dafür verwendeten
> Mikrocontroller schalten.
Nicht ganz umsonst schrieb ich "Powerfail", weil der völlig überraschend 
und unvorhersehbar kommt. Da bleibt dem mC nicht mehr viel Zeit, um 
Daten zu speichern und sich danach abzuschalten. Er wird abgeschaltet.

Ray M. schrieb:
> Da kommt noch ein MCP1755 3.3 der die SD-Card versorgt
Wenn der rückwärts nichts "durchlässt", könnte es auch ausreichen, 
einfach nur auf der Ausgangsseite dieses Spannungsreglers die Pufferung 
z.B. auf 100µF zu erhöhen. Aber wie gesagt: das Powerfailverhalten 
muss dann gemessen und ggfs. nachgebessert werden.

von Gebhard R. (Firma: Raich Gerätebau & Entwicklung) (geb)


Angehängte Dateien:

Lesenswert?

Die Powerfailschaltung könnte man ganz simpel wie in C/D 1-6 gezeigt 
machen. Müsste man noch auf 12V und eine unbekannte Referenzspannung 
dimensionieren.

Grüsse

von Termite (Gast)


Lesenswert?

Mahlzeit,

Die wichtigen Information was SD-Card angeht ist ja schon erwählt 
worden.
Wie lange die Karten noch brauchen bis sie wirklich intern alles 
verarbeitet haben.

Von eMMCs kenne ich es auch das sie je nach Hersteller auch extrem 
empfindlich sind was das Einschalten angeht. Mit so Aktionen wie 
schnelles  andauerndes ein  aus schalten haben wir etliche von eMMC 
Bausteinen abgeschossen. Bei uns war dann meist das logische / 
physikalische Mapping der Sektoren im Eimer. (mehrere Logische Adressen 
haben intern auf den gleichen speicherbereich verwiesen)

eMMC ist ja von SD-Karten ja nicht so weit weg. ähnliche befehle und ein 
paar Dateleitungen mehr.

Bei FAT Dateisystemen kommt leider aus dem vorigen Jahrtausend. 
Entsprechen war PowerFailSave und RecoveryFunktionalitäten ein 
Fremdwort. Es kommt somit auch auf die Lib an wie die mit diesen sachen 
umgeht. Ich hab schon genug SD-Karten / USB Sticks in den Fingern in 
denen das Dateisystem beschädigt war. (2 Dateien mit unterschiedlichem 
Anfang aber gemeinsamen Ende)

von Wolle G. (wolleg)


Lesenswert?

Ray M. schrieb:
> Darum geht es nicht, der Logger soll nicht weiterlaufen wenn die
> Versorgungsspannung ausgeschaltet wird.

Dann gehen die Meinungen über "grundsätzliches" auseinander.
Bei mir gehört dazu, dass das Gerät über kurze oder lange Zeiten (Jahr) 
Daten sammelt und diese verlustlos z.B. auf einer SD-Karte abspeichert.

von Ray M. (ray_m)


Lesenswert?

Lothar M. schrieb:
> Dr Bunsenbrenner schrieb:
>> Die Schaltung wurde noch nicht vorgestellt, wenn möglich würde ich das
>> ein / ausschalten des Loggers mit seinem dafür verwendeten
>> Mikrocontroller schalten.
> Nicht ganz umsonst schrieb ich "Powerfail", weil der völlig überraschend
> und unvorhersehbar kommt. Da bleibt dem mC nicht mehr viel Zeit, um
> Daten zu speichern und sich danach abzuschalten. Er wird abgeschaltet.
>
> Ray M. schrieb:
>> Da kommt noch ein MCP1755 3.3 der die SD-Card versorgt
> Wenn der rückwärts nichts "durchlässt", könnte es auch ausreichen,
> einfach nur auf der Ausgangsseite dieses Spannungsreglers die Pufferung
> z.B. auf 100µF zu erhöhen. Aber wie gesagt: das Powerfailverhalten
> muss dann gemessen und ggfs. nachgebessert werden.

Das lässt sich einfach testen, dass werde ich mal machen.
Eventuell reicht das ja schon ...

von Ray M. (ray_m)


Lesenswert?

Gebhard R. schrieb:
> Die Powerfailschaltung könnte man ganz simpel wie in C/D 1-6 gezeigt
> machen. Müsste man noch auf 12V und eine unbekannte Referenzspannung
> dimensionieren.
>
> Grüsse

Auf der Grafik kann ich leider selbst mit Brille nix lesen ;(

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.