• Erste Schritte
  • Hardware & GPIO
  • Projekte
  • Software
    • Webserver
  • Arduino & ESP8266
  • Hausautomatisierung
  • Sonstiges
    • News
Facebook Twitter YouTube
Tutorials for Raspberry Pi Tutorials for Raspberry Pi
  • Einstieg
    • Erste Schritte
      • Raspberry Pi 3 Einstieg - Starter KitWas brauche und wie starte ich? – Raspberry Pi Einstieg
    • Einrichtung
      • microsd_karte_menuRaspbian Betriebssystem auf eine SD Karte flashen – Einfach & Schnell
      • wlanbluetooth_menuWLAN und Bluetooth einrichten – Raspberry Pi 4
      • wifi_menuWLAN Stick installieren und einrichten – Alternative
      • bash_menuSSH Zugriff einrichten via Putty – Kommandozeilen Zugriff
      • rdp_menuRemotedesktop Verbindung aufbauen – Fernsteuerung
    • Einsteiger Projekte
      • Sinnvolles Raspberry Pi Zubehör
      • 15 Raspberry Pi Projekte für Anfänger
      • Ampelschaltung mit GPIOs
      • GPIOs mit Port Expander erweitern
      • Elektronischer Würfel
      • 13 tolle Projekte für Kinder und Jugendliche
      • Roboter selber bauen
      • In Visual Studio Code mit C++ programmieren
      • Wünsch dir ein Tutorial
    • Programmieren lernen
      • Teil 1: Einführung
      • Teil 2: GPIOs steuern
      • Teil 3: GUI erstellen
      • Teil 4: PWM
      • C# GUI Apps entwickeln
  • Hardware & GPIO
    • 50 der wichtigsten Raspberry Pi Sensoren und Module – Aufgelistet mit Links zu den TutorialsRaspberry Pi Sensoren
    • Beliebte Tutorials
      • Raspberry Pi Luftfeuchtigkeit/Temperatur SensorLuftfeuchtigkeit und Temperatur messen
      • Raspberry Pi WS2801B RGB LED Streifen anschließen und steuernWS2801 RGB LED Streifen anschließen und steuern
      • Raspberry Pi Funksteckdosen (433Mhz)Raspberry Pi Funksteckdosen (433Mhz)Funksteckdosen (433MHz) steuern
      • Raspberry Pi Relais ModulRaspberry Pi: Relais-Schalter per GPIO steuern
      • Raspberry Pi Servo MotorRaspberry Pi Servo Motor Steuerung
      • Amazon-Alexa-deutsch-auf-dem-Raspberry-Pi-installierenAmazon Alexa (Deutsch) auf dem installieren
      • Entfernung messen mit Ultraschallsensor HC-SR04 – Raspberry PiEntfernung messen mit Ultraschallsensor HC-SR04
      • 71-M-PU7vML.-S3L1500-Raspberry Pi’s über 433 MHz Funk kommunizieren
      • Raspberry Pi PIR Motion SensorBewegungsmelder PIR anschließen und steuern
      • Raspberry Pi USB Boot per Stick oder SSD Festplatte einrichtenUSB Boot per Stick oder SSD Festplatte
      • Analog
        • Raspberry Pi MCP3008 ADCMCP3008: Am Raspberry Pi analoge Signale auslesen
        • Raspberry Pi Gas Sensor MQ-2Raspberry Pi Gas Sensor (MQ-X) konfigurieren und auslesen
        • Raspberry Pi PulsmesserRaspberry Pi Pulsmesser: Herzfrequenz messen
        • Joystick am Raspberry Pi benutzen (mit MCP3008)Joystick am Raspberry Pi benutzen (mit MCP3008)
        • infrarot sharp distance senserInfrarot Abstandsmessung mit dem Raspberry Pi
        • Raspberry Pi Drehregler - Rotary EncoderKY040 Drehregler als Lautstärkeregler für den Raspberry Pi
        • Easpberry Pi Soil SensorBodenfeuchtigkeit mit dem Raspberry Pi messen
        • Raspberry Pi KeypadRaspberry Pi Keypad anschließen – Codeschloss
        • Raspberry Pi door sensorÜberwachung von Fenstern und Türen mit dem Raspberry Pi und Reed-Relais
        • Raspberry Pi Fotowiderstand HelligkeitssensorFotowiderstand (Helligkeitssensor) am Raspberry Pi
        • Raspberry Pi Waage selber bauen (mit Gewichtssensor HX711)Raspberry Pi Waage selber bauen (mit Gewichtssensor HX711)
      • Funk
        • 71-M-PU7vML.-S3L1500-Raspberry Pi’s über 433 MHz Funk kommunizieren lassen
        • Remote Control Raspberry Pi 433Mhz Radio TransmitterRaspberry Pi mit 433Mhz Funksender fernsteuern
        • Raspberry Pi Funksteckdosen (433Mhz)Raspberry Pi Funksteckdosen (433Mhz)Raspberry Pi Funksteckdosen (433MHz) steuern
        • Raspberry Pi MiFlora - Xiaomi Pflanzensensor in OpenHAB einbindenMiFlora – Xiaomi Pflanzensensor ins Smart Home einbinden
        • Raspberry Pi RFID RC522 TüröffnerRaspberry Pi RFID RC522 Tags auslesen (NFC)
        • Funkkommunikation zwischen Raspberry Pi's und Arduinos (2.4 GHz)Funkkommunikation (2.4 GHz): Arduino & Raspberry Pi
        • Raspberry Pi Radio ReceiverRaspberry Pi als Radioempfänger benutzen
        • Raspberry Pi Xbox 360 Wireless ControllerRaspberry Pi mittels Xbox 360 Controller steuern
        • Raspberry Pi GSM Modul - Huawei Internet SticksRaspberry Pi GSM Modul – Mobiles Internet
        • Raspberry Pi Bluetooth DatentransferRaspberry Pi Bluetooth Datentransfer zum Smartphone
      • Infrarot & Laser
        • Raspberry Pi Infrarot FernbedienungRaspberry Pi: Per IR Remote Befehle ausführen
        • infrarot sharp distance senserInfrarot Abstandsmessung mit dem Raspberry Pi
        • Raspberry Pi Laser Lichtschranke für weite DistanzenRaspberry Pi Laser Lichtschranke für weite Distanzen
        • Infrarot Raspberry Pi FernbedienungInfrarot Steuerung einrichten
        • Raspberry Pi Infrarot Lichtschranke bauen und Geschwindigkeit messenRaspberry Pi Infrarot Lichtschranke bauen
        • Raspberry Pi Fotowiderstand HelligkeitssensorFotowiderstand (Helligkeitssensor) am Raspberry Pi
      • Temperatur & Navigation
        • Raspberry Pi Luftfeuchtigkeit/Temperatur SensorRaspberry Pi: Luftfeuchtigkeit und Temperatur messen
        • Measuring Temperature with a Raspberry Pi Temperature Sensor (1-Wire)Raspberry Pi Temperatursensor (1-Wire): Temperatur messen
        • Raspberry Pi BMP180 SensorRaspberry Pi und I2C Luftdrucksensor BMP180
        • Raspberry Pi RTC Real Time ClockReal Time Clock Modul steuern
        • Rotation und Beschleunigung mit dem Raspberry Pi messenRotation und Beschleunigung mit dem Raspberry Pi messen
        • Raspberry Pi GPS ModulRaspberry Pi GPS Ortungs- / Navigationsgerät bauen
        • Raspberry Pi Kompass selber bauenRaspberry Pi Kompass selber bauen (HMC5883L)
        • Kontaktlosen Infrarot-Temperatursensor MLX90614 am Raspberry Pi auslesenMLX90614 – Kontaktlos Temperaturen messen
      • Displays
        • Raspberrry Pi HD44780 I2CHD44780 LCD Display per I2C ansteuern
        • Raspbery Pi LCD DisplayRaspberry Pi LCD Display: 16×2 Zeichen anzeigen
        • DisplayTipps & Tricks zum offiziellen 7″ Raspberry Pi Touchscreen
        • Raspberry Pi TouchscreenTestbericht zum 7″ Raspberry Pi Touchscreen Display
        • LCD Touch Display (3.2″) am Raspberry PiLCD Touch Display (3.2″) am Raspberry Pi
        • tft lcd touch displayRaspberry Pi LCD Touch Display Teil 2 – Anpassungen
        • Raspberry Pi LED MAX7219 Dot Matrix – ProjektübersichtRaspberry Pi LED Matrix – Projektübersicht
        • Raspberry Pi 7 Segment Anzeige Kathode mit MAX7219Raspberry Pi: 7 Segment Anzeigen mit MAX7219 steuern (Kathode)
        • 7 Segment Anzeige (Anode) mit MAX7219 MAX7221 und Raspberry Pi7 Segment Anzeige mit MAX7219 am Raspberry Pi (Anode)
        • Raspberry Pi Tablet Raspad TestberichtRaspberry Pi Tablet „Sunfounder RasPad“ Testbericht
      • Motoren & Sonstige
        • Raspberry Pi Stepper Motor Control with L293D / ULN2003ARaspberry Pi Schrittmotor ansteuern
        • Raspberry Pi Servo MotorRaspberry Pi Servo Motor Steuerung
        • Raspberry Pi PCA9685 mehrere Servos gleichzeitig steuernMehrere Servo Motoren per Raspberry Pi steuern
        • Raspberry Pi PIR Motion SensorBewegungsmelder PIR anschließen und steuern
        • How to use a Raspberry Pi Fingerprint Sensor for AuthenticationRaspberry Pi Fingerprint Sensor zur Authentifizierung nutzen
        • Raspberry Pi Akku AdapterRaspberry Pi mit Akkus/Batterien betreiben
        • Entfernung messen mit Ultraschallsensor HC-SR04 – Raspberry PiEntfernung messen mit Ultraschallsensor HC-SR04
        • Raspberry Pi WS2801B RGB LED Streifen anschließen und steuernWS2801 RGB LED Streifen anschließen und steuern
        • Raspberry Pi WS2812 RGB LED StripWS2812 RGB LED Streifen per Raspberry Pi steuern
        • Raspberry Pi Überwachungskamera LivestreamÜberwachungskamera Livestream einrichten
        • NoIRAufnahmen mit dem offiziellen Kamera Modul
        • Raspberry Pi Zero - establishing an Ethernet connection (ENC28J60)Raspberry Pi Zero – Ethernet Verbindung
  • Software
    • Webserver Installation
      • apache2_menu25Teil 1 – Apache2
      • php_menu25Teil 2 – PHP 5
      • mysql_menu25Teil 3 – MySQL
      • phpmyadmin_menu25Teil 4 – phpMyAdmin
      • ftp_menu25Teil 5 – FTP Server
      • dns_menu25Teil 6 – DNS Server via No-IP
      • home_menu25Homeverzeichnis ändern
      • share_25Samba Server: Dateien im Netzwerk teilen
      • nodejs_menu25Node.js Webserver installieren und GPIOs schalten
      • ssl_menu25SSL Zertifikat kostenlos mit Let’s Encrypt
      • wordpress_25Eigenen WordPress-Server einrichten
      • cloud-25Nextcloud auf dem Raspberry Pi installieren
    • Entertainment
      • led_menu25Raspberry Pi Ambilight für alle Geräte mit OSMC selber bauen
      • amazon_menu25Amazon Alexa (Deutsch) auf dem Raspberry Pi installieren
      • controller_25Raspberry Pi RetroPie – Spielekonsole selber bauen
      • kodi_menu25Mediencenter Raspbmc als SmartTV mit dem Raspberry Pi
      • android_25Android TV Box zum selber bauen
      • apple-2316234_640Raspberry Pi als AirPlay-Empfänger
      • jukebox_menu25Raspberry Pi als Jukebox (Spotify, Soundcloud, TuneIn, uvm.)
      • steam_25Steam Spiele streamen
      • minecraft_menu25Raspberry Pi Minecraft Server
      • youtube_25YouTube Live Streaming einrichten
      • qr-code-tutorials-raspberrypi.de_25Raspberry Pi QR / Barcode Scanner
    • Fernsteuerung
      • rdp_menuRaspberry Pi Remotedesktop Verbindung
      • ssh_menu25SSH Zugriff einrichten via Putty (Windows)
      • vnc_menu25Raspberry Pi mittels VNC fernsteuern
      • welcome_menu25SSH Terminal Begrüßung ändern
      • telegram1_menu25Telegram Messenger auf dem RaspberryPi
      • telegram2_menu25Mit Telegram Messenger Raspberry Pi steuern
      • bluet_menu25Raspberry Pi Bluetooth Datentransfer zum Smartphone
      • alexa_voice_25Eigenen Raspberry Pi Alexa Skill bauen
      • microphone_25Sprachsteuerung selber bauen
      • mqtt_25MQTT Broker/Client Funkkommunikation
      • mail_25Vom Raspberry Pi Emails senden
      • twitter_25Per Twitter Bot Nachrichten posten
    • Weitere
      • loggen_menu25Sensordaten mit ThingSpeak loggen und auswerten
      • mysql_datalogger25Per lokaler MySQL Datenbank zum Raspberry Pi Datenlogger
      • opencv_menu25OpenCV auf dem Raspberry Pi installieren
      • arduino_menu30tWiringPi installieren & Pinbelegung (Raspberry Pi)
      • radio_menu25Raspberry Pi als Radio Sendestation
      • win10_menu25Windows 10 IoT auf dem Raspberry Pi installieren
      • printer_25Drucker einrichten und per Knopfdruck Bilder drucken
      • gsm_menu25Raspberry Pi GSM Modul – Mobiles Internet (LTE, 3G, UMTS)
      • autostart_menu25Autostart: Programm automatisch starten lassen
      • machine-learning-25Raspberry Pi Machine Learning erlernen
  • Projekte
      • roboter_menu30tRoboter
        • Raspberry Pi Roboter ProjektRaspberry Pi Roboter Projektübersicht
        • Raspberry Pi Roboter Bausatz fertigTeil 1: Zusammenbau
        • Raspberry Pi Roboter - Linien folgenTeil 2: Linien folgen lassen
        • Raspberry Pi Roboter per Infrarot Fernbedienung steuernTeil 3: Per Infrarot Fernbedienung steuern
        • Raspberry Pi Roboter: Ultraschall AutopilotTeil 4: Automatisch Hindernissen ausweichen
        • Raspberry Pi Roboter der eigenen Stimme folgen lassenTeil 5: Der eigenen Stimme folgen lassen
        • Raspberry Pi Roboter mit Xbox 360 Controller fernsteuernTeil 6: Mit Xbox 360 Controller Roboter fernsteuern
        • Raspberry Pi Robot Arm 6DOF6-Gelenkigen Roboter Arm am Raspberry Pi betreiben (6 DOF)
      • led_menu30LED Matrix
        • Raspberry Pi LED MAX7219 Dot Matrix – ProjektübersichtMAX7219 LED Matrix – Projektübersicht
        • 8×8 LED Dot Matrix Parts8×8 LED Matrix – Zusammenbau und Installation
        • Raspberry Pi Bibliothek für mehrzeilige m x n MAX7219 LED MatrizenBibliothek für mehrzeilige m x n MAX7219 LED Matrizen
        • Graphiken auf mehrzeiligen Raspberry Pi LED Matrizen zeichnenGraphiken auf mehrzeiligen Raspberry Pi LED Matrizen zeichnen
        • Pong auf MAX7219 Matrizen spielen (mit Joystick) – Raspberry PiPong auf MAX7219 Matrizen spielen (mit Joystick)
        • Snake auf Raspberry Pi MAX7219 Matrizen spielenSnake auf Raspberry Pi MAX7219 Matrizen spielen
        • 7 Segment Anzeige (Anode) mit MAX7219 MAX7221 und Raspberry Pi7 Segment Anzeige (Anode) mit MAX7219/MAX7221
        • Raspberry Pi 7 Segment Anzeige Kathode mit MAX7219Raspberry Pi: 7 Segment Anzeigen mit MAX7219 steuern (Kathode)
      • wetterstation_menu30Wetterstation
        • Raspberry Pi Wetterstation mit OpenHAB 2 bauenEigene Raspberry Pi Wetterstation mit OpenHAB 2 bauen
        • Raspberry Pi Luftfeuchtigkeit/Temperatur SensorLuftfeuchtigkeit und Temperatur messen
        • raspberry_pi_thingspeak_daten_loggenSensordaten mit ThingSpeak loggen und auswerten
        • Raspberry Pi BMP180 SensorRaspberry Pi und I2C Luftdrucksensor BMP180
        • Measuring Temperature with a Raspberry Pi Temperature Sensor (1-Wire)Raspberry Pi Temperatursensor (1-Wire): Temperatur messen
        • ESP8266 NodeMCU Außenposten-Wetterstation für den Raspberry PiESP8266 Wetterstation Außenposten für den Raspberry Pi
        • Raspberry Pi Gas Sensor MQ-2Raspberry Pi Gas Sensor (MQ-X) konfigurieren und auslesen
      • arduino_menu30tArduino & ESP8266
        • ESP8266 Microcontroller BoardEinführung & Programmierung des ESP8266 NodeMCU Boards
        • Raspberry Pi + ESP8266 NodeMCU: Per WLAN Daten sendenRaspberry Pi + ESP8266 NodeMCU: Per WLAN Daten senden
        • ESP8266 NodeMCU Außenposten-Wetterstation für den Raspberry PiESP8266 Wetterstation Außenposten für den Raspberry Pi
        • Mit dem NodeMCU ESP8266 433MHz Funksteckdosen steuernMit dem NodeMCU ESP8266 433MHz Funksteckdosen steuern
        • ESP8266 NodeMCU HD44780 LCD Display per I2C steuernNodeMCU ESP8266: HD44780 LCD Display per I2C steuern
        • ESP8266 Grafikdisplay: Am SSD1306 OLED per I2C Bilder & Text anzeigen
        • ESP8266 Google Maps API RoutenplanerESP8266 Google Maps API Routenplaner auf LCD anzeigen
        • 2000px-Arduino_Logo.svgRaspberry Pi und Arduino – Einführung
        • arduino unoArduino und Raspberry Pi miteinander kommunizieren lassen
        • Funkkommunikation zwischen Raspberry Pi's und Arduinos (2.4 GHz)Funkkommunikation zwischen Raspberry Pi’s und Arduinos (2.4 GHz)
        • NodeMCU: ESP8266 mit Solarpanel und Akku mit Strom versorgenNodeMCU: ESP8266 mit Solarzelle und Akku mit Strom versorgen
        • ESP8266 Access Point: Günstigen Wlan Repeater selber bauenESP8266 Access Point: Günstigen Wlan Repeater selber bauen
      • Mini Projekte
        • Raspberry Pi Gewächshaus automatisch selber bauenAutomatisches Raspberry Pi Gewächshaus selber bauen
        • Eigene Raspberry Pi Gartenbewässerung mit Webseite bauenEigene Gartenbewässerung mit Webseite bauen
        • Raspberry Pi Radio StationRaspberry Pi als Radio Sendestation verwenden
        • Raspberry Pi Radio ReceiverRaspberry Pi als Radioempfänger benutzen (Autoradio, Car PC)
        • spotify-logo-primary-horizontal-dark-background-rgbRaspberry Pi als Jukebox (Spotify, Soundcloud, TuneIn, uvm.) – Online Radio
        • Raspberry Pi RetroPie Guide - SNES Classic Spielekonsole selber bauenRaspberry Pi RetroPie Guide – SNES Spielekonsole bauen
        • Android + Raspberry Pi: Funksteckdosen App BedienungRaspberry Pi + Android/iOS: Funksteckdosen per App schalten
        • Indirekte Deckenbeleuchtung selber bauen mit farbigem LED LichtIndirekte Deckenbeleuchtung selber bauen mit farbigem LED Licht
  • Sonstiges
    • Wünsch dir ein Tutorial
    • News
    • Reviews
      • Pi Cap – Kapazitives Raspberry Pi Erweiterungsboard
      • Raspberry Pi Tablet „Sunfounder RasPad“ – Testbericht & Einrichtung
      • Testbericht zum 7″ Raspberry Pi Touchscreen Display
      • CrowPi 2 Testbericht: Laptop & Lern-Kit für Kinder
      • Daten auf dem Wio Terminal LCD Screen anzeigen
    • Raspberry Pi Zero
      • Offizielles 5$ Raspberry Pi Zero Modul vorgestellt
      • Raspberry Pi Zero – Ethernet Verbindung herstellen (ENC28J60)
      • Raspberry Pi: WS2801 RGB LED Streifen anschließen und steuern
  • Hausautomation
    • OpenHAB
      • steckdose_25Sonoff S20 Wifi Steckdose steuern
      • wireless_25Funksteckdosen (433 MHz) schalten
      • schalter_25Relais steuern (Rollladen, Lichter, etc.)
      • wetterstation_menu30Wetterstation mit OpenHAB 2 bauen
      • ws28_25WS28xx RGB LED Streifen steuern
      • touchscreen_25Touchscreen Panel bei Näherung aktivieren
      • mqtt_25MQTT Datenabfrage: Raspberry Pi an ESP8266
      • spotify_25Remote Spotify Player im Smart Home
      • heizung_25eQ-3 Thermostat im Smart Home
    • Einführung
      • Raspberry Pi Smart Home OpenHAB installierenOpenHAB installieren & konfigurieren
      • Home Assistant auf dem Raspberry Pi – Erste Schritte
    • ESP8266 NodeMCU
      • esp8266_25Einführung & Programmierung
      • arduino_25ESP8266: Arduino IDE installieren
      • lcd_25NodeMCU HD44780 LCD
      • battery_25Batteriebetrieb via Deep-Sleep
      • wifi_menuPer WLAN Daten senden
      • wetterstation_menu30Wetterstation Außenposten
      • maps_25Google Maps Routenplaner
      • wireless_25NodeMCU Funksteckdosen steuern
      • mail_25Vom NodeMCU Emails versenden
      • rgb_25WS2812B LEDs am Smartphone steuern
      • solar_25ESP8266 Stromversorgung mit Solarzelle
    • Überwachung
      • Aufnahmen mit dem offiziellen Kamera Modul des Raspberry Pi
      • Raspberry Pi: Überwachungskamera Livestream einrichten
      • mailbox_25Briefkasten Sensor – Email Benachrichtigung bei neuer Post
      • Raspberry Pi Überwachungskamera mit Webcam betreiben
      • Überwachung von Fenstern und Türen mit dem Raspberry Pi und Reed-Relais
      • ESP32 Cam Livestream Tutorial für Kamera Modul
    • Raspberry Pi + Android: Benachrichtigungen von Bewegungsmelder
    • Raspberry Pi + Android/iOS: Funksteckdosen per App schalten
    • Raspberry Pi + Android: Schwenkbarer Kamera-Livestream
      • Smart Home
        • Amazon Alexa (Deutsch) auf dem Raspberry Pi installieren
        • Raspberry Pi Funksteckdosen (433MHz) steuern – Tutorial
        • Raspberry Pi Sprachsteuerung selber bauen (Hausautomatisierung)
  • Englisch
  • Französisch
