NRF24L01: modulis bezvadu sakariem Arduino

NRF24L01

Jums noteikti jāizveido DIY projekts, izmantojot Arduino vai jebkuru citu elementu, un jums tas ir jāizmanto bezvadu sakari. Un tas notiek, ja jums ir kāda veida modulis vai ierīce, kas ļauj pārraidīt, izmantojot IR, RF, Bluetooth, WiFi utt. Tas ir, jums ir jābūt skaidram par nepieciešamību zināt, kāda veida signāls jūsu gadījumā būtu vispiemērotākais.

Šajā gadījumā mums ir NRF24L01 rokasgrāmata tev. Tā ir bezvadu sakaru mikroshēma, kas nodrošinās to, kas jums nepieciešams signālu sūtīšanai un saņemšanai. Signālu veids, ko tas apstrādā, ir RF vai radio frekvence, tas ir, viļņi ar lielu viļņa garumu un līdz ar to zemu enerģiju, kuru elektromagnētiskajā spektrā frekvence ir no 3 Hz līdz 300 Ghz.

Kas ir NRF24L01?

NRF24L01

El NRF24L01 ir mikroshēma, ko ražo Nordic Semiconductor. Ja tas Netika atrasts neviens produkts., mikroshēma ir uzstādīta uz mazas PCB ar dažiem jums nepieciešamajiem palīgelementiem, un tādējādi sastāda moduli. Jūs to varat izmantot vairākos veidos, ieskaitot savienošanu ar Adruino, kā es jums vēlāk parādīšu.

NRF24L01, kā var secināt no tā nosaukuma, ir bezvadu sakaru ierīce, kas izmanto RF vai radio frekvenci ar iespēju darboties 2,4 GHz - 2,5 GHz. Tā ir bezmaksas josla bezmaksas lietošanai. Jūs jau zināt, ka citas joslas ir rezervētas, un jums ir jāmaksā, ja vēlaties tās izmantot informācijas pārsūtīšanai. Turklāt tas integrē raidītāju + uztvērēju.

Konkrēti, frekvences josla, kuru varat izmantot, ir no 2.400 MHz līdz 2.525 MHz, ar iespēju izvēlēties starp 125 kanāli ar 1Mhz atstarpēm starp tām. Tomēr nav ieteicams izmantot 2.4 GHz frekvences, ja izmantojat WiFi tīklus, bezpilota lidaparātus, kas darbojas ar šo frekvenci utt., Vai arī būs traucējumi. Tāpēc ir vēlams izmantot no 2.501Mhz.

Attiecībā uz tā īpašībām darbojas no 1.9 līdz 3.6v, tāpēc jums būs viegli to darbināt ar pašu Arduino dēli ar 3.3 savienojumu, izmantojot akumulatorus, un pat ar strāvas padevi, kurai ir šāds spriegums. Turklāt jūs varat konfigurēt pārraides ātrumu starp 250 Kbps, 1Mbps un līdz 2Mbps.

Izmešu un uztveršanas mikroshēma var darboties vienlaicīgi ar līdz 6 savienojumiem dažādu ierīču. Ar to jūs varat bez problēmām apraidīt vai saņemt no dažādiem punktiem. Un, ja jūs uztrauc komunikācijas izturība vai uzticamība, pašai mikroshēmai ir loģiskā shēma, lai izlabotu datu kļūdas un, ja nepieciešams, pārsūtītu informāciju. Tāpēc tas atbrīvo procesoru no šī uzdevuma.

Lai to kontrolētu, varat izmantot SPI autobusu, tāpēc tā vadība ar Arduino ir ļoti vienkārša. Turklāt NRF24L01 datu tapas bez problēmām atbalsta līdz 5v. Enerģijas patēriņš gaidīšanas režīmā ir diezgan mazs, tāpēc par to nebūs jāuztraucas, un, kad tas darbojas, tas nav no visdārgākajiem, jo ​​datu sūtīšanai un saņemšanai tam nepieciešams tikai 15 mA.

Tirgū jūs atradīsit vairākus dažādi moduļi, kas uzstāda NRF24L01 mikroshēmu, tie mainās tikai tiem piederošajos palīgelementos vai dažās detaļās. Piemēram, antenas tipā. Dažiem antena uz PCB ir iespiesta zigzaga formā, un tā darbības rādiuss ir aptuveni 20-30 metri. Citi atzīst, ka nedaudz jaudīgāka ārējā antena ar pastiprinātāju iet no 700 metriem līdz 1 km.

Tomēr, faktisko darbības jomu ierobežo daži faktori, piemēram, ceļa šķēršļi, troksnis vai citu esošo elementu vai signālu traucējumi, pārraides ātrums, barošanas spriegums (lielāks spriegums, lielāks attālums) utt. Piemēram, ja vēlaties pārraidīt ar maksimālo ātrumu 2Mbps, par kuru distancē būs liels sods, kas būs maksimums tikai 2 vai 3 metri. Pie mazāka ātruma jūs varat uzkāpt šajā attālumā.

