در این سری از پروژه های آموزشی آردوینو، دمای محیط را توسط ماژول دماسنج آنالوگ J34 اندازه گیری کرده ایم. از آنجا که اندازه گیری دمای محیط برای پروژه ها و مکان های مختلف حائز اهمیت است، در این پروژه سعی کردیم از سری ماژول هایی که توانایی اندازه گیری دما را دارند استفاده کنیم. ماژول J34 علاوه بر هزینه پایین آن دارای ساختمانی ساده و راحت است که به راحتی قادر خواهید بود در کمترن زمان یک دماسنج آنالوگ بسازید، اگر تمایل به انجام پروژه اندازه گیری دما هستید، مطالب زیر که در وب سایت الکترونیک98 منتشر گردیده است را مطالعه بفرمائید.
ماژول دماسنج آنالوگ J34
مقاومت ماژول دماسنج آنالوگ با تغییرات دمای محیط به میزان قابل توجهی تغییر می کند که همین ویزگی باعث می شود که درجه حرارت در زمان های مختلف را به درستی نشان دهد. از جمله مشخصات و ویژگی های ماژول دماسنج آنالوگ J34 عبارتنداز:
1. ولتاژ مورد نیاز 5 ولت
2. محدوده دمایی 55- تا 125+ درجه سانتی گراد
3. دقت اندازه گیری 1 درجه سانتی گراد
4. وزن 7 گرم
5. ابعاد 19×15 میلیمتر
لیست قطعات مورد نیاز
برد آردوینو Arduino UNO R3 مدل DIP | 1 عدد |
ماژول دمای آنالوگ مدل KY-013 | 1 عدد |
LCD کاراکتری مدل 16×2 با Backlighting آبی | 1 عدد |
ولوم 10kΩ | 1 عدد |
برد بورد (پروجکت برد) مدل GL | 1 عدد |
سیم جامپر برد بوردی مدل دو سر نری (سری 40تایی) | 1 عدد |
نحوه اتصال قطعات به یکدیگر و برد آردوینو بسیار راحت است به طوری که با توجه به توضیحات زیر قادر خواهید بود در کمترین زمان اتصالات لازم را انجام دهید.
اتصال ماژول دماسنج آنالوگ به برد آردوینو
1. پایه S ماژول را به پین آنالوگ A0 برد آردوینو متصل کنید.
2. پایه منفی – ماژول دماسنج آنالوگ را به پین زمین GND برد آردوینو اتصال دهید.
3. پایه مثبت + ماژول را به پین 5 ولت برد آردوینو متصل نمائید.
اتصال LCD1602 و پتانسیومتر به برد آردوینو
1. ابتدا پایه RS مربوط به LCD را به پین دیجیتال شماره 4 یا همان D4 برد آردوینو متصل کنید.
2. پایه R/W ال. سی.دی را به پین زمین برد آردوینو متصل نمائید.
3. پایه E را به پین 5 ولت آردوینو وصل کنید.
4. در این مرحله پایه های D4 و D7 مربوط به LCD را به ترتیب به پین های 9 و 12 آردوینو متصل نمائید.
5. پایه Vss ال. سی. دی به پین زمین آردوینو وصل شود.
6. پایه VDD را به پین 5 ولت آردوینو متصل کنید.
7. پایه A را به پین 3.3 برد آردوینو وصل نمائید.
8. پایه K را به پین زمین آردوینو اتصال دهید.
9. یکی از پایه های پتاسیومتر را به پایه VO ال. سی. دی متصل کنید.
10. پایه دیگر پتانسومتر را به زمین وصل نمائید.
برنامه نویسی پروژه
بعد از اتصال قطعات به یکدیگر، کدهای زیر را در نرم افزار آردوینو کپی نموده سپس به برد آردوینو آپلود کنید. اکنون با لمس کردن ترمیستور می توانید دمای کنونی را بر حسب درجه سانتی گراد و فارنهایت را بر روی LCD1602 مشاهده کنید.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
#include <LiquidCrystal.h> // initialize the library with the numbers of the interface pins LiquidCrystal lcd(4, 5, 9, 10, 11, 12); #define analogPin A0 //the thermistor attach to #define beta 4090 //the beta of the thermistor #define resistance 10 //the value of the pull-down resistor void setup() { // set up the LCD's number of columns and rows: lcd.begin(16, 2); lcd.clear(); } void loop() { //read thermistor value long a =1023 - analogRead(analogPin); //the calculating formula of temperature float tempC = beta /(log((1025.0 * 10 / a - 10) / 10) + beta / 298.0) - 273.0; float tempF = tempC + 273.15; // Print a message of "Temp: "to the LCD. // set the cursor to column 0, line 0 lcd.setCursor(0, 0); lcd.print("Temp: "); // Print a centigrade temperature to the LCD. lcd.print(tempC); // Print the unit of the centigrade temperature to the LCD. lcd.print(" C"); // set the cursor to column 0, line 1 // (note: line 1 is the second row, since counting begins with 0): lcd.setCursor(0, 1); lcd.print("Fahr: "); // Print a Fahrenheit temperature to the LCD. lcd.print(tempF); // Print the unit of the Fahrenheit temperature to the LCD. lcd.print(" F"); delay(200); //wait for 100 milliseconds } |