CC1101: משדר RF לשימוש עם Arduino

cc1101

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

ועם האחר הזה רכיב אלקטרוני שמצטרף לרשימה שלנו, אתה יכול לעבוד עם תדרי אות שונים...

מה זה RF?

הספקטרום האלקטרומגנטי

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

מהירות האור = אורך גל · תדר

מהירות האור (כ-3.000.000 m/s) לעולם אינה משתנה, כך שככל שאורך הגל של אות ה-RF גדל, התדר פוחת באופן פרופורציונלי ולהיפך. לאות RF בתדירות גבוהה יחסית יש אורך גל קצר ולאות RF בתדר נמוך יותר יש אורך גל ארוך יותר. מאותה סיבה, אותות בתדר נמוך יותר חודרים או יכולים לכסות כיסוי גדול יותר. לדוגמה, אם יש לך WiFi של 2.4 Ghz, הוא יכול להגיע רחוק יותר ולעבור מחסומים טוב יותר בהשוואה ל-5 Ghz WiFi, אם כי האחרון מאפשר מהירויות שידור גבוהות יותר...

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

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

בטווח RF זה, אנו יכולים להעביר נתונים במהירות גבוהה, למשל, כפי שנעשה ב תקשורת Wi-Fi וטלפונים סלולריים, כמו גם רדיו AM ו-FM מסורתיים.

מה זה משדר?

מתמר RF

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

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

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

יישומים של מקלט משדר

מקלט משדר בתדר רדיו (RF) הוא א מכשיר רב תכליתי שיכולים להיות להם מספר רב של שימושים. לדוגמה, כפי שאמרתי קודם, נוכחותו חיונית ביישומים שונים הדורשים תקשורת אלחוטית. בתחום התקשורת הסלולרית משתמשים במקלטי משדר בטלפונים ניידים לשידור וקליטה של ​​אותות. בנוסף, הם חיוניים בטכנולוגיות כמו WiFi ובלוטות', הפרוסות במכשירים כמו נתבים, מחשבים ומכשירי אינטרנט של הדברים (IoT), התלויים בתקשורת אלחוטית לצורך פעולתם.

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

La שידור, הן עבור רדיו והן עבור טלוויזיה, זה תלוי במקלטי משדר RF להעברת אותות דרך מדיה שונה, בין אם יבשתית או לוויינית. יתר על כן, בתחום החלל, מקלטי משדר חיוניים לתקשורת בין לוויינים ותחנות קרקע במערכות תקשורת לווייניות.

En יישומי שלט רחוק וטלמטריה, משדרים RF משמשים להעברת נתונים ממכשירים אלקטרוניים, מל"טים או כלי טיס בלתי מאוישים (מל"ט). הם חיוניים גם במערכות ניווט, כמו מקלטי GPS, שם הם תורמים לקביעת מיקום ולניווט. לסיכום, הרבגוניות של מקלטי RF הופכת אותם למרכיבים חיוניים במגוון טכנולוגיות מודרניות הנשענות על תקשורת אלחוטית והעברת נתונים.

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

מה זה CC1101?

cc1101

El CC1101 הוא מקלט רדיו (RF) שנועד לפעול בתדרים מתחת ל-1 GHz. ניתן להשתמש במכשיר זה בשילוב עם מעבד כגון Arduino כדי לשלוח או לקבל נתונים באמצעות תדר רדיו. ה-CC1101 יכול לעבוד בכל תדר ברצועות הבאות:

  • 300 348 מגהרץ
  • 387 464 מגהרץ
  • 779 928 מגהרץ

תכונות אלו הופכות את CC1101 לאופציה רב תכליתי עבור מגוון פרויקטים הדורשים תקשורת אלחוטית, כולל פרויקטים של Arduino ו-ESP8266/ESP321, ופרויקטי אלקטרוניקה נוספים בתחום התקשורת מרחוק.

בנוסף, ה-CC1101 מאפשר לך להתאים את קצב הסיביות לשימושים שונים, המאפשר מהירויות שידור גבוהות יותר, מ-0.6 Kbps ל-600 Kbps. והוא תומך גם במודולציות 2-FSK, GFSK ו-MSK3.

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

הספק המוצא גם ניתן לתכנות, עבור כל התדרים התומכים בעד +10 dBm. הוא הטווח הוא עד 100-150 מטר, תלוי בתדירות. ולהפעלתו הוא צריך מתח של 1.8 עד 3.6V. תקשורת הנתונים מתבצעת דרך אפיק SPI, כך שקל להשתמש בו יחד עם MCU או לוחות כגון Arduino...

שימוש ב-CC1101 עם Arduino

