Raspberry Pi - LM35 Temperatuursensor

Deze handleiding leert u hoe u met Raspberry Pi de temperatuur kunt aflezen van een LM35 sensor. We behandelen in detail:

Hardware Benodigdheden

1×Raspberry Pi 5
1×LM35 Temperatuursensor
1×ADS1115 ADC-Module
1×Breadboard (experimenteerprint)
1×Jumperkabels
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 de LM35 Temperatuursensor

Pinout van de LM35 Temperatuursensor

De LM35 temperatuursensor heeft drie pinnen:

  • GND pin: Deze moet worden verbonden met GND (0V)
  • VCC pin: Deze moet worden verbonden met VCC (5V)
  • OUT pin: Deze signaalpin geeft een uitgangsspanning die lineair evenredig is met de temperatuur en moet worden aangesloten op een analoge pin van de Raspberry Pi (via een ADC-module).
LM35 temperature sensor pinout

Hoe het Werkt

De LM35 produceert een uitgangsspanning die lineair evenredig is met de temperatuur in graden Celsius. De schaalfactor van de LM35 is 10 mV/°C, wat betekent dat de temperatuur kan worden bepaald door de spanning (in mV) op de outputpin te delen door 10.

Aangezien de Raspberry Pi geen analoge ingangspin heeft, moeten we een ADC-module gebruiken, zoals de ADS1115 ADC Module.

Bedradingsschema

Raspberry Pi LM35 temperature sensor wiring diagram

This image is created using Fritzing. Click to enlarge image

Om uw bekabelingsopstelling te vereenvoudigen en te organiseren, raden we het gebruik van een Schroevenklemaansluiting-shield voor Raspberry Pi aan. Deze shield zorgt voor veiligere en beter beheerbare verbindingen, zoals hieronder weergegeven:

Raspberry Pi Schroevenklemaansluiting-Shield

Raspberry Pi Code

# 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-lm35-temperature-sensor import Adafruit_ADS1x15 import time # Create an ADC instance (ADS1015 or ADS1115) adc = Adafruit_ADS1x15.ADS1115() # Analog input channel connected to the LM35 analog_channel = 0 def read_lm35_temperature(): # Read the raw ADC value raw_value = adc.read_adc(analog_channel, gain=1) # Convert the raw ADC value to millivolts millivolts = (raw_value * 4.096) / 32767.0 * 1000 # Convert millivolts to Celsius using the LM35 formula temperature_celsius = millivolts / 10.0 # Convert Celsius to Fahrenheit temperature_fahrenheit = (temperature_celsius * 9/5) + 32 return temperature_celsius, temperature_fahrenheit try: while True: celsius, fahrenheit = read_lm35_temperature() print(f'Temperature: {celsius:.2f}°C ~ {fahrenheit:.2f}°F') time.sleep(1) except KeyboardInterrupt: pass

Snelle Stappen

  • Zorg dat u Raspbian of een ander Raspberry Pi compatibel besturingssysteem op uw Pi hebt geïnstalleerd.
  • Zorg dat uw Raspberry Pi is verbonden met hetzelfde lokale netwerk als uw pc.
  • Zorg dat uw Raspberry Pi internettoegang heeft als u libraries moet installeren.
  • Als u voor het eerst met Raspberry Pi werkt, zie dan hoe u de Raspberry Pi installeert
  • 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 via SSH verbindt met Raspberry Pi.
  • Controleer of de RPi.GPIO library is geïnstalleerd. Zo niet, installeer deze dan met het volgende commando:
sudo apt-get update sudo apt-get install python3-rpi.gpio
  • Installeer de Adafruit_ADS1x15 library door het volgende commando in de terminal van uw Raspberry Pi uit te voeren:
sudo pip install Adafruit-ADS1x15
  • Maak een Python scriptbestand aan met de naam LM35.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-lm35-temperature-sensor import Adafruit_ADS1x15 import time # Create an ADC instance (ADS1015 or ADS1115) adc = Adafruit_ADS1x15.ADS1115() # Analog input channel connected to the LM35 analog_channel = 0 def read_lm35_temperature(): # Read the raw ADC value raw_value = adc.read_adc(analog_channel, gain=1) # Convert the raw ADC value to millivolts millivolts = (raw_value * 4.096) / 32767.0 * 1000 # Convert millivolts to Celsius using the LM35 formula temperature_celsius = millivolts / 10.0 # Convert Celsius to Fahrenheit temperature_fahrenheit = (temperature_celsius * 9/5) + 32 return temperature_celsius, temperature_fahrenheit try: while True: celsius, fahrenheit = read_lm35_temperature() print(f'Temperature: {celsius:.2f}°C ~ {fahrenheit:.2f}°F') time.sleep(1) except KeyboardInterrupt: pass
  • Sla het bestand op en voer het Python script uit door het volgende commando in de terminal te gebruiken:
python3 LM35.py
  • Houd de sensor in uw hand.
  • Bekijk de uitvoer in de Terminal.
PuTTY - Raspberry Pi
Temperature: 26.31°C ~ 79.36°F Temperature: 26.44°C ~ 79.59°F Temperature: 26.50°C ~ 79.70°F Temperature: 26.56°C ~ 79.81°F Temperature: 27.06°C ~ 80.71°F Temperature: 27.75°C ~ 81.95°F Temperature: 28.37°C ~ 83.07°F Temperature: 29.00°C ~ 84.20°F Temperature: 29.56°C ~ 85.21°F Temperature: 30.00°C ~ 86.00°F Temperature: 30.31°C ~ 86.56°F Temperature: 30.62°C ~ 87.12°F Temperature: 30.87°C ~ 87.57°F

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

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.

※ 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!