Arduino Nano - Koelsysteem met DHT Sensor

Deze tutorial legt uit hoe u een Arduino Nano gebruikt om de temperatuur te regelen met een ventilator en een DHT11 of DHT22 sensor.

Wilt u liever een DS18B20 sensor gebruiken in plaats van een DHT sensor, bekijk dan Arduino Nano - Koelsysteem met DS18B20 Sensor.

Hardware Vereist

1×Official Arduino Nano
1×Alternatief: DIYables ATMEGA328P Nano Development Board
1×USB A naar Mini-B USB kabel
1×DHT11 Temperatuur- en Vochtigheidssensor
1×Relais
1×12V DC Koelventilator
1×(Alternatief) 5V DC Koelventilator
1×12V Voedingsadapter
1×DC Voedingsconnector (Power Jack)
1×Jumperdraden

U kunt ook de DHT22 sensor gebruiken in plaats van de DHT11 sensor.

1×(Aanbevolen) Schroefklem Uitbreidingsboard voor Arduino Nano
1×(Aanbevolen) Breakout Uitbreidingsboard voor Arduino Nano
1×(Aanbevolen) Stromsplitter voor Arduino Nano

Of u kunt de volgende kits kopen:

1×DIYables Sensorkit (30 sensoren/displays)
1×DIYables Sensorkit (18 sensoren/displays)
Openbaarmaking: Sommige van de links in deze sectie zijn Amazon-affiliate links. We kunnen een commissie ontvangen voor aankopen die via deze links worden gedaan, zonder extra kosten voor u. We waarderen uw steun.

Over de Koelventilator en DHT Sensor

De ventilator in deze tutorial heeft een 12V voeding nodig. Wanneer de voeding wordt aangesloten, zal de ventilator draaien, zoniet blijft deze uit. Om de ventilator met de Arduino Nano te besturen, moet een relais gebruikt worden als tussenschakelaar.

Als u niet bekend bent met temperatuursensoren en ventilatoren (pinout, werking, programmeren ...), kunnen de volgende tutorials u helpen ze te begrijpen:

Aansluitschema

  • Een schema van de bedrading voor een systeem met een DHT11 module.
Arduino Nano koelventilator systeem aansluitdiagram

This image is created using Fritzing. Click to enlarge image

  • Een schema dat de verbindingen toont tussen de DHT22 module en overige componenten.
Arduino Nano koelventilator systeem aansluitdiagram

This image is created using Fritzing. Click to enlarge image

Hoe Werkt het Systeem

  • Arduino Nano leest de temperatuur af van de temperatuursensor.
  • Als de temperatuur hoger is dan de bovenste drempelwaarde, schakelt Arduino Nano de ventilator in.
  • Als de temperatuur lager is dan de onderste drempelwaarde, schakelt Arduino Nano de ventilator uit.

Deze cyclus wordt continu herhaald.

Arduino Nano Code

Arduino Nano Code voor Koelsysteem met DHT11 sensor

/* * Deze Arduino Nano code is ontwikkeld door newbiely.nl * Deze Arduino Nano code wordt zonder enige beperking aan het publiek beschikbaar gesteld. * Voor volledige instructies en schema's, bezoek: * https://newbiely.nl/tutorials/arduino-nano/arduino-nano-cooling-system-using-dht-sensor */ #include <DHT.h> #define FAN_PIN 6 // The Arduino Nano pin connected to relay which connected to fan #define DHT_PIN 8 // The Arduino Nano pin connected to DHT11 sensor #define DHT_TYPE DHT11 const int THRESHOLD_ON = 25; // upper threshold of temperature, change to your desire value const int THRESHOLD_OFF = 20; // lower threshold of temperature, change to your desire value DHT dht(DHT_PIN, DHT_TYPE); float temperature; // temperature in Celsius void setup() { Serial.begin(9600); // Initialize the Serial to communicate with the Serial Monitor. dht.begin(); // initialize the sensor pinMode(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 > THRESHOLD_ON){ Serial.println("The fan is turned on"); digitalWrite(FAN_PIN, HIGH); // turn on } else if(temperature < THRESHOLD_OFF){ Serial.println("The fan is turned off"); digitalWrite(FAN_PIN, LOW); // turn on } } }

