CC1101: RF primopredajnik za upotrebu sa Arduinom

cc1101

Sigurno u nekim projektima trebate raditi s radio frekvencijom sa svojim Arduinom, ili s bilo kojom drugom razvojnom pločom ili DIY krugom. Pa, ako je to vaš slučaj, trebalo bi da znate šta CC1101 radiofrekventni (RF) primopredajnik. I to je ono što ćemo pokušati da vam objasnimo u ovom članku.

I sa ovim drugim elektronska komponenta koja se pridružuje našoj listi, možete raditi sa različitim frekvencijama signala…

Šta je RF?

elektromagnetnog spektra

con radio frekvencija (RF) Mislimo na dio elektromagnetnog spektra koji se koristi za prijenos informacija kroz zrak. RF talasi su vrsta elektromagnetnog zračenja i nastaju kad god se električna energija prenosi kroz provodnik, kao što je kabl. Termin RF odnosi se na najmanje energetski dio elektromagnetnog spektra koji vam pokazujem na prethodnoj slici, a koji se nalazi između 3 herca (Hz) i 300 gigaherca (GHz).

Brzina svjetlosti = Talasna dužina · frekvencija

Brzina svjetlosti (približno 3.000.000 m/s) se nikada ne mijenja, pa kako se talasna dužina RF signala povećava, frekvencija se proporcionalno smanjuje i obrnuto. Relativno visokofrekventni RF signal ima kratku talasnu dužinu, a RF signal niže frekvencije ima veću talasnu dužinu. Iz istog razloga, signali niže frekvencije su prodorniji ili mogu pokriti veću pokrivenost. Na primjer, ako imate WiFi od 2.4 Ghz, on može bolje doseći i prijeći barijere u odnosu na WiFi od 5 Ghz, iako potonji omogućava veće brzine prijenosa...

Herc je mjerna jedinica za frekvenciju talasa i odgovara jednom ciklusu u sekundi. Što je frekvencija talasa veća, to je njegova talasna dužina kraća. Zato je gama zračenje veoma prodorno, jer je talasna dužina veoma mala, a frekvencija veoma visoka, pa je veoma energično.

Elektromagnetski valovi iz ovog područja spektra mogu se prenijeti primjenom naizmjenične struje koja potiče od generatora do antene. The radio frekvencijski talasi, budući da su elektromagnetski talasi, putuju brzinom svetlosti. U svom najosnovnijem smislu, promjenjivi električni signal u anteni može proizvesti elektromagnetne oscilacije (tj. RF valove). Oni mogu biti nenamjerni (potencijalno uzrokujući smetnje drugim uređajima) ili namjerni: pažljivo modulirani signali koje druge antene mogu primiti i protumačiti kao korisne informacije.

Unutar ovog RF opsega možemo prenositi podatke velikom brzinom, na primjer, kao što se radi u Wi-Fi komunikacije i mobilne telefone, kao i tradicionalni AM i FM radio.

Šta je primopredajnik?

RF pretvarač

Primopredajnik je uređaj koji kombinuje mogućnosti predajnika i prijemnika na zajedničkim kolima. To znači da može slati i primati signale, bez potrebe da ima odašiljač s jedne strane i prijemnik s druge strane. Nešto prilično praktično za mnoge DIY projekte.

Primopredajnici mogu biti dva opšta tipa: puni dupleks i poludupleks. U punom dupleksu primopredajnika, uređaj može istovremeno odašiljati i primati. Uobičajeni primjer potpunog dupleks primopredajnika je mobilni telefon. S druge strane, poludupleksni primopredajnik utišava jednu stranu dok druga emituje.

Primopredajnici su kamen temeljac bežične komunikacije i koriste se u raznim aplikacijama, od mobilnih telefona do komunikacijskih satelita, kroz mnoge druge mreže i načine prijenosa informacija, kao što su radio, TV, itd.

Primjena primopredajnika

Radio frekvencijski (RF) primopredajnik je a multifunkcionalni uređaj koji može imati veliki broj upotreba. Na primjer, kao što sam već rekao, njegovo prisustvo je bitno u raznim aplikacijama koje zahtijevaju bežičnu komunikaciju. U oblasti mobilnih telekomunikacija, primopredajnici se koriste u mobilnim telefonima za prijenos i prijem signala. Osim toga, oni su neophodni u tehnologijama kao što su WiFi i Bluetooth, raspoređeni u uređajima kao što su ruteri, računari i Internet of Things (IoT) uređaji, koji za svoj rad ovise o bežičnoj komunikaciji.

U profesionalnom polju, RF primopredajnici su neophodni u sigurnosnim sistemima. dvosmjerni radio, kao što su dvosmjerni radio uređaji koji se koriste u profesionalnim aplikacijama, sigurnosnim i hitnim službama. Ovi uređaji nalaze primenu i u sistemima za detekciju, kao što su radari koji se koriste za detekciju objekata, navigaciju i kontrolu vazdušnog saobraćaja, kao i u sonarnim sistemima za podvodne aplikacije.

