Lambar Arduino da Bidiyo don DHT11 Sensor na Zazzabi da Danshi
A cikin wannan koyawa, za mu bincika yadda ake amfani da na'urar DHT11 mai auna zafin jiki da danshi tare da Arduino. Wannan na'urar hanya ce mai rahusa don auna zafin jiki da danshi, wanda ya sa ta zama zaɓi mai kyau ga ayyuka daban-daban. Za mu rufe haɗin wayoyi, lambar da ake buƙata, da yadda sassan ke hulɗa don samar da ingantattun sakamako.

A ƙarshen wannan koyawa, za ka iya karanta zafin jiki a Celsius, Fahrenheit, da Kelvin, da kuma matakan danshi daga na'urar DHT11. Don ƙarin haske, ka tabbata ka duba bidiyon a lokutan da aka nuna (a cikin bidiyo a 00:00).
Bayanin Kayan Aiki
Na'urar DHT11 tana da ƙafafu uku: ƙasa, wutar lantarki, da bayanai. Ƙafar ƙasa tana haɗawa da ƙasan Arduino, yayin da ƙafar wutar lantarki ke haɗawa da samar da 5V daga Arduino. Ƙafar bayanai ce ke da alhakin sadarwa tsakanin Arduino da na'urar, wanda ke ba Arduino damar karanta ƙimar zafin jiki da danshi.
Wannan na'urar tana amfani da fitarwa na dijital, wanda ke nufin tana aika bayanai a tsarin serial zuwa Arduino. Tana ƙunshe da thermistor don auna zafin jiki da kuma na'urar auna danshi mai capacitive. DHT11 tana canza siginonin analog da take karɓa zuwa siginonin dijital, wanda ke sauƙaƙa wa microcontrollers kamar Arduino sarrafa bayanan.
Cikakkun Bayanai na Datasheet
| Mai ƙera | ASAIR |
|---|---|
| Lambar sashi | DHT11 |
| Wutar Logic/IO | 3.3–5.5 V |
| Wutar samarwa | 3.3–5.5 V |
| Fitarwar wutar (kowane tashar) | 0.5 mA |
| Matsakaicin wutar (kowane tashar) | 2.5 mA |
| Jagorar mitar PWM | Babu |
| Matsakaicin shigarwar logic | 0.3*VDD zuwa 0.7*VDD |
| Ragewar wutar / RDS(on) / saturation | Babu |
| Iyakokin zafi | 0 zuwa 60 °C |
| Kunshin | 4-pin DIP |
| Bayanan kula / bambance-bambance | Mai rahusa, mai sauƙin amfani |
- Wutar aiki tsakanin 3.3V zuwa 5.5V.
- Matsakaicin fitarwar wutar na 2.5 mA.
- Kewayon zafin jiki daga 0 zuwa 60 digiri Celsius.
- Kewayon danshi daga 20% zuwa 90%.
- Yi amfani da resistor mai ɗagawa akan ƙafar bayanai don ingantattun karatu.
- Ka tabbatar da haɗi mai kyau don guje wa shigarwar da ba ta da ƙarfi.
- Ka yi hattara da juyar da polarity lokacin haɗa wutar lantarki.
- Jinkirta karatu da akalla daƙiƙa 1 don ingantattun sakamako.
Umarnin Haɗin Wayoyi

