NRF24L01: وحدة للاتصالات اللاسلكية لاردوينو

NRF24L01

بالتأكيد تحتاج إلى إنشاء مشروع DIY باستخدام Arduino أو أي عنصر آخر وعليك الاستفادة منه الاتصالات اللاسلكية. ويحدث ذلك من خلال وجود نوع من الوحدة أو الجهاز الذي يسمح لك بالإرسال باستخدام الأشعة تحت الحمراء ، والترددات اللاسلكية ، والبلوتوث ، والواي فاي ، وما إلى ذلك. بمعنى ، يجب أن تكون واضحًا بشأن الاحتياجات لمعرفة نوع الإشارة الذي سيكون الأنسب لحالتك.

في هذه الحالة لدينا ملف دليل على NRF24L01 لك. إنها شريحة اتصال لاسلكية توفر لك ما تحتاجه لإرسال واستقبال الإشارات. نوع الإشارات التي تتعامل معها هي الترددات الراديوية أو الترددات الراديوية ، أي موجات ذات طول موجي كبير ، وبالتالي طاقة منخفضة ، والتي يتراوح ترددها في الطيف الكهرومغناطيسي بين 3 هرتز و 300 جيجا هرتز.

ما هو NRF24L01؟

NRF24L01

El NRF24L01 عبارة عن شريحة تم تصنيعها بواسطة Nordic Semiconductor. لو أنه لا توجد منتجات، تأتي الشريحة مثبتة على ثنائي الفينيل متعدد الكلور صغير مع بعض العناصر المساعدة التي تحتاجها ، وبالتالي تؤلف وحدة. يمكنك استخدامه بعدة طرق ، بما في ذلك توصيله بـ Adruino كما سأوضح لك لاحقًا.

NRF24L01 ، كما يمكن استنتاجه من اسمه ، هو جهاز اتصال لاسلكي يستخدم الترددات اللاسلكية أو الترددات اللاسلكية مع القدرة على العمل في 2,4 جيجا هرتز - 2,5 جيجا هرتز. هذا هو النطاق المجاني للاستخدام المجاني. أنت تعلم بالفعل أن النطاقات الأخرى محجوزة وعليك الدفع إذا كنت تريد استخدامها لنقل المعلومات. بالإضافة إلى ذلك ، فهو يدمج جهاز إرسال + جهاز استقبال.

على وجه التحديد ، يتراوح نطاق التردد الذي يمكنك استخدامه من 2.400 ميجاهرتز إلى 2.525 ميجاهرتز ، مع إمكانية الاختيار بين قنوات 125 بمسافات 1 ميجا هرتز بينهما. ومع ذلك ، لا يوصى باستخدام ترددات 2.4 جيجا هرتز إذا كنت تستخدم شبكات WiFi أو طائرات بدون طيار تعمل بهذا التردد وما إلى ذلك ، أو سيكون هناك تداخل. هذا هو السبب في أنه من الأفضل استخدام من 2.501 ميجا هرتز فصاعدًا.

من حيث خصائصه ، يعمل من 1.9 إلى 3.6 فولت ، لذلك سيكون من السهل عليك تشغيلها باستخدام لوحة Arduino نفسها مع اتصال 3.3 ، باستخدام البطاريات ، وحتى مع مصدر طاقة به هذا الجهد. بالإضافة إلى ذلك ، يمكنك ضبط سرعة الإرسال بين 250 كيلوبت في الثانية و 1 ميجابت في الثانية وتصل إلى 2 ميجابت في الثانية.

يمكن أن تعمل الرقاقة في الانبعاثات والاستقبال في وقت واحد مع ما يصل إلى 6 اتصالات من مختلف الأجهزة. مع ذلك يمكنك البث أو الاستقبال من نقاط مختلفة دون أي مشكلة. وإذا كنت قلقًا بشأن متانة أو موثوقية الاتصال ، فإن الشريحة نفسها بها دوائر منطقية لتصحيح أخطاء البيانات وإعادة توجيه المعلومات إذا لزم الأمر. لذلك ، يحرر المعالج من هذه المهمة.