La emitovanje, I za radio i za televiziju, zavisi od RF primopredajnika za prijenos signala kroz različite medije, bilo zemaljske ili satelitske. Nadalje, u svemirskom domenu, primopredajnici su ključni za komunikaciju između satelita i zemaljskih stanica u satelitskim komunikacijskim sistemima.

En aplikacije za daljinsko upravljanje i telemetriju, RF primopredajnici se koriste za prijenos podataka s elektroničkih uređaja, dronova ili bespilotne letjelice (UAV). Oni su takođe neophodni u navigacionim sistemima, kao što su GPS prijemnici, gde doprinose određivanju lokacije i navigaciji. Ukratko, svestranost RF primopredajnika čini ih bitnim komponentama u nizu modernih tehnologija koje se oslanjaju na bežičnu komunikaciju i prijenos podataka.

Očigledno, postoje neke od ovih aplikacija koje nisu u dosegu CC1101, budući da ima svoja ograničenja i radi u određenim frekventnim opsezima. Međutim, trebate znati da na tržištu postoji više uređaja kao što je ovaj primopredajnik za rad s drugim frekvencijama, udaljenostima itd.

Šta je CC1101?

cc1101

El CC1101 je radio-frekventni (RF) primopredajnik dizajniran za rad na frekvencijama ispod 1 GHz.Ovaj uređaj se može koristiti u kombinaciji s procesorom kao što je Arduino za slanje ili primanje podataka putem radio frekvencije. CC1101 može raditi na bilo kojoj frekvenciji unutar sljedećih opsega:

  • 300 na 348 MHz
  • 387 na 464 MHz
  • 779 na 928 MHz

Ove karakteristike čine CC1101 opcijom Svestran za razne projekte koji zahtijevaju bežičnu komunikaciju, uključujući Arduino i ESP8266/ESP321 projekte, te druge projekte elektronike u području daljinskih komunikacija.

Osim toga, CC1101 Omogućava vam da podesite brzinu prijenosa za različite namjene, omogućavajući veće brzine prijenosa, od 0.6 Kbps do 600 Kbps.Također podržava 2-FSK, GFSK i MSK3 modulacije.

Ako ste zainteresovani, možete ga pronaći u specijalizovanim prodavnicama elektronike, ili i na onlajn prodajnim platformama kao što su Amazon, Aliexpress i eBay. Evo ti jednog preporuka za kupovinu:

Izlazna snaga je također programabilna, za sve frekvencije koje podržavaju do +10 dBm. On domet je do 100-150 metara, u zavisnosti od frekvencije. A za rad mu je potreban napon od 1.8 do 3.6V. Komunikacija podataka se odvija preko SPI magistrale, tako da je lako koristiti zajedno sa MCU ili pločama kao što je Arduino...

Korištenje CC1101 sa Arduinom

Arduino IDE, tipovi podataka, programiranje

Sada, kada shvatite šta je CC1101, ako želite da ga koristite sa Arduinom, to je lako učiniti. Da biste to učinili, prva stvar je ispravno povežite RF uređaj ili modul na vašu razvojnu ploču. Budite oprezni, jer CC1101 ne podnosi napon od 5v i možete ga oštetiti, tako da se neće spojiti na Arduino 5v utičnicu kao što smo to učinili sa mnogim drugim uređajima. Veza da bi ispravno radila je kako slijedi:

  • VDC: bit će spojen na Arduino 3v3 da bi imao ovu utičnicu, ako je nema, a imate samo 5v, onda ćete morati da je spojite na bateriju ili vanjski izvor koji može napajati taj napon ili će CC1101 biti oštećen.
  • SI: Bit će spojen na Arduino SCK, koji može mijenjati pin ovisno o modelu, ali koji je općenito D13.
  • SO: U ovom slučaju će biti spojen na GO2, koji je obično D12 pin Arduina.
  • CSN: morate ga odnijeti na GO0 pin, koji je D9 Arduina.
  • GND: i konačno, GND će biti spojen na GND Arduina ili vašeg napajanja.

Kada se to uradi, vrijeme je da napišete kod kako biste ga testirali u Arduino IDE. Da biste to učinili, ovdje vam pokazujem vrlo osnovni primjer, ali onaj koji možete modificirati po svom ukusu. U ovom slučaju CC1101 će raditi kao receptor RF signal:

Imajte na umu da ćete morati instalirati biblioteku u svoj Arduino IDE da biste mogli raditi, ta biblioteka je ELECHOUSE ona za CC1101 koja možete preuzeti odavde.
#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 radi kao predajnik RF signal ima kod sličan prethodnom.


Budite prvi koji komentarišete

Ostavite komentar

Vaša e-mail adresa neće biti objavljena. Obavezna polja su označena sa *

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obavezi.
  5. Pohrana podataka: Baza podataka koju hostuje Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.