Arduino Temperatur Monitor

Erstellt am 25. Mai 2017 von Canoxnet @canoxnet

Derzeit beschäftige ich mich wieder vermehrt mit dem Arduino. Da ich noch einen DHT11, einen Arduino Nano und ein OLED Display hier liegen hatte, habe ich mir einen Temperatur Monitor gebaut. Ich wollte hierfür keinen Raspberry Pi verwenden.

Benötigte Bauteile:

Aufbau:

Die Verkabelung ist einfach und schnell erledigt.

Zwischen die Pins VCC und Data muss ein 4,7kOhm oder ein 10kOhm Widerstand gesteckt werden. Hier das Pinout des DHT11 und DHT22 Sensors:

Pinout des DHT11

Sketch:

#include "DHT.h"
#include "U8glib.h"
U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE|U8G_I2C_OPT_DEV_0);

#define DHTPIN 2 // what pin we're connected to

#define DHTTYPE DHT11 // DHT 11 
//#define DHTTYPE DHT22 // DHT 22 (AM2302)

DHT dht(DHTPIN, DHTTYPE, 6);

char str[10];

void drawTest(void) {
 u8g.setFont(u8g_font_unifont);
 u8g.drawStr( 0, 20, "DHT11 test!");
}

void setup() {
 
 dht.begin();
 u8g.firstPage(); 
 do {
 drawTest();
 } while( u8g.nextPage() );
}

void loop() 
 delay(2000);
 
 float h = dht.readHumidity();
 float t = dht.readTemperature();
 float f = dht.readTemperature(true);
 
 u8g.firstPage(); 
 do {
 u8g.setFont(u8g_font_helvB08);

 u8g.drawStr( 0, 15, "Wohnzimmer :");
 
 u8g.drawStr( 0, 30, "Temperatur :");
 u8g.drawStr( 80, 30, dtostrf(t, 5, 2, str));
 u8g.drawStr( 110, 30, "\260C");
 
 u8g.drawStr( 0, 45, "Feuchtigkeit :");
 u8g.drawStr( 80, 45, dtostrf(h, 5, 2, str));
 u8g.drawStr( 110, 45, "%");
 

 
 } while( u8g.nextPage() );
}

Wenn ihr den DHT22 benutzt müsst ihr die Zeile #define DHTTYPE DHT11 // DHT 11 mit // auskommentieren und bei der Zeile //#define DHTTYPE DHT22 // DHT 22 (AM2302) die beiden // entfernen. Desweiteren könnt ihr in der Zeile u8g.drawStr( 0, 15, „Wohnzimmer :“); den Namen des Raumes anpassen.

Am Ende sieht das Ganze bei mir auf einer Lochrasterplatine gelötet wie folgt aus:

pic.twitter.com/bS7YWzNTMW

— canox.net (@canoxnet) 24. Mai 2017

Und es läuft auch an meiner Solarzelle

Funktioniert auch am Solar Panel pic.twitter.com/rukcD3tukF

— canox.net (@canoxnet) 24. Mai 2017

Anzeige