🍪 Privacy & Transparency

We and our partners use cookies to Store and/or access information on a device. We and our partners use data for Personalised ads and content, ad and content measurement, audience insights and product development. An example of data being processed may be a unique identifier stored in a cookie. Some of our partners may process your data as a part of their legitimate business interest without asking for consent. To view the purposes they believe they have legitimate interest for, or to object to this data processing use the vendor list link below. The consent submitted will only be used for data processing originating from this website. If you would like to change your settings or withdraw consent at any time, the link to do so is in our privacy policy accessible from our home page..

Vendor List | Privacy Policy
Skip to content

Technik Blog

Programmieren | Arduino | ESP32 | MicroPython | Python | Raspberry PI

Menu
  • Projekte
    • LED’s
    • Servo & Schrittmotoren
    • Sound
    • LCD’s
    • Kommunikation
    • Sicherheit
    • Weekend Project
  • Arduino
    • Tutorials
    • ProMini
      • Anschließen & Programmieren
    • Nano
      • Arduino Nano – Übersicht
    • UNO
      • Übersicht
    • MEGA 2560
      • Übersicht
    • Leonardo
      • Übersicht
    • NodeMCU
      • NodeMCU – “Einer für (fast) Alles!”
    • Lilypad
      • Arduino: Lilypad “Jetzt Geht’s Rund!”
    • WEMOS
      • WEMOS D1 – Arduino UNO kompatibles Board mit ESP8266 Chip
      • WEMOS D1 Mini – Übersicht
      • Wemos D1 mini Shields
    • STM32x
      • STM32F103C8T6 – Übersicht
    • Maker UNO
      • Maker UNO – Überblick und Test
    • ATTiny85
      • Mini Arduino mit ATTiny85 Chip
      • ATtiny85 mit dem Arduino UNO beschreiben
  • Android
  • Über mich
  • DeutschDeutsch
  • EnglishEnglish
Menu

Raspberry PI Pico #8 – Temperatursensor LM35DZ

Posted on 19. Juli 202129. April 2023 by Stefan Draeger

In diesem Beitrag möchte ich dir zeigen wie du den analogen Temperatursensor LM35DZ am Raspberry PI Pico anschließt und später den Wert auf einem OLED Display anzeigen lassen kannst.

Raspberry Pi Pico - analoger Temperatursensor
Raspberry Pi Pico – analoger Temperatursensor
Raspberry Pi Pico - analoger Temperatursensor & OLED Display
Raspberry Pi Pico – analoger Temperatursensor & OLED Display

Den Temperatursensor LM35DZ habe ich bereits in diversen Beiträgen zu den Mikrocontrollern wie Arduino und ESP eingesetzt.

  • Arduino Lektion 5: Temperatur messen
  • Arduino Lektion #101: Multifunktionales Shield “Easy Module MIX V1” von YwRobot
  • Programmieren mit MicroPython #3: analoger Temperatursensor LM35DZ am ESP32

  • Bezug eines LM35DZ
  • Aufbau der Schaltung „LM35DZ am PI Pico“
    • Pinout des analogen Temperatursensors LM35DZ
    • Schaltung am Raspberry PI Pico
  • Programmieren im Thonny Editor mit MicroPython
    • Ausgeben der Werte auf der Konsole
    • Ausgeben der Werte auf einem OLED Display
      • Bezug eines OLED Displays
      • Aufbau der Schaltung „LM35DZ mit OLED Display am PI Pico“
        • Programm

Bezug eines LM35DZ

Den kleinen, analogen Temperatursensor bekommst du recht günstig bei ebay.de für 1,99 € zzgl. Versandkosten.

Temperatursensor LM35DZ
Temperatursensor LM35DZ

Natürlich bekommst du diesen Temperatursensor auch bei amazon.de oder auch bei aliexpress.com oder banggood.com. Jedoch sind dort meist die Versandkosten höher als die Kosten für Sensor.

Aufbau der Schaltung „LM35DZ am PI Pico“

Zunächst zeige ich dir, wie du die kleine Schaltung aufbaust, dazu benötigst du lediglich:

  • ein Raspberry PI Pico,
    • ein USB Datenkabel,
  • einen analogen Temperatursensor LM35DZ,
  • drei Breadboardkabel,
  • ein 170 Pin Breadboard
Schaltung - Raspberry Pi Pico mit analogem Temperatursensor LM35DZ
Schaltung – Raspberry Pi Pico mit analogem Temperatursensor LM35DZ

Pinout des analogen Temperatursensors LM35DZ

Der analoge Temperatursensor LM35DZ hat 3 Pins (+Vs, Vout, GND).

Pinout des analogen Temperatursensor LM35DZ
Pinout des analogen Temperatursensor LM35DZ

Schaltung am Raspberry PI Pico

Die Schaltung am Raspberry Pi Pico ist recht einfach, denn der kleine Sensor wird lediglich über 3 Breadboardkabel angeschlossen

analoger Temperatursensor LM35DZ am Raspberry PI Pico
analoger Temperatursensor LM35DZ am Raspberry PI Pico
LM35DZRaspberry Pi Pico
GNDPin 38, GND
VoutGP26, ADC0
+VsPin 36, 3,3V

Programmieren im Thonny Editor mit MicroPython

Nachdem die Schaltung nun aufgebaut wurde, können im Editor „Thonny“ in der Sprache MicroPython das Programm schreiben.

Wie du den Editor Thonny auf deinem Computer einrichtest habe ich dir bereits im Beitrag Raspberry PI Pico #1 – Vorstellung ausführlich vorgestellt.

Ausgeben der Werte auf der Konsole

Zunächst wollen wir die Werte des analogen Sensors auf der Konsole ausgeben.

