Raspberry Pi - Kühlsystem mit DS18B20 Temperatursensor

Diese Anleitung zeigt Ihnen, wie Sie die Temperatur mit Hilfe eines Raspberry Pi, eines Lüfters und eines DS18B20 Temperatursensors regulieren können.

Wenn Sie stattdessen einen DHT11 oder DHT22 anstelle des DS18B20 Sensors verwenden möchten, lesen Sie bitte Raspberry Pi - Kühlsystem mit DHT Sensor.

Hardware Anforderungen

1×Raspberry Pi 5
1×DS18B20 Temperatursensor (MIT Adapter)
1×DS18B20 Temperatursensor (OHNE Adapter)
1×4,7 kΩ Widerstand
1×Relais
1×12V DC Kühlventilator
1×(Alternativ) 5V DC Kühlventilator
1×12V Netzteil
1×DC-Stromanschluss
1×Jumper Kabel
1×(Empfohlen) Schraubklemmenblock-Shield für Raspberry Pi
1×(Empfohlen) Raspberry Pi Prototyping-Grundplatte & Breadboard-Kit
1×(Empfohlen) HDMI-Touchscreen-Monitor für Raspberry Pi

Oder Sie können die folgenden Kits kaufen:

1×DIYables Sensor-Kit (30 Sensoren/Displays)
1×DIYables Sensor-Kit (18 Sensoren/Displays)
Offenlegung: Einige der in diesem Abschnitt bereitgestellten Links sind Amazon-Affiliate-Links. Wir können eine Provision für Käufe erhalten, die über diese Links getätigt werden, ohne zusätzliche Kosten für Sie. Wir schätzen Ihre Unterstützung.

Kaufhinweis: Viele DS18B20-Sensoren auf dem Markt sind von geringer Qualität. Wir empfehlen dringend den Kauf des Sensors von der Marke DIYables über den obigen Link. Wir haben ihn getestet und er funktionierte gut.

Über Kühlventilator und DS18B20 Temperatursensor

Der in diesem Tutorial verwendete Lüfter benötigt eine 12V Stromversorgung. Wenn Strom zugeführt wird, schaltet sich der Lüfter ein, andernfalls nicht. Um den Lüfter mit dem Raspberry Pi zu steuern, muss ein Relais zwischen beide geschaltet werden.

Wenn Sie mit Temperatursensoren und Lüftern nicht vertraut sind (deren Pinbelegung, wie sie funktionieren, wie man sie programmiert, etc.), können Ihnen die folgenden Tutorials helfen:

Schaltplan

Raspberry Pi Kühlventilator System Schaltplan

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.

Um Ihren Verdrahtungsaufbau zu vereinfachen und zu organisieren, empfehlen wir die Verwendung eines Schraubklemmenblock-Shields für Raspberry Pi. Dieses Shield gewährleistet sicherere und besser verwaltbare Verbindungen, wie unten gezeigt:

Raspberry Pi Schraubklemmenblock-Shield

Wir empfehlen den Kauf eines DS18B20 Sensors zusammen mit dem dazugehörigen Verdrahtungsadapter für ein nahtloses Setup. Dieser Adapter enthält einen integrierten Widerstand, wodurch ein zusätzlicher Widerstand in der Verdrahtung nicht erforderlich ist.

Wie das System funktioniert

  • Der Raspberry Pi nimmt eine Messung vom Temperatursensor vor.
  • Wenn die Temperatur höher als das zulässige Maximum ist, wird der Lüfter vom Raspberry Pi aktiviert.
  • Wenn die Temperatur unter das minimal akzeptierte Niveau fällt, schaltet der Raspberry Pi den Lüfter aus.

Die Schleife wird kontinuierlich wiederholt.

Wenn Sie den Lüfter aktivieren und deaktivieren möchten, wenn die Temperatur über oder unter einem bestimmten Wert liegt, müssen Sie nur die oberen und unteren Grenzwerte auf dieselbe Zahl setzen.

Raspberry Pi Code für Kühlsystem mit DS18B20 Sensor

Schreiben wir den Code, der den Raspberry Pi dazu bringt, den Lüfter zu aktivieren, wenn die Temperatur höher als 25°C ist, und ihn laufen zu lassen, bis die Temperatur unter 20°C fällt.

