آردوینو آردوینو Arduino Uno نمایشگر LCD پروژه های آردوینو پکیج سنسور آردوینو

آموزش راه اندازی سنسور LM35 آردوینو سنجش دمای منفی نمایشگر LCD

آمزوش راه اندازی سنسور lm35
نوشته شده توسط علیرضا قربانی

در این مطلب از آموزش‌های پروژه محور آردوینو قصد اندازه‌گیری  دمای مثبت و منفی توسط سنسور lm35 را داریم.از نقات قوت این پروژه می‌توان به اندازه‌گیری دمای منفی توسط این سنسور اشاره کرد که نمونه‌ی آن در اینترنت به ندرت یافت می‌شود.با دیجی اسپارک همراه باشید.

 


ویژگی‌های سنسور دما LM35


اندازه‌گیری دما در رنج ۵۵- تا ۱۵۰+ درجه سانتی‌گراد با حداکثر  خطای ۰٫۵ درجه سانتی‌گراد

خروجی به صورت خطی ، ۱۰ میلی ولت به ازای تغییر هر درجه سانتی‌گراد

خروچی دما به صورت درجه سانتی‌گراد کالیبره شده است

ولتاژ کاری بین ۴ تا ۳۰ ولت

 

 


توضیحات سنسور LM35 با آردوینو


ترتین پینن های این سنور همانند شکل زیر می‌باشد. در دیتاشیت این سنسور دو نمونه مدار ساده از این سنسور قرار گرفته است.

آموزش اندازه گیری دمای منفی با lm35

مدار ۱ – Lm35 Arduino

آموزش راه اندازی سنسور lm35

مدار شماره ۱

با استفاده از این مدار ساده فقط می‌توان دما را در رنج ۲+ تا ۱۵۰+ درجه سانتی‌گراد اندازه‌گیری نمود و عملا اندازه گیری دمای منفی توسط این مدار غیر‌ممکن می‌باشد. در این مدار به ازای هر ۱۰ میلی ولت ، یک درجه سانتی گراد دما تغییر می‌کند.

 

مدار ۲ – Lm35 Arduino

توسط این مداز میتوان در بازه کامل سنسور lm 35  یعنی ۵۰- تا ۱۵۰+درجع سانتی‌گراد دما را اندازه‌گیری نمود.

مقدار مقاومت R1 در این مدار از تقسیم ولتاز تعذیه سنسور بر ۵ میکرو آمپر بدست می‌آید.توسط این مدار میتوان ولتاژی بین ۵۵۰- میلی ولت و همچنین ۱۵۰۰ میلی ولت بدست آورد.ولی مشکل اینجاست که ADC فقط میتواند مقادیر مثبت را بگیرد ، و عملا اعمال ولتاژ‌های منفی به پین های ADC (آنالوگ به دیجیتال ) آردوینو غیر ممکن است.برای این منظور از مدار شماره ۳ استفاده میکنیم.

آومزش راه اندازی lm با استفاده از آردوینو

مدار شماره ۲

 

 

آموزش راه اندازی سنسور LM35 با اندازه گیری دمای منفی

مدار شماره ۳

مدار ۳ – Lm35 Arduino

با استفاده از این مدار و انجام عملیات ADC تفاضلی می‌توان دما را در رنج ۵۵- تا ۱۵۰+ درجه سانتی گراد محاسبه نمود . روش کار اینگونه است که Vout+  و Vout- را به طور جداگانه به دو پین آنالوگ دیجیتال آردوینو متصل می‌کینم و مقدار آنالوگ هر کدام را بدست می‌آوریم.سپس ابن دو مقدار را از هم کم میکنیم.

آموزش اندازه گیری دمای منفی lm35 با استفاده از آردوینو

 

 

 

 

 

بعد از محاسبات فوق مقدار differenceValue را توسط فرمول زیر به ولتاژ تبدیل می‌کنیم.

آموزش اندازه گیری دمای منفی lm35 با استفاده از آردوینو

 

 

 

 

با توجه به دیتاشیت این سنسور ، به ازای هر ۱۰ میلی ولت ، یک درجه سانتی‌گراد تغییر دما  داریم . بنابراین مقدار diffferenceVlotage را در ۱۰۰ ضرب می‌کنیم تا دمای اندازه‌گیری شده بدست آید.

 


کد سنسور دما LM35DZ با آردوینو


 

