Arduino - Kühlsystem mit DHT-Sensor

In diesem Tutorial werden wir die Temperatur mit einem Ventilator und einem DHT11- oder DHT22-Sensor steuern. Wenn die Temperatur zu hoch ist, schalten Sie den Kühlventilator ein. Wenn die Temperatur kühl ist, schalten Sie den Kühlventilator aus. Wenn Sie stattdessen den DS18B20-Sensor statt des DHT-Sensors verwenden möchten, siehe Arduino - Cooling System using DS18B20 Sensor.

Erforderliche Hardware

1×Arduino Uno R3
1×USB 2.0 Kabel Typ A/B (für USB-A PC)
1×USB 2.0 Kabel Typ C/B (für USB-C PC)
1×DHT11 Temperatur- und Feuchtigkeitssensor
1×Relais
1×12V DC Kühlventilator
1×(Alternativ) 5V DC Kühlventilator
1×12V Netzteil
1×DC-Stromanschluss
1×Verbindungskabel

You can use DHT22 sensor instead of DHT11 sensor.

1×(Empfohlen) Schraubklemmenblock-Shield für Arduino Uno
1×(Empfohlen) Breadboard-Shield für Arduino Uno
1×(Empfohlen) Gehäuse für Arduino Uno
1×(Empfohlen) Prototyping-Grundplatte & Breadboard-Kit für Arduino Uno

Oder Sie können die folgenden Kits kaufen:

1×DIYables STEM V3 Starter-Kit (Arduino enthalten)
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.

Über Kühllüfter und DHT-Sensor

Der in diesem Tutorial verwendete Kühlventilator verwendet eine 12-V-Stromversorgung. Wenn dem Kühlventilator Strom zugeführt wird, läuft er, und umgekehrt. Um den Kühlventilator über den Arduino zu steuern, müssen wir dazwischen ein Relais verwenden.

Wenn Sie nichts über Temperatursensoren und Lüfter wissen (Pinbelegung, Funktionsweise, Programmierung ...), lernen Sie mehr darüber in den folgenden Tutorials kennen:

Verdrahtungsdiagramm

  • Verdrahtungsdiagramm mit dem DHT11-Modul
Schaltplan des Arduino-Kühlgebläse-Systems

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

  • Schaltplan mit DHT22-Modul
Schaltplan des Arduino-Kühlgebläse-Systems

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

Wie das System funktioniert

  • Arduino misst die Temperatur des Temperatursensors.
  • Wenn die Temperatur einen oberen Schwellenwert überschreitet, schaltet Arduino den Lüfter ein.
  • Wenn die Temperatur einen unteren Schwellenwert unterschreitet, schaltet Arduino den Lüfter aus.

Der oben beschriebene Prozess wird unendlich oft in der Schleife wiederholt.

Wenn Sie möchten, dass der Ventilator eingeschaltet wird, wenn die Temperatur einen bestimmten Wert überschreitet, und ausgeschaltet wird, wenn sie unterhalb dieses Werts fällt, müssen Sie lediglich den oberen Grenzwert und den unteren Grenzwert auf denselben Wert einstellen.

Arduino-Code

Arduino-Code für Kühlsystem mit DHT11-Sensor

/* * Dieser Arduino Code wurde von newbiely.de entwickelt * Dieser Arduino 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/arduino/arduino-cooling-system-using-dht-sensor */ #include "DHT.h" #define RELAY_FAN_PIN A5 // Arduino pin connected to relay which connected to fan #define DHTPIN 12 // Arduino pin connected to relay which connected to DHT sensor #define DHTTYPE DHT11 const int TEMP_THRESHOLD_UPPER = 25; // upper threshold of temperature, change to your desire value const int TEMP_THRESHOLD_LOWER = 20; // lower threshold of temperature, change to your desire value DHT dht(DHTPIN, DHTTYPE); float temperature; // temperature in Celsius void setup() { Serial.begin(9600); // initialize serial dht.begin(); // initialize the sensor pinMode(RELAY_FAN_PIN, OUTPUT); // initialize digital pin as an output } void loop() { // wait a few seconds between measurements. delay(2000); temperature = dht.readTemperature();; // read temperature in Celsius if (isnan(temperature)) { Serial.println("Failed to read from DHT sensor!"); } else { if(temperature > TEMP_THRESHOLD_UPPER){ Serial.println("The fan is turned on"); digitalWrite(RELAY_FAN_PIN, HIGH); // turn on } else if(temperature < TEMP_THRESHOLD_LOWER){ Serial.println("The fan is turned off"); digitalWrite(RELAY_FAN_PIN, LOW); // turn on } } }

