Raspberry Pi - Temperatuur- en Vochtigheidssensor - OLED
Deze tutorial legt uit hoe u met de Raspberry Pi de temperatuur en vochtigheid kunt uitlezen van een DHT11/DHT22 sensor en deze kunt weergeven op een OLED.

Benodigde hardware
| 1 | × | Raspberry Pi 5 | |
| 1 | × | SSD1306 I2C OLED-Display 128x64 | |
| 1 | × | SSD1306 I2C OLED-Display 128x32 | |
| 1 | × | DHT11 Temperatuur- en Vochtigheidssensor | |
| 1 | × | Jumper Draden |
U kunt ook de DHT22 sensor gebruiken in plaats van de DHT11 sensor.
| 1 | × | (Aanbevolen) Schroefklem Block Shield voor Raspberry Pi | |
| 1 | × | (Aanbevolen) Raspberry Pi Prototyping Basisplaat & Breadboard Kit | |
| 1 | × | (Aanbevolen) HDMI-Touchscreen-Monitor voor Raspberry Pi |
Of u kunt de volgende kits kopen:
| 1 | × | DIYables Sensorkit (30 sensoren/displays) | |
| 1 | × | DIYables Sensorkit (18 sensoren/displays) |
Openbaarmaking: Sommige van de links in deze sectie zijn Amazon-affiliate links. We kunnen een commissie ontvangen voor aankopen die via deze links worden gedaan, zonder extra kosten voor u. We waarderen uw steun.
Over OLED-display, DHT11 en DHT22 Temperatuur- en Vochtigheidssensor
Bent u niet bekend met het OLED-display, de DHT11 en DHT22 temperatuur- en vochtigheidssensor (inclusief pinout, functionaliteit, programmeren, etc.), dan helpen de volgende tutorials u verder:
- Raspberry Pi - OLED tutorial
Aansluitschema
Raspberry Pi - DHT11 Module LCD Aansluiting

This image is created using Fritzing. Click to enlarge image
Raspberry Pi - DHT22 Module LCD Aansluiting

This image is created using Fritzing. Click to enlarge image
Raspberry Pi Code - DHT11 Sensor - OLED
Snelle stappen
- Zorg dat u Raspbian of een ander Raspberry Pi compatibel besturingssysteem heeft geïnstalleerd op uw Pi.
- Zorg dat uw Raspberry Pi is verbonden met hetzelfde lokale netwerk als uw pc.
- Zorg dat uw Raspberry Pi verbonden is met internet als u bibliotheken moet installeren.
- Als dit de eerste keer is dat u Raspberry Pi gebruikt, zie hoe u de Raspberry Pi instelt
- Verbind uw pc via SSH met de Raspberry Pi met de ingebouwde SSH-client op Linux en macOS of PuTTY op Windows. Zie hoe u uw pc verbindt met Raspberry Pi via SSH.
- Zorg dat de RPi.GPIO bibliotheek is geïnstalleerd. Zo niet, installeer deze dan met het volgende commando:
sudo apt-get update
sudo apt-get install python3-rpi.gpio
- Voordat u het OLED-display gebruikt met de Raspberry Pi, moet u de I2C-interface op de Raspberry Pi inschakelen. Zie Hoe u de I2C-interface kunt inschakelen op Raspberry Pi
- Installeer de OLED-bibliotheek door het volgende commando uit te voeren:
pip install Adafruit-SSD1306
- Installeer de bibliotheek voor de DHT11 temperatuur- en vochtigheidssensor met de volgende opdracht:
sudo pip3 install Adafruit_DHT
- Maak een Python scriptbestand aan met de naam dht11_oled.py en voeg de volgende code toe:
# Deze Raspberry Pi code is ontwikkeld door newbiely.nl
# Deze Raspberry Pi code wordt zonder enige beperking aan het publiek beschikbaar gesteld.
# Voor volledige instructies en schema's, bezoek:
# https://newbiely.nl/tutorials/raspberry-pi/raspberry-pi-temperature-humidity-sensor-oled
import Adafruit_DHT
import Adafruit_SSD1306
from PIL import Image, ImageDraw, ImageFont
import time
# Set up the DHT11 sensor
DHT_SENSOR = Adafruit_DHT.DHT11
DHT_PIN = 20 # GPIO pin where the DHT11 sensor is connected
# Set up the SSD1306 OLED display
RST = None
OLED = Adafruit_SSD1306.SSD1306_128_64(rst=RST)
OLED.begin()
OLED.clear()
OLED.display()
# Set up fonts
font = ImageFont.load_default()
while True:
# Read temperature and humidity from DHT11 sensor
humidity, temperature = Adafruit_DHT.read_retry(DHT_SENSOR, DHT_PIN)
# Clear the OLED display
OLED.clear()
# Display temperature and humidity on OLED
OLED.draw.text((5, 5), f'Temp: {temperature:.1f} C', font=font, fill=255)
OLED.draw.text((5, 20), f'Humidity: {humidity:.1f}%', font=font, fill=255)
# Update the OLED display
OLED.display()
# Wait for a moment before reading again
time.sleep(2)
except KeyboardInterrupt:
# Clean up code before exiting the script
OLED.clear()
OLED.display()
print("\nExiting the script.")
- Sla het bestand op en start het Python script door het volgende commando in de terminal uit te voeren:
python3 dht11_oled.py
Het script draait in een oneindige lus totdat u Ctrl + C in de terminal indrukt.
- Maak de omgeving rond de temperatuursensor warm, of houd de sensor in uw hand.
- Bekijk de resultaten op het OLED-display.
Raspberry Pi Code - DHT22 Sensor - OLED
# Deze Raspberry Pi code is ontwikkeld door newbiely.nl
# Deze Raspberry Pi code wordt zonder enige beperking aan het publiek beschikbaar gesteld.
# Voor volledige instructies en schema's, bezoek:
# https://newbiely.nl/tutorials/raspberry-pi/raspberry-pi-temperature-humidity-sensor-oled
import Adafruit_DHT
import Adafruit_SSD1306
from PIL import Image, ImageDraw, ImageFont
import time
# Set up the DHT22 sensor
DHT_SENSOR = Adafruit_DHT.DHT22
DHT_PIN = 20 # GPIO pin where the DHT22 sensor is connected
# Set up the SSD1306 OLED display
RST = None
OLED = Adafruit_SSD1306.SSD1306_128_64(rst=RST)
OLED.begin()
OLED.clear()
OLED.display()
# Set up fonts
font = ImageFont.load_default()
while True:
# Read temperature and humidity from DHT22 sensor
humidity, temperature = Adafruit_DHT.read_retry(DHT_SENSOR, DHT_PIN)
# Clear the OLED display
OLED.clear()
# Display temperature and humidity on OLED
OLED.draw.text((5, 5), f'Temp: {temperature:.1f} C', font=font, fill=255)
OLED.draw.text((5, 20), f'Humidity: {humidity:.1f}%', font=font, fill=255)
# Update the OLED display
OLED.display()
# Wait for a moment before reading again
time.sleep(2)
except KeyboardInterrupt:
# Clean up code before exiting the script
OLED.clear()
OLED.display()
print("\nExiting the script.")