Dabei ist wichtig, dass der Sensor am ADC0 also GPIO26 angeschlossen wird, denn dieser Pin ist mit der internen Referenzspannung versorgt und nur so erhält man einen korrekten Wert!

from machine import ADC, Pin # Module für die Kommunikation mit den GPIO Pins
from time import sleep  # Modul zum Erzeugen einer Pause im Code

lm35dz = ADC(26) # analoger Temperatursensor am GPIO26 angeschlossen
conversion_factor = 3.3 / 65535 # Umrechnungsfaktor

# beginn der Endlosschleife
while True:
   analogValue = lm35dz.read_u16() # lesen des aktuellen analogen Wertes
   # berechnen des Temperaturwertes
   volts = analogValue * conversion_factor
   temp = volts * 100 # Millivolt in Temperatur Grad Celsius umrechnen
   # formierte Ausgabe der Temperatur auf der Konsole mit 2 Nachkommastellen
   print(round(temp,2), "°C")
   sleep(2) # eine Pause von 2 Sekunden einlegen

Ausgeben der Werte auf einem OLED Display

Im Beitrag Raspberry PI Pico #5 – Ultraschallabstandssensor RCW-001 & OLED Display anschließen habe ich dir bereits ein kleines Projekt mit einem OLED Display gezeigt. Hier möchte ich dir nun zeigen wie du die analogen Temperaturwerte des LM35DZ auf diesem kleinen OLED Display anzeigen lassen kannst.

Bezug eines OLED Displays

Das OLED Display bekommst du auf aliexpress.com zu einem unschlagbaren Preis, jedoch musst du hier mit einer sehr langen Lieferzeit rechnen bzw. diese einkalkulieren.

1,3" OLED Display, Auflösung 128x64 Pixel
1,3″ OLED Display, Auflösung 128×64 Pixel
0,91 Zoll OLED Display
0,91 Zoll OLED Display
Textgröße 1 auf dem 0,42 Zoll OLED Display
Textgröße 1 auf dem 0,42 Zoll OLED Display

Auch günstig aber deutlich schneller bekommst du dieses teilweise auf ebay.de, wo sich einige deutsche Händler befinden welche Lieferzeiten von max. 1 Woche anbieten.

Aufbau der Schaltung „LM35DZ mit OLED Display am PI Pico“

In die bestehende Schaltung wird nun ein OLED Display eingebaut, dieses wird über I2C angeschlossen.

Aufbau der Schaltung "LM35DZ & OLED Display am PI Pico"
Aufbau der Schaltung „LM35DZ & OLED Display am PI Pico“

Ein ähnliches OLED Display habe ich bereits im Beitrag Raspberry PI Pico #5 – Ultraschallabstandssensor RCW-001 & OLED Display anschließen verwendet.

Sensor / AktorRaspberry Pi Pico
OLED Display
GNDPin 18, GND
VCCPin 36, 3v3
SDAGP0, SDA
SCLGP1, SCL
LM35DZ
GNDPin 18, GND
VoutGP26, ADC0
+VsPin 36, 3v3

Für den Aufbau der Schaltung verwende ich mein selbst erstelltes Erweiterungsboard für den Raspberry Pi Pico.

Programm

Für das nachfolgende Programm benötigst du eine zusätzliche Bibliothek für das OLED Display. Diese zusätzliche Bibliothek wird über “Extras” > “Verwalte Pakete…” hinzugefügt.

Zunächst wird nach dem Schlagwort „ssd1306“ gesucht und in der Liste der Ergebnisse der erste Eintrag ausgewählt und installiert.

#Bibliotheken für die Kommunikation mit
#GPIOs, dem analogen Sensor LM35DZ und
#dem OLED Display via I2C
from machine import ADC, Pin, I2C
from time import sleep
from ssd1306 import SSD1306_I2C

#OLED Display am I2C 1 angeschlossen
i2c=I2C(0,sda=Pin(0), scl=Pin(1), freq=400000)
oled = SSD1306_I2C(128, 32, i2c)

#LM35DZ am GPIO26, ADC0 angeschlossen
lm35dz = ADC(26)
conversion_factor = 3.3 / 65535

while True:
   analogValue = lm35dz.read_u16()
   volts = analogValue * conversion_factor
   temp = volts * 100
   #Zeichenkette zusammenbauen
   value = "Temp." + str(round(temp,2)) + "C"
   #das Display in Schwarz färben (alles löschen)
   oled.fill(0)
   #ausgeben der Zeichenkette an Spalte 0 und Zeile 0
   oled.text("LM35DZ", 0, 0)
   #ausgeben der zuvor aufgebauten Zeichenkette
   #an Spalte 0 und Zeile 15
   oled.text(value, 0, 15)
   #anzeigen des Textes
   oled.show()   
   #eine Pause von 2 Sekunden
   sleep(2)
Raspberry Pi Pico - analoger Temperatursensor LM35DZ mit OLED Display
Raspberry Pi Pico – analoger Temperatursensor LM35DZ mit OLED Display

Schreibe einen Kommentar Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Kategorien

Tools

  • 8×8 LED Matrix Tool
  • 8×16 LED Matrix Modul von Keyestudio
  • 16×16 LED Matrix – Generator
  • Widerstandsrechner
  • Rechner für Strom & Widerstände
  • ASCII Tabelle

Meta

  • Videothek
  • Impressum
  • Datenschutzerklärung
  • Disclaimer
  • Kontakt
  • Cookie-Richtlinie (EU)

Links

Blogverzeichnis Bloggerei.de Blogverzeichnis TopBlogs.de das Original - Blogverzeichnis | Blog Top Liste Blogverzeichnis trusted-blogs.com
©2023 Technik Blog | Built using WordPress and Responsive Blogily theme by Superb