يمكنك استخدامه للتحكم فيه حافلة SPI، لذلك فإن التحكم في Arduino بسيط للغاية. بالإضافة إلى ذلك ، تدعم دبابيس البيانات في NRF24L01 ما يصل إلى 5 فولت دون مشاكل. استهلاك الطاقة في وضع الاستعداد منخفض جدًا ، لذا لن يكون عنصرًا يدعو للقلق ، وعندما يكون قيد التشغيل ، لا يكون من أكثرها تكلفة ، حيث يحتاج فقط إلى 15 مللي أمبير لإرسال البيانات واستلامها.

ستجد في السوق عدة وحدات مختلفة تثبت شريحة NRF24L01، فهم يغيرون فقط في العناصر المساعدة لديهم أو في بعض التفاصيل. على سبيل المثال في نوع الهوائي. بعضها له هوائي مطبوع على PCB بشكل متعرج بمدى يتراوح من 20 إلى 30 مترًا. يعترف آخرون بوجود هوائي خارجي أقوى إلى حد ما مع مكبر للصوت للانتقال من 700 متر إلى كيلومتر واحد.

ومع ذلك، النطاق الفعلي محدود ببعض العوامل، مثل عوائق الطريق أو الضوضاء أو التداخل من عناصر أو إشارات أخرى موجودة ، وسرعة الإرسال ، وجهد الإمداد (جهد أعلى ، مسافة أكبر) ، إلخ. على سبيل المثال ، إذا كنت تريد الإرسال بسرعة قصوى تبلغ 2 ميجابت في الثانية ، فسيكون لديك عقوبة كبيرة في المسافة ، والتي ستكون فقط مترين أو 2 أمتار كحد أقصى. في السرعات المنخفضة ، قد تتمكن من تسلق تلك المسافة.

ESP8266
المادة ذات الصلة:
ESP8266: وحدة WIFI الخاصة بـ Arduino

ما الذي تحتاج إلى معرفته قبل شرائه؟

هوائي NRF40L01

El NRF24L01 شريحة رخيصة جدًا التي يمكن استخدامها في العديد من المشاريع. على سبيل المثال ، إذا لم يكن لديك هوائي خارجي ، فيمكنك شرائه مقابل 0.65 يورو ، مع كون طراز الهوائي الخارجي أغلى قليلاً من هذا الهوائي ولكنه لا يزال رخيصًا جدًا ولا يتجاوز عادة 1.7 يورو.

إذا لم يكن لديك عنصر إرسال أو استقبال آخر ، فأنت تعلم بالفعل أنه يجب عليك شراء وحدتي NRF24L01 ، أحدهما للاستخدام على جانب والآخر على الجانب الآخر حيث تريد الإرسال. كلاهما سوف يتصرفان مثل المرسل أو المتلقي كما تحب.

Pinout وتركيب NRF24L01

بينوت NRF40L01

أما بالنسبة للتجميع ، فهو بسيط للغاية. ال يحتوي NRF24L01 على 8 دبابيس ، وبالتالي فإن pinout سهل للغاية لفهم كيف ترون في هذه الصورة أترككم. على اليمين يمكنك رؤية الرسم التخطيطي للوحة Arduino UNO وكيف سيتم توصيل كل من دبابيس الوحدة بها.

كما يمكنك أن تستنتج ، اللوحة يتم تشغيل NRF24L01 باستخدام دبابيس GND و 3.3 فولت من اردوينو. تذكر عدم القيام بذلك باستخدام إشارة 5 فولت وإلا ستلحق الضرر بالوحدة.

التكامل مع اردوينو

2 NRF24L01 مع Arduino (دائرة)

