DHT11/DHT22 और ARDUINO के साथ एक तापमान और आर्द्रता मॉनिटर का निर्माण

होम ऑटोमेशन से लेकर ग्रीनहाउस प्रबंधन तक, विभिन्न अनुप्रयोगों के लिए तापमान और आर्द्रता जैसी पर्यावरणीय परिस्थितियों की निगरानी करना आवश्यक है। DHT11 या DHT22 जैसे बहुमुखी Arduino प्लेटफॉर्म और सेंसर के साथ, एक विश्वसनीय तापमान और आर्द्रता मॉनिटर बनाना दोनों सस्ती और सीधा है। इस गाइड में, हम आपको आवश्यक घटकों, सेटअप प्रक्रिया और आपके मॉनिटर को जीवन में लाने के लिए आवश्यक कोडिंग के माध्यम से चलेंगे।

घटक आपको आवश्यकता होगी

  • अर्डुइनो अनो
  • DHT11 या DHT22 सेंसर
  • 10k ओम रोकनेवाला
  • ब्रेडबोर्ड और जम्पर तार
  • एलसीडी प्रदर्शन (वैकल्पिक)
  • यूएसबी तार

DHT11/DHT22 सेंसर को समझना

DHT11 और DHT22 तापमान और आर्द्रता को मापने के लिए लोकप्रिय सेंसर हैं। DHT11 लागत-प्रभावी और बुनियादी अनुप्रयोगों के लिए उपयुक्त है, ± 2 ° C सटीकता और आर्द्रता रेंज के साथ 0-50 ° C की तापमान सीमा की पेशकश करता है, जो कि 5% सटीकता के साथ 20-80% की सटीकता और आर्द्रता सीमा है। दूसरी ओर, DHT22, -40 से 80 डिग्री सेल्सियस की व्यापक तापमान सीमा प्रदान करता है, ± 0.5 ° C सटीकता और 0-100% की आर्द्रता सीमा के साथ ± 2-5% सटीकता के साथ, यह अधिक मांग वाली परियोजनाओं के लिए आदर्श बनाता है।

सेंसर को Arduino को वायरिंग

अपने DHT सेंसर को Arduino से जोड़ने के लिए इन चरणों का पालन करें:

  1. पावर कनेक्शन: DHT सेंसर के VCC पिन को Arduino पर 5V पिन और GND पिन को जमीन (GND) से कनेक्ट करें।
  2. डेटा पिन: DHT सेंसर के डेटा पिन को Arduino पर एक डिजिटल इनपुट पिन से कनेक्ट करें (आमतौर पर पिन 2)।
  3. पुल-अप रोकनेवाला: स्थिर डेटा ट्रांसमिशन सुनिश्चित करने के लिए VCC और डेटा पिन के बीच 10k ओम रोकनेवाला रखें।
  4. एलसीडी डिस्प्ले (वैकल्पिक): यदि एक एलसीडी का उपयोग किया जाता है, तो इसे रीडिंग प्रदर्शित करने के लिए उपयुक्त Arduino पिन से कनेक्ट करें।

Arduino प्रोग्रामिंग

DHT सेंसर से डेटा पढ़ने के लिए, हम इसका उपयोग करेंगे DHT.h पुस्तकालय, जो प्रक्रिया को सरल करता है। नीचे एक नमूना कोड स्निपेट है जो आपको शुरू करने के लिए है:

// Include the DHT library
#include <DHT.h>

// Define the sensor type and the pin it's connected to
#define DHTPIN 2
#define DHTTYPE DHT22 // Change to DHT11 if you're using that model

// Initialize the DHT sensor
DHT dht(DHTPIN, DHTTYPE);

void setup() {
  // Start serial communication
  Serial.begin(9600);
  // Initialize the DHT sensor
  dht.begin();
}

void loop() {
  // Wait a few seconds between measurements
  delay(2000);

  // Read humidity and temperature
  float humidity = dht.readHumidity();
  float temperature = dht.readTemperature();

  // Check if any reads failed
  if (isnan(humidity) || isnan(temperature)) {
    Serial.println("Failed to read from DHT sensor!");
    return;
  }

  // Print the results to the Serial Monitor
  Serial.print("Humidity: ");
  Serial.print(humidity);
  Serial.print(" %\t");
  Serial.print("Temperature: ");
  Serial.print(temperature);
  Serial.println(" *C");
}

