Temperaturlogger-ein Monsterprojekt

Hallo liebe Community,

ich bin ein ziemlicher Arduino-Frischling. Mit Programmierung (Java, Python) kenne ich mich einigermassen aus und mit dem Arduino hab ich schon LEDs Blinken lassen und einen Bewegungsmelder und einen Ultraschallsensor ausprobiert.
Meine erste Projektidee ist nun ein Temperaturlogger. Ich würde gerne mit einem Temperatursensor alle x Minuten (vielleicht alle 10 Minuten) die Temperatur messen und diese mit Zeit- und Datumsstempel in vorzugsweise eine *.csv Datei speichern um sie später mit z.B. Excel auszuwerten.
Ich habe schon sehr viele Forumsbeiträge zu Loggern und SD Karten etc. gelesen und auch versucht daraus schlau zu werden, aber es hilft nichts, ich brauche noch mehr Unterstützung. Und zwar von Anfang an...

Zu meiner jetzigen "Ausrüstung":
Funduino UNO Starter Kit
Temperatursensor TMP36GT9Z

Zu meinem Plan:

  1. Als erstes möchte ich mir einen SD-Karten Leser kaufen und mit diesem dann üben Informationen darauf als *.csv zu speichern.
  2. Wenn dies gut klappt, dann würde ich den Temperatursensor ausprobieren und schauen, ob ich die aktuelle Temperatur in der Datei speichern kann.
  3. Im letzten Schritt würde ich dann die 'Schleife' programmieren, die alle x Minuten die Temperatur misst und es fortlaufend in die Datei schreibt.

Zu meinen Fragen:

  1. Der SD Karten Leser. Da gibt es so viele Möglichkeiten und nach langem suchen bin ich auf folgendes Modell gestossen. Es gefällt mir, da es eine integrierte Echtzeituhr besitzt, was (glaube ich) das Erstellen des Zeit- und Datumsstempel erleichtert. Könnt ihr mir dieses Modell empfehlen, resp. findet ihr es ok? SD Karten Leser Amazon

  2. Muss ich den SD Karten Leser auf meinen Arduino löten? Oder geht das auch mit dem Breadboard?

  3. Wenn ich den Kartenleser bestellt habe und er in ein paar Tagen hier ist und ich wieder hier poste, würdet ihr mir dann weiterhelfen mit dem schreiben/auslesen? :slight_smile: Oder stirbt so ein Post, wenn nicht sofort gepostet wird?

Zu meinen "Erwartungen":
Ich erhoffe mir von dem Projekt einen sehr grossen Lerneffekt (da es tatsächlich auch sehr viel zu lernen gibt...) und Spass :smiley: Und ich hoff sehr, dass ich auf eure Unterstützung zählen kann :smiley: Was meint ihr?"

Liebe Grüsse, eure Straumle

straumle:
2) Muss ich den SD Karten Leser auf meinen Arduino löten?

Nein, das ist ein sogenanntes "Datenlogger-Shield, kompatibel mit Arduino UNO.
Ein Shield wird nirgends draufgelötet, sondern draufgesteckt.

Als Shield für einen UNO wird das Teil einfach auf einen UNO (oder UNO-kompatibles Board) einfach draufgesteckt.
Und dann kannst Du den UNO so programmieren, dass er die Komponenten auf dem Shield ansteuert, insbesondere die auf dem Shield enthaltene RTC und und die SD-Karte im SD-Kartenschacht.

In dem Bild im Link kann man erkennen, dass als RTC ein DS3107 verbaut ist. Der geht am Tag einige (teilweise viele) Sekunden falsch.
Deshalb würde ich davon abraten. Lieber ein DS3231 Modul als RTC nehmen, das ist temperaturkompensiert. Da wirst Du dann aber wohl ein einzelnes SD-Karten-Modul zulegen müssen.
Ich weiß nicht, ob es die Kombination als Schield gibt.

Gruß Tommy

Hi jurs und tommy56, danke für eure Antwort :slight_smile:

@jurs: Ok super, ich besitze nämlich kein Lötgerät! Dann schau ich mir das an, wenn der Datenlogger da ist.

@Tommy56: hm ok, für meine Zwecke wäre das jetzt nicht so tragisch, aber danke für den Hinweis. Wenn ich mich jetzt für ein einzelnes SD Modul und RTC entscheiden würde, wie müsste ich die zwei Sachen denn miteinander verbinden? Oder muss ich das überhaupt?