Arduino-Code für das Kühlsystem mit DHT22-Sensor

/* * Dieser Arduino Code wurde von newbiely.de entwickelt * Dieser Arduino 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/arduino/arduino-cooling-system-using-dht-sensor */ #include "DHT.h" #define RELAY_FAN_PIN A5 // Arduino pin connected to relay which connected to fan #define DHTPIN 12 // Arduino pin connected to relay which connected to DHT sensor #define DHTTYPE DHT22 const int TEMP_THRESHOLD_UPPER = 25; // upper threshold of temperature, change to your desire value const int TEMP_THRESHOLD_LOWER = 20; // lower threshold of temperature, change to your desire value DHT dht(DHTPIN, DHTTYPE); float temperature; // temperature in Celsius void setup() { Serial.begin(9600); // initialize serial dht.begin(); // initialize the sensor pinMode(RELAY_FAN_PIN, OUTPUT); // initialize digital pin as an output } void loop() { // wait a few seconds between measurements. delay(2000); temperature = dht.readTemperature();; // read temperature in Celsius if (isnan(temperature)) { Serial.println("Failed to read from DHT sensor!"); } else { if(temperature > TEMP_THRESHOLD_UPPER){ Serial.println("The fan is turned on"); digitalWrite(RELAY_FAN_PIN, HIGH); // turn on } else if(temperature < TEMP_THRESHOLD_LOWER){ Serial.println("The fan is turned off"); digitalWrite(RELAY_FAN_PIN, LOW); // turn on } } }

In den oben genannten Codes schaltet der Arduino den Ventilator ein, wenn die Temperatur 25 °C überschreitet, und lässt den Ventilator laufen, bis die Temperatur unter 20 °C fällt.

Schnelle Schritte

  • Verbinde Arduino über ein USB-Kabel mit dem PC
  • Öffne die Arduino IDE, wähle das richtige Board und den richtigen Port
  • Navigiere zum Bibliotheken-Symbol in der linken Leiste der Arduino IDE.
  • Suche “DHT”, und finde dann die DHT-Sensor-Bibliothek von Adafruit
  • Klicke auf die Installieren-Schaltfläche, um die Bibliothek zu installieren.
Arduino DHT-Sensor-Bibliothek
  • Sie werden aufgefordert, weitere Bibliotheksabhängigkeiten zu installieren
  • Klicken Sie auf die Schaltfläche Alle installieren, um alle Bibliotheksabhängigkeiten zu installieren.
Arduino Adafruit einheitliche Sensorbibliothek
  • Kopieren Sie den obenstehenden Code, der dem Sensor entspricht, den Sie verwenden, und öffnen Sie ihn in der Arduino IDE
  • Klicken Sie auf die Schaltfläche Hochladen in der Arduino IDE, um den Code auf den Arduino hochzuladen
  • Erhöhen oder senken Sie die Temperatur in der Umgebung des Sensors
  • Überprüfen Sie den Zustand des Lüfters

Fortgeschrittenes Wissen

Die oben beschriebene Regelungsmethode ist der Ein-/Aus-Regler, auch bekannt als Signalisierer oder 'Bang-Bang'-Regler. Diese Methode ist sehr einfach umzusetzen.

Es gibt eine alternative Methode, die als PID-Regler bezeichnet wird. Mit dem PID-Regler bleibt die gewünschte Temperatur stabiler, ist jedoch sehr schwer zu verstehen und umzusetzen. Daher ist der PID-Regler in der Temperaturregelung nicht beliebt.

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!