लेखक: विकास (अमल कुमार) | Mechanical Engineer
नमस्कार दोस्तों , गर्मियों की बात है। मेरे कमरे में AC था, लेकिन फिर भी पसीना आ रहा था। मैंने AC की temperature 18°C पर set किया था फिर भी गर्मी लग रही थी। तब मुझे लगा — “यार, AC की screen पर जो temperature दिखती है वो सही है या नहीं? कमरे में actually कितनी गर्मी है?”
फिर क्या था दोस्तों, बस — मैंने DHT11 sensor निकाला, Arduino उठाया, और 20 minutes में एक Temperature और Humidity Monitor बना लिया।
Result? AC की screen 18°C दिखा रही थी लेकिन मेरे sensor ने बताया — कमरे की actual temperature 26°C थी। Humidity? 78%। इसीलिए इतना चिपचिपा लग रहा था। उस दिन के बाद से यह monitor मेरे कमरे में permanently लगा है।
अगर आप भी अपने घर की real temperature और humidity जानना चाहते हो — तो यह project बिल्कुल आपके लिए है। और यह इतना simple है कि पहली बार Arduino छूने वाले भी बना सकते हैं।

DHT11 Sensor क्या होता है?
Simple भाषा में — DHT11 एक छोटा सा sensor है जो एक साथ temperature और humidity दोनों measure करता है।
यह दो काम एक साथ करता है:
- Temperature — 0°C से 50°C तक measure कर सकता है
- Humidity — 20% से 80% तक measure कर सकता है
और यह सब सिर्फ ₹40-60 में। इसीलिए यह beginners का सबसे favorite sensor है।
DHT11 vs DHT22: बाजार में DHT22 भी मिलता है जो ज्यादा accurate है और wider range है। लेकिन वो ₹150-200 का पड़ता है। Beginners के लिए DHT11 बिल्कुल सही है। जब project अच्छे से समझ आ जाए तब DHT22 try करना।
इस Project से क्या सीखोगे?
- DHT11 sensor को Arduino से कैसे connect करें
- Library कैसे install करें Arduino IDE में
- Sensor से data कैसे पढ़ें
- Serial Monitor पर data कैसे display करें
- LCD पर temperature और humidity कैसे दिखाएं (Bonus!)
खर्च? ₹400-500 में पूरा project।
जरूरी Components और कहाँ से खरीदें?
| Component | Approx Price (₹) | Tip |
|---|---|---|
| Arduino Uno R3 | ₹300–400 | Robu.in या Quartzcomponents से लो |
| DHT11 Sensor Module | ₹40–60 | Module लो — उसमें resistor already लगा होता है |
| Jumper Wires | ₹20–30 | Male-to-Female wires जरूरी हैं |
| USB Cable | ₹50–80 | Arduino के साथ आती है usually |
| 16×2 LCD (optional) | ₹80–120 | Screen पर दिखाना हो तो लो |
| I2C Module for LCD (optional) | ₹30–50 | LCD के साथ लो — wiring बहुत आसान हो जाती है |
कुल खर्च: लगभग ₹400–500 (LCD के बिना)
एक जरूरी बात: DHT11 Module लो, सिर्फ sensor नहीं। Module में पहले से एक 10kΩ pull-up resistor लगा होता है। अगर सिर्फ bare sensor लिया तो अलग से resistor लगाना पड़ेगा। Module लेना ज्यादा आसान है beginners के लिए।
DHT11 की Limitations — पहले जान लो?
मैं honest रहूंगा — DHT11 perfect नहीं है।
- Accuracy: Temperature में ±2°C की error हो सकती है, Humidity में ±5% की
- Speed: हर 2 seconds में एक reading देता है — faster नहीं
- Range: सिर्फ 0-50°C temperature और 20-80% humidity
इसका मतलब यह नहीं कि यह बेकार है। Beginners के लिए यह बिल्कुल सही है। Weather station बनानी हो या घर की monitoring करनी हो — DHT11 काफी है। Professional level accuracy चाहिए? तब DHT22 या BME280 लो।
Also read – PIR Sensor से Automatic Light System कैसे बनाएं | Arduino Project Hindi 2026
Circuit Connection — बेहद Simple
DHT11 Module को Arduino से Connect करो:
DHT11 module में तीन pins होती हैं:
| DHT11 Module Pin | Arduino Pin |
|---|---|
| VCC | 5V |
| DATA | Pin 2 |
| GND | GND |
बस। इतना ही।
यह इस पूरी series का सबसे simple connection है। 3 wires, 3 minutes। 😄
ध्यान दो: कुछ DHT11 modules में pins की order अलग होती है। हमेशा module के ऊपर लिखी labeling देखो — VCC, DATA, GND। उसी हिसाब से connect करो।
Arduino IDE में Library Install करो?
DHT11 के लिए एक special library चाहिए। बिना library के sensor से data नहीं पढ़ सकते।
Steps:
- Arduino IDE खोलो
- ऊपर menu में जाओ: Sketch → Include Library → Manage Libraries
- Search box में लिखो: DHT sensor library
- Adafruit DHT sensor library ढूंढो — यही सबसे reliable है
- Install पर click करो
- एक popup आएगा — Install All पर click करो (dependencies भी install होंगी)
Done! अब code लिखने के लिए तैयार हो।
मेरी गलती: मैंने पहले कोई random DHT library install की थी जो काम नहीं की। आधा घंटा बर्बाद हुआ। सिर्फ Adafruit DHT sensor library ही install करो — यह सबसे tested और reliable है।

