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

پروژه ی دماسنج دیجیتال با آردوینو و سنسور دما LM335 به همراه کد

دماسنج دیجیتال با استفاده از آردوینو و سنسور دما LM335

به نام خدا

پروژه ی دماسنج دیجیتال با آردوینو و سنسور دما LM335 به همراه کد

 

دماسنج دیجیتال با استفاده از آردوینو و سنسور دما LM335

در این مقاله نشان می دهیم که چگونه میتوان  یک دماسنج دیجیتالی با استفاده از آردوینو و سنسور دمای آنالوگ LM335 ساخت.

LM335 یک قطعه ۳ پایه (مثل یک ترانزیستور) است که دمای محیط را به ولتاژ آنالوگ تبدیل می کند.این سنسور نیاز به یک مبدل ADC (آنالوگ به دیجیتال) برای تبدیل ولتاژ آنالوگ به داده های دیجیتال دارد که آردوینو این نیاز ما را فراهم میکند.

سنسور دمای LM335 دارای ویژگی های زیر است (از مشخصات فنی داخل دیتاشیت) :
  • از ۴۰۰ میکرو آمپر تا ۵ میلی آمپر عمل می کند.
  • امپدانس دینامیکی کمتر از ۱ Ω
  • به راحتی کالیبره میشود
  • محدوده دمای عملیاتی گسترده
  • قیمت پایین

ولتاژ شکست LM335 به طور مستقیم با درجه حرارت مطلق در  ۱۰mV / ° K  متناسب است. اگر ولتاژ خروجی LM335 به عنوان مثال ۳٫۰۳ (۳۰۳۰ mV) باشد، یعنی درجه حرارت: ۳۰۳ درجه کلوین یا  ۳۰ درجه سانتیگراد می باشد.

سخت افزار مورد نیاز دماسنج دیجیتال با آردوینو و سنسور دما LM335 :

آردوینو UNO

بیشتر بخوانید...  راه اندازی سروو موتور با آردوینو

سنسور دمای LM335

ال سی دی ۱۶X2

پتانسیومتر ۱۰K

مقاومت ۲٫۲K

برد برد

سیم برد بردی

مدار دماسنج دیجیتال با آردوینو و سنسور دما LM335 :

دماسنج دیجیتال با استفاده از آردوینو و سنسور دما LM335

سنسور LM335 دارای ۳ پین است (از چپ به راست): پین ۱ برای کالیبراسیون، در این مثال استفاده نمی شود . پین ۲: خروجی     ،    پین ۳: GND (زمین).

پین خروجی سنسور LM335 به کانال آنالوگ ۰ (A0) وصل شده است. من ۲٫۲K اهم را انتخاب کردم، زیرا همانطور که در دیتاشیت قطعه آمده برای دقت بیشتر ،  جریان خروجی  از  LM335 باید ۱mA باشد. برای مثال اگر دمای  محیط ۲۷ درجه سانتیگراد باشد، ولتاژ خروجی LM335 3.00 ولت خواهد بود و فرض بر این است که ولتاژ منبع دقیقا ۵٫۰۰ ولت است، یعنی  جریان   سنسور (۵-۳) /۲٫۲ = ۰٫۹۰mA است که به اندازه کافی خوب است .   

کد های پروژه دماسنج دیجیتال با آردوینو و سنسور دما LM335 :

آردوینو UNO دارای یک مبدل آنالوگ به دیجیتال با دقت ۱۰ بیت می باشد یعنی مقدار دیجیتالی ولتاژ آنالوگ ورودی مقداری بین ۰ (۰V) و ۱۰۲۳ (۵V) دارد.

// Digital thermometer with Arduino and LM335 temperature sensor
 
// include LCD library code
#include <LiquidCrystal.h>
#define  LM335_pin  0                          // LM335 output pin is connected to Arduino A0 pin
 
// LCD module connections (RS, E, D4, D5, D6, D7)
LiquidCrystal lcd(2, 3, 4, 5, 6, 7);
 
void setup() {
  // set up the LCD's number of columns and rows
  lcd.begin(16, 2);
}
 
char message1[] = "Temp =  00.0 C";
char message2[] =      "=  00.0 K";
int  Kelvin, Celsius;
void loop() {
  delay(1000);                                 // Wait 1s between readings
  Kelvin = analogRead(LM335_pin) * 0.489;      // Read analog voltage and convert it to Kelvin (0.489 = 500/1023)
  Celsius = Kelvin - 273;                      // Convert Kelvin to degree Celsius
  if(Celsius < 0){
    Celsius = abs(Celsius);                    // Absolute value
    message1[7] = '-';                         // Put minus '-' sign
  }
  else
    message1[7]  = ' ';                        // Put space ' '
  if (Celsius > 99)
    message1[7]  = '1';                        // Put 1 (of hundred)
  message1[8]  = (Celsius / 10) % 10  + 48;
  message1[9]  =  Celsius % 10  + 48;
  message1[12] =  223;                         // Put degree symbol
  message2[2]  = (Kelvin / 100) % 10 + 48;
  message2[3]  = (Kelvin / 10) % 10 + 48;
  message2[4]  = Kelvin % 10 + 48;
  lcd.setCursor(0, 0);
  lcd.print(message1);
  lcd.setCursor(5, 1);
  lcd.print(message2);
}

 

بیشتر بخوانید...  آموزش پروژه محور آردوینو – جلسه هشتم ورودی آنالوگ

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

*
*