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

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

آموزش های پروژه محور آردوینو

به نام خدا

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

در این جلسه در ادامه جلسه قبل می خواهیم با کمک برد آردوینو ، دما و شدت نور را بر روی ال سی دی کاراکتری نمایش دهیم .

arduino_overview

 

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

دما را هم توسط یک سنسور اندازه گیری دما اندازه می گیریم . این سنسور دارای ۳ پایه است که دو پایه از آن مربوط به ۵ ولت و زمین ( GND ) می باشد و پایه سوم آن به ورودی های مبدل آنالوگ به دیجیتال ( ADC ) برد آردوینو وصل می شود .

قطعات مورد نیاز پروژه :

– ال سی دی کارکتری ۲*۱۶

learn_arduino_lcd-2

 

– مقاومت متغیر ۱۰ کیلو اهمی

پتانسیومتر

 

– مقاومت یک کیلو اهمی ( قهوه – مشکی – قرمز )

arduino_R-1k-level

 

– فتوسل

resistor_LDR

 

– سنسور دمای TMP36

arduino_transistor

 

– بردبورد

learn_arduino_breadboard

 

– برد آردوینو UNO

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

arduino_uno_r3_web

 

– مقداری سیم بردبورد

learn_arduino_wire

 

سنسور دمای TMP36 شبیه ترانزیستور PN2222 است اما وقتی به قسمت تخت آن نگاه می کنید نوشته TMP36 را می بینید .

شماتیک مدار :

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

learn_arduino_circuit

مدار بالا رو ببند و بریم سراغ کد های برنامه آردوینو .

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

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

کد های برنامه را از لینک زیر دانلود کنید .

 

دانلود فایل

 

در تابع LOOP ابتدا آمده ایم ولتاژ را از پایه سنسور دما خوانده ایم و به دیجیتال تبدیل کرده ایم . بعد از یکی سری محاسبات بر روی عدد دربافت شده دما را به دست می آوریم و بر روی ال سی دی نمایش می دهیم .

بیشتر بخوانید...  نمایش مختصات توسط GPS بر روی نقشه u-center

به خطوط محاسبه دما در زیر توجه کنید .

int tempReading = analogRead(tempPin);
  float tempVolts = tempReading * 5.0 / 1024.0;
  float tempC = (tempVolts - 0.5) * 100.0;
  float tempF = tempC * 9.0 / 5.0 + 32.0;

عدد خام دیجیتالی را که گرفته ایم در ۵ ضرب کرده و بر ۱۰۲۴ تقسیم می کنیم تا ولتاژ خوانده شده از پایه tempPin را که یک عدد بین ۰ تا ۵ است را به دست آوریم .

برای تبدیل ولتاژ به درجه سلسیوس باید ابتدا مقدار ۰٫۵ را از ولتاژ به دست آمده تفریق کنیم و سپس در ۱۰۰ ضرب کنیم .

خط چهارم هم که فرمول تبدیل درجه سلسیوس به فارنهایت است .

سایر قسمت های کد هم که در جلسه قبل و جلسه ۹ توضیح داده شده است .

 

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

*
*