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

مقدمه

در این آموزش با پروتکل IR آشنا می‌شویم و چگونگی کار با ماژول گیرنده‌ی IR را می‌آموزیم. در ابتدا به معرفی این سامانه و نحوه عملکرد آن می‌پردازیم. سپس نحوه راه اندازی و کار با ماژول آن را خواهیم دید. در نهایت نیز چند مثال کاربری را ارائه خواهیم داد.

 

آنچه در این آموزش یاد می گیرید

  • پروتکل IR چیست و چگونه کار میکند
  • آشنایی با ماژول‌هایگیرنده‌ی IR
  • راه اندازی ماژول توسط آردوینو
  • کنترل صفحه کلید به وسیله‌ی IR ریموت کنترل

آشنایی با پروتکل IR

  • ارتباط IR (InfraRed) یا مادون قرمز، به دلیل استفاده آسان و قیمت مناسب، یکی از روش های متداول ارتباط بی‌سیم است. نور مادون قرمز با طول موجی بیشتر از نور مرئی، در محدوده بینایی انسان قرار ندارد. به همین دلیل گزینه مناسبی برای  ارتباطات بی‌سیم است. وقتی شما دکمه‌ای را روی کنترل نمایشگر خود می‌فشارید یک LED روی کنترل شما به صورت متوالی خاموش و روشن می‌شود. با این کار یک سیگنال مادون قرمز مدوله شده از کنترل به تلویزیون شما می‌رود. پس از دمدوله کردن این سیگنال دستور مورد نظر شما اجرا میشود.ماژول‌های گیرنده‌ی IR به منظور دریافت سیگنال IR مورد استفاده قرار می‌گیرند. این ماژول‌ها در محدوده فرکانسی 38Khz کار می‌کند. زمانی که به سنسور نور مادون قرمز با فرکانس کاری آن نتابد خروجی VOUT مقداری برابر VS (منبع تغذیه) دارد. با تابیدن نور مادون قرمز 38 کیلو هرتز این خروجی صفر می‌شود.

این ماژول‌ها دارای 3 پین هستند که به ترتیب مربوط به VOUT ، VDD و Ground می‌باشند. به همین دلیل استفاده از آن‌ها در مدار بسیار ساده است.

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

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

برد آردوینو Arduino UNO R3 × 1
برد آردوینو لئوناردو × 1
RGB LED × 1
کیت گیرنده و فرستنده IR × 1
سیم جامپر نری به نری × 1

نرم افزارهای مورد نیاز

Arduino IDE

کد مربوط به هر دکمه ریموت را پیدا کنید

در این قسمت می‌خواهیم با استفاده از آردوینو و یک فرستنده و گیرنده‌ی IR ارتباط بین آن‌ها را راه‌اندازی کنیم. برای اینکار ابتدا نیاز داریم تا کد مربوط به هر دکمه‌ی کنترل را بدانیم. با فشرده شدن هر دکمه سیگنال مشخصی به گیرنده ارسال می‌شود و گیرنده آن دریافت کرده و در پنجره Serial Monitor نمایش می‌دهد.

 

سیم بندی

کد

برای راه اندازی مااژول IR نیاز دارید که کتابخانه‌ مربوط به IR آردینو را نصب کنید. این کتابخانه را از لینک زیر دانلود کرده و در پنجره‌ی Sketch گزینه Include library را باز کرده و IR Remote.h را انتخاب کنید.

کتابخانه IR Remote.h

البته ممکن است این کتابخانه به صورت پیشفرض در فایل کتابخانه‌های آردوینوی شما موجود باشد. که در این صورت دیگر نیازی به نصب آن ندارید.


بیایید با توابع مهم IR در کد آشنا شویم:


پینی که خروجی ماژول گیرنده را به آن متصل کردیم مشخص کرده و آن را به آردوینو معرفی میکنیم.


شروع به دریافت سیگنال IR


سیگنال IR دریافت شده را دیکد میکند و آن را در متغیر results ذخیره میکند. در صورتی که سیگنالی دریافت نشود صفر برمیگرداند.


مقادیر results قبلی را صفر کرده و دوباره منتظر دریافت سیگنال جدید میشود.

مثال 1: با استفاده از ریموت کنترل IR اشیاء را کنترل کنید

پس از اینکه کد هر دکمه را پیدا کردیم، می‌توانیم از آن برای کنترل دستورات استفاده کنیم. در این مثال یک ال ای دی RGB را به آردوینو متصل کرده و با کمک ریموت کنترل رنگ آن را تغیر می‌دهیم. برای اینکار چند دکمه‌ی مشخص روی کنترل را در نظر گرفته و کد آن‌ها را ذخیره می‌کنیم. در این مثال از دکمه‌های 1 تا 3 کنترل استفاده شده است. سپس به هر دکمه رنگ مشخصی را نسبت می‌دهیم. در نهایت با فشردن هر کدام از کلید‌های 1 تا 3، ال ای دی تغییر رنگ می‌دهد .

برای استفاده از رنگ های بیشتر می‌توانید عدد مربوط به هر رنگ را اینجا پیدا کنید.

سیم بندی

کد

مثال 2: با ریموت کنترل IR سوپرماریو بازی کنید!

در این قسمت می‌خواهیم با استفاده از ریموت کنترل IR به جای کیبورد رایانه، بازی محبوب Super Mario را انجام دهیم! برای این کار از آردینو  Micro یا Leonardo  استفاده می‌کنیم. آردینو را به وسیله USB به کامپیوتر متصل کرده و کد زیر را روی آن اجرا می‌کنیم.

 

سیم بندی

کد

در این قسمت برای کنترل کیبرد به کتابخانه‌ی Keyboard.h نیاز دارید که میتوانید آن را از لینک زیر دریافت کنید:

کتابخانه Keyboard.h

نکته:

دقت داشته باشید که کتابخانه‌ی مربوط به کیبورد آردوینو فقط بر روی برد‌های سریLeonardo, Esp Lora, Zero, Due d MKR Family و 32u4  قابلیت اجرا دارند.

یک گام جلوتر

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

Share this post

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

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