راه اندازی ماژول NRF24L01+ با استفاده از میکروکنترلر AVR

(دیدگاه کاربر 1)
توضیحات مختصر محصول
راه اندازی ماژول NRF24L01+ با استفاده از میکروکنترلر AVR

راه اندازی ماژول NRF24L01+ با استفاده از میکروکنترلر AVR

 

راه اندازی ماژول NRF24L01 با استفاده از میکروکنترلر AVR

-ماژول nrf24l01+  چیست ؟

ماژول nrf24l01+ یک ماژول مخابراتی برای انتقال اطلاعات به صورت بیسیم می باشد . این ماژول در باند 2.4GHZ  کار می کند . ماژول nrf24l01+ ساخت شرکت NORDIC SEMICONDUCTOR  اسا و  در سال 2008 به بازار عرضه شد . ماژول nrf24l01+ قابلیت تنظیم نرخ ارسال اطلاعات از  KBS تا  MBS 2 مگابیت را دارد. ماژول nrf24l01+ در دو حالت فرستنده و گیرنده قابل تنظیم می باشد .این ماژول دارای کریستال برای تولید PLL و همچنین مدولاسیون GFSK در حالت فرستنده و دمدولاسیون در حالت گیرنده می باشد.

-ویژگی های ماژول nrf24l01+ :

1-مصرف جریان بسیار پایین بین 11.3 تا 12.3 میلی آمپر است .ماژول قابلیت ورود به حالت STANDBY  با مصرف 22 میکرو آمپر را دارد.

2- دارای رگولاتور ولتاژ داخلی. ماژول NRF24L01 قابلیت کار کردن با ولتاژ خارجی بین 1.9V  تا 3.6V را دارا می باشد.

3- قابلیت کنترل اتوماتیک بسته های داده را دارد.

4- 6 مسیر ورودی داده با قابلیت آدرس دهی متفاوت .

5-ارزان قیمت

6-وجود کریستال 16 مگاهرتز

7-تحمل ولتاژ 5ولت برای پایه های ارتباطی با کنترلر

-کاربردهای ماژول nrf24l01+ :

این ماژول به دلیل وجود ویژگی های منحصر به فرد که عمده آن در بالا ذکر شد  قابلیت استفاده و کاربرد در موارد بسیاری از جمله  ساخت وسایل جانبی وایرلس کامپیوتر مثل موس , کیبورد و ریموت . هدست های VOIP  , کنترلرهای بازی , ساعت های اسپورت و سنسور ها , انتقال اطلاعات به صورت رادیویی در کاربرد های صنعتی , ساخت  ابزار ها و دستگاههای هوشمند جهت اتوماسیون خانه , ایجاد شبکه های وایرلس کوچک , اسباب بازی و … اشاره کرد.

 

راه اندازی ماژول NRF24L01 با استفاده از میکروکنترلر AVR

-نحوه راه اندازی ماژول NRF24L01  :

نحوه ارتباط با ماژول NRF24L01 از طریق واسط استاندارد سریال SPI  می باشد . پین مورد استفاده برای ارتباط با میکروکنترلر بالا دستی 6 عدد  می باشد که عبارتند از: MOSI , MISO SCK , CE, CSN , IRQ

راه اندازی ماژول NRF24L01 با استفاده از میکروکنترلر ATMEGA32

راه اندازی ماژول NRF24L01 با استفاده از میکروکنترلر AVR

همانطور که می دانید انواع مختلفی از ماژول های NRF24L01  در بازار موجود است . سوالی که اکثر کاربران با آن مواجه هستند این است که آیا نحوه ی اتصال آن ها به میکروکنترلر متفاوت هست ؟ در پاسخ باید گفت که خیر . چون چیپ یا آیسی اصلی همه ماژول ها یکی هست و پین های مورد نیاز برای راه اندازی تفاوتی با یکدیگر ندارد.

 

راه اندازی ماژول NRF24L01 با استفاده از میکروکنترلر AVR

اما تفاوت این تنوع از ماژول ها در چیست ؟ معمولا تفاوت اصلی در نوع و کیفیت قطعات مورد استفاده و برد آنها است . دیگری وجود قطعات تقویت سیگنال خروجی برای ارسال برد بالاتر و با کیفیت تر است . به عنوان مثال ماژول های با پسوند(Power Amplifier) PA  یا (Low Noise Amplifier) LNA در واقع به افزایش برد ماژول و دریافت اطلاعات با نویز کمتر اشاره دارد که معمولا با یک آنتن همراه است.

راه اندازی ماژول NRF24L01 با استفاده از میکروکنترلر AVR

-کانال های فرکانسی در ماژول NRF24L01  :

برای ارتباط بین دو ماژول NRF24L01 نیاز است که کانال فرکانسی بین فرستنده و گیرنده یکسان باشد . کانال فرکانسی در ماژول NRF به صورت نرم افزاری قابل تنظیم است که این مقدار می تواند  عددی بین   2.400 تا  2.525 GHz باشد.  هر کانال فرکانسی  پهنای باندی حدود 1 مگاهرتز را اشغال می کند که با این وجود 125 کانال فرکانسی قابل تنظیم است. همین ویژگی باعث می شود که بتوان 125 ماژول مختلف را در یک محیط بدون تاثیر گذاری بر یکدیگر استفاده نمود.

 

ایجاد شبکه با استفاده از ماژول Nrf24l01+ :

