NRF24L01: מודול לתקשורת אלחוטית לארדואינו

NRF24L01

אין ספק שאתה צריך ליצור פרויקט DIY באמצעות Arduino או כל אלמנט אחר ואתה צריך להשתמש בו תקשורת אלחוטית. וזה קורה בכך שיש איזה סוג של מודול או מכשיר שמאפשר לך לשדר באמצעות IR, RF, Bluetooth, WiFi וכו '. כלומר, עליכם להיות ברורים לגבי הצרכים לדעת איזה סוג של אות יהיה המתאים ביותר במקרה שלכם.

במקרה זה יש לנו מדריך ב- NRF24L01 בשבילך. זהו שבב תקשורת אלחוטי שיספק לך את מה שאתה צריך כדי לשלוח ולקבל אותות. סוג האותות שהוא מטפל בו הוא תדר RF או רדיו, כלומר גלים באורך גל גדול, ולכן בעלי אנרגיה נמוכה, אשר בספקטרום האלקטרומגנטי הם בתדר של 3 הרץ ל -300 גיגה הרץ.

מהו NRF24L01?

NRF24L01

El NRF24L01 הוא שבב המיוצר על ידי Nordic Semiconductor. אם זה קניות מלאות, השבב מגיע רכוב על גבי PCB קטן עם כמה אלמנטים עזר שאתה צריך, ולכן הוא מרכיב מודול. אתה יכול להשתמש בו בכמה דרכים, כולל חיבורו לאדרואינו כפי שאראה לך בהמשך.

NRF24L01, כפי שניתן להסיק משמו, הוא מכשיר תקשורת אלחוטי המשתמש בתדר RF או רדיו עם יכולת לפעול ב 2,4Ghz - 2,5 Ghz. זו הלהקה החופשית לשימוש חופשי. אתה כבר יודע שהלהקות אחרות שמורות ועליך לשלם אם ברצונך להשתמש בהן להעברת מידע. בנוסף, הוא משלב משדר + מקלט.

באופן ספציפי, רצועת התדרים שבה תוכלו להשתמש היא בין 2.400 Mhz ל- 2.525 Mhz, עם אפשרות לבחור בין 125 תעלות עם רווחים של 1Mhz ביניהם. עם זאת, לא מומלץ להשתמש בתדרי 2.4Ghz אם אתה משתמש ברשתות WiFi, מזל"טים שעובדים עם תדר זה וכו ', או שתהיה הפרעה. לכן עדיף להשתמש מ -2.501Mhz ואילך.

לגבי מאפייניו, עובד מ 1.9 ל 3.6 v, כך שיהיה לכם קל להניע אותו באמצעות לוח הארדואינו עצמו עם חיבור 3.3, באמצעות סוללות ואפילו עם ספק כוח שיש לו מתח זה. בנוסף, ניתן להגדיר את מהירות השידור בין 250 Kbps, 1Mbps ועד 2Mbps.

השבב בפליטות וקבלות יכול לעבוד במקביל עד 6 חיבורים של מכשירים שונים. עם זה אתה יכול לשדר או לקבל מנקודות שונות ללא שום בעיה. ואם אתם מודאגים מחוסנה או מהימנות התקשורת, לשבב עצמו יש מעגלים לוגיים לתיקון שגיאות נתונים ולהעביר מידע במידת הצורך. לכן, זה משחרר את המעבד ממשימה זו.

כדי לשלוט בזה תוכלו להשתמש אוטובוס ה- SPI, אז השליטה שלו עם Arduino היא מאוד פשוטה. בנוסף, סיכות הנתונים של NRF24L01 תומכות בעד 5 וולט ללא בעיות. צריכת החשמל במצב המתנה נמוכה למדי, כך שזה לא יהיה מרכיב לדאוג לו וכאשר הוא פועל הוא לא מהיקרים ביותר, מכיוון שהוא זקוק ל 15 mA בלבד לשליחת וקבלת נתונים.

בשוק תמצאו כמה מודולים שונים שמרכיבים את שבב NRF24L01, הם משתנים רק ביסודות העזר שיש להם או בפרטים מסוימים. למשל בסוג האנטנה. לחלקם יש אנטנה המודפסת על גבי ה- PCB בצורת זיג-זג עם טווח של כ- 20-30 מטר. אחרים מודים באנטנה חיצונית חזקה מעט יותר עם מגבר שעולה מ 700 מטר לק"מ אחד.

עם זאת, ההיקף בפועל מוגבל על ידי כמה גורמים, כגון מכשולי דרך, רעש או הפרעה של אלמנטים או אותות אחרים, מהירות שידור, מתח אספקה ​​(מתח גבוה יותר, מרחק גדול יותר) וכו '. לדוגמא, אם ברצונך לשדר במהירות המקסימלית של 2Mbps שתהיה עונש נהדר למרחק, שיהיה רק ​​2 או 3 מטר מקסימום. במהירויות נמוכות יתכן שתוכל לטפס מרחק זה.

