Raspberry Pi Ds18b20

Raspberry Pi DS18B20: Mät Temperaturen med Precision

Har du någonsin undrat hur du kan övervaka temperaturen i ditt hem, din trädgård eller kanske i ett akvarium? Med en Raspberry Pi och en DS18B20 temperatursensor kan du enkelt bygga ditt eget temperaturövervakningssystem. Denna guide kommer att visa dig hur du kopplar, programmerar och använder DS18B20 med din Raspberry Pi för att få exakta temperaturmätningar.

Vad är en DS18B20?

Raspberry Pi Ds18b20

DS18B20 är en digital temperatursensor som använder 1-Wire kommunikationsprotokollet. Den är känd för sin höga noggrannhet, enkla användning och förmåga att fungera över ett brett temperaturområde (-55°C till +125°C). Den är idealisk för projekt som kräver exakta temperaturmätningar, som till exempel:

  • Hemautomation
  • Väderstationer
  • Akvariumövervakning
  • Industriell automation
  • Raspberry Pi Ds18b20
  • Serverrumsövervakning

Vad du behöver

För att komma igång behöver du följande:

  • En Raspberry Pi (modell 3B+, 4 eller senare rekommenderas)
  • En DS18B20 temperatursensor
  • En 4.7kΩ resistor
  • Jumperkablar
  • En lödkolv (valfritt, för att göra permanenta anslutningar)
Raspberry Pi Ds18b20

Koppla DS18B20 till Raspberry Pi

Raspberry Pi Ds18b20

Anslut DS18B20 till din Raspberry Pi enligt följande:

    Raspberry Pi Ds18b20
  1. Anslut VDD-pinnen (röd kabel) på DS18B20 till 3.3V-pinnen på Raspberry Pi.
  2. Anslut GND-pinnen (svart kabel) på DS18B20 till GND-pinnen på Raspberry Pi.
  3. Anslut DATA-pinnen (gul eller vit kabel) på DS18B20 till GPIO4 (pin 7) på Raspberry Pi.
  4. Anslut 4.7kΩ resistorn mellan DATA-pinnen och 3.3V-pinnen.

Det är viktigt att ansluta resistorn korrekt, eftersom den fungerar som en pull-up resistor för att säkerställa stabil kommunikation mellan sensorn och Raspberry Pi.

Aktivera 1-Wire på Raspberry Pi

Innan du kan läsa data från DS18B20, måste du aktivera 1-Wire gränssnittet på din Raspberry Pi. Gör detta genom att öppna terminalen och redigera filen /boot/config.txt:

sudo nano /boot/config.txt

Lägg till följande rad i slutet av filen:

dtoverlay=w1-gpio,gpiopin=4

Spara filen och starta om din Raspberry Pi:

sudo reboot

Läsa Temperaturdata med Python

Nu kan du läsa temperaturdata från DS18B20 med Python. Här är ett enkelt Python-skript som visar hur man gör det:

import os import glob import time

os.system(’modprobe w1-gpio’) os.system(’modprobe w1-therm’)

base_dir = ’/sys/bus/w1/devices/’ device_folder = glob.glob(base_dir + ’28*’)[0] device_file = device_folder + ’/w1_slave’

def read_temp_raw(): f = open(device_file, ’r’) lines = f.readlines() f.close() return lines

def read_temp(): lines = read_temp_raw() while lines[0].strip()[-3:] != ’YES’: time.sleep(0.1) lines = read_temp_raw() equals_pos = lines[1].find(’t=’) if equals_pos != -1: temp_string = lines[1][equals_pos+2:] temp_c = float(temp_string) / 1000.0 return temp_c

while True: print(read_temp()) time.sleep(1)

Spara skriptet som temperatur.py och kör det med:

python3 temperatur.py

Skriptet kommer att visa temperaturen i grader Celsius varje sekund.

Avancerade Användningsområden

Med grundläggande kunskaper om DS18B20 och Raspberry Pi kan du bygga mer avancerade system. Här är några idéer:

  • Logga temperaturdata till en databas för att skapa grafer och analyser.
  • Raspberry Pi Ds18b20
  • Skicka temperaturdata till en molntjänst för fjärrövervakning.
  • Använd temperaturdata för att styra reläer och andra enheter för automatisk temperaturkontroll.
  • Bygg en webbapplikation för att visa realtids temperaturdata.

Slutsats

DS18B20 är en kraftfull och mångsidig temperatursensor som är perfekt för användning med Raspberry Pi. Med denna guide har du lärt dig hur du kopplar, programmerar och använder DS18B20 för att bygga ditt eget temperaturövervakningssystem. Utforska vidare och upptäck de många möjligheterna med denna kombination av hårdvara och mjukvara. Raspberry Pi och DS18B20 ger dig möjligheten att skapa innovativa lösningar för temperaturövervakning och automation.