Inhoudsopgave:
- Stap 1: Verbind DHT11 met Arduino
- Stap 2: Voeg de DHT-bibliotheek toe
- Stap 3: Kies Arduino-bord
- Stap 4: Programma
- Stap 5: Resultaat
Video: Hoe de DHT11-sensor te gebruiken met Arduino - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:16
In deze tutorial zullen we de DHT11-sensor proberen met Arduino.
DHT11 kan worden gebruikt om temperatuur en vochtigheid te meten.
Benodigde componenten:
- Arduino Nano
- DHT11 temperatuur- en vochtigheidssensor
- USB Mini
- Startkabels
Vereiste bibliotheek:
DHT-bibliotheek
Stap 1: Verbind DHT11 met Arduino
Verbind DHT11 met Arduino met behulp van startkabels.
Zie de afbeelding of volg de onderstaande instructies.
DHT11 naar Arduino
+ => +5V
uit => D12
- => GND
Verbind vervolgens arduino met de computer via een mini-USB
Stap 2: Voeg de DHT-bibliotheek toe
Bibliotheek DHT is hier te downloaden:
DHT11-bibliotheek.
Om een bibliotheek toe te voegen, zie de afbeelding hierboven of volg de onderstaande instructie:
Open Sketch ==> Bibliotheek opnemen ==> voeg. Zip-bibliotheek toe
Zoek het bibliotheekbestand dat u hebt gedownload.
Als het succesvol is, sluit Arduino en open het opnieuw.
Stap 3: Kies Arduino-bord
Ga naar Tools en pas het Arduino-bord aan naar de afbeelding hierboven.
Bord "Arduino Nano"
Processor "ATmega328P (Oude Bootloader)"
Voor een vollediger artikel kunt u lezen op "Hoe Arduino Nano v.3 te gebruiken" dat ik eerder heb gemaakt.
Stap 4: Programma
Voeg deze code toe om de waarde van de DHT11-sensor te lezen
// DHT-temperatuur- en vochtigheidssensor// Unified Sensor Library-voorbeeld // Geschreven door Tony DiCola voor Adafruit Industries // Vrijgegeven onder een MIT-licentie.
// VEREIST de volgende Arduino-bibliotheken:
// - DHT-sensorbibliotheek: https://github.com/adafruit/DHT-sensor-library // - Adafruit Unified Sensor Lib:
#erbij betrekken
#include #include
#define DHTPIN 2 // Digitale pin aangesloten op de DHT-sensor
// Feather HUZZAH ESP8266 opmerking: gebruik pinnen 3, 4, 5, 12, 13 of 14 -- // Pin 15 kan werken, maar DHT moet worden losgekoppeld tijdens het uploaden van het programma.
// Maak een opmerking over het type sensor dat wordt gebruikt:
//#define DHTTYPE DHT11 // DHT 11 #define DHTTYPE DHT22 // DHT 22 (AM2302) //#define DHTTYPE DHT21 // DHT 21 (AM2301)
// Zie handleiding voor details over sensorbedrading en gebruik:
//
DHT_Unified dht(DHTPIN, DHTTYPE);
uint32_t vertragingMS;
ongeldige setup() {
Serieel.begin(9600); // Initialiseer apparaat. dht.begin(); Serial.println (F ("DHTxx Unified Sensor-voorbeeld")); // Print temperatuursensor details. sensor_t-sensor; dht.temperatuur().getSensor(&sensor); Serial.println(F("------------------------------------")); Serial.println (F ("Temperatuursensor")); Serial.print (F("Sensortype: ")); Serial.println(sensor.naam); Serial.print (F("Stuurprogrammaversie: ")); Serieel.println(sensor.versie); Serial.print (F("Unieke ID: ")); Serieel.println(sensor.sensor_id); Serial.print (F("Max. waarde: ")); Serial.print(sensor.max_value); Serial.println(F("°C")); Serial.print (F("Min Waarde: ")); Seriële.afdruk (sensor.min_waarde); Serial.println(F("°C")); Serial.print (F("Resolutie: ")); Seriële.afdruk (sensor.resolutie); Serial.println(F("°C")); Serial.println(F("------------------------------------")); // Details van de vochtigheidssensor afdrukken. dht.humidity().getSensor(&sensor); Serial.println (F ("Vochtigheidssensor")); Serial.print (F("Sensortype: ")); Serial.println(sensor.naam); Serial.print (F("Stuurprogrammaversie: ")); Serieel.println(sensor.versie); Serial.print (F("Unieke ID: ")); Serieel.println(sensor.sensor_id); Serial.print (F("Max. waarde: ")); Serial.print(sensor.max_value); Serial.println(F("%")); Serial.print (F("Min Waarde: ")); Seriële.afdruk (sensor.min_waarde); Serial.println(F("%")); Serial.print (F("Resolutie: ")); Seriële.afdruk (sensor.resolutie); Serial.println(F("%")); Serial.println(F("------------------------------------")); // Stel vertraging in tussen sensormetingen op basis van sensordetails. vertragingMS = sensor.min_vertraging / 1000; }
lege lus() {
// Vertraging tussen metingen. vertraging (vertragingMS); // Haal temperatuurgebeurtenis op en druk de waarde af. sensoren_event_t gebeurtenis; dht.temperatuur().getEvent(&event); if (isnan(gebeurtenistemperatuur)) { Serial.println(F("Fout bij het lezen van temperatuur!")); } else { Serial.print(F("Temperatuur: ")); Seriële.afdruk(gebeurtenistemperatuur); Serial.println(F("°C")); } // Haal de vochtigheidsgebeurtenis op en druk de waarde ervan af. dht.humidity().getEvent(&event); if (isnan(event.relative_humidity)) { Serial.println(F("Fout bij lezen vochtigheid!")); } else { Serial.print(F("Vochtigheid: ")); Serial.print(gebeurtenis.relatieve_vochtigheid); Serial.println(F("%")); } }
Of download het bestand onder de Sketch die ik hieronder heb verstrekt.
Klik vervolgens op uploaden en wacht tot het klaar is.
Stap 5: Resultaat
Om de resultaten van temperatuur- en vochtigheidsmetingen te zien, klikt u op Seriële monitor. De resultaten worden daar weergegeven.
Als dit lukt, zien de resultaten eruit als figuur 1
als de sensor niet is geïnstalleerd, ziet deze eruit als afbeelding 2
bedankt voor het lezen, als er vragen zijn, schrijf het dan gewoon in de opmerkingenkolom
Aanbevolen:
Hoe de GPIO-pinnen en Avrdude van een Raspberry Pi te gebruiken om DIMP 2 of DA PIMP te Bit-bang-programma te gebruiken 2: 9 stappen
Hoe de GPIO-pinnen van een Raspberry Pi en Avrdude te gebruiken voor Bit-bang-programma DIMP 2 of DA PIMP 2: Dit zijn stapsgewijze instructies voor het gebruik van een Raspberry Pi en het gratis open-source commando avrdude to bit-bang -programmeer een DIMP 2 of DA PIMP 2. Ik neem aan dat je bekend bent met je Raspberry Pi en de LINUX-opdrachtregel. Je hoeft niet
Infraroodsensor gebruiken met Arduino 8 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?"
Infraroodsensor gebruiken met Arduino: wat is een infraroodsensor (ook bekend als IR-sensor? Een IR-sensor is een elektronisch instrument dat IR-signalen scant in specifieke frequentiebereiken die zijn gedefinieerd door normen en deze omzet in elektrische signalen op de uitgangspin (meestal signaalpin genoemd) . Het IR-signaal
Hoe DS1307 te gebruiken met Arduino: 7 stappen
Hoe DS1307 te gebruiken met behulp van Arduino: DS1307 is een Real Time Clock IC (RTC). Dit IC wordt gebruikt om tijdgegevens te verstrekken. De toegewezen tijd begint met seconden, minuten, uren, dagen, datum, maand en jaar. Dit IC vereist extra externe componenten zoals kristal en 3,6 V-batterijen. Kristal
Mac Terminal gebruiken en toetsfuncties gebruiken: 4 stappen
Mac Terminal gebruiken en toetsfuncties gebruiken: We laten u zien hoe u de MAC Terminal opent. We zullen u ook enkele functies binnen de Terminal laten zien, zoals ifconfig, mappen wijzigen, toegang tot bestanden en arp. Met Ifconfig kunt u uw IP-adres en uw MAC-advertentie controleren
Hoe de Instructables IRC-chatroom te gebruiken! 6 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?"
Hoe de Instructables IRC-chatroom te gebruiken!: Vóór de implementatie van de Meebo-chatroom, waar de meesten van jullie in zijn geweest of van hebben gehoord, had Instructables een IRC-chatroom. De meebo-kamer heeft ons goed gediend, maar is beperkt, heeft veel gebreken, en verzandt de meeste gemiddelde computersystemen. IRC-ka