Arduino: Temperatur & Luftfeuchtigkeit auf einem LCD-Display

Zielgruppe:

Pfadfinderinnen- und Pfadfinderstufe

Zielsetzung:

Mit dem Temperatur/Luftfeuchtigkeits-Sensor messen wir die Werte in der Umgebung und geben das Ergebnis auf einem LCD-Display aus.

Dauer:

ca. 60 Minuten

Material:

  • Arduino Uno
  •  Breadboard
  • Temperatur/Luftfeuchtigkeits-Sensor
  • LCD-Modul
  • Jumper-Kabel
  • Kabel

Materialdht11

benötigte Bibliotheken:

Wenn du die Bibliotheken noch nicht installiert hast:
Wie installiere ich eine zusätzliche Bibliothek?

Aufbau

Für das Experiment wird ein fertiger Temperatur/Luftfeuchtigkeits-Sensor verwendet.

IMG_5666Für den Versuch ist es wichtig, dass die Anschlüsse auf dem Temperatur/Luftfeuchtigkeits-Sensor richtig verdrahtet werden!

Anschlüsse Temperatur/Luftfeuchtigkeits-Sensor

IMG_5663_rtempfeuchte_kabel

  • Braun – Masse (GND)
  • Rot – +5 Volt
  • Neon-Gelb – Signal

Anschlüsse LCD-Modul

display_anschluesse_IMG_5677

Die Verkabelung ist einfach:

  • GND wird mit dem GND Kontakt
  • VCC mit dem 5V Kontakt
  • SDA mit dem Analogen Eingang A4
  • SCL mit dem Analogen Eingang A5

lcd-modul_beispiel2_Steckplatine

Jetzt kann es mit der Programmierung losgehen. Der Arduino liefert eine eigene Entwicklungsumgebung mit. Ihr könnt sie für euren Laptop unter http://www.arduino.cc herunterladen. Nach der Installation könnt ihr das Programm öffnen und den Code für „Temperatur & Luftfeuchtigkeit auf einem LCD-Display“ in den Editor kopieren.

#include <LiquidCrystal_I2C.h>
#include <Wire.h>
#include <DHT.h>

LiquidCrystal_I2C lcd(0x27, 16, 2);   //Hier wird festgelegt um was für einen Display es sich handelt. In diesem Fall einer mit 16 Zeichen in 2 Zeilen.


#define DHTPIN 8
#define DHTTYPE DHT11

// DHT sensor
DHT dht(DHTPIN, DHTTYPE);


void setup() {
  lcd.begin(); //Im Setup wird der LCD gestartet
  dht.begin(); //Im Setup wird der DHT11 gestartet
  delay(500);
}

void loop() {
  // put your main code here, to run repeatedly:

  int humidity_data = (int)dht.readHumidity();
  int temperature_data = (int)dht.readTemperature();
lcd.setCursor(0,0); //Ab hier kann das I2C LCD Modul genau wie das einfache LCD Modul programmiert werden.
lcd.print("Temp.: ");
lcd.print(temperature_data); // lcd.print um etwas auf dem Display anzeigen zu lassen
lcd.print("\337C");
lcd.setCursor(0,1);  // lcd.setCursor um Zeichen und Zeile anzugeben
lcd.print("Feuchte: ");
lcd.print(humidity_data);
lcd.print("%");
  delay(500);

}     

Download (Arbeitsblatt & Programm-Code)

Für die Übertragung muss zunächst der angeschlossenen Arduino ausgewählt werden. Hierzu unter Tools -> Board das verwendete Board auswählen. (z.B. Arduino UNO)

Board auswählen. Der Boardname steht auf der Platine
Anschließend sucht ihr den Port, an dem der Arduino angeschlossen ist aus.

Upload Code. Unten kann man überprüfen, ob die Übertragung funktioniert.

Upload Code. Unten kann man überprüfen, ob die Übertragung funktioniert.

selectport
Der Prozess kann im Bereich Statusmeldungen überprüft werden. Wenn etwas nicht funktioniert, reicht es in der Regel, wenn man die Fehlermeldung bei Google sucht. Irgendjemand hatte bestimmt schon mal das gleiche Problem.

Nach ein paar Sekunden sollte eine Anzeige auf dem LCD-Display erfolgen.

IMG_5679

Kommentare sind geschlossen.