Schnelle Schritte

  • Stellen Sie sicher, dass Sie Raspbian oder ein anderes Raspberry Pi-kompatibles Betriebssystem auf Ihrem Pi installiert haben.
  • Stellen Sie sicher, dass Ihr Raspberry Pi mit demselben lokalen Netzwerk wie Ihr PC verbunden ist.
  • Stellen Sie sicher, dass Ihr Raspberry Pi mit dem Internet verbunden ist, falls Sie einige Bibliotheken installieren müssen.
  • Wenn Sie den Raspberry Pi zum ersten Mal verwenden, lesen Sie wie Sie den Raspberry Pi einrichten
  • Verbinden Sie Ihren PC über SSH mit dem Raspberry Pi, indem Sie den integrierten SSH-Client unter Linux und macOS oder PuTTY unter Windows verwenden. Siehe wie Sie Ihren PC über SSH mit dem Raspberry Pi verbinden.
  • Stellen Sie sicher, dass Sie die RPi.GPIO Bibliothek installiert haben. Falls nicht, installieren Sie sie mit dem folgenden Befehl:
sudo apt-get update sudo apt-get install python3-rpi.gpio
  • Bevor Sie den DS18B20 Temperatursensor mit einem Raspberry Pi verwenden, müssen wir die 1-Wire-Schnittstelle auf dem Raspberry Pi aktivieren. Siehe Wie Sie die 1-Wire-Schnittstelle auf dem Raspberry Pi aktivieren
  • Installieren Sie die Bibliothek für den DS18B20 Temperatursensor, indem Sie den folgenden Befehl ausführen:
pip install w1thermsensor
  • Erstellen Sie eine Python-Skriptdatei cooling.py und fügen Sie den folgenden Code hinzu:
# Dieser Raspberry Pi Code wurde von newbiely.de entwickelt # Dieser Raspberry Pi Code wird der Öffentlichkeit ohne jegliche Einschränkung zur Verfügung gestellt. # Für vollständige Anleitungen und Schaltpläne besuchen Sie bitte: # https://newbiely.de/tutorials/raspberry-pi/raspberry-pi-cooling-system-using-ds18b20-temperature-sensor from w1thermsensor import W1ThermSensor import RPi.GPIO as GPIO import time # Constants THRESHOLD_ON = 25 # Upper threshold of temperature, change to your desired value THRESHOLD_OFF = 20 # Lower threshold of temperature, change to your desired value FAN_PIN = 21 # GPIO pin connected to relay, change to your desired GPIO pin # Setup GPIO.setmode(GPIO.BCM) GPIO.setup(FAN_PIN, GPIO.OUT) def find_ds18b20_sensor(): for sensor in W1ThermSensor.get_available_sensors(): if sensor.type == W1ThermSensor.THERM_SENSOR_DS18B20: return sensor return None def read_temperature(sensor): try: temperature_celsius = sensor.get_temperature() return temperature_celsius except Exception as e: print(f"Error reading temperature: {e}") return None def control_fan(temperature): if temperature is not None: if temperature > THRESHOLD_ON: print("The fan is turned on") GPIO.output(FAN_PIN, GPIO.HIGH) elif temperature < THRESHOLD_OFF: print("The fan is turned off") GPIO.output(FAN_PIN, GPIO.LOW) # Find DS18B20 sensor ds18b20_sensor = find_ds18b20_sensor() if ds18b20_sensor is not None: print(f"DS18B20 Sensor found: {ds18b20_sensor.id}") try: while True: temperature = read_temperature(ds18b20_sensor) control_fan(temperature) time.sleep(0.5) except KeyboardInterrupt: pass finally: GPIO.cleanup() else: print("DS18B20 Sensor not found.")
  • Speichern Sie die Datei und führen Sie das Python-Skript aus, indem Sie den folgenden Befehl im Terminal ausführen:
python3 cooling.py

Das Skript läuft in einer Endlosschleife kontinuierlich, bis Sie Strg + C im Terminal drücken.

  • Ändern Sie die Temperatur der Umgebung um den Sensor herum.
  • Überprüfen Sie den Status des Lüfters auf dem Serial Monitor.

Erweiterte Kenntnisse

Diese Steuerungsmethode wird als Ein-Aus-Regler bezeichnet, der auch als Signalgeber oder "Bang-Bang"-Regler bekannt ist. Diese Methode ist einfach zu implementieren.

Ein alternativer Ansatz, bekannt als PID-Regler, existiert. Diese Methode der Temperaturregelung ist stabiler, aber sie ist komplex und schwer zu verstehen und zu implementieren. Aus diesem Grund wird der PID-Regler nicht weit verbreitet eingesetzt.

Video Tutorial

Wir erwägen die Erstellung von Video-Tutorials. Wenn Sie Video-Tutorials für wichtig halten, abonnieren Sie bitte unseren YouTube-Kanal , um uns zu motivieren, die Videos zu erstellen.

※ UNSERE NACHRICHTEN

  • Sie können gerne den Link zu diesem Tutorial teilen. Bitte verwenden Sie jedoch unsere Inhalte nicht auf anderen Websites. Wir haben viel Mühe und Zeit in die Erstellung der Inhalte investiert, bitte respektieren Sie unsere Arbeit!