اندازه گیری شدت نور ( لوکس متر ) با آردوینو

به نام خدا

اندازه گیری شدت نور ( لوکس متر ) با آردوینو

در این پروژه میخواهیم یک شدت سنج نور با استفاده از فتوسل ( LDR ) و برد آردوینو UNO درست کنیم .

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

 

LDR1

 

فوتوسل یک مقاومت متغیر حساس به نور است ، یعنی مقاومت آن با تغییر شدت نور تغییر میکند . طبق نمودار پایین میتوان گفت که با کاهش شدت روشنایی ، مقاومت فوتوسل افزایش می یابد و با افزایش شدت روشنایی ، مقاومت فوتوسل کاهش می یابد .

how_a-light_depedant_resistor

 

بیشتر بخوانید...  دماسنج با سنسور DS1820

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

  • برد آردوینو
  • ۸ عدد LED
  • مقاومت ۲۲۰ اهم
  • مقاومت ۱۰ کیلو اهم
  • فوتوسل

مدار پروزه ما به صورت زیر است .

LDR

 

از آنجایی که فوتوسل یک مقاومت متغیر است پس توسط آن ولتاژ تغییر میکند . پس ما برای با یک ولتاژ متغیر آنالوگ سر و کار داریم که باید آن را بخوانیم . به همین منظور باید از واحد مبدل آنالوگ به دیجیتال یا همان ADC آردوینو استفاده کنیم . همانطور که در شکل بالا میبینید ما فوتوسل را به پین شماره صفر قسمت ADC آردوینو یعنی پین A0 وصل کرده ایم . یک ولتاژ بین ۰ تا ۵ ولت به پین A0 میرسد که ADC آردوینو آن را به یک عدد بین ۰ تا ۱۰۲۳ تبدیل میکند .

همان طور که در شکل بالا میبینید LED ها به پین های دیجیتال آردوینو وصل شدند و توسط یک مقاومت ۲۲۰ اهم برای جریان کشی آن ها را محدود کرده ایم . این LED ها با توجه به میزان ولتاژ خوانده شده از ADC روشن میشوند .

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

دانلود

عملکرد برنامه :

ابتدا پین های دیجیتال آردوینو را که به led ها وصل میشوند را به عنوان خروجی تعریف کرده ایم . و تعریف متغیر را برای پین شماره ۰ مبدل آنالوگ به دیجیتال ، متغیر i برای شمارش و light برای ریختن عدد خوانده شده از adc انجام داده ایم .

در این قسمت تمام پین هایی که برای LED ها استفاده کرده ایم را به عنوان خروجی تعریف میکنیم .
شروع حلقه اصلی برنامه . در این حلقه ابتدا ولتاژ را از پین شماره ۰ قسمت مبدل آنالوگ به دیجیتال میخوانیم . در خط بعدی این مقدار خوانده شده را در سریال مانیتور نرم افزار آردوینو نمایش میدهیم . در خط بعدی مقدار خوانده شده را تقسیم بر ۵۰ می کنیم ( برای راحتی کار برای روشن کردن LED ها ) و سپس این عدد را نیز در سریال مانیتور نرم افزار آردوینو نمایش میدهیم .
در حلقه شرطی زیر گفته ایم که اگر متغیر Light صفر بود تمام led ها خاموش شوند در غیر این صورت اگر مثلا متغیر Light برابر با ۵ بود ، ۵ تا LED اول روشن شوند و بقیه خاموش شوند .

 پایان

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