Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Productieproces

DHT11 Temperatuur- & Vochtigheidsensor Project met LED-indicatoren en Piezo-luidspreker

Onderdelen en Benodigdheden

DHT11 Temperatuur- & Vochtigheidsensor (4 pins) 1
Arduino UNO 1
LED's: 1x groen, 2x rood 3
Weerstanden 220Ω 3
Piezo-luidspreker 1
Draadjes (jumper wires) 12

Apps en Online Services

  • Arduino IDE

Over dit Project

Dit is een beginnerproject dat de DHT11-sensor gebruikt om temperatuur en luchtvochtigheid te meten. Drie LED's geven de temperatuurstatus aan:

  • Groen (A1): Perfecte temperatuur (20-27°C)
  • Rood (A0): Te koud (≤20°C) + piezo geluid
  • Rood (A2): Te warm (≥29°C) + piezo geluid

De waarden worden ook op de seriële monitor uitgeprint.

Benodigde Bibliotheken

Installeer via Bibliotheekbeheerder in Arduino IDE (zoeken op "DHT sensor library" en "Adafruit Unified Sensor").

Aansluitschema

  • DHT11 DATA-pin → Digitale pin 5
  • LED "Te koud" (rood) → A0 (via 220Ω)
  • LED "Perfect" (groen) → A1 (via 220Ω)
  • LED "Te warm" (rood) → A2 (via 220Ω)
  • Piezo-luidspreker → Digitale pin 9
  • Alle GND's samen, VCC naar 5V

Code

#include <Adafruit_Sensor.h>
#include <DHT.h>

int speakerPin = 9;
#define DHTPIN 5
#define DHTTYPE DHT11
#define LED_TOO_COLD A0
#define LED_PERFECT A1
#define LED_TOO_HOT A2

DHT dht(DHTPIN, DHTTYPE);

void setup() {
  Serial.begin(9600);
  Serial.println("DHT11 test!");
  dht.begin();
  pinMode(speakerPin, OUTPUT);
  pinMode(LED_TOO_COLD, OUTPUT);
  pinMode(LED_PERFECT, OUTPUT);
  pinMode(LED_TOO_HOT, OUTPUT);
}

void loop() {
  delay(2000); // DHT11 heeft ~2s tussen metingen nodig
  
  float h = dht.readHumidity();
  float t = dht.readTemperature(); // Celsius
  float f = dht.readTemperature(true); // Fahrenheit
  
  if (isnan(h) || isnan(t) || isnan(f)) {
    Serial.println("Failed to read from DHT sensor!");
    return;
  }
  
  Serial.print("Humidity: ");
  Serial.print(h);
  Serial.print(" %\t");
  Serial.print("Temperature: ");
  Serial.print(t);
  Serial.println(" *C");
  
  if (t <= 20) {
    Serial.println("Te koud!");
    digitalWrite(LED_TOO_COLD, HIGH);
    digitalWrite(speakerPin, HIGH);
    delay(1000);
    digitalWrite(speakerPin, LOW);
    digitalWrite(LED_TOO_COLD, LOW);
  }
  else if (t > 20 && t < 27) { // Originele code had fout: 20 < t < 27 werkt niet in C++
    Serial.println("Perfecte temperatuur!");
    digitalWrite(LED_PERFECT, HIGH);
    delay(2000);
    digitalWrite(LED_PERFECT, LOW);
  }
  else if (t >= 29) {
    Serial.println("Te warm!");
    digitalWrite(LED_TOO_HOT, HIGH);
    digitalWrite(speakerPin, HIGH);
    delay(1000);
    digitalWrite(speakerPin, LOW);
    digitalWrite(LED_TOO_HOT, LOW);
  }
  // Let op: tussen 27-28°C gebeurt er niets (dode zone)
}

Opmerking: De originele code had een logische fout in de voorwaarde if (20 < t < 27) – in C/C++ evalueert dit altijd true. Gecorrigeerd naar t > 20 && t < 27. Ook is er een "dode zone" tussen 27-28°C waar geen LED brandt.

Productieproces

  1. Bouw je eerste IoT-project met Raspberry Pi, DHT11 en ThingSpeak
  2. Een geautomatiseerd aeroponisch systeem bouwen met Raspberry Pi en vochtigheidssensor
  3. Integreren van een thermocouple-sensor met de Arduino Portenta H7 via de MAX6675 IC
  4. Bouw een real-time gyroscoop-spel met Arduino Nano & MPU-6050 sensor
  5. K30 CO2-sensor: Real-time binnenluchtkwaliteitmonitoring met Arduino
  6. Unopad: Naadloze Arduino MIDI-controller voor Ableton Live
  7. Arduino temperatuur- en vochtigheidslogger met DHT11 en Ethernet Shield
  8. Bouw een Slimme IoT Pot met ESP8266, Arduino & Ultrasonische Sensor – Real-time Monitoring
  9. Een eenvoudige obstakelsensor bouwen met Arduino – IR LED & Fotodiodo Tutorial
  10. Een DFRobot Capacitieve Vingerafdruksensor integreren met Arduino of ESP8266
  11. Temperatuur en Vochtigheid met DHT11 op Blynk - Stap-voor-Stap Arduino Tutorial