Skip to content

Technik Blog

Programmieren | Arduino | ESP32 | MicroPython | Python | Raspberry Pi | Raspberry Pi Pico

Menu
  • Smarthome
  • Gartenautomation
  • Arduino
  • ESP32 & Co.
  • Raspberry Pi & Pico
  • Solo Mining
  • Deutsch
  • English
Menu

Raspberry PI Tutorial #4: DHT11 Sensor ansteuern (Teil1)

Posted on 18. Oktober 20198. Juni 2025 by Stefan Draeger

In diesem Tutorial möchte ich beschreiben wie du den Sensor DHT11 am Raspberry PI mit Python programmierst und somit die aktuellen Werte für die Temperatur und die Luftfeuchtigkeit erhältst. 

Raspberry PI mit DHT11 Sensor

Dieses ist der erste Teil zum DHT11 Sensor am Raspberry Pi, zunächst wollen wir „nur“ die Werte auf der Konsole / dem Terminal ausgeben. 

  • Technische Daten des DHT11 Sensors
  • Bezug der benötigten Komponenten für dieses Tutorial
  • T-Cobbler für das Breadboard
    • Bezug
  • Aufbau des DHT11 Sensors
  • Aufbau & Schaltung
    • Aufbau
    • Schaltung
  • Programmierung
    • Vorbereitung
    • aktualisieren der Pakete aus der Sourcelist
    • Installieren von Python3-PIP
    • benötigte Bibliothek installieren
      • Installieren der Bibliothek mit pip3
      • Herunterladen aus dem Repository und Installieren
    • Quellcode
      • Was machen wir im Quellcode?
      • Ausgabe auf der Kommandozeile
  • Download

Technische Daten des DHT11 Sensors

  • Messbereich der relativen Luftfeuchtigkeit 20 % bis 90 %
  • Toleranz des Messbereiches für die relative Luftfeuchtigkeit ±5 %
  • Messbereich der Temperatur 0 bis 60 °C
  • Toleranz des Messbereiches für die Temperatur ±2 °C
  • Betriebsspannung 3.3V bis 5V

Wenn die Messgenauigkeit zu grob ist, kann auf zu einem DHT22 Sensor gegriffen werden, dieser wird genauso wie der DHT11 Sensor angesteuert, jedoch hat dieser einen deutlich besseren Messbereich / eine bessere Toleranz. Beide Sensoren habe ich mir bereits einmal genauer im Tutorial Arduino Lektion 29: DHT22 Sensor angeschaut.

Bezug der benötigten Komponenten für dieses Tutorial

Für den nachbau von diesem Tutorial benötigst du folgende elektronische Bauteile:

  • 1x Raspberry Pi,
  • 1x DHT11 Sensor,
  • 1x 10 kOhm Widerstand,
  • 1x Breadboard, 400 Pin,
  • 3x Breadboardkabel, männlich – weiblich, 20 cm

T-Cobbler für das Breadboard

Ich habe mir für den Raspberry PI ein T-Cobbler für zbsp. ein 400 Pin Breadboard über ebay.de besorgt. Je nachdem welches Raspberry PI Modell man hat benötigt man ein 40 Pin oder  20 Pin T-Cobbler.

Raspberry PI - T-Cobbler für ein Breadboard
Raspberry PI – T-Cobbler für ein Breadboard

Bezug

Wie bereits erwähnt bekommt man den T-Cobbler bei ebay.de und natürlich auch bei amazon.de.

ModellShopPreis
40 Pin
für Raspberry PI ab Vers. 2
ebay.de*ab 4,20 € inkl. Versandkosten
amazon.de*ab 2,73 € inkl. Versandkosten

Hinweis von mir: Die mit einem Sternchen (*) markierten Links sind Affiliate-Links. Wenn du über diese Links einkaufst, erhalte ich eine kleine Provision, die dazu beiträgt, diesen Blog zu unterstützen. Der Preis für dich bleibt dabei unverändert. Vielen Dank für deine Unterstützung!

Für das Model 1 des Raspberry Pi wird ein 20 Pin T-Cobbler benötigt, leider konnte ich zum Zeitpunkt der Erstellung des Tutorials keines finden.

Aufbau des DHT11 Sensors

Der DHT11 Sensor (und auch der DHT22) verfügt über 4 Pins welche wie folgt belegt sind. 

DHT11 Sensor Pinout
DHT11 Sensor Pinout

Der Pin „NC“ ist nicht belegt und wird in der Schaltung nicht verwendet.

Aufbau & Schaltung

Aufbau

Aufbau der Schaltung - Raspberry PI mit DHT11 Sensor
Aufbau der Schaltung – Raspberry PI mit DHT11 Sensor

Schaltung

Da nicht jeder sich ein T-Cobbler besorgt, zeige ich die Schaltung wie diese ohne so ein Modul aufgebaut würde.

