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

ساخت رادیو کنترل ۴ کانال با قابلیت میکس برای هواپیما — جلسه ی ۱

نوشته شده توسط حسین فهیمی

به نام خدا

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

nRF24L01 ماژولی برای انتقال داده به صورت بی سیم می باشد و در مواردی مانند : هدست های بی سیم ،  کنسول های بازی مانند ps3   ، اتوماسین خانگی  ، سیستم های مسیر یاب مانند GPS و …. استفاده می شود. این ماژول در نوع آنتن دار و بدون آنتن ارائه میشود که برد آنتن دار ۱۱۰۰ متر و بدون آنتن آن ۱۰۰ متر می باشد. nRF24L01 ماژول یک ماژول بسیار عالی برای ارسال و دریافت اطلاعات بدون خطا می باشد در مقایسه با ماژول های HMTR  از امکانات بسیار بیشتری برخوردار می باشند.

 

 

مشخصات ماژول NRF24L01:

  • ولتاژ کاری : ۳٫۳ ولت
  • دیتاریت ۲ مگابیت بر ثانیه در فضای باز
  • دارای رگولاتور داخلی

 

 

سخت افزار مورد نیاز برای ساخت رادیو کنترل :

 

 

در تصویر زیر نحوه ی اتصال پین ها را مشاهده می‌کنید.

آموزش راه اندازی nrf24l01 -دیجی اسپارک

پین های CE   و CSN میتوانند به هر پین دیجیتالی متصل شوند.

در برد آردوینو uno  پین های پرروتوکل spi به صورت زیر می باشند:

  • MOSI is connected to the digital pin 11
  • MISO is connected to the digital pin 12
  • SCK is connected to the digital pin 13

 

در برد آردوینو mega2560   پین های پروتکل spi  به صورت زیر می باشند:

  • MOSI is connected to the digital pin 51
  • MISO is connected to the digital pin 50
  • SCK is connected to the digital pin 52

 

ابتدا کتابخانه را از این لینک دانلود کنید و به نرم افزار اضافه کنید.

کد های فرستنده:

 

 

شماتیک جوی استیک ها :

New Bitmap Image

 

تا این جا فرستنده رو درست کردین و نوبت به گیرنده هست. در پست بعدی به ساخت گیرنده با آردوینو UNO می پردازیم….

 

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

حسین فهیمی

