AM2305 یک سنسور دما و رطوبت دقیق می باشد . این سنسور شامل یک NTC وهمچنین یک سنسور رطوبت خازنی می باشد که مقادیر آنها توسط یک میکروکنترلر داخلی اندازه گیری شده و در خروجی قرار می گیرد . اگرچه این سنسور به صورت کامل ضد آب نمی باشد ، اما قادر به اندازه گیری رطوبت های بالا است . همچنین به همراه آن براکت های نصب سطحی وجود دارد که امکان نصب آن بر روی دیوار و دیگر سطوح را فراهم می سازد . AM2305 یک سنسور مناسب جهت اندازه گیری دما در گلخانه ها ، دستگاه های میوه خشک کن و همچنین دستگاه های جوجه کشی با ظرفیت کم می باشد . وجود یک کاور متخلخل فلزی در اطراف سنسور ، خطای اندازه گیری رطوبت را به حداقل می رساند . سنسور های AM2305 دارای رابط ارتباطی I2C می باشد که تنها به دوپین از MCU احتیاج خواهد داشت . AM2305 دمای های 40- تا 80+ درجه سانتی گراد را با حداکثر خطای 0.3 درجه و نیز رطوبت های 0 تا 100 درصدی را با حداکثر خطای 1 درصدی اندازه گیری می کند .

 

در تصویر زیر خروجی های این ماژول نشان داده شده است :

سیم های قرمز و مشکی به ترتیب تغذیه و زمین سنسور می باشند .

پین های زرد و سپز نیز SDA و SCL ماژول در ارتباط I2C می باشند .

 

راه اندازی AM2305 با آدروینو :

#include <Wire.h>
#include <Adafruit_AM2315.h>

/*************************************************** 
  This is an example for the AM2315 Humidity + Temp sensor
  Designed specifically to work with the Adafruit AM2315 Sensor 
  ----> https://www.adafruit.com/products/1293
  These displays use I2C to communicate, 2 pins are required to  
  interface
  Adafruit invests time and resources providing this open source code, 
  please support Adafruit and open-source hardware by purchasing 
  products from Adafruit!
  Written by Limor Fried/Ladyada for Adafruit Industries.  
  BSD license, all text above must be included in any redistribution
 ****************************************************/

// Connect RED of the AM2315 sensor to 5.0V
// Connect BLACK to Ground
// Connect WHITE to i2c clock
// Connect YELLOW to i2c data

Adafruit_AM2315 am2315;

void setup() {
  Serial.begin(9600);
  while (!Serial) {
    delay(10);
  }
  Serial.println("AM2315 Test!");

  if (! am2315.begin()) {
     Serial.println("Sensor not found, check wiring & pullups!");
     while (1);
  }
}

void loop() {
  float temperature, humidity;

  if (! am2315.readTemperatureAndHumidity(&temperature, &humidity)) {
    Serial.println("Failed to read data from AM2315");
    return;
  }
  Serial.print("Temp *C: "); Serial.println(temperature);
  Serial.print("Hum %: "); Serial.println(humidity);

  delay(2000);
}

 

 

Tags:
About Author: USER_4