Tutorials for Raspberry Pi Tutorials for Raspberry Pi
Home»Hardware & GPIO»Raspberry Pi Temperatursensor (1-Wire): Temperatur messen

Raspberry Pi Temperatursensor (1-Wire): Temperatur messen

Facebook Twitter LinkedIn Tumblr Email Reddit
Measuring Temperature with a Raspberry Pi Temperature Sensor (1-Wire)
Teilen
Facebook Twitter LinkedIn Email Tumblr Reddit Telegram WhatsApp

In diesem Tutorial soll gezeigt werden, wie man mit einem Raspberry Pi Temperatursensor die Temperatur der Umgebung auslesen kann. In einem weiteren Tutorial werden wir mittels Sensor und Lüfter für das RaspberryPi Gehäuse eine Kühlung bauen.

Vorweg sei gesagt, dass der in diesem Tutorial verwendete Raspberry Pi Temperatursensor keine Luftfeuchtigkeit oder Luftdruck messen kann. Dies ist jedoch auch ohne weiteres am Pi möglich. Wie das funktioniert, habe ich in einem anderem Tutorial erklärt.

 

Zubehör

  • Breadboard
  • Temperatursensor
  • Jumper Kabel
  • Widerstand (4.7k Ω)

Den Temperatursensor DS18B20 gibt es auch als wasserfeste Variante.