Arduino Nano Code voor Koelsysteem met DHT22 sensor

/* * Deze Arduino Nano code is ontwikkeld door newbiely.nl * Deze Arduino Nano code wordt zonder enige beperking aan het publiek beschikbaar gesteld. * Voor volledige instructies en schema's, bezoek: * https://newbiely.nl/tutorials/arduino-nano/arduino-nano-cooling-system-using-dht-sensor */ #include <DHT.h> #define FAN_PIN 6 // The Arduino Nano pin connected to relay which connected to fan #define DHT_PIN 8 // The Arduino Nano pin connected to DHT22 sensor #define DHT_TYPE DHT22 const int THRESHOLD_ON = 25; // upper threshold of temperature, change to your desire value const int THRESHOLD_OFF = 20; // lower threshold of temperature, change to your desire value DHT dht(DHT_PIN, DHT_TYPE); float temperature; // temperature in Celsius void setup() { Serial.begin(9600); // Initialize the Serial to communicate with the Serial Monitor. dht.begin(); // initialize the sensor pinMode(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 > THRESHOLD_ON){ Serial.println("The fan is turned on"); digitalWrite(FAN_PIN, HIGH); // turn on } else if(temperature < THRESHOLD_OFF){ Serial.println("The fan is turned off"); digitalWrite(FAN_PIN, LOW); // turn on } } }

In de bovenstaande codes zal de Arduino Nano de ventilator inschakelen wanneer de temperatuur hoger is dan 25°C en deze aan laten tot de temperatuur onder de 20°C zakt.

Snelle Stappen

  • Verbind de Arduino Nano met de computer via een USB-kabel
  • Start de Arduino IDE, selecteer het juiste board en de juiste poort
  • Klik op het Libraries icoon in de linkerzijbalk van de Arduino IDE.
  • Zoek naar “DHT” en selecteer de Adafruit DHT sensor bibliotheek.
  • Druk vervolgens op de Installeren knop om de installatie te voltooien.
Arduino Nano DHT sensor bibliotheek
  • U wordt gevraagd om extra bibliotheekafhankelijkheden te installeren.
  • Klik op de Alles Installeren knop om alle afhankelijkheden te installeren.
Arduino Nano Adafruit Unified sensor bibliotheek
  • Open de seriële monitor
  • Kopieer de code die overeenkomt met de sensor die u gebruikt en open deze in de Arduino IDE.
  • Klik op de Upload knop in de Arduino IDE om de code te compileren en te uploaden naar de Arduino Nano.
  • Verander de temperatuur in de omgeving rond de sensor.
  • Controleer de status van de ventilator in de seriële monitor.

Geavanceerde Kennis

De bovenstaande regeltechniek is een aan-uit regeling, ook wel een signaalregelaar of "bang-bang" regelaar genoemd. Deze methode is eenvoudig uit te voeren.

Een alternatieve methode is de PID-regelaar. Deze techniek is effectiever in het stabiel houden van de temperatuur, maar is ingewikkeld en lastig te begrijpen en toe te passen. Daarom wordt de PID-regelaar niet vaak gebruikt voor temperatuurregeling.

Video Tutorial

We overwegen het maken van videotutorials. Als u videotutorials belangrijk vindt, abonneer u dan op ons YouTube-kanaal om ons te motiveren de video's te maken.

※ ONZE BERICHTEN

  • U bent welkom om de link naar deze tutorial te delen. Gebruik onze inhoud echter niet op andere websites. We hebben veel moeite en tijd gestoken in het maken van de inhoud, respecteer alstublieft ons werk!