راه اندازی سنسور دما و رطوبت

  • مدرس: علی بیگدلی
  • تاریخ انتشار: Aug 25, 2020

همیشه می خواستم دما و رطوبت را در اطرافم بشناسم؟ اگر بله، این پروژه برای شما بسیار مفید خواهد بود. چرا که در بعضی شرایط دونستن این موضوع می تونه به شما در کنترل تجهیزات مختلف اطرافتان کمک شایانی کند. رطوبت چیست؟ رطوبت بخار آب در اطراف شما با هوا مخلوط است. بنابراین، اگر رطوبت 60 درصد باشد (که رطوبت متوسط است)، 60 درصد هوا در اطراف شما بخار آب است. اگر 100٪ باشد، این بدین معنی است که سنسور صحیح نیست، سنسور خراب است یا آسیب دیده است، آردوینو خراب شده، آردوینو نمیتواند هیچ سیگنال دریافت کند و یا ایرادی در کد وجود دارد یا سنسور درون آب قرار دارد. اگر 0٪ باشد، به این معنی است که تمام دلایل بالا را می تواند شامل شود به جز آخرین، که یعنی شما در فضا هستید یا در وسط یک صحرا هستید. در زیر دو نمونه پر استفاده از سنسور های دما رطوبت را در پروژه های IOT مشاهده می کنید که تفاوت های سخت افزاری و مقایسه های اندازه گیری آن ها ذکر شده است.

 

   

 

نمونه زیر نحوه اتصال یک آردینو به سنسور رطوبت. شماتیک اتصالات:

مثال کد:

#include "DHT.h"

#define DHTPIN 2     // what digital pin we're connected to

// Uncomment whatever type you're using!
#define DHTTYPE DHT11   // DHT 11
//#define DHTTYPE DHT22   // DHT 22  (AM2302), AM2321
//#define DHTTYPE DHT21   // DHT 21 (AM2301)

DHT dht(DHTPIN, DHTTYPE);

void setup() {
  Serial.begin(9600);
  Serial.println("DHTxx test!");

  dht.begin();
}

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

  // Reading temperature or humidity takes about 250 milliseconds!
  // Sensor readings may also be up to 2 seconds 'old' (its a very slow sensor)
  float h = dht.readHumidity();
  // Read temperature as Celsius (the default)
  float t = dht.readTemperature();
  // Read temperature as Fahrenheit (isFahrenheit = true)
  float f = dht.readTemperature(true);

  // Check if any reads failed and exit early (to try again).
  if (isnan(h) || isnan(t) || isnan(f)) {
    Serial.println("Failed to read from DHT sensor!");
    return;
  }

  // Compute heat index in Fahrenheit (the default)
  float hif = dht.computeHeatIndex(f, h);
  // Compute heat index in Celsius (isFahreheit = false)
  float hic = dht.computeHeatIndex(t, h, false);

  Serial.print("Humidity: ");
  Serial.print(h);
  Serial.print(" %\t");
  Serial.print("Temperature: ");
  Serial.print(t);
  Serial.print(" *C ");
  Serial.print(f);
  Serial.print(" *F\t");
  Serial.print("Heat index: ");
  Serial.print(hic);
  Serial.print(" *C ");
  Serial.print(hif);
  Serial.println(" *F");
}

 

ثبت دیدگاه
نام *
ایمیل*
دیدگاه *
2دیدگاه
  • Black Gamer
    1 year, 5 months ago

    مقاومت چقدر هست

    • علی بیگدلی
      1 year, 5 months ago

      470 Ω
      https://www.calculator.net/resistor-calculator.html?bandnum=4&band1=yellow&band2=violet&band3=blue&multiplier=brown&tolerance=gold&temperatureCoefficient=brown&type=c&x=75&y=21