Beschreibung des 1-Wire Raspberry Pi Temperatursensor

Der Temperatursensor gibt einen 9 bis 12bit langen Wert zurück, welcher ausgelesen und umgewandelt werden kann. Das ist allerdings (bisher) nur an GPIO Pin 4 (Pin 7) möglich. Dafür kann man allerdings auch mehrere Sensoren in Reihe schalten (da es auf dem 1-Wire Protokoll basiert).

Aufbau

Dargestellt ist ein Aufbau mit einem Temperatursensor, als Widerstand habe ich einen 4,7k Ω genommen.

Raspberry Pi Temperatursensor 1-wire Aufbau
Raspberry Pi Temperatursensor Aufbau

Wenn alles entsprechend verkabelt ist, können wir das 1-Wire Protokoll damit aktivieren:

sudo modprobe w1-gpio
sudo modprobe w1-therm

Und wir fügen noch eine Zeile hinzu:

sudo nano /boot/config.txt

Dies wird ans Ende gepackt:

dtoverlay=w1-gpio,gpiopin=4,pullup=on

Speichere mit STRG+O und schließe mit STRG+X.

Ob es geklappt hat, können wir herausfinden, indem wir folgendes eingeben:

lsmod

Die Module und müssten nun aufgelistet sein, falls nicht wird ein anderer GPIO Pin als 4 benutzt oder es trat ein Fehler beim aktivieren auf.

