آردوینو آردوینو Arduino Uno آموزش آردوینو اینترنت اشیا IOT برد Nodemcu دسته‌بندی

شروع کار با برد NRF24L01 و برقراری ارتباط بی سیم بین دو برد آردوینو

نوشته شده توسط CiferTech

ایده اصلی استفاده از برد های nrf برقراری ارتباط بی سیم بین بردهای توسعه ای مانند آردوینو و یا میکروکنترلر هایی مثل AVR است. اگر با تراشه های ESP32 و ESP8266 کار کرده باشید می دانید که این تراشه ها علاوه بر نوعی میکروکنترلر بودن قابلیت ارتباط های رادیویی را نیز برای ما فراهم کرده اند. برای کار با برد NRF24L01 مناسب خواهند بود. به عبارتی بردهای nrf زمانی بکار می آیند که می خواهیم ارتباط رادیویی بین دو میکروکنترلر بدون استفاده از تراشه های سری ESP برقرار کنیم. در ادامه این آموزش با مرجع تخصصی آردوینو به زبان فارسی، دیجی اسپارک همراه باشید.

 

انواع برد NRF24L01 - دیجی اسپارک

 


ماژول NRF24L01 فرستنده گیرنده


این ماژول یک transceiver به حساب می آید به این معنی که هر دو فرآیند ارسال (send) و دریافت (receive) را انجام می دهد. این ماژول ها بسیار ارزان با اندازه کوچک عرضه می شوند، ولتاژ کاری این ماژول از ۱٫۹ تا ۳٫۶ ولت است، پایه های MOSI, MISO و SCK پایه های SPI ماژول هستند که باید به پایه های مربوط به پروتکل SPI در آردوینو متصل شوند. پایه های CSN و  CE برای تنظیم ماژول به حالت فعال و تعویض بین حالت فرمان و انتقال اطلاعات هستند. این دو پایه را می توان به هر پایه دیجیتال در آردوینو متصل کرد. پین IRQ پین وقفه است و لازم به اتصال آن نیست.

برخی از مشخصات این ماژول ها به شرح زیر است:

  • مصرف انرژی هنگام ارسال اطلاعات، حدود ۱۲ میلی آمپر است.
  • رنج،در صورت استفاده در فضای باز و با آنتن می تواند تا ۱۰۰ متر هم برسد
  • می تواند داده ها را همزمان ارسال و دریافت کند.
  • هر ماژول می تواند با حداکثر ۶ ماژول دیگر ارتباط برقرار کند.
  • از باند ۲٫۴ گیگاهرتز استفاده می کند.
  • می تواند ۱ تا ۲۵ بایت داده خام با سرعت ۱ مگابایت ارسال کند.

معرفی پایه‌های برد NRF24L01 - دیجی اسپارک

 


برد آردوینو


مجموعه برد های آردوینو از جمله برد های توسعه پرطرفدار بین مهندسین امبدد هستند که در مدل های مختلفی از جمله Micro ,  proMini , Nano , Uno و همچنین Mega قابل تهیه هستند، هسته مرکزی این برد های محبوب از سری AtMega328 می باشد. آردوینو پلتفرم سخت‌افزاری و نرم‌افزاری متن‌باز است. همان طور که قبل تر اشاره کردیم، پلتفرم آردوینو شامل یک میکروکنترلر تک‌بردی متن‌باز است که قسمت سخت‌افزار آردوینو را تشکیل می‌دهد. علاوه بر این، پلتفرم آردوینو یک نرم‌افزار آردوینو IDE که به منظور برنامه‌نویسی برای بردهای آردوینو طراحی شده‌است و یک بوت لودر نرم‌افزاری که بر روی میکروکنترلر بارگذاری می‌شود را در بر می‌گیرد.

برد آردوینو برای کار با برد NRF24L01 - دیجی اسپارک

 


نحوه کار پروژه


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

روش کار با برد NRF24L01 و ارتباط یک طرفه - دیجی اسپارک

 


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


برد آردوینو Arduino

ماژول NRF24L01

میکروسوییچ

ال ای دی

مقاومت

وسایل لازم برای کار با برد NRF24L01 - دیجی اسپارک

 


اتصالات و کد (فرستنده)


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

اتصالت برای کار با برد NRF24L01 و آردوینو - دیجی اسپارک

شماتیک اتصالات برای کار با برد NRF24L01 و آردوینو - دیجی اسپارک

 

  • کد و توضیحات مربوط به بخش فرستنده

ابتدا کتابخانه های مورد نظر را معرفی می کنیم:

 

در این خط پایه های مربوط به پین های CE و CSN را مشخص می کنیم.

 

این تابع مربوط به شروع رویداد رادیویی می باشد.

 

کد کامل

 


اتصالات و کد (گیرنده)


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

اتصالات بخش گیرنده برای کار با برد NRF24L01 - دیجی اسپارک

شماتیک اتصالات برای بخش گیرنده کار با برد NRF24L01 - دیجی اسپارک

 


کد کامل کار با برد NRF24L01


 

 

 


جمع بندی


در نهایت پس از آپلود کد و برقراری اتصالات با فشردن میکرو سوییچ در آردوینوی فرستنده شاهد روشن شدن LED در آردوینوی گیرنده خواهیم بود.

 

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

 

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

 

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

CiferTech

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

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

۶ دیدگاه

  • بادرود.
    آیا با استفاده از این ماژول امکان ارسال و دریافت همزمان صدا بصورت وایرلس وجود دارد؟
    لطفا راهنمایی کنید.

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

  • با سلام. در مبحث استفاده از ماژول nrf2401 با آردینو.،به جای آردینو می‌توان از چیپ avr استفاده کرد.؟
    در صورت امکان راهنمایی بفرمایید.