آردوینوالکترونیکپروژه آردوینو

راه اندازی سنسور کنترل دما با هزینه کم و کارایی بالا به کمک آردوینو

مقدمه

پروژه کنترل دما LM35 با آردوینو: کنترل دما یکی از پارامتر هایی است که همه در همه جای دنیا به آن نیاز دارند. پس اگر بتوانید پروژه ای خوب و کاربردی با آن بسازید شاید از همین یک پروژه میلیونر شوید. امروز قراره که سنسور دمای lm35 را با آردوینو برای شما راه اندازی کنیم. با داتوس همراه باشید. 

نمایی از سنسور LM35
نمایی از سنسور LM35

این سنسور قابلیت تحمل تا ۳۰ ولت ولتاژ (طبق گفته دیتاشیت) را دارا می باشد و مصرف جریان آن کمتر از 60uA می باشد. استپ اندازه گیری آن 10mv، محدوده اندازه گیری دمای آن -۵۵ تا ۱۵۰ درجه سانتی گراد است و خروجی این سنسور به صورت آنالوگ می باشد. 

نمایی از شکل سنسور LM35
نمایی از شکل سنسور LM35

در این پروژه، چگونگی ساختن یک دماسنج به کمک سنسور دمای LM35 برد آردونیو را به شما توضیح خواهیم داد. 

به عنوان یک دماسنج، مدار دمای محیط اطراف را حس می کند و دمای محیط را بر حسب درجه سلیسیوس یا سانتیگراد اعلام می کند. 

سنسور دمایی که برای اندازه گیری دمای محیط استفاده می کنیم سنسور LM35 است. ما این سنسور را با یک برد آردونیو ترکیب می کنیم تا بتوانیم دمای محیط را اندازه گیری کنیم. آردونیو مقدار دمای اندازه گیری شده توسط سنسور LM35 را می خواند و آنرا به درجه سلیسیوس تبدیل می کند که قابل خواندن توسط کامپیوتر و سریال مانیتور آردونیو است. 

نمایی از آردوینو در پروژه پروژه کنترل دما LM35 با آردوینو
نمایی از آردوینو در پروژه پروژه کنترل دما LM35 با آردوینو

قطعات مورد نیاز برای پروژه کنترل دما LM35 با آردوینو

* برد آردونیو 

* سنسور دمای LM35 

* کامپیوتر 

* کابل USB نوع A and B  برای اتصال آردونیو به کامپیوتر 

ما می توانیم هر مدل از بردهای آردونیو را استفاده کنیم. 

سنسور LM35 به یک تغذیه +5Vdc نیاز دارد. این مطلوب ماست چون پایه پاور آردونیو ۵ ولت خروجی می دهد. سنسور ۳ پایه دارد که دو پایه برای تغذیه و یک پایه برای خروجی آنالوگ است. 

پایه خروجی یک ولتاژ آنالوگ که رابطه خطی با درجه سلسیوس یا سانتیگراد دارد. پایه ۲ یک خروجی یک میلی ولت به ازای هر ۰.۱ درجه سانتیگراد (۱۰ میلی ولت به ازای یک درجه) می دهد. بنابراین تنها کاری که برای تبدیل دما به درجه سانتیگراد باید انجام داد این است که ولتاژ خزوجی را بر ۱۰ تقسیم کرد. برای مثال اگر ولتاژ خروجی ۳۱۵ میلی ولت یا ۰.۳۱۵ ولت باشد، معادل ۳۱.۵ درجه سانتیگراد است. 

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

شکل زیر پایه های سنسور LM35 را نشان می دهد. 

پایه های سنسور LM35 برای اتصال به آردوینو
پایه های سنسور LM35

پایه یک ولتاژ DC مثبت برای کار کردن سنسور دریافت می کند. این ولتاژ در حدود ۵ ولت است. پایه سه زمین است؛ بنابراین این پایه به ترمینال زمین یا منفی منبع تغذیه DC متصل می گردد. پایه شماره ۲ نیز خروجی سنسور است. این پایه یک ولتاژ خروجی آنالوگ که متناسب با دمای اندازه گیری شده توسط سنسور است را به ما می دهد.

شماتیک مدار 

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

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

پایه ۱ سنسور که به +5V برد آردونیو متصل است. 

پایه ۲ سنسور که یک مقدار آنالوگ را به پایه A0 آردونیو می فرستد. 

پایه ۳ سنسور که به زمین آردونیو متصل می شود. 

اکنون که سخت افزار مدار آماده اس می توانیم برد را به کامپیوتر وصل کنیم و کد برنامه را که در زیر آمده را بر روی برد آپلود کنیم و همچنین دما را روی کامپیوتر ببینیم. 

کد برنامه پروژه کنترل دما LM35 با آردوینو

int outputpin= 0; 

تعریف متغییری برای معرفی پایه خروجی سنسور دما 

void setup() 

Serial.begin(9600); 

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


void loop() 

int rawvoltage= analogRead(outputpin); 

مقدار آنالوگ با استفاده از دستور analogRead خوانده شده و در متغییر مربوطه قرار داده می شود 

float millivolts= (rawvoltage/1024.0) * 5000; 

خروجی سنسور داده خام است که باید ابتدا بر ۱۰۲۴ تقسیم و سپس در ۵۰۰۰ ضرب کنیم. داده خام را بر ۱۰۲۴ تقسیم می کنیم چون یک بازه ۱۰۲۴ تایی ۵ ولت را اشغال می کند. از آنجا که پایه خروجی حداکثر می تواند ۵ ولت (۱۰۲۴) بدهد، ۱۰۲۴ بازه ممکنی که می تواند بدهد را نشان می دهد. سپس این مقدار را در ۵۰۰۰ ضرب می کنیم تا تبدیل میلی ولت انجام شود. بخاطر این است که ۵۰۰۰ میلی ولت در ۵ ولت داریم 

float celsius= millivolts/10; 
Serial.print(celsius); 
Serial.print(" degrees Celsius, "); 
Serial.print((celsius * 9)/5 + 32); 

تبدیل دما به فارنهایت  با استفاده از فرمول زیر: 

((celsius * 9) / 5 + 32) 
Serial.println(" degrees Fahrenheit"); 

چاپ مقادیر سلسیوس و فارنهایت 

delay(1000); 

تاخیر ۱۰۰۰ میلی ثانیه 

در این کد در هر ۱ ثانیه مقادیر سنسور اپدیت می شود، برای بررسی دقت سنسور می توانید آن را در ظرف آب و یخ مخلوط قرار داده و اگر مقدار بیشتر از صف بود مقادیر ۱۰۲۴ یا ۵۰۰۰ را طوری تغییر دهید که دقیق تر نشان دهد. 

سخن پایانی

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

دیتاشیت 

لینک های مربوطه: 

http://www.learningaboutelectronics.com/Articles/LM35-temperature-sensor-circuit.php

http://www.learningaboutelectronics.com/Articles/Temperature-sensor-LCD-circuit.php

منبع
منبع
نمایش بیشتر

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا