Bemerkung
Hallo und willkommen in der SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasten-Gemeinschaft auf Facebook! Tauchen Sie tiefer ein in die Welt von Raspberry Pi, Arduino und ESP32 mit anderen Enthusiasten.
Warum beitreten?
Expertenunterstützung: Lösen Sie Nachverkaufsprobleme und technische Herausforderungen mit Hilfe unserer Gemeinschaft und unseres Teams.
Lernen & Teilen: Tauschen Sie Tipps und Anleitungen aus, um Ihre Fähigkeiten zu verbessern.
Exklusive Vorschauen: Erhalten Sie frühzeitigen Zugang zu neuen Produktankündigungen und exklusiven Einblicken.
Spezialrabatte: Genießen Sie exklusive Rabatte auf unsere neuesten Produkte.
Festliche Aktionen und Gewinnspiele: Nehmen Sie an Gewinnspielen und Feiertagsaktionen teil.
👉 Sind Sie bereit, mit uns zu erkunden und zu erschaffen? Klicken Sie auf [hier] und treten Sie heute bei!
2.2.2 Thermistor
Bemerkung
Abhängig von Ihrer Kit-Version identifizieren Sie bitte, ob Sie ADC0834 oder MCP3008 haben, und fahren Sie mit dem entsprechenden Abschnitt fort.
Einführung
So wie ein Fotowiderstand Licht erfassen kann, ist ein Thermistor ein temperatursensitives elektronisches Bauteil, das zur Realisierung von Temperaturregelungsfunktionen, wie zum Beispiel einem Wärmealarm, verwendet werden kann.
Benötigte Komponenten
Für dieses Projekt benötigen wir die folgenden Komponenten.
Es ist definitiv praktisch, ein komplettes Set zu kaufen, hier ist der Link:
Name |
ARTIKEL IN DIESEM KIT |
LINK |
|---|---|---|
Raphael Kit |
337 |
Sie können diese auch einzeln über die untenstehenden Links kaufen.
KOMPONENTENBESCHREIBUNG |
KAUF-LINK |
|---|---|
- |
Schaltplan
Experimentelle Verfahren
Schritt 1: Bauen Sie die Schaltung.
Schritt 2: Navigieren Sie zum Ordner mit dem Code.
cd ~/raphael-kit/python/
Schritt 3: Führen Sie die ausführbare Datei aus
sudo python3 2.2.2_Thermistor.py
Wenn der Code ausgeführt wird, erfasst der Thermistor die Umgebungstemperatur, die nach Abschluss der Programmberechnung auf dem Bildschirm angezeigt wird.
Code
Bemerkung
Sie können den untenstehenden Code Ändern/Zurücksetzen/Kopieren/Ausführen/Stoppen. Bevor Sie das tun, müssen Sie zum Quellcode-Pfad, wie raphael-kit/python, navigieren. Nachdem Sie den Code geändert haben, können Sie ihn direkt ausführen, um das Ergebnis zu sehen.
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import RPi.GPIO as GPIO
import ADC0834
import time
import math
def init():
ADC0834.setup()
def loop():
while True:
analogVal = ADC0834.getResult()
Vr = 5 * float(analogVal) / 255
Rt = 10000 * Vr / (5 - Vr)
temp = 1/(((math.log(Rt / 10000)) / 3950) + (1 / (273.15+25)))
Cel = temp - 273.15
Fah = Cel * 1.8 + 32
print ('Celsius: %.2f °C Fahrenheit: %.2f ℉' % (Cel, Fah))
time.sleep(0.2)
if __name__ == '__main__':
init()
try:
loop()
except KeyboardInterrupt:
ADC0834.destroy()
Code-Erklärung
import math
Es gibt eine numerische Bibliothek, die eine Reihe von Funktionen zur Berechnung häufiger mathematischer Operationen und Transformationen deklariert.
analogVal = ADC0834.getResult()
Diese Funktion wird verwendet, um den Wert des Thermistors auszulesen.
Vr = 5 * float(analogVal) / 255
Rt = 10000 * Vr / (5 - Vr)
temp = 1/(((math.log(Rt / 10000)) / 3950) + (1 / (273.15+25)))
Cel = temp - 273.15
Fah = Cel * 1.8 + 32
print ('Celsius: %.2f °C Fahrenheit: %.2f ℉' % (Cel, Fah))
Diese Berechnungen wandeln die Thermistorwerte in Grad Celsius und Grad Fahrenheit um.
Vr = 5 * float(analogVal) / 255
Rt = 10000 * Vr / (5 - Vr)
Diese beiden Codezeilen berechnen die Spannungsverteilung mit dem ausgelesenen analogWert, um Rt (Widerstand des Thermistors) zu erhalten.
temp = 1/(((math.log(Rt / 10000)) / 3950) + (1 / (273.15+25)))
Dieser Code bezieht sich darauf, Rt in die Formel TK=1/(ln(RT/RN)/B+1/TN) einzusetzen, um die Kelvin-Temperatur zu erhalten.
temp = temp - 273.15
Konvertierung der Kelvin-Temperatur in Grad Celsius.
Fah = Cel * 1.8 + 32
Umwandlung des Celsius-Grades in den Fahrenheit-Grad.
print ('Celsius: %.2f °C Fahrenheit: %.2f ℉' % (Cel, Fah))
Ausgabe von Grad Celsius, Grad Fahrenheit und ihren Einheiten auf dem Anzeigegerät.
Phänomen-Bild