Damit nicht bei jedem Start die Module geladen werden, tragen wir sie in die Datei /etc/modules ein:

sudo nano /etc/modules

und fügen als letztes die folgenden zwei Zeilen ein:

w1_gpio
w1_therm

Für den nächsten Schritt benötigen wir als erstes die ID des Sensors. Falls du vorhast mehrere in Reihe anzuschließen, teste am besten jeden einzeln und notiere dir die ID, damit du sie später nicht verwechselst.

Wir wechseln das Verzeichnis und geben uns die Dateien aus

cd /sys/bus/w1/devices/
ls

Eine der Dateien heißt 10-000802b4ba0e (bei dir anders) und ist die ID, mit der wir den Sensor abfragen (bitte ID anpassen):

cat /sys/bus/w1/devices/10-000802b4ba0e/w1_slave

In der Ausgabe sehen wir als letzte Angabe die Temperatur (in „Milligrad“)

31 00 4b 46 ff ff 05 10 1c : crc=1c YES
31 00 4b 46 ff ff 05 10 1c t=24437

Durch 1000 geteilt macht das 24.437°C.

Um die Temperatur einfacher auszulesen, habe ich ein kleines Skript geschrieben. Wer später durch einfache eingabe von temperature die Ausgabe erhalten will, sollte es in /usr/bin/ anlegen:

sudo nano /usr/bin/temperature

Der Inhalt:

Shell
1
2
3
4
5
6
7
8
9
#! /bin/bash
 
# Temperatur auslesen
tempread=`cat /sys/bus/w1/devices/10-000802b4ba0e/w1_slave`
#Formatieren
temp=`echo "scale=2; "\`echo ${tempread##*=}\`" / 1000" | bc`
 
#Ausgabe
echo "Die gemessene Temperatur beträgt" $temp "°C"

Nun noch entsprechende Rechte geben

sudo chmod +x /usr/bin/temperature

und wenn man nun in die Konsole

temperature

eingibt, so erscheint die aktuell gemessene Temperatur. Falls eine Fehlermeldung kommt, so musst du wohl bc nachinstallieren.

sudo apt-get install bc

Abschließend noch ein kleinner Tipp: Wer mit den Sensor außerhalb (z.B. aus dem Fenster hängend) messen will und durch die Fensterdichtung keine großen Kabel bekommt, dafür eignet sich ein Flachbandkabel (altes IDE oder Diskettenlaufwerkkabel). Gut eingepackt in einen Frischhaltebeutel ist das ganze dann auch wetterfest (Luft rauslassen und gut zukleben, dann beeinflusst es die Messung auch nur minimal).

ds18b20 ds18s20 temperatur temperatur messen temperatursensor
Teilen Facebook Twitter Pinterest LinkedIn Tumblr Email
Vorheriger BeitragRaspberry Pi Ampelschaltung mit GPIO Teil 2
Nächster Beitrag Raspberry Pi GPIOs mittels I2C Port Expander erweitern – Teil 1

Ähnliche Beiträge

ESP32 TDS Sensor: Wasserqualität im Smart Home messen

ESP32 pH-Sensor – Automatische pH-Messung für Pool und Hydroponik

Home Assistant auf dem Raspberry Pi – Erste Schritte

How-To: Bluetooth Verbindung Zwischen ESP32 und Raspberry Pi’s

