رباتیک و هوافضا

ثبت کننده ی داده (دیتا لاگر) با آردوینو و حافطه ی SD و سنسور DHT11

ساخت ثبت کننده ی داده (دیتا لاگر) با آردوینو و حافطه ی SD و سنسور DHT11

به نام خدا

ساخت ثبت کننده ی داده (دیتا لاگر) با آردوینو و حافطه ی SD و سنسور DHT11

 

 

ساخت ثبت کننده ی داده (دیتا لاگر) با آردوینو و حافطه ی SD و سنسور DHT11
 ساخت ثبت کننده ی داده (دیتا لاگر) با آردوینو و حافطه ی SD بسیار ساده است. در این آموزش ساخت یک ذخیره کننده اطلاعات دما و رطوبت بوسیله سنسور DHT11 را یاد میگیریم.

سنسور DHT11 نسبت رطوبت و دمای محیط را اندازه گیری میکند و این مقادیر را هر یک ثانیه روی کارت SD ذخیره میکند. در نهایت این مقادیر در یک فایل با فرمت TXT روی کارت SD ذخیره می شوند.

قطعات مورد نیاز ساخت ثبت کننده ی داده (دیتا لاگر) با آردوینو و حافطه ی SD و سنسور DHT11:

  • بورد آردوینو
  • سنسور DHT11
  • کارت SD
  • سوکت کارت SD
  • مقاومت ۱۰ کیلو اهم
  • مقاومت ۴٫۷ کیلو اهم
  • سه مقاومت ۳٫۳ کیلو اهم
  • سه مقاومت ۲٫۲ کیلو اهم
  • برد بورد
  • سیم برد بورد

شماتیک مدار ثبت کننده ی داده (دیتا لاگر) با آردوینو و حافطه ی SD و سنسور DHT11:

شماتیک مدار در بالا نمایش داده شده است، به دو حالت می توان مدار را بست ، مدار اول شامل سه مقسم ولتاژ برای تبدیل ۵ ولت به ۳ ولت است که این مقسم ولتاژ ها به پایه های: SS ، MOSI و SCK متصل هستند

بیشتر بخوانید...  پروژه ی ساخت شاخص باتری با استفاده از آردوینو

 

 

( زمین های مدار به یکدیگر متصل شده اند)

مدار دوم برای استفاده از ماژول کارت SD می باشد ، ولتاژ تغذیه این ماژول ۵ ولت است (که از برد آردوینو گرفته می شود.) این ماژول از رگولاتور ولتاژ AMS1117 و مبدل ولتاژ ۷۴LVC125A برای تبدیل سیگنال ۵ ولت به ۳٫۳ ولت برای پایه های استفاده می کند. (راه اندازی مدار با ماژول SD کارت ساده تر است)

 

پروژه ساخت ثبت کننده ی داده (دیتا لاگر) با آردوینو و حافطه ی SD و سنسور DHT11

 

ماژول کارت SD شش پایه به نام های دارد:GND ، VCC ، MISO ، MOSI ، SCK ، CS

 

کدهای آردوینو:

کد های زیر برای خواندن دما و رطوبت از سنسور DHT11  می باشد ، بعد از آن دیتای دما و رطوبت در کارت SD با نام DHT11Log.txt ذخیره می شود و در نهایت بوسیله پورت سریال به کامپیوتر فرستاده می شود.

 

 

برای دیدن نتیجه کار، این مدار را برای مدتی روشن و سپس خاموش کرده ایم. کارت SD را از مدار جدا و به کامپیوتر متصل کرده ایم. پس از باز کردن کارت SD فایل زیر مشاهده میشود.

سریال مانیتور Arduino IDE اطلاعات زیر را نمایش می دهد:

بیشتر بخوانید...  پروژه ی شمارش افراد داخل اطاق با آردوینو

 

 

 

پروژه ساخت ثبت کننده ی داده (دیتا لاگر) با آردوینو و حافطه ی SD و سنسور DHT11 پروژه ساخت ثبت کننده ی داده (دیتا لاگر) با آردوینو و حافطه ی SD و سنسور DHT11

 

 

 

دانلود کد های پروژه ساخت ثبت کننده ی داده (دیتا لاگر) با آردوینو و حافطه ی SD و سنسور DHT11:

دانلود فایل
 
#include <SPI.h>        // Include SPI library (needed for the SD card)
#include <SD.h>         // Include SD library
#include <DHT.h>        // Include DHT sensor library
 
File dataFile;
 
#define DHTPIN 4            // DHT11 data pin is connected to Arduino pin 4
#define DHTTYPE DHT11       // DHT11 sensor is used
DHT dht(DHTPIN, DHTTYPE);   // Initialize DHT library
 
void setup() {
  // Open serial communications and wait for port to open:
  Serial.begin(9600);
  while (!Serial)
    ; // wait for serial port to connect. Needed for native USB port only
  Serial.print("Initializing SD card...");
  if (!SD.begin()) {
    Serial.println("initialization failed!");
    while (1);
  }
  Serial.println("initialization done.");
  delay(2000);
}
 
uint16_t line = 1;
 
void loop() {
  delay(1000);
  // Read humidity
  byte RH = dht.readHumidity();
  //Read temperature in degree Celsius
  byte Temp = dht.readTemperature();
  
  dataFile = SD.open("DHT11Log.txt", FILE_WRITE);
  
  // if the file opened okay, write to it:
  if (dataFile) {
    Serial.print(line);
    Serial.print(":    Temperature = ");
    Serial.print(Temp);
    Serial.print("°C,    Humidity = ");
    Serial.print(RH);
    Serial.println("%");
    // Write data to SD card file (DHT11Log.txt)
    dataFile.print(line++);
    dataFile.print(":    Temperature = ");
    dataFile.print(Temp);
    dataFile.print("°C,    Humidity = ");
    dataFile.print(RH);
    dataFile.println("%");
    dataFile.close();
    
  }
  // if the file didn't open, print an error:
  else
    Serial.println("error opening DHT11Log.txt");
}

دیدگاه‌ها (0)

*
*