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

آموزش پروژه محور آردوینو – جلسه هفتم ورودی و خروجی ۲

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

به نام خدا

آموزش پروژه محور آردوینو – جلسه هفتم ورودی و خروجی۲

در این جلسه میخواهیم با استفاده از مطالبی که تاکنون در جلسه های آموزش پروژه محور آردوینو آموختیم یک مدار جدید ببندیم و با آن رنگ ال ای دی های RGB را توسط میکروسوئیچ ها و موج PWM آردوینو کنترل کنیم .

overview

 

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

ال ای دی RGB کاتد مشترک

 

rgb_cc_10mm

 

مقاومت ۲۷۰ اهم ( قرمز – بنفش – قهوه ای )

R-270-level

 

میکروسوئیچ :

switch_click

 

بردبورد :

breadboard_half

 

برد آردوینو :

uno_r3

 

مقداری سیم

learn_arduino_jumpers

شماتیک مدار :

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

بیشتر بخوانید...  آموزش پروژه محور آردوینو – جلسه دهم تولید صدا

 

circuit

 

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

بعد از اینکه برنامه زیر را در برد آردوینو خود آپلود کردید میتوانید با فشار دادن میکروسوئیچ ها رنگ ال ای دی را تنظیم کنید . میکروسوئیچ بالایی مربوط به رنگ قرمز ، وسطی مربوط به رنگ سبز و پایینی مربوط به رنگ آبی میباشد . با فشار دادن میکروسوئیچ به تدریج رنگ مربوط به همان میکروسوئیچ پررنگ تر میشود . میتوانید با این سه میکروسوئیچ ، این سه رنگ را با هم ترکیب کنید و رنگ های مختلفی ایجاد کنید .

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

 

دانلود فایل

 

در خطوط برنامه پایه هایی که به میکروسوئیچ وصل اند را به صورت پول آپ تنظیم کرده ایم یعنی به صورت پیش فرض High هستند و با فشار دادن کلید Low میشوند .

متغیر هایی که در خطوط زیر تعریف شده اند متغیر هایی هستند که با فشار دادن میکروسوئیچ ها مقدار آن ها تغییر میکند .

    int red = 0;
    int blue = 0;
    int green = 0;

حلقه اصلی برنامه از دو قسمت تشکیل شده است . وظیفه قسمت اول این است که تغییرات لازم با فشار دادن میکروسوئیچ ها در متغیر های برنامه ایجاد شود . به عنوان مثال در خطوط زیر با فشار دادن میکروسوئیچ مربوط به رنگ قرمز ، یکی یکی به متغیر red تا ۲۵۵ اضافه میشود .

if (digitalRead(redSwitchPin) == LOW)
  {
    red ++;
    if (red > 255) red = 0;
  }

و در قسمت دوم حلقه اصلی که در خطوط زیر آمده است ، عدد متغیر توسط پالس PWM که در جلسه های قبل توضیح داده شد به پین مربوطه اعمال میشود .

      analogWrite(redLEDPin, red);
      analogWrite(greenLEDPin, green);
      analogWrite(blueLEDPin, blue);
 پایان جلسه هفتم آموزش آردوینو ، تا جلسه بعد خدانگهدار

 

بیشتر بخوانید...  راه اندازی سروو موتور بدون نیاز به pwm!!!

 

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

*
*