هر  ماژول Nrf24l01+ از یک مسیر خروجی (Data Pipe) برای انتقال داده با قابلیت آدرس دهی به صورت 5 بایتی و از 6 مسیر ورودی دریافت داده با قابلیت آدرس دهی 5 بایتی بهره می گیرد . پس هر گیرنده به طور همزمان قابلیت دریافت داده از 5 ماژول فرستنده دیگر را دارد .

ایجاد شبکه با استفاده از ماژول NRF2401

 

ایجاد شبکه با استفاده از ماژول NRF24L01 و میکروکنترلر ATMEGA8

قابلیت Enhanced ShockBurst Protocol  در ماژول NRF24L01+  :

ماژول NRF24L01  از ویژگی به نام Enhanced ShockBurst Protocol   بهره می گیرد که قادر به کنترل و تولید یک بسته داده با توجه به تنظیمات نرم افزاری است .همانطور که در شکل زیر مشاهده می کنید این بسته داده از اجزای مختلف تشکیل شده است:

انتقال اطلاعات با استفاده از ماژول NRF24L01

Preamble : بایت شروع که در ابتدای یک پکت قرار می گیرد .

Address : آدرس تنظیم شده توسط نرم افزار که طول آن 3 تا 5 بایت است.

Packet Control :  بایت 9 برای تنطیم Packet Id  یا مشخصه بسته , تنظیم Auto Ack  بودن و طول بسته اطلاعات اصلی (Payload Length)

Payload  : در این فیلد اطلاعات اصلی قرار می گیرد.

CRC: قفل نرم افزاری یا همان CRC بر روی پکت است که صحت  و درستی پکت ارسالی را تضمین می نماید .

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

-ویژگی کنترل اتوماتیک بسته داده در  ماژول NRF24L01  :

برای درک این موضوع 3 سناریو را مورد بحث قرار می دهیم .

1-    ارسال با  acknowledgement   و   interrupt:در این حالت فرستنده پکت مورد نظر را به سمت گیرنده ارسال می کند .وقتی که پکت داده به طور کامل ارسال شد ؛ فرستنده 130 میکروثانیه صبر می کند تا گیرنده پبام موفقیت آمیز بودن دریافت یا پکت acknowledgement را برگرداند.پس از دریافت این پکت توسط فرستنده , ماژول فرستنده پایه IRQ  را به نشانه دریافت داده تغییر وضعیت می دهد .

انتقال اطلاعات با استفاده از ماژول NRF24L01

2-ارسال داده در صورتی که اطلاعات در مسیر خراب یا از بین برود: فرض کنید پکت به سمت گیرنده ارسال شود و پکت به هر دلیلی به مقصد نرسد . پس فرستنده در تایم مشخص شده پیام موفقیت آمیز بودن را از گیرنده دریافت نمی کند و فرستنده مجددا پکت را ارسال می کند تا گیرنده آن را دریافت و پاسخ دهد . (تعداد ارسال و تلاش برای ارسال پکت در ماژول قابل تنظیم است)

انتقال اطلاعات با استفاده از ماژول NRF24L01

3-از بین رفتن پکت موفقیت ( پکت  ACK ) :فرض کنید فرستنده پیام را ارسال می کند و گیرنده هم آن را به درستی دریافت و پیام موفقیت آمیز را برای فرستنده ارسال می کند اما پیام ACK در میانه راه از بین می رود . در حالت فرستنده گمان می کند که گیرنده بسته را دریافت نکرده و پس از مدت زمان 130  میکروثانیه دوباره آن را ارسال می کند . گیرنده نیز پس از دریافت بسته با مقایسه ID  بسته آن را یک بسته تکراری فرض می کند و آن را دور می ریزد.

انتقال اطلاعات با استفاده از ماژول NRF24L01

 

-راه اندازی نرم افزاری ماژول NRF24L01+ توسط میکروکر AVR :

اگر بر روی اینترنت جستجو کرده باشید کدها و کتابخانه ای زیادی برای راه اندازی ماژول NRF24L01+ پیدا خواهید کرد که معمولا برای آردوینو نوشته شده اند . اما از آنجا که کاربران ایرانی معمولا از کدویژن CODEVISION  استفاده می کنند شاید این محصول بتواند مشکل شما را حل کند . تیم فارس الکترونیک مانند همیشه با در نظر گرفتن نیاز کاربران خود اقدام به نوشتن یک کتابخانه کامل برای کامپایلر کدویژن نموده است که در نسخه اول قابل استفاده برای میکروکنترلرهای ATMEGA8 , ATMEGA16 , ATMEGA32  می باشد .

 

ایجاد شبکه با استفاده از ماژول NRF24L01 و میکروکنترلر ATMEGA8

 

محتویات این محصول شامل :

1-  کتابخانه کامل و OPEN SOURCE راه اندازی ماژول NRF24L01+  برای کدویژن.

2-  آموزش ویدئویی نحوه استفاده از کتابخانه و آموزش توابع  و نکات راه اندازی ماژول

3-ارایه نقشه سخت افزاری جهت راه اندازی بهتر

4-  مثال های متنوع برای راه اندازی , شبکه سازی و …

 

 

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

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

 

 

 

نمایش بیشتر
دیدگاه های کاربران
دیدگاهتان را با ما درمیان بگذارید
1 5.0
بر اساس 1 خرید
1
0
0
0
0
  1. در تاریخ پاسخ

    سلام
    کتابخانه کاملی بود و استفاده از اون هم به سادگی توضیح داده شده بود ممنون از آموزش خوبتون.

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

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


The reCAPTCHA verification period has expired. Please reload the page.