Liebe Grüsse, Straumle

Entweder über ein Steckbrett und entsprechende Kabel oder löten.

Gruß Tommy

@Tommy: ok dann würd ich das mit nem Steckbrett versuchen :slight_smile:

@kulturbereicherer: danke für den Link, anscheinend kannst du erfolgreicher googeln als ich :wink: ich werd mir das morgen mal anschauen! Ein bisschen Programmierung will ich doch anwenden, wenn ich nur den Code kopiere lerne ich ja überhaupt nichts... :smiley:

Danke und gute Nacht euch, Straumle

straumle:
wenn ich nur den Code kopiere lerne ich ja überhaupt nichts... :smiley:

Du willst was lernen?! Dann bist Du hier goldrichtig.

Was die RTC angeht: Ich habe mal eine Art Uhr gebaut, die nur Stunden und Minuten angezeigt hat. Dafür war die DS1307 vollkommen ausreichend.

Gruß

Gregor

PS: Du gehst ganz schön ambitioniert an die Sache. Mit brauchbarem Feedback kannst Du hier quasi immer rechnen.

Ergänzend noch: Was gut ist an Deiner Wahl ist, dass das SD-Shield einen Level-Shifter hat. Dein Uno läuft auf 5V, während SD-Karten 3,3V brauchen. Das solltest Du bei der Wahl einer anderen Komponente beachten.
Du erkennst das am Vorhandensein eines Chips mit vielen (oft 14) Beinchen.

Was willst Du denn eigentlich lernen?
Der Temperatursensor ist insofern ganz nett, dass man damit ein bisschen mit analogRead spielen kann, ohne Bibliotheken zu benutzen. Ansonsten würde ich mir aber keinen analogen Sensor antun.

Wenns mir um einen ernsthaften Logger ginge, würde sowas hiermit bauen, auf dem Breadboard aus Deinem Starterkit:

Das sind alles brauchbare Teile, die Du weiterverwenden kannst und bei denen es noch einiges zu entdecken gibt. Der BME280 z.B. ist auch ein schönes Teil, um später mal zu versuchen, die Bibliothek anhand des Datenblatts zu verstehen.

Dazu würde ich gleich noch einen Wemos D1 Mini bestellen, um das Projekt später ins Wifi zu bringen: https://de.aliexpress.com/item/D1-mini-Mini-NodeMcu-4M-bytes-Lua-WIFI-Internet-of-Things-development-board-based-ESP8266-by/32651747570.html

My 2 cent: Ich halte das ganze Shieldkonzept in 95% der Fälle für Mist. Der Neuling bekommt eine teure und/oder schlecht dokumentierte Blackbox hingesetzt, auf dem er elektronisch überhaupt nicht nachvollziehen kann. Es müssen ja nicht mal die Kabel richtig gesteckt werden, alles ist im Shield. Der Fortgeschrittene einen Riesenklotz auf teurer Basis.
Den Preis eines einfachen Gerätes wie eines Temperaturloggers sollte der Sensor ausmachen, und nicht irgendeine heilige Microcontrollerplatform vom Experimentierschrein, die man nach getaner Arbeit sorgfältig wieder in der Originalpackung verstaut für das nächste Gebastel.

Übrigens ist das geplante auch kein Monsterprojekt, sondern sonder ein ziemlich einfaches Anfängerding. Wenn ich einen Arduinokurs geben würde, wäre das wahrscheinlich inkrementell Komponente für Komponente das zweite Projekt nach "LED blinken lassen". Das sage ich jetzt nicht, um Dich irgendwie runterzumachen oder so, sondern um die Leiste richtig zu hängen. Alles ist schwierig, wenn man davon noch keine Ahnung hat und lernt, aber es hilft nicht, einfache Sachen als schwieriges Fernziel im Kopf zu haben. Das behindert nur.

ElCaron:
...
Übrigens ist das geplante auch kein Monsterprojekt, sondern sonder ein ziemlich einfaches Anfängerding. Wenn ich einen Arduinokurs geben würde, wäre das wahrscheinlich inkrementell Komponente für Komponente das zweite Projekt nach "LED blinken lassen". Das sage ich jetzt nicht, um Dich irgendwie runterzumachen oder so, sondern um die Leiste richtig zu hängen. Alles ist schwierig, wenn man davon noch keine Ahnung hat und lernt, aber es hilft nicht, einfache Sachen als schwieriges Fernziel im Kopf zu haben. Das behindert nur.

