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

مدیریت سروو موتور با ریموت کنترل IR و برد آردوینو Arduino

نوشته شده توسط پریسا پوربلورچیان

تا چند سال پیش مدیریت انواع دستگاه های الکترونیکی با یک ریموت کنترل فقط در حد ایده بود. ولی امروزه به لطف حضور بردهای ماژولار و به خصوص برد آردوینو Arduino این موضوع عملی میشود. یک کنترل تلویزیون را در نظر بگیرید. در ساده‌ترین حالت بین ۱۵ تا ۴۰ دکمه برای حالت‌های مختلف دارد. تصور کنید با همین ریموت علاوه بر تلویزیون دیگر وسایل برقی در منزل و محیط کار را بتوانید مدیریت کنید.

تلویزیون یک ریموت مجزا دارد. سیستم سینمای خانگی همینطور، گیرنده دیجیتال، سیستم تهویه و… در هر منزل چندین نوع کنترل برای وسایل مختلف وجود دارد. این آموزش مقدمه‌ای برای حذف کلیه ریموت‌ها در منزل و فقط استفاده از یک ریموت اصلی می‌باشد. برای این منظور باید ابتدا فرکانسی که هر دکمه از هر ریموت تولید می‌کند را توسط برد آردوینو Arduino شناسایی و ذخیره کنیم. از این رو در پایان این آموزش انتظار می‌رود بتوانید کدهایی که ریموت‌های IR مختلف تولید می‌کنند را شناسایی و در برنامه آردوینو بخوانید.

درضمن توجه داشته باشید، که از هر ریموت مادون قرمزی میتوانید استفاده کنید. حتی کنترل تلویزیون یا کنترل کولر گازی و … پس از ریموت‌های موجود در منزل، هوشمندانه استفاده کنید.

دراین پست با ماژول ریموت کنترل و برد آردوینو Arduino به صورت بسیار ساده یک سروو موتور را از راه دور مدیریت می‌کنیم. به صورت عملی یک سروو موتور کاربرد گسترده‌ای دارد. در ادامه این آموزش جذاب با مرجع تخصصی آردوینو ، دیجی اسپارک همراه باشید.

 

وسایل مورد نیاز:

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

سروو موتور SG90

برد آردوینو Arduino Uno

چند رشته سیم

بردبورد (دلخواه)

 

سروو موتور SG90 دارای شافت خروجی ۱۸۰ درجه با قابلیت چرخش است. این سروو دارای سه پایه می‌باشد. سیم نارنجی PWM ، سیم قرمز VCC  و سیم قهوه ای Ground است.

سنسور IR همانند ال ای دی عمل میکند. در دسته دیود ها دسته بندی می شود. با این تفاوت که دامنه موج نورانی آن برای چشم انسان قابل دیدن نمی باشد. به طور معمول سنسور های IR که در پروژه های ساده و آزمایش ها استفاده میشود دارای باند فرکانسی ۳۸ کیلوهرتز می باشند. سنسور گیرنده استفاده شده در این آزمایش از نوع ۳ پایه می باشد.

 

اتصال به آردوینو

servo-ir-arduino-pin-digispark

پایه‌ی نارنجی سروو موتور را به پایه‌ی ۹ آردوینو که PWM است وصل میکنیم.

پایه‌ی قرمز سروو موتور را به پایه ی ۵ ولت آردوینو  که VCC است وصل میکنیم.

پایه‌ی قهوه ای سروو موتور را به پایه‌ی ground آردوینو وصل میکنیم.

پایه‌ی سیگنال (S) سنسور IR را به پایه‌ی ۱۱ آردوینو وصل میکنیم.

پایه‌ی VCC سنسور IR را به پایه‌ی ۵ ولت آردوینو وصل میکنیم.

پایه‌ی GND سنسور IR را به پایه‌ی GND آردوینو وصل میکنیم.

 

فراخوانی کتابخانه

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

چنانچه درفراخوانی کتابخانه به مشکل برخوردید به آموزش نصب کتابخانه در نرم افزار آردوینو که توسط همکارم نوشته شده است مراجعه کنید.

مدیریت وسایل منزل با ریموت مادون قرمز - دیجی اسپارک

 

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

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

سروو با ریموت کنترل کار نمیکند

