Mein unprätentiöser kleiner Temperaturdatenlogger

Hallo-Tech-Elektronik und Computertechnik und Internet. Bessere Nutzung von Strom, helfen bei der Arbeit und Spezifikationen, die Auswahl der Technik. Präsentationen Armaturen und Pläne. Wellen und Elektrosmog.
Avatar de l'utilisateur
Forhorse
Econologue Experte
Econologue Experte
Beiträge: 2491
Anmeldung: 27/10/09, 08:19
Ort: Perche Ornais
x 364




von Forhorse » 04/04/11, 16:21

kumkat schrieb:Was schön wäre, ist, den Speicher der Messungen nicht zu leeren, wenn Sie die SD-Karte, den Verlauf entfernen, um auf Werte nach Monat, Jahreszeiten, Jahren ... Minis, Maxis, Durchschnittswerte zuzugreifen
In diesem Fall ist es notwendig, eine Solarstromversorgung bereitzustellen, die theoretisch eine unendliche Nutzung im Laufe der Zeit ermöglicht ;-)


Der Messspeicher wird beim Entfernen der Karte nicht geleert. Diese bleiben vorhanden, solange die Datei nicht manuell von der Karte entfernt wird.
Es versteht sich jedoch von selbst, dass das System nicht aufzeichnen kann, wenn keine Karte vorhanden ist.

Wenn nicht, hier sind die neuesten Verbesserungen an meinem Programm. Ich habe nicht alles getan, was ich wollte, weil ich bereits zu viel Zeit mit diesem Projekt verbracht habe und jetzt zu anderen Dingen übergehen muss (zum Beispiel zu meinem Windturbinenregler).