Schaltung - Raspberry PI Model B mit DHT11 Sensor
Schaltung – Raspberry PI Model B mit DHT11 Sensor

Programmierung

Wie bereits in den Tutorials zuvor und im Beitrag Raspberry PI Kit #1: Smart Plant Kit “Schlaue Pflanze” gezeigt, verwende ich die Skriptsprache Python. 

Vorbereitung

Für den Quellcode sowie die später installierte Bibliothek erstelle ich mit dem Befehl

mkdir dht11

ein Verzeichnis im „home“ des Benutzers „pi“.
Als Nächstes wird nun mit dem Befehl 

cd dht11

in das erstelle Verzeichnis gewechselt.

aktualisieren der Pakete aus der Sourcelist

Damit wir sichergehen können, das unser System aktuell ist starten wir kurz ein Update mit dem Befehl

sudo apt-get update

Installieren von Python3-PIP

Für das spätere installieren der Bibliothek benötigen wir das Tool „python3 pip“ dieses wird mit dem Befehl

sudo apt-get install python3-pip

installiert.

Danach werden noch einige zusätzliche Pakete mit dem Befehl

sudo python3 -m pip install --upgrade pip setuptools wheel

installiert.

Raspberry PI - installieren und aktualieren von PIP3
Raspberry PI – installieren und aktualieren von PIP3

benötigte Bibliothek installieren

Es gibt nun zwei Möglichkeiten wie die benötigte Adafruit Bibliothek installiert werden kann, einmal mit dem Befehl „pip3“ und einmal läd man sich eine Kopie der Sourcen auf den Raspberry und installiert diese.

Installieren der Bibliothek mit pip3

Der wohl einfachste weg ist die Installation mit „pip3“.

sudo pip3 install Adafruit_DHT
Raspberry PI - installieren der Adafruit DHT Bibliothekt mit pip3
Raspberry PI – installieren der Adafruit DHT Bibliothekt mit pip3

Herunterladen aus dem Repository und Installieren

Möchte man sich die Sourcen und die zusätzlichen Beispiele herunterladen so benötigt man „git“ dieses ist beim RaspianLinux bereits installiert so dass, man einfach nur den Befehl

git clone https://github.com/adafruit/Adafruit_Python_DHT.git

auf der Kommandozeile eingeben und mit Enter bestätigen muss.

Es wird nun eine Verbindung zum Git Repository aufgebaut und eine Kopie in den aktuellen Ordner abgelegt.

Raspberry PI - herunterladen der Sourcen der Adafruit DHT Bibliothek mit "git clone"
Raspberry PI – herunterladen der Sourcen der Adafruit DHT Bibliothek mit „git clone“

Quellcode

Den nachfolgenden Quellcode habe ich den Beispielen entnommen welcher der Adafruit DHT Bibliothek beiliegen.

import Adafruit_DHT

sensor = Adafruit_DHT.DHT11

pin = 4

humidity, temperature = Adafruit_DHT.read_retry(sensor, pin)

if humidity is not None and temperature is not None:
    print('Temperatur={0:0.1f}*C  Luftfeuchtigkeit={1:0.1f}%'.format(temperature, humidity))
else:
    print('Fehler beim empfangen der Daten. Bitte versuche es erneut!')

Was machen wir im Quellcode?

Zeile 1 – import Adafruit_DHT

Mit dieser Zeile importieren wir die zuvor installierte Adafruit DHT Bibliothek.

Zeile 2 – sensor = Adafruit_DHT.DHT11

Um den Sensor auszuwerten, müssen wir zunächst eine Instanz von dem Objekt erzeugen.
Wenn man einen DHT22 oder AM2302 Sensor hat muss man dieses Objekt mit der entsprechenden Konstante erzeugen.

DHT11 – Adafruit_DHT.DHT11
DHT22 – Adafruit_DHT.DHT22
AM2302  – Adafruit_DHT.AM2302

Zeile 3 – pin = 4

Ich habe den Sensor am GPIO Pin 4 angeschlossen. Somit weise ich der Variable „pin“ den Wert 4 zu.
Wenn du einen anderen GPIO Pin verwendest dann muss du hier den Wert anpassen.

Zeile 4 – humidity, temperature = Adafruit_DHT.read_retry(sensor, pin)

In Python können wir bequem mehrere Werte von einer Funktion empfangen. Der Funktion „read_retry“ wird eine Instanz des Sensors sowie die Pin Bezeichnung übergeben.

Zeile 5 – if humidity is not None and temperature is not None:

Wenn die Variablen „humidity“ und „temperature“  NICHT den Wert „None“ hat dann.
Der Wert „None“ ist ein DatenTyp welcher den Zustand „null“ repräsentiert, d.h. der Wert ist nicht also nicht „0“.

Zeile 6 – print(‚Temperatur={0:0.1f}*C Luftfeuchtigkeit={1:0.1f}%‘.format(temperature, humidity))

