NRF24L01: modul për komunikim pa tel për Arduino

NRF24L01

Me siguri duhet të krijoni një projekt DIY duke përdorur Arduino ose ndonjë element tjetër dhe duhet ta shfrytëzoni komunikim pa tel. Dhe kjo ndodh duke pasur një lloj moduli ose pajisje që ju lejon të transmetoni duke përdorur IR, RF, Bluetooth, WiFi, etj. Kjo do të thotë, ju duhet të jeni të qartë për nevojat për të ditur se cili lloj sinjali do të ishte më i përshtatshmi në rastin tuaj.

Në këtë rast kemi një udhëzues për NRF24L01 për ty. Shtë një çip komunikimi pa tel që do t'ju ofrojë atë që ju nevojitet për të dërguar dhe marrë sinjale. Lloji i sinjaleve që trajton është RF ose radio frekuencë, domethënë, valë me gjatësi vale të madhe, dhe për këtë arsye me energji të ulët, të cilat në spektrin elektromagnetik janë me frekuencë midis 3 Hz dhe 300 Ghz.

Çfarë është NRF24L01?

NRF24L01

El NRF24L01 është një çip i prodhuar nga Nordic Semiconductor. Nëse është Nuk u gjet asnjë produkt., çipi vjen i montuar në një PCB të vogël me disa elementë ndihmës që ju nevojiten, dhe për këtë arsye kompozon një modul. Mund ta përdorni në disa mënyra, përfshirë lidhjen me Adruino siç do t'ju tregoj më vonë.

NRF24L01, siç mund të nxirret nga emri i tij, është një pajisje komunikimi pa tel që përdor RF ose radio frekuencë me aftësinë për të funksionuar në 2,4Ghz - 2,5 Ghz. Kjo është banda falas për përdorim falas. Ju tashmë e dini që bandat e tjera janë të rezervuara dhe duhet të paguani nëse doni t'i përdorni ato për të transmetuar informacion. Përveç kësaj, ajo integron një transmetues + një marrës.

Konkretisht, brezi i frekuencës që mund të përdorni është nga 2.400 Mhz në 2.525Mhz, me mundësinë e zgjedhjes midis Kanalet 125 me hapësira 1Mhz midis tyre. Sidoqoftë, nuk rekomandohet të përdorni frekuenca 2.4Ghz nëse jeni duke përdorur rrjete WiFi, dronë që punojnë me këtë frekuencë, etj., Ose do të ketë ndërhyrje. Kjo është arsyeja pse preferohet të përdoret nga 2.501Mhz e tutje.

Lidhur me karakteristikat e tij, punon nga 1.9 në 3.6v, Kështu që do të jetë e lehtë për ju që ta furnizoni me vetë bordin Arduino me lidhjen 3.3, duke përdorur bateri, madje edhe me një furnizim me energji që ka atë tension. Për më tepër, ju mund të konfiguroni shpejtësinë e transmetimit midis 250 Kbps, 1Mbps dhe deri në 2Mbps.

Çipi në emisione dhe pritje mund të funksionojë njëkohësisht me deri në 6 lidhje të pajisjeve të ndryshme. Me këtë mund të transmetoni ose merrni nga pika të ndryshme pa ndonjë problem. Dhe nëse shqetësoheni për qëndrueshmërinë ose besueshmërinë e komunikimit, vetë çipi ka qarqe logjike për të korrigjuar gabimet e të dhënave dhe për të përcjellë informacionin nëse është e nevojshme. Prandaj, ai e çliron procesorin nga kjo detyrë.

Për ta kontrolluar mund të përdorni autobusi SPI, kështu që kontrolli i tij me Arduino është shumë i thjeshtë. Për më tepër, kunjat e të dhënave të NRF24L01 mbështesin deri në 5v pa probleme. Konsumi i energjisë në Stand By është mjaft i ulët, kështu që nuk do të jetë një element për t’u shqetësuar, dhe kur është në veprim nuk është një nga më të kushtueshmit, pasi i duhen vetëm 15mA për dërgimin dhe marrjen e të dhënave.

Në treg do të gjeni disa module të ndryshme që montojnë çipin NRF24L01, ato ndryshojnë vetëm në elementet ndihmëse që kanë ose në disa detaje. Për shembull në llojin e antenës. Disa kanë një antenë të shtypur në PCB në një formë zigzagu me një diapazon prej rreth 20-30 metrash. Të tjerët pranojnë një antenë të jashtme disi më të fuqishme me një amplifikator për të shkuar nga 700 metra në 1 km.

Megjithatë, fushëveprimi aktual është i kufizuar nga disa faktorë, të tilla si pengesat rrugore, zhurma ose ndërhyrjet nga elementë të tjerë ose sinjale të pranishme, shpejtësia e transmetimit, voltazhi i furnizimit (tension më i lartë, distancë më e madhe), etj. Për shembull, nëse doni të transmetoni me shpejtësinë maksimale prej 2Mbps që do të ketë një gjobë të shkëlqyer në distancë, e cila do të jetë maksimumi vetëm 2 ose 3 metra. Me shpejtësi më të ulët mund të jeni në gjendje të ngjitni atë distancë.

ESP8266
Artikulli i lidhur:
ESP8266: moduli WIFI për Arduino