Hier finden Sie ein Zip-Archiv mit zwei Dateien:
http://www.stable-boy.net/uploads/LOG18B20.zip
Die Datei LOG18B20.hex ist das kompilierte Programm, das direkt im PIC geflasht werden kann
Die Datei LOG18B20.bas ist die Datei mit den Programmquellen, die in BASIC für den Proton + -Compiler geschrieben wurden
Es kann mit jedem Texteditor (z. B. Notizblock) gelesen werden, um sich ein Bild von der Funktionsweise des Programms zu machen. Um es jedoch wirklich nutzen zu können, benötigen Sie den Proton + -Compiler, das Library Manager-Plug-In und die SD_File_System-Bibliothek (alles ist auf der Website des Herausgebers verfügbar: http://www.protonbasic.co.uk/)
Der Proton + Compiler wird in der Regel für rund 230 Euro verkauft. Es versteht sich also von selbst, dass es sich nicht um Software handelt, die Sie nur für die Herstellung eines Temperaturrekorders kaufen! : Cheesy:
Auf der anderen Seite kann ich es allen empfehlen, die "ernsthaft" mit der Realisierung der Bearbeitung und dem Schreiben von Programmen für PIC beginnen möchten und keine besondere Affinität zu einer anderen Sprache haben (diejenigen, die das C kennen wird sich zum Beispiel an andere Compiler wenden)

In Bezug auf meinen Datenlogger hier einige Erklärungen:
Das Herzstück der Baugruppe ist daher ein PIC18F258, in dem das oben angegebene Programm stattfindet.
PGD, PGC, GND, VDD und VPP sind die "ICSP" -Schnittstelle, mit der der PIC direkt auf der Schaltung programmiert oder neu programmiert wird. Dies ist nicht unbedingt erforderlich, sondern nur praktischer. An Ihren Programmierer anzupassen (ich benutze ein PicKit2)
Es muss mit einem Quarz oder einem Keramikresonator bei 12 MHz verbunden sein

Das Display (wichtig, um die Uhrzeit einstellen zu können) ist vom alphanumerischen Typ mit 2 Zeilen mit 20 Zeichen mit dem klassischen Controller HD44780 oder einem gleichwertigen (KS0066 ...)

Der DS18B20 ist ein Temperatursensor an einem "1-Draht" -Bus. Dieser Komponententyp ist werkseitig kalibriert und erfordert daher keine Einstellung, um eine korrekte Temperatur bereitzustellen.
Der Messbereich reicht von -55 ° C bis + 125 ° C (was von meiner Baugruppe voll unterstützt wird)

Der DS1307 ist eine Echtzeituhr (RTC) auf dem I2C-Bus, mit der Uhrzeit und Datum gezählt werden, auch wenn die Baugruppe nicht mit Strom versorgt wird.
Es muss mit einem 32.768 kHz "Uhrmacher" -Quarz und einer 3-V-Lithiumbatterie (Typ CR2012) verbunden sein.
Dieses Modell integriert ein NVRAM, das in dieser Baugruppe nicht verwendet wird. Man kann es daher durch ein Äquivalent ersetzen (z. B. M41T00).

Der LM3480-Regler (VR1 im Diagramm) ist ein 3.3-V-"Low-Drop" -Regler. Er wandelt die 5 V der restlichen Baugruppe in 3.3 V um, die für die Stromversorgung der SD-Karte erforderlich sind (eine direkte Versorgung mit 5 V würde sie sofort zerstören). Jedes Äquivalent ist geeignet, es ist nicht kritisch (ich schlage das TPS73033 vor, aber es gibt viele andere)
R1, R2, R3, R4, R5, R6 und R7 bilden einen "Pegelübersetzer" zwischen dem PIC in 5 V und der SD-Karte in 3.3 V.
Hierfür gibt es spezielle Komponenten, aber eine Widerstandsbrücke funktioniert auch sehr gut.
Beachten Sie die Verkabelung der SD-Karte, gesehen auf der Anschlussseite, Anschluss oben, der am weitesten links liegende Pin (abgeschrägte Seite) ist nicht 1, sondern 9, Pin 1 ist nur der zweite von links ( eine Geschichte der Abwärtskompatibilität mit MMC)
Der SD-Karten-Support kann problemlos gekauft werden (z. B. Referenznummer 685-0779 bei rs-individual), kann aber auch auf einem HS-Gerät wiederhergestellt werden (das, das ich für meine Tests verwende, stammt von einer Fahrzeugfront Straßenradio)

S1 und S2 sind zwei Drucktasten zum Einstellen von Uhrzeit und Datum oder zum Starten / Stoppen der Aufnahme.
Die LED zeigt an, dass die Aufnahme läuft und die SD-Karte nicht entfernt werden darf.

Die Baugruppe wird mit 5 V betrieben. Wir können beispielsweise ein Handy-Ladegerät "recyceln". Viele Ladegeräte sind jetzt "USB" -Standard und liefern daher 5 V.
Der Verbrauch liegt bei etwa 20 mA, was relativ niedrig ist, aber immer noch zu groß, um mit einer Batterie länger als ein paar zehn Stunden betrieben zu werden.
Im Standalone-Modus können eine kleine Batterie und ein Solarpanel in Betracht gezogen werden.
Um es von einer anderen Spannung zu versorgen, reicht ein einfacher LM7805-Regler aus.

In Bezug auf den Betrieb der Baugruppe jetzt:
Wenn das Gerät eingeschaltet wird, wird die Uhrzeit in der RTC abgelesen. Wenn es sich um das erste Einschalten handelt oder wenn keine Pufferbatterie vorhanden ist, ein Menü zum Einstellen von Uhrzeit und Datum Poster.
Wenn eine SD-Karte vorhanden ist, wird eine Aufzeichnungsdatei mit dem Namen LOGFMMDD.csv erstellt (wobei MM den Monat und DD das Datum darstellt) und die Aufzeichnung sofort ohne Intervention beginnt.
Andernfalls wird eine Meldung angezeigt, in der Sie zum Einlegen einer Karte aufgefordert werden.
Die LED leuchtet auf; Dies zeigt an, dass die Karte nicht entfernt werden sollte.
Auf dem Bildschirm werden die aktuelle Uhrzeit und das aktuelle Datum in der oberen Zeile angezeigt, während in der unteren Zeile die Temperatur und eine Animation für die Aufnahme angezeigt werden.

Beenden der Aufnahme, Entfernen der Karte oder Deaktivieren der Bearbeitung; Sie müssen die Taste "+" drücken (S1 im Diagramm)
Die LED erlischt dann und in der zweiten Zeile wird für einige Sekunden "geschlossene Datei" angezeigt.
Sie können die Aufnahme fortsetzen, indem Sie erneut "+" drücken
Wenn Sie die Karte entfernen, ohne die Aufzeichnung zu stoppen, ist die Datei möglicherweise beschädigt (insbesondere der letzte Wert) und daher nicht lesbar.
Es ist nicht systematisch, aber es ist ein Risiko (die Launen der IT ...)
Beenden Sie die Aufnahme, entfernen Sie die Karte, lesen Sie sie mit einem PC, legen Sie sie zurück und starten Sie die Aufnahme erneut. Dies ist möglich, wird jedoch nicht unterstützt.
Diese Manipulation kann dazu führen, dass das Programm "abstürzt". Wenn es funktioniert, dauert es manchmal einige Minuten, bis das Programm wieder auf die Karte schreibt.
Im Allgemeinen ist es vor dem Entfernen oder Ändern einer Speicherkarte vorzuziehen, die Montage auszuschalten, um die Initialisierungssequenz jedes Mal neu zu starten, wenn eine Karte eingesetzt wird.

Die Temperatur wird höchstens alle 750 ms erfasst, d. H. Mehr als eine Sekunde, aber das System berücksichtigt nur eine Messung pro Sekunde.
Es beträgt dann durchschnittlich mehr als 1 Minute (d. H. 60 Messungen) und speichert es mit Datum und Uhrzeit im folgenden Format auf der Karte
HH: MM: SS; XX, X
mit 1 Datensatz pro Zeile
Um Mitternacht wird die Datei geschlossen und gespeichert und automatisch eine neue mit dem neuen Datum erstellt. Die Aufzeichnung wird automatisch fortgesetzt, bis die Karte voll ist.
Das System macht daher maximal 1440 Registrierungen pro Tag, die Datei ist 23 KB pro Tag (oder 161 KB pro Woche, 713 KB pro Monat und 8.3 MB pro Jahr ... eine 1-GB-Karte ermöglicht daher theoretisch die Aufzeichnung für 116 Jahre).

Die Datei (.csv) kann direkt in Excel geöffnet werden und Sie können mit wenigen Klicks eine Kurve aus den Daten erstellen, die direkt verwendet werden können.

Um die Uhrzeit einzustellen, drücken Sie einfach die "Set" -Taste. Während des gesamten Zeiteinstellungsvorgangs findet keine Datenaufzeichnung statt (auch wenn die LED weiterhin leuchtet).
Der Cursor blinkt auf dem zu ändernden Wert. Wir beginnen mit dem Jahr, dann dem Monat, dann dem Datum und der Stunde, um mit den Minuten zu enden. Mit der Schaltfläche "+" können Sie den Wert erhöhen, validieren und mit "Set" zum nächsten wechseln.
Die Minuten müssen eine Minute länger als die Referenzuhr eingestellt sein. Sobald die Minuten von Set validiert wurden, zeigt das Display "'Set' to validation" an. Wir warten, bis die Referenzuhr 59 Sekunden beträgt, und validieren, die beiden Uhren sind dann perfekt synchronisiert.

Bei einem Stromausfall stoppt die Aufzeichnung auf natürliche Weise, wird jedoch automatisch fortgesetzt, wenn die Spannung zurückkehrt.
Es kann beispielsweise nützlich sein, einen Gefrierschrank zu überwachen. Wir können zum Beispiel die Temperatur bei der Rückkehr des Stroms visualisieren und daher wissen, ob er aufgetaut ist oder nicht, und gleichzeitig die Dauer des Schnitts kennen, indem wir den Unterschied zwischen dem Zeitpunkt der letzten Aufnahme und dem während der Rückkehr machen Strom.

Der PIC-Speicher ist bei weitem nicht gesättigt, 32% des RAM und 66% des Programmspeichers bleiben verfügbar, was viel Raum für Verbesserungen dieses Rekorders lässt: Verwaltung mehrerer Sonden oder anderer Arten von Sensoren, komplexere Berechnung von Messungen usw.

Ich für meinen Teil stoppe dort die Entwicklung dieses Geräts (für den Moment), aber ich könnte möglicherweise Funktionen hinzufügen, die für jemanden angefordert wurden, der diese Montage durchgeführt hätte.
Auf Anfrage kann ich auch die Datei für einen PIC einer anderen Referenz zusammenstellen, die mit diesem Projekt kompatibel wäre (der 18F258 ist keine Verpflichtung).

Na ja, vielleicht bald für andere Hacks

: Cheesy:
0 x

 


  • Ähnliche Themen
    Antworten
    Ansichten
    letzten Beitrag

Zurück zu "Elektrizität, Elektronik und IT-Hallo-Tech, Internet, DIY, Beleuchtung, Werkstoffe und neue"

Wer ist online?

Benutzer, die das durchsuchen forum : Majestic-12 [Bot] und 146 Gäste