Wenn Werte empfangen wurden dann werden diese Formatiert auf der Kommandozeile ausgegeben.

Zeile 7 – else:

Wenn keine Daten empfangen wurden, also wenn eine der Variablen „humiduty“ und / oder „temperature“ den Wert „None“ hat dann…

Zeile 8 – print(‚Fehler beim empfangen der Daten. Bitte versuche es erneut!‘)

Ausgabe einer Fehlermeldung auf der Kommandozeile.

Ausgabe auf der Kommandozeile

Wir können nun das Skript mit dem Befehl

sudo python3 dht11_test.py

starten und erhalten nachfolgende Ausgabe.

Raspberry PI - Ausgabe der Werte des DHT11 Sensors auf der Kommandozeile
Raspberry PI – Ausgabe der Werte des DHT11 Sensors auf der Kommandozeile

Download

Hier nun das fertige Pythonskript zum download.

Raspberry PI Tutorial #4: DHT11 Sensor ansteuern (Teil1)Herunterladen

Schreibe einen Kommentar Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Fragen oder Feedback?

Du hast eine Idee, brauchst Hilfe oder möchtest Feedback loswerden?
Support-Ticket erstellen

Newsletter abonnieren

Bleib auf dem Laufenden: Erhalte regelmäßig Updates zu neuen Projekten, Tutorials und Tipps rund um Arduino, ESP32 und mehr – direkt in dein Postfach.

Jetzt Newsletter abonnieren

Unterstütze meinen Blog

Wenn dir meine Inhalte gefallen, freue ich mich über deine Unterstützung auf Tipeee.
So hilfst du mit, den Blog am Leben zu halten und neue Beiträge zu ermöglichen.

draeger-it.blog auf Tipeee unterstützen

Vielen Dank für deinen Support!
– Stefan Draeger

Kategorien

Tools

  • Unix-Zeitstempel-Rechner
  • ASCII Tabelle
  • Spannung, Strom, Widerstand und Leistung berechnen
  • Widerstandsrechner
  • 8×8 LED Matrix Tool
  • 8×16 LED Matrix Modul von Keyestudio
  • 16×16 LED Matrix – Generator

Links

Blogverzeichnis Bloggerei.de TopBlogs.de das Original - Blogverzeichnis | Blog Top Liste Blogverzeichnis trusted-blogs.com

Stefan Draeger
Königsberger Str. 13
38364 Schöningen

Tel.: 01778501273
E-Mail: info@draeger-it.blog

Folge mir auf

  • Impressum
  • Datenschutzerklärung
  • Disclaimer
  • Cookie-Richtlinie (EU)
©2025 Technik Blog | Built using WordPress and Responsive Blogily theme by Superb
Cookie-Zustimmung verwalten
Wir verwenden Technologien wie Cookies, um Geräteinformationen zu speichern und/oder darauf zuzugreifen. Wir tun dies, um das Surferlebnis zu verbessern und um personalisierte Werbung anzuzeigen. Wenn Sie diesen Technologien zustimmen, können wir Daten wie das Surfverhalten oder eindeutige IDs auf dieser Website verarbeiten. Wenn Sie Ihre Zustimmung nicht erteilen oder zurückziehen, können bestimmte Funktionen beeinträchtigt werden.
Funktional Immer aktiv
Die technische Speicherung oder der Zugang ist unbedingt erforderlich für den rechtmäßigen Zweck, die Nutzung eines bestimmten Dienstes zu ermöglichen, der vom Teilnehmer oder Nutzer ausdrücklich gewünscht wird, oder für den alleinigen Zweck, die Übertragung einer Nachricht über ein elektronisches Kommunikationsnetz durchzuführen.
Vorlieben
Die technische Speicherung oder der Zugriff ist für den rechtmäßigen Zweck der Speicherung von Präferenzen erforderlich, die nicht vom Abonnenten oder Benutzer angefordert wurden.
Statistiken
Die technische Speicherung oder der Zugriff, der ausschließlich zu statistischen Zwecken erfolgt. Die technische Speicherung oder der Zugriff, der ausschließlich zu anonymen statistischen Zwecken verwendet wird. Ohne eine Vorladung, die freiwillige Zustimmung deines Internetdienstanbieters oder zusätzliche Aufzeichnungen von Dritten können die zu diesem Zweck gespeicherten oder abgerufenen Informationen allein in der Regel nicht dazu verwendet werden, dich zu identifizieren.
Marketing
Die technische Speicherung oder der Zugriff ist erforderlich, um Nutzerprofile zu erstellen, um Werbung zu versenden oder um den Nutzer auf einer Website oder über mehrere Websites hinweg zu ähnlichen Marketingzwecken zu verfolgen.
Optionen verwalten Dienste verwalten Verwalten von {vendor_count}-Lieferanten Lese mehr über diese Zwecke
Einstellungen anzeigen
{title} {title} {title}