بمجرد أن تعرف ما هو NRF24L01 وكيف يمكن توصيله وتشغيله ، بالإضافة إلى عدد المشاريع التي يمكنك القيام بها باستخدام اثنين من هذه الأجهزة الرخيصة ، فإن الشيء التالي هو إظهار مثال البرمجة حتى تتمكن من البدء في تجربة Arduino IDE الخاص بك. تذكر أن تنسيق البيانات الذي يمكنك نقله يمكن تعديله في التعليمات البرمجية المصدر.

l298n
المادة ذات الصلة:
L298N: وحدة للتحكم في محركات اردوينو

يمكنك اختيار إرسال واستقبال سلسلة أو عدد صحيح أو بيانات فاصلة عائمة ، إلخ. أنصحك دليلنا حول برمجة Arduino إذا كنت تبدأ. مع ذلك يمكنك إنشاء مشاريعك الأولى. وكمثال ملموس لـ NRF24L01 ، أترككم هنا الرموز اللازمة لسلسلة.

الكود الذي يجب عليك كتابته في Arduino IDE وبرمجة لوحة Arduino المتصلة بـ NRF24L01 التي ستقوم بتعيينها كـ المرسل:

#include <nRF24L01.h>
#include <RF24.h>
#include <RF24_config.h>
#include <SPI.h>
 
const int pinCE = 9;
const int pinCSN = 10;
RF24 radio(pinCE, pinCSN);
 
// Single radio pipe address for the 2 nodes to communicate.
const uint64_t pipe = 0xE8E8F0F0E1LL;
 
char data[16]="Aquí tu mensaje" ;
 
void setup(void)
{
   radio.begin();
   radio.openWritingPipe(pipe);
}
 
void loop(void)
{
   radio.write(data, sizeof data);
   delay(1000);
}

هنا الرمز الذي يجب عليك إدخاله في Arduino IDE والتسجيل على اللوحة التي قمت بتوصيلها بـ NRF24L01 المخصص على النحو التالي المتلقي:

# تضمين <nRF24L01.h>
# تضمين <RF24.h>
# تضمين <RF24_config.h>
# تضمين <SPI.h>

const int pinCE = 9 ؛
const int pinCSN = 10 ؛
راديو RF24 (pinCE ، pinCSN) ؛

// عنوان أنبوب راديو مفرد للعقدتين للتواصل.
أنبوب uint64_t = 0xE8E8F0F0E1LL ؛

بيانات شار [16] ؛

إعداد باطل (باطل)
{
Serial.begin (9600) ؛
radio.begin () ،
radio.openReadingPipe (1 ، أنبوب) ؛
radio.startListening () ،
}

حلقة باطلة (باطلة)
{
إذا (راديو. متاح ())
{
تم إنجازه = قراءة راديو (بيانات ، حجم البيانات) ؛
Serial.println (بيانات) ؛
}
}

مع ذلك سيكون لديك كل ما تحتاجه ويمكنك محاولة إرسال كلمات أو سلاسل نصية لأحدهما ومعرفة كيف يستقبلها الآخر. استخدم جهازي كمبيوتر متصلين عن طريق USB بلوحة Arduino لاستخدام وحدة التحكم كوسيلة لعرض البيانات. افصل بينها مسافة حكيمة وفقًا للوحدة التي لديك أو التكوين الذي قدمته وستبدأ في رؤية الأحرف التي أدخلتها في الكود الأول على شاشة الكمبيوتر الآخر ...


تعليق ، اترك لك

اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها ب *

*

*

  1. المسؤول عن البيانات: ميغيل أنخيل جاتون
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.

  1.   ستيفان قال

    مرحبا اسحق
    أريد أن أكمل مشروعًا باستخدام اردوينو أو التوت أو أي شيء آخر.
    هل يمكنك إعطاء جهة اتصال عبر البريد الإلكتروني للشرح؟
    منجم - a01b02@abv.bg
    شكرا