Raspberry Pi - Temperatuursensor - LCD

Deze tutorial legt uit hoe u met een Raspberry Pi de temperatuur kunt uitlezen van een DS18B20 one-wire sensor en deze vervolgens kunt weergeven op een LCD met I2C-interface.

Hardware Benodigdheden

1×Raspberry Pi 5
1×LCD I2C
1×DS18B20 temperatuursensor (MET adapter)
1×DS18B20 temperatuursensor (ZONDER adapter)
1×4,7 kΩ weerstand
1×Breadboard (experimenteerprint)
1×Jumper wires (snoeren)
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.

Aankoopadvies: Veel DS18B20-sensoren op de markt zijn van lage kwaliteit. We raden u ten zeerste aan de sensor van het merk DIYables te kopen via de bovenstaande link. We hebben het getest en het werkte goed.

Over Temperatuursensor en LCD

Als u niet vertrouwd bent met temperatuursensoren en LCD’s (afhandeling van pinouts, werking, programmeren, enzovoort), kunnen de volgende tutorials u verder helpen:

Bedradingsschema

  • Bedradingsschema met gebruik van een adapter voor de sensor (aanbevolen).
Raspberry Pi DS18B20 Temperatuursensor LCD bedradingsschema

This image is created using Fritzing. Click to enlarge image

Wij raden aan om een DS18B20 sensor inclusief de bijbehorende bedradingadapter aan te schaffen. Deze adapter heeft al een geïntegreerde weerstand, waardoor het niet nodig is om apart een weerstand toe te voegen in de bedrading.

Raspberry Pi Code

※ Notiz:

Het adres van het LCD kan verschillen per fabrikant. In onze code hebben we 0x27 gebruikt, het adres dat gespecificeerd wordt door de fabrikant DIYables.

Snelle Stappen

  • Zorg dat u Raspbian of een ander compatibel besturingssysteem voor Raspberry Pi op uw Pi geïnstalleerd heeft.
  • Zorg dat uw Raspberry Pi verbonden is met hetzelfde lokale netwerk als uw PC.
  • Zorg dat uw Raspberry Pi verbonden is met internet als u nog libraries moet installeren.
  • Als dit de eerste keer is dat u met een Raspberry Pi werkt, bekijk dan eerst hoe u de Raspberry Pi installeert en instelt.
  • Verbind uw PC met de Raspberry Pi via SSH, met de ingebouwde SSH-client op Linux en macOS of met PuTTY op Windows. Zie hoe u uw PC verbindt met Raspberry Pi via SSH.
  • Zorg dat de RPi.GPIO library geïnstalleerd is. Als deze nog niet geïnstalleerd is, installeer deze dan met het volgende commando:
sudo apt-get update sudo apt-get install python3-rpi.gpio
pip install w1thermsensor
pip install lcddriver
  • Maak een Python scriptbestand met de naam temperature_lcd.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-sensor-lcd import lcddriver import time from w1thermsensor import W1ThermSensor # Initialize the LCD lcd = lcddriver.lcd() # Find the connected DS18B20 sensor def find_ds18b20_sensor(): for sensor in W1ThermSensor.get_available_sensors(): if sensor.type == W1ThermSensor.THERM_SENSOR_DS18B20: return sensor return None # Read temperature from the sensor def read_temperature(sensor): temperature_celsius = sensor.get_temperature() return temperature_celsius # Find DS18B20 sensor ds18b20_sensor = find_ds18b20_sensor() if ds18b20_sensor is not None: print(f"DS18B20 Sensor found: {ds18b20_sensor.id}") try: while True: # Read temperature temperature_c = read_temperature(ds18b20_sensor) # Display temperature on LCD lcd.lcd_display_string(f"Temp: {temperature_c:.2f} C", 1) # Wait for a moment before reading again time.sleep(2) lcd.lcd_clear() except KeyboardInterrupt: pass else: print("DS18B20 Sensor not found.")
  • Sla het bestand op en voer het Python script uit door in de terminal het volgende commando te geven:
python3 temperature_lcd.py

Het script draait in een oneindige lus totdat u Ctrl + C indrukt in de terminal.

  • Steek de sensor in zowel heet als koud water, of houd hem in uw hand.
  • Controleer het LCD-scherm voor het resultaat.

Indien het LCD niets toont, raadpleeg dan de Probleemoplossing voor LCD I2C voor hulp.

Code Uitleg

Bekijk de regel-voor-regel uitleg in de comments van de broncode!

Video Tutorial

We overwegen het maken van videotutorials. Als u videotutorials belangrijk vindt, abonneer u dan op ons YouTube-kanaal om ons te motiveren de video's te maken.

Bekijk onze video-tutorial voor een visuele begeleiding bij dit project! De video biedt extra inzichten en toont stapsgewijze instructies om het Raspberry Pi project met DS18B20 temperatuursensor en LCD tot een succes te maken.

※ ONZE BERICHTEN

  • U bent welkom om de link naar deze tutorial te delen. Gebruik onze inhoud echter niet op andere websites. We hebben veel moeite en tijd gestoken in het maken van de inhoud, respecteer alstublieft ons werk!