خب معلومه کار نمیکنه! برای این منظور باید کدهای هر دکمه از ریموت را در برنامه تعریف کنیم. در این حالت با فشار دادن هر کدام از دکمه‌های ریموت، چراغ قرمز رنگ گیرنده متصل به برد آردوینو چشمک می‌زند. به این معنی که سیگنال ریموت IR را دریافت می‌کند. حال با استفاده از تابع زیر، یکی یکی مقادیر دکمه‌های ریموت را میخوانیم. این تابع نمایش متن روی سریال مانیتور نرم افزار آردوینو است. ما به ورودی این تابع مقدار فرکانس ir را پاس داده‌ایم.

ابتدا کدهای زیر را در محیط آردوینو کپی کرده و کامپایل کنید. سپس سریال مانیتور نرم افزار آردوینو را از بالا سمت راست باز کنید. حالا یکی یکی دکمه‌های ریموت را فشار میدهیم و مقداری که در سریال مانیتور نرم افزار آردوینو نمایش داده می‌شود، مربوط به همان دکمه است. کافیست مقادیر دریافتی را با مقادیر فعلی Defineها جایگذاری کنید. در این کدها که ریموت من با عدد ۱۶۷ شروع میشود.
 

چنانچه در مراحل راه اندازی و انجام این پروژه با مشکل مواجه شدید، بدون هیچ نگرانی در انتهای همین پست، به صورت ثبت نظر سوالتان را مطرح کنید. من در سریع‌ترین زمان ممکن پاسخ رفع مشکل شما را خواهم داد.

 

در ادامه به ویدیو این آموزش توجه کنید.

 

در پایان نظرات و پیشنهادات خود را با ما درمیان بگذارید و با اشتراک گذاری این آموزش در شبکه های اجتماعی , از وبسایت دیجی اسپارک حمایت کنید.

 

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

پریسا پوربلورچیان

تبادل نظر و رفع عیب با ثبت دیدگاه

۲۰ دیدگاه

    • سلام
      لطفا جهت راهنمایی دقیق تر موارد زیر را اعلام کنید:
      ۱- فایل را از حالت زیپ خارج کردید؟
      ۲- پس از دانلود آیا فایل را به فولدر آردوینو انتقال داده اید ؟

  • سلام مرسی از آموزشهای خوبی که میزارید
    فقط یک سوال داشتم دقیقا متوجه نشدم چطوری میتونم با این آموزش وسایل خونه رو کنترل کنم ؟ مثلاً لامپ خونه رو روشن خاموش کنم یا هر چیزه دیگه ای . میشه یکم بیشتر در مورد این مسائل توضیح بدید که چطوری میتونیم این کنترل ها رو رو وسایل منزل داشته باشیم
    مرسی

    • یا اینکه خودتون نوشتید کلیه کنترل های خونه رو حذف کنید و فقط از یه کنترل استفاده کنیم . دقیقا این کار به چه شکلی انجام میشه ؟

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

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

  • سلام میشه از این برای خاموش روشن کردن لامپ و ال ای دی هم استفاده کرد؟لطفا هر کی میدونه جواب بده و این ریموتو از کجا بفهمیم irهست

    • با سلام
      بله میتوانید، بجای استفاده از سرو موتور میتوانید از رله استفاده کنید و خروجی رله را به لامپ‌های مختلف وصل کنید.

    • سلام
      بله امکان پذیر می باشد. فقط دقت کنید باید از ماژول رله تک کانال استفاده کنید. با این تفاوت که به جای پایه pwm باید از یکی از پایه های دیجیتال استفاده نمایید و در کد بالا تغییرات را اعمال نمایید.

  • سلام خسته نباشید میخواستم بدونم باید چجوری به Syntax های یه کتابخونه دسترسی پیدا کنم منظورم اینه دستوراتشو باید از کجا پیدا کنم. و اینکه ممنون میشم اگهدکتابخونه Irlib رو اموزش بدین

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

  • با عرض سلام و خسته نباشید
    بعد ریختن بوت لودر روی میکرو کنترلر ، از این پس پروگرم کردن این میکرو به چه صورتی انجام میشه؟
    یعنی چند راه وجود داره
    مثلا میشه با مبدل usb به سریال پروگرمش کرد؟

    • سلام
      از توجه شما ممنونم
      دقت کنید که این آموزش با میکرو نیست و آموزش با بردهاى امبدد می باشد که بردهای امبدد مانند آردوینو در ساختارش مبدل usb به سریال دارند.