Dass es für jemanden, der schon einigermaßen erfahren mit Arduino ist, ein Anfängerding ist, stimmt schon. Vom Standpunkt eines blutigen Anfängers gesehen ist es IMO aber durchaus eher ein Monster als ein Mäuschen. Gut ist auf jeden Fall, sich vor dem ersten Basteln ein paar Gedanken dazu zu machen. Und hier aufzuschlagen ist sicher nicht verkehrt :slight_smile:

Gruß

Gregor

gregorss:
Dass es für jemanden, der schon einigermaßen erfahren mit Arduino ist, ein Anfängerding ist, stimmt schon. Vom Standpunkt eines blutigen Anfängers gesehen ist es IMO aber durchaus eher ein Monster als ein Mäuschen. Gut ist auf jeden Fall, sich vor dem ersten Basteln ein paar Gedanken dazu zu machen. Und hier aufzuschlagen ist sicher nicht verkehrt :slight_smile:

Nein, natürlich nicht. Ich wollte auch nicht sagen, dass er das alleine hinzukriegen hat, weil das so einfach ist. Aber wenn man das schon so in den Titel schreibt, dann scheint man da eine falsche Vorstellung zu haben. "Eine Kiste zimmern" ist auch schwierig für jemanden, der von Holzbearbeitung keine Ahnung hat. (Ich weiß das, ich hab es schon gemacht :)) Aber wenn jemand in ein Hobbyschreinerforum kommt und sagt: "Ich habe mir ein Brett und Leim gekauft, und am Ende soll eine Kiste dabei rauskommen, in die ich Sachen tun kann. Ein Monsterprojekt!" dann halte ich es für gut, die Person auf den Teppich zu holen. Es hängt natürlich vom persönlichen Charakter ab, aber bei den meisten stelle ich fest, dass sie nicht richtig vorankommen, wenn sie meinen, das, was sie machen, sei extrem schwierig. Man verirrt sich dann in irgendwelchem Detailkram - für die eigentliche Monsteraufgabe kann man ja noch gar nicht gut genug vorbereitet sein. Meistens landet man dann in Unsinn, weil man für tiefergehende Sachen noch gar nicht das Wissen und die Erfahrung hat, das Dunning-Kruger-Syndrom schlägt zu und am Ende wird man entweder nicht fertig, oder hat sich dann von Hinten durch die Brust ins Auge geschossen. Exkurs: Deswegen glaube ich, dass viele so viele Probleme mit Mathe haben. Die Schule braucht sieben Jahre, um die 4 Grundrechenarten einzuführen (halbwegs abgeschlossen mit negativen Zahlen in der 7. Klasse, vorher heißt es 5-12 geht nicht). Kein Wunder, dass viele da denken, Mathe sei voll kompliziert.

Deswegen nochmal: Bestell er sich Breadboardsparts, stecke sie zusammen und schaue sich Teil im Internet Beispiele an, wie man die Sachen anschließt und lade Bibliotheksbeispiele. Dann halt alles zusammenklatschen.
Der nächste Thread darf dann gerne lauten "Probleme mit SD-Kartenleser. Ich habe den SD-Kartenleser so angeschlossen (Foto+Skizze), hier ist mein Code (Code in Code-Tags), derzeit habe ich das Problem, dass ..."

ElCaron:
... und am Ende wird man entweder nicht fertig, oder hat sich dann von Hinten durch die Brust ins Auge geschossen.

Das kommt mir bekannt vor ... als hätte ich es erlebt :smiley:

ElCaron:
Exkurs: Deswegen glaube ich, dass viele so viele Probleme mit Mathe haben. Die Schule braucht sieben Jahre, um die 4 Grundrechenarten einzuführen (halbwegs abgeschlossen mit negativen Zahlen in der 7. Klasse, vorher heißt es 5-12 geht nicht). Kein Wunder, dass viele da denken, Mathe sei voll kompliziert.

Mathe hat mit irre viel Sachen zu tun. Und vieles hört sich für einen Ahnungslosen an, als käme es nachts als Gemurmel aus dem Wandschrank. Aber je besser man die Dinge miteinander verknüpft, desto mehr kapiert man.

Was ein Monsterprojekt ist, ist ziemlich interpretationsfähig. Wie das Wetter und die Elefantenmücke :slight_smile:

Wer so ein Vorhaben als Monsterprojekt sieht, hat den Monsterspaß beim Basteln wahrscheinlich noch nicht gehabt.

Gruß

Gregor