۳۸ دیدگاه

  • سلام ماله من کار نکرد هر جوری کردم کار نکرد یه سوال اگه کتاب خونه نصب نباشه رنگ متنش تو آردوینو مشکی میوفته ؟

    • میتونید پست آقای قربانی در مورد راه اندازی NRF با آردوینو رو مطالعه کنید….
      در IDE آردوینو اگه کتابخانه ی ماژول نصب نباشه و شما از اون توابع استفاده کنید یا کتابخانه رو معرفی کنید ، در قسمت توضیحات –پایین IDE– ارور ناشناس و نصب نبودن کتابخانه رو میده

    • سلام. میتونید پست آقای قربانی —با موضوع راه اندازی nrf— رو مطالعه کنید. ماژولتون رو که تست کردید بعد یکسری کد ها رو اضافه کنید. نمونه کدها فرقی ندارن. خازن رو هم وسط تغزیه ی ماژول نصب کنید. از درست بودن ماژولتون حتما خبردار شین…

  • سلام.میشه به جای ۲۵۶۰ از همون اردوینو unoبرای فرستنده هم استفاده کرد؟؟ اگه میشه چ تغییراتی باید انجام داد.پیشاپیش ممنونم

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

  • با سلام ببخشید کتابخونه رو توی لینکی که گزاشتید نداره میشه یه لینک دانلود برای دانلود کتابخونه ها لطف کنید

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

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

  • چرا کد ناقص هستش؟پس ادامش کجاست؟من هم کامپایل میکنم ارور میده لطفا کمک کنید مبخوام با ۲تا جوی استیک ۲تا سروو رو کنترل کنم ماژول هم nrf24l01+

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

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

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

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

  • سلام دوباره.
    ۱-ایا در (فرستنده) دو برد اردینو استفاده شده است؟
    -اگر از دو برد استفاده شده لطفا لطفا و لطفا یک شماتیک کلی قرار دهید.یا ب ایمیل ارسال کنید. ممنون میشوم
    ۲- اگر از دو برد استفاده شده.ایا کد فرستنده رو باید به اردینو uno اپلود کنم؟

    ببخشید از سوالات ابتدایی استفاده کردم.(تازه کار هستم)

    • با سلام
      در فرستنده فقط از یک برد استفاده شده است. چون آردوینو است نیازی به شماتیک مدار نیست. تمامی اتصال پین‌ها در متن آموزش توضیح داده شده است که از ماژول به کدام پین آردوینو باید متصل شود. به عنوان مثال پایه MOSI در ماژول به پایه ۱۱ برد آردوینو متصل میشود.

  • سلام و خسته نباشید . مطلبتون عالی و مفید هست ولی خیلی بهتر می شه روش تست کردن و عکس یا فیلم از اتمام پروژه می زاشتین عالی می شد . پروژه بسیار کلی هستش.ممنون می شیم کاملش کنین.با تشکرات فراوان.

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

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

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

  • سلام
    ببخشید میشه به جای مگا در دسته کنترلر از آدوینو نانو استفاده کرد؟ آخه ابعاد مگا خیلی بزرگه قیمتشم بالاتره.
    اگه از نانو استفاده کنیم، تفاوتی در کدها یا نحوه اتصال پین‌ها بوجود میاد یا نه؟
    سایتتون تکه. اغراق نمیکنما واقعا میگم.

    • با سلام
      ضمن تشکر از توجه شما، در درجه اول کدهای آردوینو قابل تبدیل به بردهای مختلف آردوینو هستند. بحث بعدی پایه‌های به کاربرده شده است، با توجه به اینکه در این آموزش از پایه‌های آنالوگ استفاده شده است، شما میتوانید بجای آردوینو Mega2560 از آردوینو Nano هم استفاده کنید.

  • سلام و خسته نباشد به همه دست اندرکاران این سایت عالی پین های CE و CSN میتوانند به هر پین دیجیتالی متصل شوند.مگه میشه به هر پین وصل بشه مگه داخل برنامه واسش پین مشخص نشده؟

    • با سلام
      ضمن تشکر از توجه شما، بله میتوانند به هر کدام از پین‌های دیجیتال متصل شوند. البته بعد از اتصال باید در برنامه پین‌ها را آدرس دهی کنید.

  • سلام وقتتون بخیر
    در مورد پین های ce وcsn گفته شده که به هر پین دیجیتالی میتوان متصل کرد؛ اما در کامنت بالا گفتید بعد از اتصال باید پین ها را در برنامه آدرس دهی کرد؛ لطفا نحوه آدرس دهی این پین ها را میشه توضیح بدید. برای آدرس دهی دقیقا به کجای برنامه و چه دستوری رو باید اضافه کنم؟
    من تازه کار با آردوینو را آغاز کردم و مبتدی هستم! مدار این رادیوکنترل را بستم ، کُد ها بدون هیچ اروری کامپایل شدند . اما از مدار جواب نگرفتم!

    • با سلام
      ضمن تشکر از توجه و دقت شما، برای این موضوع کافیست پین‌های نامبرده را به پایه‌های ۷ و ۸ آردوینو Uno متصل کنید.

  • باسلام وتشکر از آموزش عالی و توضیح کاملتون
    میشه از سطر ۲۰ تا اخر(۶-۷ سطر آخر) رو یکبار توضیح بدید؟ مثلا چرا تو قسمت map اول به عنوان محدوده اول از ۵۱۲ تا ۱۰۲۳ استفاده کردیم ونه از صفر یا چرا میانگین ۲ و۳ رو تو ۴ ریختیم؟ چون خودم رو پروژه مشابه کار می کنم و خوشحال میشم اگه یکم توضیحش بدین

    • با سلام
      ضمن تشکر از توجه شما، تابع map بازه اى از اعداد را به عنوان ورودى میگیرد و اعداد دریافتى را به بازه مورد نظر ما تبدیل میکند.

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