Arduino Code — Version 1 (Serial Monitor पर)?
पहले यह simple version try करो जो Serial Monitor में temperature और humidity दिखाएगा:
// DHT11 Temperature & Humidity Monitor - Basic Version
// Author: Vikas (RoboVikas.com)
#include "DHT.h" // DHT library include करो
#define DHTPIN 2 // DHT11 का DATA pin
#define DHTTYPE DHT11 // DHT11 use कर रहे हैं (DHT22 नहीं)
DHT dht(DHTPIN, DHTTYPE); // DHT object बनाओ
void setup() {
Serial.begin(9600);
dht.begin();
Serial.println("DHT11 Temperature & Humidity Monitor");
Serial.println("=====================================");
}
void loop() {
delay(2000); // DHT11 को 2 seconds चाहिए reading के बीच
float humidity = dht.readHumidity(); // Humidity पढ़ो
float temperature = dht.readTemperature(); // Temperature पढ़ो (Celsius में)
// Check करो कि reading सही आई या नहीं
if (isnan(humidity) || isnan(temperature)) {
Serial.println("Error! Sensor से data नहीं आया। Connection check करो।");
return;
}
// Results print करो
Serial.print("Temperature: ");
Serial.print(temperature);
Serial.println(" °C");
Serial.print("Humidity: ");
Serial.print(humidity);
Serial.println(" %");
Serial.println("-------------------------------------");
}
Code upload करो और Tools → Serial Monitor खोलो। Baud rate 9600 set करो।
हर 2 seconds में temperature और humidity दिखेगी। 🌡️
Code को समझो — Important Parts
delay(2000) — DHT11 sensor बहुत जल्दी reading नहीं दे सकता। उसे हर reading के बीच कम से कम 2 seconds चाहिए। इससे कम delay रखा तो error आएगी।
isnan() — यह check करता है कि sensor ने valid reading दी या नहीं। अगर connection loose है या sensor खराब है तो यह error message दिखाएगा। यह line बहुत जरूरी है — इसके बिना पता नहीं चलेगा कि reading सही है या गलत।
dht.readTemperature() — Default में Celsius में देता है। Fahrenheit चाहिए? लिखो dht.readTemperature(true) — true parameter Fahrenheit के लिए है।
Arduino Code — Version 2 (LCD के साथ)
यह version LCD screen पर temperature और humidity दिखाएगा। इसके लिए I2C LCD module चाहिए।
पहले LiquidCrystal_I2C library install करो: Sketch → Include Library → Manage Libraries → Search: LiquidCrystal I2C → Install
LCD Connection (I2C Module के साथ):
| I2C LCD Pin | Arduino Pin |
|---|---|
| VCC | 5V |
| GND | GND |
| SDA | A4 |
| SCL | A5 |
// DHT11 Temperature & Humidity Monitor - LCD Version
// Author: Vikas (RoboVikas.com)
#include "DHT.h"
#include <LiquidCrystal_I2C.h>
#define DHTPIN 2
#define DHTTYPE DHT11
DHT dht(DHTPIN, DHTTYPE);
LiquidCrystal_I2C lcd(0x27, 16, 2); // LCD address 0x27, 16 columns, 2 rows
void setup() {
Serial.begin(9600);
dht.begin();
lcd.init(); // LCD शुरू करो
lcd.backlight(); // LCD की backlight on करो
lcd.setCursor(0, 0);
lcd.print("RoboVikas.com");
lcd.setCursor(0, 1);
lcd.print("Monitor Ready!");
delay(2000);
lcd.clear();
}
void loop() {
delay(2000);
float humidity = dht.readHumidity();
float temperature = dht.readTemperature();
if (isnan(humidity) || isnan(temperature)) {
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Sensor Error!");
lcd.setCursor(0, 1);
lcd.print("Check Connection");
return;
}
// LCD पर display करो
lcd.clear();
lcd.setCursor(0, 0); // पहली line
lcd.print("Temp: ");
lcd.print(temperature);
lcd.print(" C");
lcd.setCursor(0, 1); // दूसरी line
lcd.print("Humidity: ");
lcd.print(humidity);
lcd.print(" %");
// Serial Monitor पर भी दिखाओ
Serial.print("Temp: "); Serial.print(temperature); Serial.println("°C");
Serial.print("Humidity: "); Serial.print(humidity); Serial.println("%");
}
यह version देखने में बहुत professional लगता है। LCD पर real time temperature और humidity — बिल्कुल किसी weather station जैसा। 😎
LCD काम नहीं कर रहा? — I2C Address Check करो
यह सबसे common problem है LCD के साथ। हर I2C LCD का एक address होता है — usually 0x27 या 0x3F। अगर तुम्हारा LCD blank रहे तो address गलत हो सकता है।
इसे check करने के लिए यह छोटा code upload करो:
#include <Wire.h>
void setup() {
Wire.begin();
Serial.begin(9600);
Serial.println("I2C Address Scanner");
}
void loop() {
for (byte address = 1; address < 127; address++) {
Wire.beginTransmission(address);
if (Wire.endTransmission() == 0) {
Serial.print("Device found at: 0x");
Serial.println(address, HEX);
}
}
delay(5000);
}
Serial Monitor में जो address दिखे — वो main code में LiquidCrystal_I2C lcd(0x27...) की जगह डाल दो।