Artaculo relacionado:
ESP8266: מודול ה- WIFI לארדואינו

מה אתה צריך לדעת לפני שקונים אותו?

אנטנת NRF40L01

El NRF24L01 הוא שבב זול מאוד שניתן להשתמש בהם במספר רב של פרויקטים. לדוגמא, אם אין לך אנטנה חיצונית, אתה יכול לקנות אותה עד 0.65 €, דגם האנטנה החיצוני יהיה קצת יותר יקר מזה אבל זה עדיין זול מאוד ובדרך כלל אינו עולה על 1.7 €.

אם אין לך אלמנט פליטה או קליטה נוסף, אתה כבר יודע שעליך לקנות שני מודולי NRF24L01, האחד לשימוש בצד אחד והשני בצד השני של המקום אליו ברצונך להעביר. שניהם יתנהגו כמו שולח או מקלט איך שתרצה.

Pinout והרכבה של NRF24L01

pinout NRF40L01

באשר להרכבה, זה די פשוט. ה ל- NRF24L01 8 פינים, ולכן הפינט שלו קל מאוד כדי להבין איך אתה יכול לראות בתמונה זו שאני משאיר אותך. בצד ימין ניתן לראות את תרשים הסיכה של לוח Arduino UNO ואיך כל אחד מהסיכות של המודול יחובר אליו.

כפי שאתה יכול להסיק, את הצלחת NRF24L01 מופעל באמצעות פינים GND ו- 3.3v מארדואינו. זכור לא לעשות את זה עם האות 5v או שתפגע במודול.

שילוב עם ארדואינו

2 NRF24L01 עם Arduino (מעגל)

ברגע שאתה יודע מה זה NRF24L01 ואיך ניתן לחבר אותו ולהפעיל אותו, בנוסף למספר הפרויקטים שאתה יכול לעשות עם כמה מהתקנים הזולים האלה, הדבר הבא הוא להראות דוגמה לתכנות כדי שתוכל להתחיל להתנסות ב- IDE שלך ב- Arduino. זכור כי ניתן לשנות את פורמט הנתונים שאתה יכול להעביר בקוד המקור.

Artaculo relacionado:
L298N: מודול לבקרת מנועים לארדואינו

אתה יכול לבחור לשלוח ולקבל מחרוזת, מספר שלם, נתוני נקודה צפה וכו '. אני ממליץ לך המדריך שלנו לתכנות ארדואינו אם אתה מתחיל. בעזרתו תוכלו ליצור את הפרויקטים הראשונים שלכם. וכדוגמה קונקרטית ל- NRF24L01, הנה אני עוזב אותך את הקודים הדרושים למחרוזת.

קוד שעליך לכתוב ב- IDE של ארדואינו ולתכנת את לוח הארדואינו המחובר ל- 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);

// כתובת צינור רדיו אחת לשני הצמתים לתקשורת.
const uint64_t צינור = 0xE8E8F0F0E1LL;

נתוני char [16];

הגדרת בטל (בטל)
{
Serial.begin (9600);
radio.begin ();
radio.openReadingPipe (1, pipe);
radio.startListening ();
}

לולאה בטל (בטל)
{
אם (radio.available ())
{
int done = radio.read (נתונים, גודל נתונים);
Serial.println (נתונים);
}
}

עם זה יהיה לך את כל מה שאתה צריך ואתה יכול לנסות לשלוח מילים או מחרוזות טקסט של אחת ולראות איך השני מקבל אותן. השתמש בשני מחשבים המחוברים באמצעות USB ללוח Arduino כדי להשתמש בקונסולה כאמצעי להצגת הנתונים. הפרד ביניהם מרחק נבון בהתאם למודול שיש לך או לתצורה שנתת לו ותתחיל לראות על המסך של המחשב האחר את הדמויות שהזנת בקוד הראשון ...


תוכן המאמר עומד בעקרונותינו של אתיקה עריכתית. כדי לדווח על שגיאה לחץ כאן.

תגובה, השאר את שלך

השאירו את התגובה שלכם

כתובת הדוא"ל שלך לא תפורסם. שדות חובה מסומנים *

*

*

  1. אחראי לנתונים: מיגל אנחל גטון
  2. מטרת הנתונים: בקרת ספאם, ניהול תגובות.
  3. לגיטימציה: הסכמתך
  4. מסירת הנתונים: הנתונים לא יועברו לצדדים שלישיים אלא בהתחייבות חוקית.
  5. אחסון נתונים: מסד נתונים המתארח על ידי Occentus Networks (EU)
  6. זכויות: בכל עת תוכל להגביל, לשחזר ולמחוק את המידע שלך.

  1.   סטפן דיג'ו

    שלום אייזק
    אני רוצה להשלים פרויקט עם ארדואינו, פטל או משהו אחר.
    אתה יכול לתת איש קשר בדוא"ל כדי להסביר?
    מכרה - a01b02@abv.bg
    תודה