83 Kommentare

  1. Martin am 13. Februar 2015 0:24

    Danke für diesen Informativen Beitrag,
    die Formatierung temp=`echo "scale=2; "`echo ${tempread: -5 }`" / 1000" | bc` hatt aber einen Fehler:
    Ist die Temperatur kleiner 10 °C gibt es keine ausgabe mehr!
    Lg

    Antworten
    • Felix am 13. Februar 2015 1:34

      Vielen Dank für den Hinweis, du hast natürlich recht. Das lag daran, dass ich immer die letzten 5 Zahlen genommen haben.
      Ich habe es nun mal geändert, indem nur noch die Zahlen nach dem letzten Gleichheitszeichen genommen werden. Damit sind auch kleinere Werte möglich.
      temp=`echo "scale=2; "`echo ${tempread:##*=}`" / 1000" | bc`

      LG Felix

      Antworten
  2. Roland am 26. November 2015 18:22

    Hallo,
    ich komme schon bei „cd /sys/bus/w1/devices/ und ls“ nicht weiter. Der Pfad ist leer, also keine ID vorhanden.
    Ich hoffe du kannst mir helfen.

    Mfg
    Roland

    Antworten
    • Felix am 26. November 2015 18:27

      Hallo Roland,
      werden dir die Module und w1_gpio aufgelistet (lsmod)?

      Antworten
    • jan am 10. Januar 2016 11:31

      habe das gleiche Problem, dass der pfad leer ist. mit lsmod werden die module aufgelistet

      Antworten
    • Max am 21. März 2018 17:17

      Hallo,
      habe auch das Problem dass das Verzeichnis /sys/bus/w1/devices/ leer ist. lsmod listet die Module korrekt auf. Gibt es hierfür schon eine Lösung?

      Antworten
      • Marco am 5. April 2018 16:49

        Onewire aktivieren.
        https://florianmai.de/2016/02/05/raspberry-pi-1-wire-temperatursensor-18b20-auslesen-unter-linux-und-codesys/

  3. Sven am 19. Dezember 2015 0:15

    Hallo,

    erstmal vielen Dank für das tolle Tutorial.
    Bei mir klappt es jetzt.
    Allerdings musste ich die eine Zeile so schreiben:
    temp=`echo "scale=2; "`echo ${tempread##*=}`" / 1000" | bc`
    Also ohne den Doppelpunkt in den geschweiften Klammern.

    Viele Grüße
    Sven

    Antworten
  4. Tim am 21. Dezember 2015 12:24

    Hallo,

    wieso muss eigentlich die Stromversorgung (5.0V) mittels eines 4.7k Widerstand an den Data-Wire des DS18B20 angeschlossen sein. Also erstens wieso die Spannung dahin und wieso die 4.7k Ohm. Ich verstehe, dass der Raspberry am GPIO keine 5V verträgt aber wie lautet die Formel, mit der man errechnet, dass mittels eines 4.7k Widerstand die Spannung von 5.0V auf die des GPIO (3.3V) angepasst wird.

    – Bin ein Laie ^^

    Antworten
    • Felix am 21. Dezember 2015 12:44

      Der GPIO darf maximal 3.3V bekommen, aber das Problem ist, wenn gar keine Spannung anliegt wird ein zufälliger Wert (High oder Low) ausgegeben. Um das zu verhindern schalten wir über einen sehr großen Widerstand eine Spannung (an VCC oder GND, je nachdem ob Pull-Up/Down), um diesen Effekt zu verhindern.

      Antworten
  5. Peter am 8. Januar 2016 16:43

    Hallo zusammen,

    ist bei diesem Setup eine Leitungslänge zwischen dem PI und dem Temperatur Sensor von circa 15-20 Meter möglich?

    Danke vorab!
    Peter

    Antworten
    • Felix am 8. Januar 2016 17:07

      Du müsstest mal schauen wie hoch der Spannungsabfall bei 15-20m ist. Kommt aber auch auf das Trägermaterial (Kupfergehalt etc.) an.
      Falls du es testest, würde mich das Ergebnis auch interessieren.
      LG Felix

      Antworten
  6. Björn am 21. März 2016 10:03

    Hallo,
    bei mir wird keine Datei angezeigt, wenn ih im Verzeichnis w1/devices bin. Also ich gebe ls ein und nichts passiert.
    Bin totaler Anfänger.

    LG Björn

    Antworten
  7. Ben am 6. Mai 2016 16:51

    Hallo,
    habe das gleich Problem wie Felix, Jan und Björn. Die Module sind geladen, auch nach einem Neustart, aber der devices Ordner ist leer.
    Jemand eine Idee

    Antworten
    • Felix am 6. Mai 2016 16:53

      Welche Raspbian Version benutzt ihr denn? Die normale oder Lite Version?
      Alternativ kann ich den DHT22 empfehlen, der kann auch Luftfeuchtigkeit messen: Raspberry Pi: Luftfeuchtigkeit und Temperatur messen

      Antworten
  8. Ben am 6. Mai 2016 17:00

    So geht’s erst mal weiter:
    Die /boot/config.txt wie hier im Link beschrieben editieren:
    http://www.golem.de/news/mitmachprojekt-temperatur-messen-und-senden-mit-dem-raspberry-pi-1604-120188-3.html

    Antworten
    • Stefan am 3. November 2016 17:18

      Danke, das war der Hinweis, den auch ich benötigt habe. Bei mir war das Verzeichnis ebenso leer, aber nach dem Anpassen der boot/config.txt und Neustart funktioniert nun alles wunderbar!

      Antworten
  9. Ben am 6. Mai 2016 17:01

    Die Lite auf der ersten Revision des B Modells

    Antworten
  10. Ben am 6. Mai 2016 19:12

    P.S: Schöne Seite übrigens!

    Antworten
  11. Mr. Proxy am 17. Januar 2017 19:40

    Prima Tutorial, hat auf Anhieb funktioniert, vielen Dank!
    Aber Du meinst bestimmt : mehrere Sensoren werden parallel geschaltet, oder?
    Wie soll man denn sonst ein 1-Wire-System anschließen?

    Antworten
  12. David Märtin am 7. Februar 2017 15:58

    gibt es eine Möglichkeit die Temperatur irgendwie grafisch darzustellen? Wenn Ja wie? ählich dem RPI-Monitor.

    Antworten
    • Felix am 7. Februar 2017 16:00

      Schau mal hier: Raspberry Pi Sensordaten mit ThingSpeak loggen und auswerten

      Antworten
    • David am 8. Februar 2017 13:25

      wie ist das auf den Temperatursensor DS18S20 anzuwenden?

      Antworten
      • Felix am 8. Februar 2017 20:38

        Einfach den Code, der für den DHT11 ist, mit diesem hier ersetzen (ggf etwas anpassen).
        Shell Code kann man in Python mit os.system ausführen.

    • David am 22. Februar 2017 11:06

      Kannst du mir vielleicht noch ein klein wenig helfen. Ich möchte das so realisieren, das ich eine e mial bekomme wenn ich gewisser wert überschritten wird.

      Antworten
  13. Torsten am 26. Februar 2017 12:29

    Vielen Dank für diese hilfreiche Seite. Die Sensoren lassen sich problemlos auslesen.
    Ich habe folgene Fragen zur Funktion:
    1.) Wie häufig aktuallisiert des System die Temperaturwerte?
    2.) Es finden ja ständig Schreibzyklen auf dem Flashspeicher statt. Flashspeicher erlauben im allgemeinen nur eine begrenzte Anzahl von Schreibzyklen (zwischen 10.000 und 1.000.000)
    Bei angenommen einer Aktuallisierung pro Sekunde sind das 3600 Schreibzyklen pro Stunde. Ist meine Annahme korrekt? Wie sieht das mit der Langzeitstabilität aus?
    Vielen Dank für die Bemühungen im Voraus.

    Antworten
    • Felix am 26. Februar 2017 12:40

      Hi Torsten,
      das ist eine gute Frage. Ich habe eben mal einen Blick ins Datenblatt geworfen, aber konnte dazu nichts genaueres finden, außer dass beim Initialisieren der Speicher einmal ausgelesen wird. Ich nehme an, dass erst beim Aufruf doe Aktion zum auslesen getriggert wird und somit nicht zwischengespeichert wird.
      LG, Felix

      Antworten
  14. Hartmut am 5. März 2017 13:06

    Danke erstmal für das Tutorial.

    Ich möchte mehrere Temperatur Sensoren an den anschliessen (8 Stück) das geht in 1-Wire kann ich dann jeden einzelnen auslesen es sollen mehrere Temperaturen erfasst werden um dieverse Pumpen und Elektro Ventile zu steuern.

    Antworten
  15. Sven Wichmann am 25. März 2017 18:10

    ist die zeichnung korrekt mit der wölbung nach hinten und rechts vcc?
    Denn im datenblatt steht es anders herum

    Antworten
    • Felix am 25. März 2017 19:12

      Im Datenblatt ist die Sicht von unten gezeigt, hier von oben.

      Antworten
      • Jimme am 23. Oktober 2017 0:33

        Hallo Felix
        ich habe auch das Gefühl, dass in der Grafik was nicht stimmt.
        Bisher dachte ich der LM34 ist ein reiner Analog-Temperatur-Fühler der nicht für 1-wire genutzt werden kann oder liege ich hier falsch?
        Die Wölbung des LM34 in der Grafik scheint mit zudem verkehrt herum zu sein. Lt. Datenblatt ist beim LM34 wenn man von unten auf Pin schaut (flache Seite nach oben ) folgende Pinfolge: +Vs/Vout/GND.
        Stammt die Grafik vielleicht von einem DS18B20? Da würde die Wölbung zu den Anschlüssen passen – beim DS18B20 ist die Pinbelegung (bei gleicher Betrachtungsweise) genau umgekehrt zum LM34: GND/Vout/+Vs.
        Kannst du das vielleicht nochmal prüfen? Danke

      • Felix am 23. Oktober 2017 0:51

        Ja, das ganze Tutorial ist nur für den DS18B20 bzw. DS18S20, nicht für den LM34.

  16. Skipper am 4. Mai 2017 9:50

    Hallo Felix..
    Super tut – vielleicht solltest Du aber die notwendige Änderung der /boot/config.txt in Dein tut aufnehmen…
    Eine Frage hab ich dennoch: wie kann ich es anstellen mehrere Temperatursensoren zyklisch auszulesen und für eine GUI (in python) zur Verfügung zu stellen?

    LG Skipper

    Antworten
    • Jay am 21. Mai 2017 18:18

      Hi Skipper,
      Ich stehe vor der gleichen Aufgabe und würde mich interessieren ob du mittlerweile eine Lösung gefunden hast, um mehrere Sensoren auszulesen und per GUI anzeigen zu lassen.
      Ich möchte mehrere Temperatur- und Luftfeuchtigkeitswerte per Raspy loggen und suche dafür eine passende Lösung / Programm.
      Schön wäre eine Anzeige in Tabellenform aber auch in einer GUI Maske und idealerweise mit Kurvendiagramm (mit einstellbarem Zeitfenster per GUI)….
      Gruss
      Jay

      Antworten
      • Richard am 27. Dezember 2017 9:46

        Alsoo…
        Das mit den mehreren auslesen ist eigentlich ganz einfach…
        Man kann das script ganz einfach mit strg+c ; strg+v (kopieren/einfügen) so umschreiben, dass es mehrere Sensoren nacheinander abfragt…
        Man brauch nur immer die richtige ID der Sensoren…
        Für eine GUI Programmierung empfehle ich TKinter…
        Sehr einfach und es gibt viele Tutorials auf YouTube

  17. Ralle am 2. Juni 2017 16:00

    Hallo, ich muss gestehen, ich scheitere schon am Schaltbild. Wieso geht der rote Draht rechts zum Pluspol (über die untere Verbindung) und verbindet sich über die selbige mit dem Widerstand zum grünen Draht in der Mitte? Ist das wirklich so? Dacht der mittlere Wäre die Datenverbindung, die zum GPIO geht und nicht an irgendwelchem Pol anliegt.

    Antworten
    • Felix am 2. Juni 2017 18:36

      Das rote Kabel signalisiert den positiven Spannungspol

      Antworten
  18. Udo Kralitschek am 13. Juli 2017 11:14

    Hallo Felix
    Ich habe alles soweit angeschlossen
    Und auch die ID abgeändert die bei mir
    Angezeigt wird .Dennoch wenn ich Temperatur eingebe kommt zwar “ Die Temperatur ist“ aber kein Wert. Hast Du eine Idee .

    Udo

    Antworten
    • Felix am 13. Juli 2017 11:18

      Der Sensor und die Verkabelung sind in Ordnung? Was kommt denn stattdessen?

      Antworten
      • Udo Kralitschek am 13. Juli 2017 14:47

        hat sich erledigt ,ich habe vergessen die ID in den Editor zu ändern.
        Dankeschön für die Promte Antwort .

        Und auch von mir noch einmal ,eine sehr schöne HP und Super Tutorials und sehr gut erklärt

        Udo

  19. Daniel am 18. August 2017 7:27

    Hallo Felix,

    Wie kann man den die Temperatur in ein anderes Programm mit einbinden möchte den Schrittmotor 28BYJ-48 mit ULN2003 Driver Board bei z.b 90° eine volle Umdrehung nach Links machen lassen und bei z.b. 100° eine volle Umdrehung nach Rechts.

    MFG Daniel

    Antworten
    • Felix am 13. September 2017 19:20

      Wenn du Python nutzt, kannst du die Werte bspw. mit os.system auslesen.

      Antworten
  20. Udo Kralitschek am 24. Oktober 2017 20:14

    Hallo Felix ,ich möchte den temperatur wert im programm mit verarbeiten,
    Wie muss ich das machen ,hast du eine Idee .

    Udo

    Antworten
    • Felix am 25. Oktober 2017 0:24

      Wie meisnt du das? Du speicherst den ausgelesenen Wert in einer Variablen und verarbeitest in dann wie du möchtest.

      Antworten
      • Peter Wackel am 5. März 2021 11:02

        Hier in dem Artikel wird geschrieben die Sensoren in Reihe zu schalten, das ist falsch sie werden Parallel geschaltet anders macht es bei einem 1 wire bus gar keinen sinn.

  21. Udo Kralitschek am 25. Oktober 2017 15:41

    Hallo Felix,
    Ich möchte meine Heizung der Waschmaschine damit Regeln .
    Wenn zB. 30 C erreicht ist soll er sie abschalten .Die Temperratur kann ich mit os.system („Temperatur“)auslesen das Funktioniert .

    Udo

    Antworten
    • Felix am 25. Oktober 2017 21:03

      Genau, dann musst du nur noch das Shell-Skript so umändern, dass es nur noch den Wert zurück gibt, bzw. cat /sys/bus/w1/devices/10-000802b4ba0e/w1_slave` per os.system ausführen und entsprechend formatieren.

      Antworten
  22. Udo Kralitschek am 26. Oktober 2017 14:42

    Hallo Felix ,
    Das ganze werde ich so machen ,ich gebe bescheid wenn es Funktioniert

    Dankeschön für deine prompte hilfe

    Udo

    Antworten
  23. Udo Kralitschek am 27. Oktober 2017 18:30

    Hallo Felix ,
    ich habe das Shell Skript so abgeändert das ich es per os.system(„temperature“) aufrufen kann ,
    dann bekomme ich nur die Temperature angezeigt ,aber das programm kann damit nichts anfangen.
    Hast Du noch einen Tipp .

    Udo

    Antworten
    • Felix am 29. Oktober 2017 14:37

      Speicherst du die Ausgabe in einer Variable? Poste mal deinen Code.

      Antworten
  24. Udo Kralitschek am 30. Oktober 2017 15:28

    Hallo Felix ,
    das Programm ist noch ein bisschen einfach bin es noch am ausbauen .Die Komponenten der Maschine Funktionieren aber schon. Ich hoffe es kommt so an .Danke für deine Hilfe .

    Udo

    import RPi.GPIO as GPIO
    import time
    import os
    os.system("clear")
    os.system("temperature")# Shell-Skript ist so abgeändert damit er nur noch den Wert ausgibt.Die Temperatur möchte ich dann für die Heizung nehmen .kommt noch
    GPIO.setmode(GPIO.BCM)
    GPIO.setwarnings(False)
    GPIO.setup(27, GPIO.OUT) # Heizung
    GPIO.setup(22, GPIO.OUT) # Motor an
    GPIO.setup(23, GPIO.OUT) # Wasser 1
    GPIO.setup(24, GPIO.OUT) # Wasser 2
    GPIO.setup(25, GPIO.OUT) # Pumpe
    GPIO.setup(15, GPIO.OUT) # Tuere Auf
    GPIO.setup(18, GPIO.OUT) # Drehrichtung beide Relais muessen an sein
    GPIO.setup(11, GPIO.OUT) # Drehrichtung beide Relais muessen an sein
    
    time.sleep(5)
    print("                                                                  Hallo Willkommen zum Raspberry Pi Waschmaschinen Programm ")
    
    y = int(raw_input(" Wasser Laufzeit "))
    
    time.sleep(5)
    print(" Tuere Verriegelt ")# hier kommt natuertlich "GPIO.output(x, GPIO.High) oder GPIO.output(x,GPIO.LOW)
    time.sleep(5)
    print(" Wasser 1 Ein ")# hier kommt natuertlich "GPIO.output(x, GPIO.High) oder GPIO.output(x,GPIO.LOW)
    time.sleep(y)
    print(" Wasser 1 Aus ")# hier kommt natuertlich "GPIO.output(x, GPIO.High) oder GPIO.output(x,GPIO.LOW)
    time.sleep(5)
    
    i = 1
    
    x = int(raw_input("Motor Laufzeit s "))
    
    while i <= 4:
    
                    time.sleep(x)
                    print(" Motor rechts ")# hier kommt natuertlich "GPIO.output(x, GPIO.High) oder GPIO.output(x,GPIO.LOW)
                    time.sleep(x)
                    print(" Motor Stop ")# hier kommt natuertlich "GPIO.output(x, GPIO.High) oder GPIO.output(x,GPIO.LOW)
                    time.sleep(x)
                    print(" Motor Links ")# hier kommt natuertlich "GPIO.output(x, GPIO.High) oder GPIO.output(x,GPIO.LOW)
                    time.sleep(x)
                    print(" Motor Stop ")# hier kommt natuertlich "GPIO.output(x, GPIO.High) oder GPIO.output(x,GPIO.LOW)
                    i += 1
    else :
                    time.sleep(5)
                    print(" Pumpe ")# hier kommt natuertlich "GPIO.output(x, GPIO.High) oder GPIO.output(x,GPIO.LOW)
                    time.sleep(5)
                    print(" Tuere Endriegelt ")# hier kommt natuertlich "GPIO.output(x, GPIO.High) oder GPIO.output(x,GPIO.LOW)
                    time.sleep(5)
                    print(" Ende ")
    Antworten
  25. Udo Kralitschek am 21. November 2017 17:56

    Hallo Felix ,
    habe ich was falsch gemacht ? oder warum bekomme ich keine Antwort ?

    Udo

    Antworten
    • Felix am 22. November 2017 20:24

      Hi Udo,
      hatte den Code nur überflogen. Was war denn deine konkrete Frage?

      Antworten
  26. Örni am 8. Januar 2018 16:51

    Herzlichen Dank für dieses gelungene Tutorial.
    Habe eine Frage bezüglich der Abtastrate der Temperatursensoren.
    Habe im Netz folgenden Satz gefunden:

    Über das 1-Wire-Interface wird der, in 750 ms gemessene, Wert als 12-Bit Wert übertragen. Mit einer Konfiguration sind außerdem noch Auflösungen von 9, 10 und 11-Bit möglich. Je kleiner die Auflösung, desto kürzer ist die Messzeit.

    Ich möchte gerne die Messzeit verkürzen.
    Wie muss ich da vorgehen?

    MfG Örni

    Antworten
  27. Michel am 20. Februar 2018 15:15

    Wie funktioniert das denn mit dem Pi 3? Habe gelesen das es dort anders ist aber keine Lösung gefunden

    Antworten
    • Michel am 20. Februar 2018 18:09

      Ok habs schon hinbekommen nun die Frage wie ich dem Temperatur wert eine Variable zuweise um mit ihr weiter programmieren zu können?

      Antworten
  28. Schildi8 am 26. April 2018 13:32

    Muss man denn zwingend den GPIO4 benutzen? Dieser ist bei mir schon durch was anderes belegt.

    Antworten
  29. Niklas am 26. Mai 2018 23:32

    Hallo,
    Kann ich anstatt dem 4,7k Ohm Widerstand auch einen 5,1k Ohm Wiederstand benutzen?

    Gruß
    Niklas

    Antworten
    • Alex am 11. Januar 2019 9:20

      Ja, kannst du. Da kein Strom fliesst (oder nur geringer) entsteht auch kein Spannungsabfall und der Spannungspegel ist garantiert. Ebenso kénnte man einen 1M Widersatand benutzen.

      Antworten
      • Mia Mia am 8. Juni 2020 18:50

        Was passiert, wenn ich einen viel kleineren Wiederstand zum Beipsiel 100 Ohm verwende? Kann sich das negativ auf die Messergebnisse Auswirken?

  30. Alex am 11. Januar 2019 9:23

    Ich habe mir ein kleines Programm in C++ geschrieben, das den Wert auslesen soll und dann in eine Variable speicher. Wenn ich in einer selbst geschrieben Text Datei lese, funktioniert mein Programm, aber bei dieser Datei eben nicht. Weiss jemand warum?

    Antworten
  31. Simon am 3. Dezember 2019 13:02

    Eine Frage, ich möchte Bauteiltemperaturen auslesen (Kontakttemperatur) und einen Sensor mit wärmeleitendem Kleber anbinden.

    Wo hat denn der DS18B20 seine Messfläche? Auf der flachen Seite? D.h. wenn ich diese Seite an das Bauteil anbinde messe ich korrekt? Oder muss ich für eine solche Anwendung Drahtfühler und sowas hier nehmen? https://learn.adafruit.com/adafruit-1-wire-thermocouple-amplifier-max31850k

    Danke!

    Antworten
  32. Tim am 9. Februar 2020 2:54

    Hallo,
    ich habe das Tut durchgearbeitet und es scheint auch größtenteils zu funktionieren.
    Wenn ich folgendes in meine PY Datei schreibe, wird die Temperatur im Shell-Fenster angezeigt allerdings ist der gespeicherte Wert im Variables-Fenster 0. Damit lässt sich dann nicht weiterarbeiten.

    import os
    temp = os.system(„temperature“)

    Wo liegt der Fehler? Wie bekomme ich es hin, dass die aktuelle Temperatur als Variable temp gespeichert wird?
    Vielen Dank im vorraus
    Tim

    Antworten
    • Michael am 26. Februar 2020 18:40

      Der Tempsensor arbeitet bei mir, sehe auch die Temperatur wenn ich alles manuell eingebe. Mit der Ausführung des Skriptes klappt es aber nicht (habe die Sensor ID natürlich ausgetauscht). Auch die Rechtevergabe sudo chmod +x /usr/bin/temperature habe ich ausgeführt (ohne Quittierung?), es kommt bei der Skriptausführung immer nur die Rückmeldung „Defekter Interpreter: Keine Berechtigung“.
      Habe das Skript auch mal in den Ordner „Dokumente“ angelegt und entsprechend ausgeführt-gleiches Ergebnis.

      Hat einer eine Idee, was da los ist?

      Antworten
  33. Robert am 24. März 2020 22:31

    Hallo,
    bei mir kommt immer nur:

    Traceback (most recent call last):
    File „/home/pi/Temperatur.py“, line 4
    tempread=`cat /sys/bus/w1/devices/28-3c01a8162a33/w1_slave`
    ^
    SyntaxError: invalid syntax

    Antworten
    • Maximilian am 17. Mai 2020 22:01

      Hab das gleiche Problem.
      Hast du inzwischen herausgefunden wie es funktioniert?

      Antworten
  34. Alero am 18. September 2020 12:23

    hi,
    gibt es auch die Möglickeit das ganze mit einem A20 zu realisieren?
    Alle Anschlüsse scheinen beim A20 auch da zu sein. der einzige Anschluss den ich nicht finde ist (4) die lange grüne Linie.

    Gruß
    Alero

    Antworten
  35. Albert Schwar am 10. November 2020 16:27

    Falsch ist: dtoverlay=w1-gpio,gpioin=4,pullup=on
    Richtig wäre: dtoverlay=w1-gpio,gpiopin=4,pullup=on
    MfG
    Albert

    Antworten
  36. Ansgar am 21. November 2020 18:16

    Hi bei mir ändert sich alle 10 Sekunden diese ID !
    Gibt es dafür eine Lösung ?
    Danke im vorab
    Gruß Ansgar

    Antworten
  37. Andreas am 12. Dezember 2020 12:44

    Hallo,

    ich habe die parasitäre Version mit nur zwei Drähten.
    Ich schließe ihn ähnlich an wie hier:
    https://imgaz.staticbg.com/customers_images/large/2016122713124256-986819.png
    Spannung natürlich 3,3 V.
    Der Sensor wird nicht erkannt. Die Liste in /sys/bus/w1/devices/ enthält nur den Master.
    Funktioniert der Sensor überhaupt am RPi? Am Arduion funktionert er wie gewünscht.

    Danke.
    Andreas

    Antworten
  38. Bruno Weißenberger am 14. Dezember 2020 10:05

    Hallo Felix,
    ich lese mit dem Raspberry 5 Sensoren (18D20), (20meter) ein.
    Musste hierfür den pullup auf 1200 Ohm erniedrigen.
    Funktioniert einwandfrei.
    Nun wollte ich noch einen anhängen, aber in 150meter Entfernung.
    Auf Grundlagen das der GPIO Port max 30mA verträgt,
    habe ich nochmal 1200Ohm parallel geschaltet.
    Funktioniert nur Fehlerhaft.
    Habe dann festgestellt, dass schon das offene Ende (schon mit Pullup am Raspberry)
    den Fehler verursacht.
    Wirkt die Leitung hier schon wie Akku (Kondensator)?
    Gibt es hier Lösungsansätze?
    Ähnliche frage wurde hier (siehe oben)schon einmal gestellt.
    Gruß
    Karl

    Antworten
  39. Georg am 15. Januar 2021 20:36

    Tipp: Für größere Leitungslängen Pegelwandler einsetzen:
    https://wiki.fhem.de/wiki/1-Wire_Pegelwandler

    Antworten
  40. Helmut am 27. Januar 2021 10:27

    Hallo
    Meine frage an Alle.
    Beim messen der Außentemperatur mit DS18B20 kommt es bei minus Graden
    immer zur einem Fehler (zeigt Werte um +4090,00 an).
    Plus Grade werden richtig angezeigt.
    Gibts eine Lösung ?

    Antworten
  41. Alexander Heindl am 14. Februar 2021 18:48

    Hallo,

    bei mir das Gleiche: 4095 bei Minus Graden – sobald es ins Plus geht, stimmts wieder …

    Antworten
  42. Michael am 17. Februar 2021 11:17

    Hallo,
    Raspi mit 6 Sensoren lief über Monate tadellos. Seit ca. 14 Tagen werden für den Temperaturminusbereich (Sole-Vor- und Rücklauf) plötzlich 4090…. angezeigt.
    Habe überhaupt keinen Plan, wieso. Habe die beiden betroffenen Sensoren schon ausgetauscht, leider mit demselben o.g. Ergebnis.
    Bin für jeden Hinweis dankbar. Danke.
    L.G. Michael

    Antworten
  43. Patrick am 25. Februar 2021 19:26

    Hallo,

    falls ihr die Probleme mit den negativen Temperaturen und Werten von 4090 noch nicht gelöst habt…
    ich hatte das Problem auch nachdem ich meinen Raspberry (3b) am 10. Februar aktualisiert hatte (auf Kernel 5.10.11-v7+). Nach längerer Suche habe ich diesen Artikel gefunden:
    https://github.com/raspberrypi/linux/issues/4124 und wie beschrieben gestern nochmal ein Update mit rpi-update (jetzt Kernel 5.10.17-7v+) gemacht was die Probleme beseitigt hat.

    Grüße,
    Patrick

    Antworten
  44. Alois am 4. Juni 2021 7:50

    Hallo
    Bei mir funktioniert das Auslesen der Temperatur meist, aber nicht immer.
    Mein Raspi hat eine frische Installation mir Kernel 5.10.17+.
    Der Sensor DS1820 wird aktiv gespeist.
    Meine Frage ist:
    Wie oft wird der Wert in der Datei w1_slave aktualisiert?
    Und warum ist diese Datei öfters leer?
    Ich lese die Daten mit einem Script aus und schreibe sie in eine Textdatei.
    Das Ergebnis sieht so aus:

    Fr 4. Jun 04:29:38 CEST 2021
    Die gemessene Temperatur beträgt °C
    Fr 4. Jun 04:30:58 CEST 2021
    Die gemessene Temperatur beträgt 19.18 °C
    Fr 4. Jun 04:32:38 CEST 2021
    Die gemessene Temperatur beträgt °C
    Fr 4. Jun 04:33:58 CEST 2021
    Die gemessene Temperatur beträgt 19.18 °C
    Fr 4. Jun 04:35:38 CEST 2021
    Die gemessene Temperatur beträgt 19.12 °C
    Fr 4. Jun 04:36:58 CEST 2021
    Die gemessene Temperatur beträgt 19.12 °C
    Fr 4. Jun 04:38:38 CEST 2021
    Die gemessene Temperatur beträgt 19.12 °C
    Fr 4. Jun 04:39:58 CEST 2021
    Die gemessene Temperatur beträgt °C
    Fr 4. Jun 04:41:38 CEST 2021
    Die gemessene Temperatur beträgt 19.12 °C

    Wie man sieht, fehlen oft die Temp-Werte.
    Auch wenn ich manuell auslese fehlen die Werte oft:

    pi@raspi:~ $ cat /sys/bus/w1/devices/28-000006b62257/w1_slave
    pi@raspi:~ $ cat /sys/bus/w1/devices/28-000006b62257/w1_slave
    9f 01 4b 46 7f ff 01 10 40 : crc=40 YES
    9f 01 4b 46 7f ff 01 10 40 t=25937
    pi@raspi:~ $ cat /sys/bus/w1/devices/28-000006b62257/w1_slave
    pi@raspi:~ $ cat /sys/bus/w1/devices/28-000006b62257/w1_slave
    a0 01 4b 46 7f ff 10 10 6e : crc=6e YES
    a0 01 4b 46 7f ff 10 10 6e t=26000
    pi@raspi:~ $ cat /sys/bus/w1/devices/28-000006b62257/w1_slave
    pi@raspi:~ $ cat /sys/bus/w1/devices/28-000006b62257/w1_slave
    a0 01 4b 46 7f ff 10 10 6e : crc=6e YES
    a0 01 4b 46 7f ff 10 10 6e t=26000
    pi@raspi:~ $ cat /sys/bus/w1/devices/28-000006b62257/w1_slave
    a0 01 4b 46 7f ff 10 10 6e : crc=6e YES
    a0 01 4b 46 7f ff 10 10 6e t=26000
    pi@raspi:~ $ cat /sys/bus/w1/devices/28-000006b62257/w1_slave
    a0 01 4b 46 7f ff 10 10 6e : crc=6e YES
    a0 01 4b 46 7f ff 10 10 6e t=26000
    pi@raspi:~ $ cat /sys/bus/w1/devices/28-000006b62257/w1_slave
    a0 01 4b 46 7f ff 10 10 6e : crc=6e YES
    a0 01 4b 46 7f ff 10 10 6e t=26000

    und es steht auch oft nur exakt dasselbe in dieser Datei drin.

    Antworten
  45. Tobias am 15. Juni 2021 15:30

    Hi.
    Ich habe das mal nachgebaut und 4 Sensoren an GPIO 4 angeschloßen. Das klappt auch wunderbar. Im ersten Versuch (1 Sensor) habe ich alles am Breadboard und mit Spannungsversorgung über den Pi verkabelt. Beim zweiten Aufbau habe ich dann eine externe Stromquelle ans Breadboard angeschloßen und nur den gelben Draht an GPIO 4 des Pi. Dies hat aber leider nicht geklappt. Es wurden die Sensoren nicht erkannt und erst als ich wieder 5V und GND vom Pi ans Board gesteckt habe ging es. Woran liegt das. Ich würde die Sensoren später gerne auf Platine löten und mit einem ESP32 verbinden, welches dann per WLAN mit dem PI kommunizieren soll. Die Stromversorgung soll dann generell ein DC/DC Wandler mit 12V Einspeisung (Auto) übernehmen. Um die Leitungswege kurz zu halten war geplant nur die Datenleitung mit dem ESP zu verbinden, der dann zentral zwischen den Sensoren platziert wird und die Sensoren sollten direkt ans Bordnetz um mit Strom versorgt zu werden. Muss ich den Plan aufgeben oder habe ich was falsch gemacht?

    Antworten
  46. Wolfgang Roderich am 10. Dezember 2021 18:01

    Bei mir wird gar nicht erst ein Verzeichnis /sys/bus/w1 angelegt (/sys/bus schon, aber darunter nichts). Auch bleiben die beiden neuen Zeilen in /etc/modules nicht über den nächsten boot erhalten. Die Datei ist dann immer wieder leer.
    Raspbian Lite auf einem alten PI 2
    Any hints?

    Antworten
  47. jürgen Wecker am 12. Juli 2023 22:11

    Gibt es diese 1-wire auch im Zero (W) ?
    den pfad /sys/bus/w1 finde ich da schonmal nicht.
    Wünschenswert wäre es, wenn man nicht von „dem Raspberry“, sondern von den Modellen, die das können, sprechen würde

    Antworten
  48. Frank am 30. August 2023 16:16

    Hi, ich habe meinen Temperatursensor nach den Anweisungen implementiert.
    Mein Problem ist aber, wenn ich nach den devices frage, 3 Instanzen angezeigt bekomme.
    Den w1 master bus und nochmals 2 Zahlencodes, die sich aber auch nicht auslesen lassen.
    Kann mir da jemand weiterhelfen?

    Antworten
  49. Sebastian am 5. November 2023 12:43

    Hi zusammen,

    ich habe hin und wieder ein seltsames Problem: der Raspi „verliert“ die Thermoelemente nach einiger Zeit. Ich habe die Ursache bisher nicht finden können. Manchmal läuft es Wochenlang problemlos, manchmal ist es täglich. Die Elemente werden dann nicht mehr unter /sys/bus/w1/devices angezeigt, die Temperaturwerte sind dann in meiner Heizungssteuerung alle Null – somit funktioniert nix mehr. Leider hilft hier auch kein reboot (sonst könnte ich es so machen, dass ich bei Verlust der Sensoren einfach reboot absetze), sondern ich muss den Raspi stromlos setzen und neustarten. Ich kann natürlich mir was basteln, dass der Raspi sich per externer Elektronik stromlos setzt, aber das wäre nur die Notlösung. Daher die Frage: weiß jemand, wie man die GPIO Pins aus dem gebooteten System neustarten kann? Oder hat zumindest jemand sonst das selbe Problem?
    Viele Grüße
    Sebastian

    Antworten
  50. Lukas am 24. November 2024 20:43

    Warum verwenden wir `pullup=on` in der `config.txt`? schaltet das nicht den internen pull-up ein?

    Antworten

Hinterlasse einen Kommentar Antwort abbrechen

ESP8266 Wetterstation Außenposten für den Raspberry Pi

Raspberry Pi + ESP8266 NodeMCU: Per WLAN Daten senden

Eigene Raspberry Pi Wetterstation mit OpenHAB 2 bauen

Mit eigenem Raspberry Pi Twitter Bot Bilder und Nachrichten posten

Raspberry Pi vs. Arduino: Welcher ist der Bessere (für Anfänger)?

Mit dem NodeMCU ESP8266 433MHz Funksteckdosen steuern

Blog abonnieren

Abboniere Raspberry Pi Tutorials, um kein Tutorial mehr zu verpassen!

Tutorials for Raspberry Pi
Facebook Twitter YouTube
  • Kontakt & Impressum
  • Unterstützen
  • Datenschutz

Tippe den Suchbegriff oben ein und drücke Enter, um danach zu suchen. Drücke Esc, um abzubrechen.