Arduino Temperatur- & Feuchtelogger mit DHT11 & Ethernet Shield
Komponenten und Materialien
| DHT11 Temperatur- & Feuchtigkeitssensor (4 Pins) | × | 1 |
| Arduino UNO | × | 1 |
| Arduino Ethernet W5100 Shield für Uno | × | 1 |
| Steckbrücken (Jumper Wires) | × | 1 |
| 9 V Blockbatterie | × | 1 |
| Steckbrett (Breadboard) | × | 1 |
| 9 V Batterieclip | × | 1 |
Software
- Arduino IDE
Projektbeschreibung
Worum geht es?
Ein einfacher, batteriebetriebener Datenlogger, der Temperatur und Luftfeuchtigkeit misst und die Werte mit Zeitstempel auf einer SD-Karte (im Ethernet Shield) speichert. Ideal für Langzeitaufzeichnungen in Räumen, Gewächshäusern etc.
Aufbau & Vorgehensweise
- Arduino UNO und Ethernet Shield zusammenstecken.
- Schaltung gemäß Fritzing-Abbildung auf dem Breadboard aufbauen (DHT11 an A0, Versorgung 5 V/GND).
- SD-Karte formatieren (FAT16/32) und in den Slot des Ethernet Shields stecken.
- Sketch
Temp_and_Humid.inohochladen. - Der Arduino erstellt automatisch die Datei
datalog.txtauf der SD-Karte und schreibt alle 10 Minuten (600 000 ms) einen Datensatz.

Hinweis: Für Messungen über 1–2 Stunden empfiehlt sich ein Netzteil („Wall Wart“) statt der 9 V-Batterie, um Datenverlust durch leere Batterie zu vermeiden.
Code: Temp_and_Humid.ino
Basiert auf dem SD-Card-Datalogger-Beispiel der Arduino IDE, erweitert um die DHT11-Bibliothek. Wichtig: In Zeile 57 die Schleifenbedingung von analogPin < 3 auf analogPin < 1 ändern, da nur ein Sensor (DHT11) verwendet wird.
/* SD card datalogger
* Loggt Daten von bis zu 3 analogen Sensoren auf SD-Karte.
* Angepasst für DHT11 an A0.
*/
#include <SPI.h>
#include <SD.h>
#include <dht.h>
dht DHT;
#define DHT11_PIN A0
const int chipSelect = 4;
void setup() {
Serial.begin(9600);
while (!Serial) { ; }
Serial.print("Initialisiere SD-Karte...");
if (!SD.begin(chipSelect)) {
Serial.println("Karte fehlgeschlagen oder nicht vorhanden");
return;
}
Serial.println("Karte initialisiert.");
}
void loop() {
String dataString = "";
for (int analogPin = 0; analogPin < 1; analogPin++) {
int chk = DHT.read11(DHT11_PIN);
dataString += String(chk);
if (analogPin < 2) dataString += ",";
}
File dataFile = SD.open("datalog.txt", FILE_WRITE);
if (dataFile) {
dataFile.println(DHT.temperature);
dataFile.println(DHT.humidity);
dataFile.close();
Serial.print("Temperatur = ");
Serial.println(DHT.temperature);
Serial.print("Feuchtigkeit = ");
Serial.println(DHT.humidity);
delay(600000); // 10 Minuten
} else {
Serial.println("Fehler beim Öffnen von datalog.txt");
}
}
Schaltpläne


Herstellungsprozess
- Nahtlose Temperatur- & Feuchtigkeitsüberwachung am Raspberry Pi mit EzTemp
- Arduino Energiemonitor & Datenlogger (Dr. Wattson, MCP39F521) – Schritt-für-Schritt
- DHT11 Temperatur- & Feuchtesensor mit LED-Anzeige & Piezo-Summer
- Find Me: Smarter Gegenstands-Finder mit Arduino und Bluetooth
- BME280 Temperatur, Luftfeuchte & Druck auf Nextion Touchscreen anzeigen
- Echtzeit-Entfernungsmessung mit Arduino Sonar & Processing-Visualisierung
- Berührungsloses Temperatur-Überwachungstor für schnelles Screening
- Temperatur & Luftfeuchte mit DHT11 auf Blynk auslesen – Arduino-Tutorial Schritt für Schritt
- 4x4x4 LED-Würfel mit Arduino Uno & 1Sheeld bauen – Interaktives LED-Projekt
- DIY Arduino Lenkrad / Joystick für Rennspiele – USB-HID-Umbau