Arduino IDE, סוגי נתונים, תכנות

עכשיו, ברגע שאתה מבין מה זה CC1101, אם אתה רוצה להשתמש בו עם Arduino, זה קל לעשות. כדי לעשות זאת, הדבר הראשון הוא להתחבר בצורה נכונה התקן או מודול RF ללוח הפיתוח שלך. היזהר, מכיוון שה-CC1101 אינו סובל מתחים של 5V ואתה יכול להזיק לו, כך שהוא לא יתחבר לשקע ה-5V של Arduino כפי שעשינו עם מכשירים רבים אחרים. החיבור כדי שזה יעבוד כמו שצריך הוא כדלקמן:

  • Vcc: הוא יהיה מחובר ל-Arduino 3v3 כדי שיהיה לו את השקע הזה, אם אין לו את זה ויש לך רק 5v, אז תצטרך לחבר אותו לסוללה או למקור חיצוני שיכול לספק את המתח הזה או שה-CC1101 יהיה להיות פגום.
  • SI: הוא יחובר ל-Arduino SCK, שיכול לשנות סיכה בהתאם לדגם, אבל הוא בדרך כלל D13.
  • SO: במקרה זה הוא יהיה מחובר ל-GO2, שהוא בדרך כלל פין D12 של הארדואינו.
  • CSN: אתה צריך לקחת אותו לפין GO0, שהוא D9 של Arduino.
  • GND: ולבסוף, GND יחובר ל-GND של ה-Arduino או לספק הכוח שלך.

ברגע שזה נעשה, הגיע הזמן לכתוב את הקוד כדי לבדוק אותו ב- Arduino IDE. כדי לעשות זאת, כאן אני מראה לך דוגמה בסיסית מאוד, אבל כזו שאתה יכול לשנות לפי טעמך. במקרה זה ה-CC1101 יפעל כמו קולט אות RF:

שים לב שתצטרך להתקין ספרייה ב-Arduino IDE שלך כדי שתוכל לעבוד, הספרייה הזו היא ELECHOUSE עבור ה-CC1101 תוכלו להוריד מכאן.
#include <ELECHOUSE_CC1101_SRC_DRV.h>

void setup(){

    Serial.begin(9600);

    if (ELECHOUSE_cc1101.getCC1101()){         // Comprobar la conexión SPI del CC1101.
    Serial.println("Connection OK");
    }else{
    Serial.println("Connection Error");
    }

    ELECHOUSE_cc1101.Init();              // Inicializa el CC1101
    ELECHOUSE_cc1101.setCCMode(1);       // Configuración del modo de transferencia interna.
    ELECHOUSE_cc1101.setModulation(0);  // Modulación: 0 = 2-FSK, 1 = GFSK, 2 = ASK/OOK, 3 = 4-FSK, 4 = MSK.
    ELECHOUSE_cc1101.setMHZ(300,15);   // Pon la frecuencia que quieras usar para la transmisión (por defecto es 433,92 Mhz)
    ELECHOUSE_cc1101.setSyncMode(2);  // Modo de sync: 0 = No preamble/sync. 1 = 16 sync word bits detected. 2 = 16/16 sync word bits detected. 3 = 30/32 sync word bits detected. 4 = No preamble/sync, carrier-sense above threshold. 5 = 15/16 + carrier-sense above threshold. 6 = 16/16 + carrier-sense above threshold. 7 = 30/32 + carrier-sense above threshold.
    ELECHOUSE_cc1101.setCrc(1);      // 1 = CRC calculado en TX y comprobación CRC en RX habilitada. 0 = CRC deshabilitado en TX y RX.
    
    Serial.println("Rx Mode");
}
byte buffer[61] = {0};

void loop(){

    //Comprueba si se ha recibido algo en un tiempo marcado por (time in millis)
    if (ELECHOUSE_cc1101.CheckRxFifo(100)){
    
    if (ELECHOUSE_cc1101.CheckCRC()){    //Prueba CRC. Si "setCrc(false)" CRC devuelve un OK siempre.
    Serial.print("Rssi: ");
    Serial.println(ELECHOUSE_cc1101.getRssi());
    Serial.print("LQI: ");
    Serial.println(ELECHOUSE_cc1101.getLqi());
    
    int len = ELECHOUSE_cc1101.ReceiveData(buffer);
    buffer[len] = '\0';
    Serial.println((char *) buffer);
    for (int i = 0; i < len; i++){
    Serial.print(buffer[i]);
    Serial.print(",");
    }
    Serial.println();
    }
    }
}

ה-CC1101 פועל כ משדר לאות RF יש קוד דומה לקוד הקודם.


היה הראשון להגיב

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

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

*

*

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