CC1101: RF transceiver pro použití s ​​Arduino

cc1101

Určitě v některých projektech potřebujete pracovat s radiofrekvencí s vaším Arduinem nebo s jakoukoli jinou vývojovou deskou nebo DIY obvodem. No, pokud je to váš případ, měli byste vědět, co Radiofrekvenční (RF) transceiver CC1101. A právě to se vám pokusíme vysvětlit v tomto článku.

A s tímto dalším elektronická součástka, která se připojuje k našemu seznamu, můžete pracovat s různými frekvencemi signálu…

Co je RF?

elektromagnetické spektrum

s rádiová frekvence (RF) Máme na mysli část elektromagnetického spektra, která se používá k přenosu informací vzduchem. RF vlny jsou typem elektromagnetického záření a vznikají vždy, když je elektrická energie přenášena vodičem, jako je kabel. Termín RF se vztahuje na nejméně energetickou část elektromagnetického spektra, kterou jsem vám ukázal na předchozím obrázku a která se nachází mezi 3 hertz (Hz) a 300 gigahertz (GHz).

Rychlost světla = vlnová délka · frekvence

Rychlost světla (cca 3.000.000 2.4 5 m/s) se nikdy nemění, takže s rostoucí vlnovou délkou RF signálu úměrně klesá frekvence a naopak. Relativně vysokofrekvenční RF signál má krátkou vlnovou délku a nízkofrekvenční RF signál má delší vlnovou délku. Ze stejného důvodu jsou signály s nižší frekvencí pronikavější nebo mohou pokrýt větší pokrytí. Pokud máte například XNUMX Ghz WiFi, může dosáhnout dále a překonat bariéry lépe ve srovnání s XNUMX Ghz WiFi, i když ta umožňuje vyšší přenosové rychlosti...

Hertz je jednotka měření frekvence vln a odpovídá jednomu cyklu za sekundu. Čím vyšší je frekvence vlny, tím kratší je její vlnová délka. To je důvod, proč je gama záření velmi pronikavé, protože vlnová délka je velmi malá a jeho frekvence je velmi vysoká, takže je vysoce energetické.

Elektromagnetické vlny z této oblasti spektra mohou být přenášeny aplikací střídavého proudu pocházejícího z generátoru do antény. The radiofrekvenční vlnyjako elektromagnetické vlny se pohybují rychlostí světla. Ve své nejzákladnější podobě může proměnný elektrický signál v anténě produkovat elektromagnetické oscilace (tj. RF vlny). Ty mohou být neúmyslné (potenciálně způsobující rušení jiných zařízení) nebo záměrné: pečlivě modulované signály, které mohou ostatní antény přijímat a být interpretovány jako užitečné informace.

V tomto RF rozsahu můžeme přenášet data vysokou rychlostí, například jako v Wi-Fi komunikace a mobilní telefony, stejně jako tradiční AM a FM rádio.

Co je to transceiver?

RF převodník

Transceiver je zařízení, které kombinuje schopnosti vysílače a přijímače na sdílených okruzích. To znamená, že může odesílat a přijímat signály, aniž by musel mít vysílač na jedné straně a přijímač na straně druhé. Něco docela praktického pro mnoho DIY projektů.

Transceivery mohou být dva obecné typy: plný duplex a poloviční duplex. V plně duplexním transceiveru může zařízení vysílat a přijímat současně. Běžným příkladem plně duplexního transceiveru je mobilní telefon. Na druhou stranu poloduplexní transceiver ztlumí jednu stranu, zatímco druhá vysílá.

Transceivery jsou základní kámen bezdrátové komunikace a používají se v různých aplikacích, od mobilních telefonů po komunikační satelity, prostřednictvím mnoha dalších sítí a způsobů přenosu informací, jako je rádio, TV atd.

Aplikace transceiveru

Radiofrekvenční (RF) transceiver je a multifunkční zařízení který může mít velké množství využití. Například, jak jsem řekl dříve, jeho přítomnost je nezbytná v různých aplikacích, které vyžadují bezdrátovou komunikaci. V oblasti mobilních telekomunikací se transceivery používají v mobilních telefonech pro přenos a příjem signálů. Kromě toho jsou nezbytné v technologiích, jako je WiFi a Bluetooth, nasazených v zařízeních, jako jsou routery, počítače a zařízení internetu věcí (IoT), jejichž provoz závisí na bezdrátové komunikaci.

V profesionální oblasti jsou RF transceivery zásadní v bezpečnostních systémech. obousměrné rádio, jako jsou obousměrné vysílačky používané v profesionálních aplikacích, bezpečnostních a záchranných službách. Tato zařízení nacházejí uplatnění také v detekčních systémech, jako jsou radary používané pro detekci objektů, navigaci a řízení letového provozu, a také v sonarových systémech pro podvodní aplikace.