ESP8266
saistīto rakstu:
ESP8266: WIFI modulis Arduino

Kas jums jāzina pirms tā iegādes?

NRF40L01 antena

El NRF24L01 ir ļoti lēta mikroshēma ko var izmantot daudzos projektos. Piemēram, ja jums nav ārējas antenas, varat to iegādāties līdz pat 0.65 eiro, turklāt ārējās antenas modelis ir nedaudz dārgāks nekā šis, taču tas joprojām ir ļoti lēts un parasti nepārsniedz 1.7 eiro.

Ja jums nav cita emisijas vai uztveršanas elementa, jūs jau zināt, ka jums jāpērk divi NRF24L01 moduļi, no kuriem viens jāizmanto vienā pusē, bet otrs - vietā, kur vēlaties pārraidīt. Viņi abi rīkosies tāpat sūtītājs vai saņēmējs kā jums patīk.

NRF24L01 tapas un montāža

tapa NRF40L01

Kas attiecas uz montāžu, tas ir diezgan vienkārši. The NRF24L01 ir 8 tapas, tāpēc tā piespraude ir ļoti vienkārša lai saprastu, kā jūs varat redzēt šajā attēlā, ka es jūs atstāju. Labajā pusē jūs varat redzēt tāfeles tapu diagrammu Arduino UNO un kā katrs moduļa tapas būtu savienots ar to.

Kā jūs varat secināt, plāksne NRF24L01 tiek darbināts, izmantojot GND un 3.3v tapas no Arduino. Neaizmirstiet to nedarīt ar 5v signālu, pretējā gadījumā jūs sabojāsiet moduli.

Integrācija ar Arduino

2 NRF24L01 ar Arduino (ķēde)

Kad esat uzzinājis, kas ir NRF24L01 un kā to var savienot un darbināt, papildus tam projektu skaitam, kurus varat veikt ar pāris šīm lētajām ierīcēm, nākamā lieta ir parādīt programmēšanas piemērs lai jūs varētu sākt eksperimentēt ar savu Arduino IDE. Atcerieties, ka datu formātu, kuru varat pārsūtīt, var mainīt avota kodā.

l298n
saistīto rakstu:
L298N: Arduino motoru vadības modulis

Jūs varat izvēlēties nosūtīt un saņemt virkni, veselu skaitli, peldošā komata datus utt. Iesaku jums mūsu ceļvedis par Arduino programmēšanu ja jūs sākat. Ar to jūs varat izveidot savus pirmos projektus. Un kā konkrētu piemēru NRF24L01 šeit es jūs atstāju virknei nepieciešamie kodi.

Kods, kas jums jāieraksta Arduino IDE, un jāprogrammē Arduino dēlis, kas savienots ar NRF24L01, kuru piešķirsit kā raidītājs:

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

Šeit kods, kas jums jāievada Arduino IDE un uz tāfeles jāreģistrē, ka esat izveidojis savienojumu ar veltīto NRF24L01 kā saņēmējs:

#iekļaut <nRF24L01.h>
#ietver <RF24.h>
#include <RF24_config.h>
#iekļaut <SPI.h>

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

// Viena radio caurules adrese 2 mezglu saziņai.
const uint64_t caurule = 0xE8E8F0F0E1LL;

char dati [16];

void iestatīšana (void)
{
Serial.begin (9600);
radio.sākt ();
radio.openReadingPipe (1, caurule);
radio.startKlausīšanās ();
}

void loop (anulēts)
{
ja (radio.pieejams ())
{
int izdarīts = radio.lasīts (dati, datu lielums);
Serial.println (dati);
}
}

Ar to jums būs viss nepieciešamais, un jūs varat mēģināt nosūtīt vārdus vai teksta virknes vienam un redzēt, kā otrs tos saņem. Izmantojiet divus datorus, kas savienoti ar USB ar Arduino dēli, lai izmantotu konsoli kā līdzekli datu skatīšanai. Atdaliet viņiem piesardzīgu attālumu atbilstoši savam modulim vai piešķirtajai konfigurācijai, un otrā datora ekrānā jūs sāksit redzēt rakstus, kurus esat ievadījis pirmajā kodā ...


Komentārs, atstāj savu

Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti ar *

*

*

  1. Atbildīgais par datiem: Migels Ángels Gatóns
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.

  1.   Stefan teica

    Sveiks, Īzaks
    Es gribu pabeigt projektu ar arduino, avenēm vai kaut ko citu.
    Vai varat sazināties pa e-pastu, lai paskaidrotu?
    Mīna - a01b02@abv.bg
    Gracias