Çfarë duhet të dini para se ta blini?

Antena NRF40L01

El NRF24L01 është një çip shumë i lirë që mund të përdoren në një mori projektesh. Për shembull, nëse nuk keni një antenë të jashtme, mund ta blini atë deri në 0.65 €, modeli i antenës së jashtme është pak më i shtrenjtë se ky, por gjithsesi është shumë i lirë dhe zakonisht nuk i kalon 1.7 €.

Nëse nuk keni një element tjetër emisioni ose marrjeje, tashmë e dini që duhet të blini dy module NRF24L01, njërin për ta përdorur në njërën anë dhe tjetrin në anën tjetër të vendit ku dëshironi të transmetoni. Ata të dy do të veprojnë si dërguesi ose marrësi si ju pëlqen

Pinout dhe montimi i NRF24L01

pinout NRF40L01

Sa i përket asamblesë, ajo është mjaft e thjeshtë. NRF24L01 ka 8 kunja, prandaj pinout-i i tij është shumë i lehtë për të kuptuar se si mund ta shihni në këtë imazh që unë ju lë. Në të djathtë mund të shihni diagramin pin të një tabele Arduino UNO dhe si do të lidheshin secila prej kunjave të modulit me të.

Siç mund ta nxirrni, pjata NRF24L01 mundësohet duke përdorur kunjat GND dhe 3.3v nga Arduino. Mos harroni të mos e bëni atë me sinjalin 5v ose do të dëmtoni modulin.

Integrimi me Arduino

2 NRF24L01 me Arduino (qark)

Pasi të dini se çfarë është NRF24L01 dhe si mund të lidhet dhe mundësohet, përveç numrit të projekteve që mund të bëni me disa nga këto pajisje të lira, gjëja tjetër është të tregoni një shembull programimi kështu që ju mund të filloni të eksperimentoni me Arduino IDE tuaj. Mos harroni se formati i të dhënave që mund të transmetoni mund të modifikohet në kodin burimor.

l298n
Artikulli i lidhur:
L298N: modul për të kontrolluar motorët për Arduino

Mund të zgjidhni të dërgoni dhe merrni një varg, një numër të plotë, një të dhënë me një pikë lundruese, etj. Unë ju rekomandoj udhëzuesi ynë për programimin Arduino nëse jeni duke filluar. Me të mund të krijoni projektet tuaja të para. Dhe si një shembull konkret për NRF24L01, këtu po ju lë kodet e nevojshme për një varg.

Kodoni që duhet të shkruani në Arduino IDE dhe programoni bordin Arduino të lidhur me NRF24L01 që do të caktoni si transmetues:

#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);
}

Këtu kodi që duhet të futni në Arduino IDE dhe të regjistroni në tabelë që keni lidhur me NRF24L01 të dedikuar si receptor:

#përfshij <nRF24L01.h>
#përfshij <RF24.h>
#përfshij <RF24_config.h>
#përfshij <SPI.h>

const int pinCE = 9;
const int pinCSN = 10;
Radio RF24 (pinCE, pinCSN);

// Adresa e vetme e tubit radio për 2 nyjet për të komunikuar.
tub uint64_t = 0xE8E8F0F0E1LL;

të dhëna char [16];

konfigurimi i pavlefshëm (i pavlefshëm)
{
Serial.fillo (9600);
radio.fillo ();
radio.hapurTleximiTub (1, tub);
radio. fillimiDëgjimi ();
}

lak i pavlefshëm (i pavlefshëm)
{
nëse (radio. i disponueshëm ())
{
int bërë = radio.lexoj (të dhënat, madhësia e të dhënave);
Serial.println (të dhëna);
}
}

Me atë do të keni gjithçka që ju nevojitet dhe mund të përpiqeni të dërgoni fjalë ose vargje teksti të njërit dhe të shihni se si i merr tjetri. Përdorni dy kompjuterë të lidhur me USB në bordin Arduino për të përdorur konsolën si një mjet për të parë të dhënat. Ndajini atyre një distancë të matur sipas modulit që keni ose konfigurimit që i keni dhënë dhe do të filloni të shihni në ekranin e kompjuterit tjetër karakteret që keni futur në kodin e parë ...


Një koment, lëre tuajën

Lini komentin tuaj

Adresa juaj e emailit nuk do të publikohet. Fusha e kërkuar janë shënuar me *

*

*

  1. Përgjegjës për të dhënat: Miguel Ángel Gatón
  2. Qëllimi i të dhënave: Kontrolloni SPAM, menaxhimin e komenteve.
  3. Legjitimimi: Pëlqimi juaj
  4. Komunikimi i të dhënave: Të dhënat nuk do t'u komunikohen palëve të treta përveç me detyrim ligjor.
  5. Ruajtja e të dhënave: Baza e të dhënave e organizuar nga Occentus Networks (BE)
  6. Të drejtat: Në çdo kohë mund të kufizoni, rikuperoni dhe fshini informacionin tuaj.

  1.   Stefan dijo

    Përshëndetje Isak
    Unë dua të përfundoj një projekt me arduino, rasberry ose diçka tjetër.
    A mund të jepni një kontakt me email për të shpjeguar?
    Nje miniere - a01b02@abv.bg
    Falënderim