La vysílání, U rozhlasu i televize záleží na RF transceiverech pro přenos signálů přes různá média, ať už pozemní nebo satelitní. Kromě toho jsou ve vesmírné oblasti transceivery klíčové pro komunikaci mezi satelity a pozemními stanicemi v satelitních komunikačních systémech.

En dálkové ovládání a telemetrické aplikace, RF transceivery se používají pro přenos dat z elektronických zařízení, dronů nebo bezpilotních vzdušných prostředků (UAV). Jsou také nezbytné v navigačních systémech, jako jsou přijímače GPS, kde přispívají k určení polohy a navigaci. Stručně řečeno, všestrannost vysokofrekvenčních transceiverů z nich činí základní součásti v řadě moderních technologií, které se spoléhají na bezdrátovou komunikaci a přenos dat.

Je zřejmé, že některé z těchto aplikací nejsou v dosahu CC1101, protože má svá omezení a pracuje v určitých frekvenčních rozsazích. Měli byste však vědět, že na trhu existuje více zařízení, jako je tento transceiver pro práci s jinými frekvencemi, vzdálenostmi atd.

Co je CC1101?

cc1101

El CC1101 je radiofrekvenční (RF) transceiver navržený pro provoz na frekvencích pod 1 GHz.Toto zařízení lze použít ve spojení s procesorem, jako je Arduino, k odesílání nebo přijímání dat prostřednictvím rádiové frekvence. CC1101 může pracovat na libovolné frekvenci v následujících pásmech:

  • 300 až 348 MHz
  • 387 až 464 MHz
  • 779 až 928 MHz

Tyto vlastnosti dělají z CC1101 možnost Univerzální pro různé projekty vyžadující bezdrátovou komunikaci, včetně projektů Arduino a ESP8266/ESP321 a dalších elektronických projektů v oblasti vzdálených komunikací.

Navíc CC1101 Umožňuje upravit přenosovou rychlost pro různá použití, umožňující vyšší přenosové rychlosti, od 0.6 Kbps do 600 Kbps.A také podporuje modulace 2-FSK, GFSK a MSK3.

V případě zájmu jej seženete ve specializovaných obchodech s elektronikou, nebo také na online prodejních platformách jako je Amazon, Aliexpress a eBay. Tady jeden máte koupit doporučení:

Výstupní výkon je také programovatelný pro všechny frekvence s podporou až +10 dBm. On dosah je 100-150 metrů, v závislosti na frekvenci. A pro svůj provoz potřebuje napětí 1.8 až 3.6V. Datová komunikace probíhá přes sběrnici SPI, takže je snadné ji používat společně s MCU nebo deskami jako je Arduino...

Použití CC1101 s Arduinem

Arduino IDE, datové typy, programování

Nyní, jakmile pochopíte, co je CC1101, pokud jej chcete používat s Arduinem, je to snadné. Chcete-li to udělat, první věc je správně připojit RF zařízení nebo modul k vaší vývojové desce. Buďte opatrní, protože CC1101 netoleruje 5V napětí a můžete jej poškodit, takže se nepřipojí k 5V zásuvce Arduina, jak jsme to udělali s mnoha jinými zařízeními. Připojení, aby správně fungovalo, je následující:

  • Vcc: bude připojen k Arduinu 3v3, aby měl tuto zásuvku, pokud ji nemá a máte pouze 5v, tak ji budete muset připojit k baterii nebo externímu zdroji, který to napětí dokáže dodat, nebo bude CC1101 být poškozen.
  • SI: Bude připojen k Arduino SCK, který může měnit pin v závislosti na modelu, ale obecně je to D13.
  • SO: V tomto případě bude připojen ke GO2, což je obvykle pin D12 Arduina.
  • ČSN: musíte to vzít na pin GO0, což je D9 Arduina.
  • GND: a nakonec bude GND připojeno k GND Arduina nebo vašeho napájecího zdroje.

Jakmile je toto hotovo, je čas napsat kód a otestovat jej v Arduino IDE. Chcete-li to provést, zde vám ukážu velmi základní příklad, který si však můžete upravit podle svých představ. V tomto případě bude CC1101 fungovat jako přijímač RF signál:

Všimněte si, že budete muset nainstalovat knihovnu do vašeho Arduino IDE, abyste mohli pracovat, tato knihovna je ELECHOUSE pro CC1101, která si můžete stáhnout zde.
#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 fungující jako vysílač RF signál má kód podobný předchozímu.


Buďte první komentář

Zanechte svůj komentář

Vaše e-mailová adresa nebude zveřejněna. Povinné položky jsou označeny *

*

*

  1. Odpovědný za údaje: Miguel Ángel Gatón
  2. Účel údajů: Ovládací SPAM, správa komentářů.
  3. Legitimace: Váš souhlas
  4. Sdělování údajů: Údaje nebudou sděleny třetím osobám, s výjimkou zákonných povinností.
  5. Úložiště dat: Databáze hostovaná společností Occentus Networks (EU)
  6. Práva: Vaše údaje můžete kdykoli omezit, obnovit a odstranit.