Don haɗa na'urar DHT11 zuwa Arduino, ka bi waɗannan matakan:
Da farko, haɗa ƙafar ƙasa (yawanci baƙar fata ko launin ruwan kasa) na DHT11 zuwa ƙasa (GND) akan Arduino. Na gaba, haɗa ƙafar wutar lantarki (yawanci ja) na DHT11 zuwa fitarwar 5V akan Arduino. A ƙarshe, haɗa ƙafar bayanai (yawanci rawaya ko fari) zuwa dijital pin 2 akan Arduino. Ka tabbata ka yi amfani da resistor mai ɗagawa (kusan 10k ohms) tsakanin ƙafar bayanai da ƙafar wutar lantarki don tabbatar da ingantaccen sadarwa.
Misalan Lamba da Bayani
A cikin lambar Arduino, muna farawa ta haɗa fayil ɗin da ake buƙata don na'urar DHT11:
#include
Wannan layin yana shigo da ɗakin karatu wanda ya ƙunshi ayyukan da ake buƙata don hulɗa da na'urar DHT11. Na gaba, muna ƙirƙirar misali na ajin DHT11:
dht11 DHT11; // ƙirƙirar abu na DHT11
Wannan layin yana fara abin DHT11 wanda za mu yi amfani da shi don karanta bayanai daga na'urar. Ƙafar da aka haɗa zuwa DHT11 an ayyana ta kamar:
#define dhtpin 2 // saita ƙafar don haɗawa da DHT11
Wannan yana saita ƙafar bayanai don na'urar zuwa pin 2 akan Arduino. A cikin aikin loop(), muna karanta bayanan na'urar:
DHT11.read(dhtpin);// fara karatun
Wannan layin yana fara tsarin karatu, kuma ana iya samun danshi da:
int humidity = DHT11.humidity;// samun danshi
Ƙimar danshi ana adana ta a cikin maɓallin humidity, wanda aka buga shi zuwa serial monitor tare da ƙimar zafin jiki da aka canza zuwa Celsius, Fahrenheit, da Kelvin.
Nuni / Abin da Za Ka Yi Tsammani
Lokacin da ka gudanar da lambar, ya kamata ka ga karatun zafin jiki da danshi a cikin serial monitor. Karatun zafin jiki zai sabunta kowane rabin daƙiƙa (a cikin bidiyo a 00:00). Idan an dumama ko sanyaya na'urar, za ka lura ƙimar suna canzawa daidai. Ka yi hattara, saboda DHT11 tana da iyakar zafin jiki na digiri 60 Celsius; wuce wannan na iya haifar da karatu mara inganci.
Lokutan Bidiyo
- 00:00 - Gabatarwa ga na'urar DHT11
- 01:30 - Umarnin haɗin wayoyi
- 02:15 - Bayanin lambar
- 03:00 - Gudanar da lambar da sakamakon da ake tsammani
/*
* This is the Arduino code for the DHT11 module to read temperature and humidity.
* This code can display temperature in:
* C is used to get Celsius.
* F is used to get Fahrenheit.
* K is used for Kelvin.
* Watch the video https://youtu.be/FjZBt6eU9b4
*
* Written by Ahmad Nejrabi for Robojax Video
* Date: January 4, 2018, in Ajax, Ontario, Canada
* Permission granted to share this code given that this
* note is kept with the code.
* Disclaimer: This code is "AS IS" and for educational purposes only.
*
*/
// header file from GitHub: https://github.com/adidax/dht11
#include <dht11.h>
dht11 DHT11; // create object of DHT11
#define dhtpin 2 // set the pin to connect to DHT11
void setup() {
Serial.begin(9600);// setting up serial monitor
}
void loop() {
DHT11.read(dhtpin);// initialize the reading
//code for Robojax.com video
int humidity = DHT11.humidity;// get humidity
Serial.print(getTemp('C'));
Serial.print("C ");
Serial.print(getTemp('F'));
Serial.print("F ");
Serial.print(getTemp('K'));
Serial.print("K ");
Serial.print(" humidity:");
Serial.print (humidity);
Serial.println("% ");
Serial.println();
delay(500);
}
/*
* getTemp(char type)
* type character of upper case.
* C is used to get Celsius.
* F is used to get Fahrenheit.
* K is used for Kelvin.
*/
float getTemp(char type) {
float temp = (float)DHT11.temperature;//get temp
if(type =='F')
{
return temp * 1.8 + 32;// convert to Fahrenheit
}else if(type =='K')
{
return temp + 274.15;// convert to Kelvin
}else{
return temp;
}
}
Albarkatun da kuma shafukan da za a duba
-
WajeDHT11 library on GitHubgithub.com
Fayiloli📁
Littattafan Arduino (zip)
-
DHT22 Arduino Library
robojax-DHT22_library.zip0.01 MB
Fayil Fritzing
-
Temperature Sensor DHT11
Temperature Sensor DHT11.fzpz0.01 MB
Jagoran Mai Amfani
-
DHT11 Jagoran Mai Amfani
robojax-DHT11_manual.pdf0.82 MB
Sauran fayiloli
-
DHT11 Sauƙin Laburaren Arduino
robojax-DHT11-simple_library.zip