בניית צג טמפרטורה ולחות עם DHT11/DHT22 ו- Arduino

מעקב אחר תנאים סביבתיים כמו טמפרטורה ולחות חיוני ליישומים שונים, מאוטומציה ביתית ועד ניהול חממה. עם פלטפורמת Arduino המגוונת והחיישנים כמו DHT11 או DHT22, יצירת צג טמפרטורה ולחות אמין היא גם משתלמת וגם פשוטה. במדריך זה, אנו נעביר אתכם דרך הרכיבים הדרושים, תהליך ההתקנה והקידוד הנדרש בכדי להחיות את הצג שלכם לחיים.

רכיבים שתצטרך

  • Arduino uno
  • חיישן DHT11 או DHT22
  • נגן 10K אוהם
  • חוטי לחם וגשר
  • תצוגת LCD (אופציונלית)
  • כבל USB

הבנת חיישני DHT11/DHT22

ה- DHT11 ו- DHT22 הם חיישנים פופולריים למדידת טמפרטורה ולחות. ה- DHT11 הוא חסכוני ומתאים ליישומים בסיסיים, ומציע טווח טמפרטורה של 0-50 מעלות צלזיוס עם דיוק ± 2 מעלות צלזיוס וטווח הלחות של 20-80% ברמת דיוק של ± 5%. לעומת זאת, ה- DHT22 מספק טווח טמפרטורות רחב יותר של -40 עד 80 מעלות צלזיוס עם דיוק ± 0.5 מעלות צלזיוס וטווח הלחות של 0-100% עם דיוק של ± 2-5%, מה שהופך אותו לאידיאלי לפרויקטים תובעניים יותר.

Wiring the Sensor to Arduino

Follow these steps to connect your DHT sensor to the Arduino:

  1. חיבורי חשמל: Connect the VCC pin of the DHT sensor to the 5V pin on the Arduino and the GND pin to the ground (GND).
  2. סיכת נתונים: חבר את סיכת הנתונים של חיישן ה- DHT לסיכת קלט דיגיטלית בארדואינו (בדרך כלל סיכה 2).
  3. נגד משיכה: מקם נגן של 10 ק"ג אוהם בין ה- VCC ל- PIN נתונים כדי להבטיח העברת נתונים יציבה.
  4. תצוגת LCD (אופציונלית): אם משתמשים ב- LCD, חבר אותו לסיכות 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");
}

Explanation of the Code:

  • THE DHT.h הספרייה כלולה כדי להקל על התקשורת עם החיישן.
  • אנו מגדירים את סיכת הנתונים וסוג החיישן באמצעות #define.
  • ב setup() פונקציה, אנו מאתחל את התקשורת הסדרתית ואת חיישן DHT.
  • THE loop() הפונקציה קוראת את הלחות והטמפרטורה כל שתי שניות ומדפיסה אותם לצג הסידורי.

הצגת הנתונים

לקבלת הגדרה ידידותית יותר למשתמש, תוכלו להציג את הקריאות ב- LCD. שנה את הקוד כדי לשלוח נתונים ל- LCD במקום לצג הסידורי. ודא שתתקין את ספריית LCD המתאימה ומגדיר את התצורה של הסיכות בהתאם.

קוד לדוגמא לתצוגת LCD:

// 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 או Bluetooth כדי לשלוח נתונים לסמארטפון או לשירותי הענן שלך.
  • התראות: יישום התראות מבוססות סף באמצעות נוריות LED או זמזם כדי להודיע ​​לך על תנאים קיצוניים.
  • חיישנים מרובים: הרחב את ההגדרה שלך כך שתכלול חיישנים נוספים לפרמטרים כמו איכות אוויר או עוצמת אור.

מַסְקָנָה

בניית צג טמפרטורה ולחות עם DHT11/DHT22 וארדואינו הוא פרויקט מצוין למתחילים ולחובבים כאחד. זה מספק ניסיון מעשי עם שילוב חיישנים, עיבוד נתונים וטכניקות תצוגה. בין אם לשימוש אישי ובין אם כבסיס למערכות מורכבות יותר, פרויקט זה מציג את הכוח והגמישות של המערכת האקולוגית של ארדואינו. בניין שמח!

השאירו תגובה

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.