Project को Real Life में कहाँ Use करें?
यह सिर्फ project नहीं है — actually useful है:
- Bedroom में: AC सही temperature पर है या नहीं — check करो
- Kitchen में: खाना बनाते वक्त humidity बढ़ती है — track करो
- Plant के पास: पौधों को सही humidity चाहिए — monitor करो
- Server room में: Computer equipment गर्मी से खराब होते हैं — alert बनाओ
- Baby room में: बच्चों के लिए ideal temperature 22-24°C और humidity 40-60% होनी चाहिए
Common Problems और Solutions क्या है?
Problem 1: Serial Monitor में “Error! Sensor से data नहीं आया” दिख रहा है → Connection check करो। DATA pin सही लगा है? → Module लिया है या bare sensor? Bare sensor में 10kΩ resistor लगाना पड़ेगा।
Problem 2: Temperature बहुत ज्यादा या कम दिख रही है → DHT11 में ±2°C error normal है। → Sensor को direct sunlight या AC vent के सामने मत रखो।
Problem 3: LCD पर कुछ नहीं दिख रहा — blank है → LCD के पीछे potentiometer को adjust करो — contrast बढ़ाओ। → I2C address check करो (ऊपर scanner code use करो)।
Problem 4: Library नहीं मिल रही → Internet connection check करो। → Arduino IDE को latest version में update करो।
इसे और Smart कैसे बनाएं — Upgrades
- Buzzer जोड़ो — Temperature 35°C से ऊपर जाए तो alarm बजे
- LED Indicator — Green = Normal, Red = Too Hot या Too Humid
- Data Logging — SD card module लगाओ, temperature history save करो
- ESP8266 जोड़ो — Mobile पर real-time data देखो, कहीं से भी
- OLED Display — LCD की जगह OLED लगाओ — ज्यादा stylish दिखता है 😄
Conclusion:
यह project मुझे इसलिए पसंद है क्योंकि पहली बार जब LCD पर “Temp: 32.5°C | Humidity: 65%” दिखा — तो genuinely अच्छा लगा। कुछ बनाया, कुछ सीखा, और वो चीज actually काम आई। यही Arduino projects की beauty है।
आप भी बनाओ। और नीचे comment करो — आपके कमरे की temperature और humidity क्या निकली? मुझे genuinely जानना है। 😄
अगला Project: Ultrasonic Sensor से Distance Meter → [जल्द आ रहा है]
विकास (अमल कुमार) Mechanical Engineer | RoboVikas.com
Also Read – Arduino Line Follower Robot Tutorial Hindi | Beginner to Advanced Guide 2026