#include <LiquidCrystal.h>
LiquidCrystal lcd(6, 7, 8, 9, 10, 11, 12);
float adcValue0 , adcValue1, vlotage0 , voltage1 , difference , differenceVoltage , temp;
void setup()
{
  lcd.begin(16, 2);
  Serial.begin(9600);
}
void loop()
{
  adcValue0 = analogRead(A0);
  adcValue1 = analogRead(A1);
  difference = adcValue0 - adcValue1;
  differenceVoltage = (difference * 5) / 1023;
  temp = differenceVoltage * 100;
  lcd.print("Dama : ");
  lcd.print(temp);
  lcd.print("C");
  delay(500);
  lcd.clear();


}

 


شماتیک پروژه LM35DZ Arduino


نمایی از شماتیک پروژه در پروتئوس

 

دانلود کدهای پروژه به همراه فایل شبیه سازی شده در پروتئوس

 


سخت افزار مورد نیاز


برد آردوینو Arduino Uno

سنسور دما LM35DZ

نمایشگر LCD 2X16

 

چنانچه در مراحل راه اندازی و انجام این پروژه با مشکل مواجه شدید، بدون هیچ نگرانی در انتهای همین پست، به صورت ثبت نظر سوالتان را مطرح کنید. من در سریع‌ترین زمان ممکن پاسخ رفع مشکل شما را خواهم داد. همچنین اگر ایرادی در کدها و یا مراحل اجرایی وجود دارند می‌توانید از همین طریق اطلاع رسانی کنید.

در پایان نظرات و پیشنهادات خود را با ما درمیان بگذارید و با اشتراک گذاری این آموزش در شبکه های اجتماعی , از وبسایت دیجی اسپارک حمایت کنید.

 

درباره نویسنده

علیرضا قربانی

علیرضا قربانی هستم دانشجوی مهندسی پزشکی. چیزهای خیلی زیادی رو در دنیا دوست دارم. یک گیک هستم و یشه گفت یک هکر. نه به معنی دزدی پسورد و ایمیل مردم. به معنی عشق به دونستن و عشق به تحقیق درباره خیلی از چیزهایی که می بینم و می‌شنوم. اگر بخوام علاقه‌مندی‌ درجه یکم رو نام ببرم میتونم بگم برنامه نویسی و بعد از اون امبدد سیستم ها.

تبادل نظر و رفع عیب با ثبت دیدگاه