कोड की व्याख्या:

  • DHT.h सेंसर के साथ संचार को सुविधाजनक बनाने के लिए लाइब्रेरी शामिल है।
  • हम डेटा पिन और सेंसर प्रकार का उपयोग करके परिभाषित करते हैं #define.
  • में setup() फ़ंक्शन, हम सीरियल कम्युनिकेशन और DHT सेंसर को इनिशियलाइज़ करते हैं।
  • loop() फ़ंक्शन हर दो सेकंड में आर्द्रता और तापमान पढ़ता है और उन्हें सीरियल मॉनिटर में प्रिंट करता है।

डेटा प्रदर्शित करना

अधिक उपयोगकर्ता के अनुकूल सेटअप के लिए, आप एक एलसीडी पर रीडिंग प्रदर्शित कर सकते हैं। सीरियल मॉनिटर के बजाय एलसीडी को डेटा भेजने के लिए कोड को संशोधित करें। सुनिश्चित करें कि आपके पास उपयुक्त एलसीडी लाइब्रेरी स्थापित है और तदनुसार पिन को कॉन्फ़िगर करें।

एलसीडी डिस्प्ले के लिए नमूना कोड:

// Include necessary libraries
#include <DHT.h>
#include <LiquidCrystal.h>

// Define sensor and LCD pins
#define DHTPIN 2
#define DHTTYPE DHT22
DHT dht(DHTPIN, DHTTYPE);

// Initialize the LCD (adjust pin numbers as needed)
LiquidCrystal lcd(12, 11, 5, 4, 3, 6);

void setup() {
  // Start serial communication
  Serial.begin(9600);
  dht.begin();
  // Initialize the LCD
  lcd.begin(16, 2);
  lcd.print("Temp & Humidity");
}

void loop() {
  delay(2000);

  float humidity = dht.readHumidity();
  float temperature = dht.readTemperature();

  if (isnan(humidity) || isnan(temperature)) {
    lcd.clear();
    lcd.print("Sensor Error");
    return;
  }

  // Display on LCD
  lcd.clear();
  lcd.setCursor(0, 0);
  lcd.print("Temp: ");
  lcd.print(temperature);
  lcd.print(" C");
  lcd.setCursor(0, 1);
  lcd.print("Humidity: ");
  lcd.print(humidity);
  lcd.print(" %");
}

अपने सेटअप का परीक्षण

अपने Arduino में कोड अपलोड करने के बाद, सीरियल मॉनिटर (यदि सीरियल आउटपुट का उपयोग करके) खोलें) या LCD डिस्प्ले का निरीक्षण करें। आपको वास्तविक समय का तापमान और आर्द्रता रीडिंग देखना चाहिए। सुनिश्चित करें कि आपके कनेक्शन सुरक्षित हैं, और सेंसर सही तरीके से काम कर रहा है। यदि आप मुद्दों का सामना करते हैं, तो वायरिंग को दोबारा जांचें और सत्यापित करें कि सही सेंसर प्रकार आपके कोड में परिभाषित किया गया है।

संवर्द्धन और अगले चरण

अब जब आपके पास एक बुनियादी तापमान और आर्द्रता मॉनिटर है, तो निम्नलिखित संवर्द्धन पर विचार करें:

  • डेटा प्रविष्ट कराना: विश्लेषण के लिए समय के साथ डेटा लॉग करने के लिए अपने Arduino को SD कार्ड मॉड्यूल से कनेक्ट करें।
  • वायरलेस निगरानी: अपने स्मार्टफोन या क्लाउड सेवाओं को डेटा भेजने के लिए ESP8266 या ब्लूटूथ जैसे मॉड्यूल का उपयोग करें।
  • अलर्ट: चरम स्थितियों के बारे में सूचित करने के लिए एलईडी या बज़र्स का उपयोग करके दहलीज-आधारित अलर्ट को लागू करें।
  • कई सेंसर: हवा की गुणवत्ता या प्रकाश की तीव्रता जैसे मापदंडों के लिए अतिरिक्त सेंसर को शामिल करने के लिए अपने सेटअप का विस्तार करें।

निष्कर्ष

DHT11/DHT22 और Arduino के साथ एक तापमान और आर्द्रता की निगरानी का निर्माण शुरुआती और उत्साही लोगों के लिए एक उत्कृष्ट परियोजना है। यह सेंसर एकीकरण, डेटा प्रोसेसिंग और प्रदर्शन तकनीकों के साथ हाथों पर अनुभव प्रदान करता है। चाहे व्यक्तिगत उपयोग के लिए या अधिक जटिल प्रणालियों के लिए एक नींव के रूप में, यह परियोजना Arduino पारिस्थितिकी तंत्र की शक्ति और लचीलेपन को प्रदर्शित करती है। हैप्पी बिल्डिंग!

एक टिप्पणी छोड़ें

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.