۳۷ دیدگاه

  • آقا ما اینو بعد چند ساعت اعصاب خوردی و اینا انجامش دادیم
    کسی دیگه درستش کرده؟
    میخواستم ببینم از شما هم دمارو اشتباه میزنه؟

  • سلام میشه بگید چه جوریش کنم که بفرسته رو ال سی دی کاراکتری
    و اگه میشه کدهاشو و اتصالاتشونو بگید

  • درود
    عزیزجان شرمنده میدونم توقع زیادی هستش و شاید توی اموزشهای ایندتون باشه ولی خواستم بدونم که چطوری باید ماژول ترموکوپل رو به اردوینو وصل کنم و به وسیله کامپیوتر و همین طور یه ال سی دی کوچک و چندتا دکمه بشه درجه دمای دوتا هیتر رو تنظیم کنم و واقعن واسم خیلی مهم هستش اگه کمکم کنید ممنون میشم واقعتش میدونم که برای تنظیم دمای هیتر با کنترلر دما بگیرم ولی هم قیمتش گرونه هم تعداد کمیش وصل میشن به کامپیوتر که خودش قیمتش و چند برابر میکنه بازم ممنونم
    باید ببخشد که اینجا این سوال و پرسیدم جایی بهتری ندیدم

    ماژول مورد نظر هم این هستش
    ماژول ترموکوپل MAX6675 تایپ K
    http://shop.aftabrayaneh.com/Sensors/Temperature_Humidity/MAX6675_K-type_Thermocouple_Temperature_Sensor_Module.html

    • سلام

      ماژول مورد نظر شما با پروتکل Spi به آردوینو متصل میشه

      برای ارتباط با کامپیوتر هم باید از پورت usb استفاده کنید که برنامه ی سمت کامپیوتر را هم با هر زبانی که که دوت داشته باشین میتونین بنویسین( البته لب ویو هم برای این ار خیلی مناسبه)

  • ممنون از آموزش
    من بعد از اینکه lm35 رو به ۵ ولت متصل می کنم به سرعت و به شدت داغ می شه طوری که نمی شه بهش دست زد. با تغییر سنسور هم وضعیت همین بود. اتصالات رو کامل چک کردم و از مدار ساده ی lm35 که توش خروجی مستقیما به میکرو وصل می شه استفاده کردم.
    حتی سنسور رو به صورت جدا و بدون اتصال اضافه، فقط به ۵ولت و GND متصل کردم و باز هم همون قدر داغ می شه.
    به نظر شما اشکال از کجاست؟

  • سلام به شما 

    با تشکر از سایت خوبتون 

    من یه سنسور lm35dz گرفتم اما خروجیش با افزایش ولتاژ ورودی افزایش پیدا میکنه  

    ولتاژ ورودی ۷ ولت خروجی ۰٫۱۱ ولت 

    ولتاژ ورودی ۱۷ ولت خروجی ۳٫۲۵ ولت 

    همه اینها در دمای اتاق بوده 

    آیا این سنسور مشکل داره ؟؟؟

  • سلام به شما

    اما دیتا شیت بیش از ۵ ولت رو مجاز و بدون مشکل دونسته

    میشه یکم واضح تر صحبت کنید

    منتظرم

    ممنون

    • بله بیشتر از ۵ ولت مجازه

      ولی برنامه ای که نوشته شده بر اساس ۵ ولت هست.

      در صورت تغییر ولتاژ VCC ، خروجی سنسور نیز تعییر میکنه و باید خودتون فرمول دما را بدست بیارید

  • سلام…
    آیا میشه از دیود ۱N4007 یا ۱N4001 استفاده کرد بجاش؟؟
    و بجای ۱۸K از مقاومت ۲۰K استفاده کنم؟؟؟

  • […] ۳۳ . دانلود ۳۹ پروژه رایگان با AVR | مهندس | هر آنچه یک دانشجو…‎۱۶ مارس ۲۰۱۴ … دانلود ۳۹ پروژه کاملا کاربردی و عملی با میکرو کنترلر محبوب AVR … پروژه ی دماسنج با سنسور LM35 23. … پروژه کنترل کننده با SMS 38.  […]

  • سلام خسته نباشید . من می خواستم دما به یک مقدار خاصی که رسید یکی از خروجی ها ۱ بشه.از دستور if هم استفاده کردم نشد.لطفا راهنمایی کنید خیلی بهش نیاز دارم

    • با سلام
      لطفا نمونه کدها و کتابخانه ای که استفاده کرده‌اید را اعلام کنید.

  • salam aqaye qorbani
    baraye andazegiri damaye badan va zaraban qalb ba Arduino betore hamzaman az che sensori behtare estefade konam baraye dama ?
    baraye zarabane qalb ye mazhul peyda kardam damaro nemidunam

  • سلام
    لطفا بگید این سنسور بهتر و دقیق تره یا سنسورDS18B20.
    در ضمن من در خصوص کد ها ی برنامه اتصال چند سنسور DS18B20به یک برد آردوینو پرسیدم هیچ جوابی داده نشد .آیا علت خاصی داره?

  • سلام دلیل استفاده از دیود ها و مقاومت در این مدار چیه؟ در واقعا این سه چه کار انجام میدهند؟؟؟

    • سلام
      همانطور که در متن آموزش و شماتیک آن گفته شده است برای اندازه گیری دمای منفی در مدار از دیود و مقاومت استفاده شده است.

    • با سلام
      از آنجایی که از لحاظ عملکرد یکسان هستند، بله می‌توانید استفاده کنید. ولی خروجی LM335 بر اساس شاخص کلوین می‌باشد. از این لحاظ ممکن است نیاز به مپ کردن خروجی وجود داشته باشد.

  • سلام
    من از این سنسور استفاده میکنم و وقتی دریافتی پایه آنالوگ رو در ۰٫۴۸۸۲۸۱۲۵ ضرب میکنم دمای نمایشی رو ۴۹۹ میزنه در اتاق!! بنظرتون مشکل کارم کجاست در استفاده از lm35؟؟

    • با سلام
      در صورتیکه به کد مورد استفاده اطمینان دارید، مواردی از جمله اتصالات را بررسی نمایید.

  • سلام ببخشید من مدار رو بستم اما سنسور اطلاعات دقیق نمیده و همش دایی که نشون میده بالای ۴۰۰ درجه هستش چیکار کنم