NRF24L01: moduuli langattomaan tiedonsiirtoon Arduinolle

NRF24L01

Sinun on varmasti luotava DIY-projekti käyttämällä Arduinoa tai muuta elementtiä ja sinun on hyödynnettävä sitä langaton viestintä. Ja se tapahtuu, kun sinulla on jonkinlainen moduuli tai laite, jonka avulla voit lähettää tietoja IR-, RF-, Bluetooth-, WiFi- jne. Eli sinun on oltava selvillä tarpeista tietää, minkä tyyppinen signaali olisi sopivin tapauksessasi.

Tässä tapauksessa meillä on NRF24L01: n opas sinulle. Se on langaton tiedonsiirtosiru, joka tarjoaa sinulle mitä tarvitset lähettää ja vastaanottaa signaaleja. Sen käsittelemien signaalien tyyppi on radiotaajuus tai radiotaajuus, ts. Aallot, joilla on suuri aallonpituus ja siten matala energia, joiden taajuus on sähkömagneettisessa spektrissä välillä 3 Hz - 300 Ghz.

Mikä on NRF24L01?

NRF24L01

El NRF24L01 on Nordic Semiconductorin valmistama siru. Jos se Tuotteita ei löytynyt., siru on asennettu pieneen piirilevyyn, jossa on joitain tarvitsemiasi lisäelementtejä, ja siksi se muodostaa moduulin. Voit käyttää sitä useilla tavoilla, mukaan lukien liittäminen Adruinoon, kuten näytän sinulle myöhemmin.

NRF24L01, kuten nimestään voidaan päätellä, on langaton viestintälaite, joka käyttää radiotaajuutta tai radiotaajuutta ja kykyä toimia 2,4 GHz - 2,5 Ghz. Se on ilmainen bändi ilmaiseen käyttöön. Tiedät jo, että muut taajuudet ovat varattuja, ja sinun on maksettava, jos haluat käyttää niitä tiedonsiirtoon. Lisäksi se integroi lähettimen + vastaanottimen.

Tarkemmin sanottuna taajuusalue, jota voit käyttää, on välillä 2.400-2.525 MHz, ja mahdollisuus valita 125-kanavat niiden välissä on 1 MHz: n väli. 2.4 GHz: n taajuuksien käyttöä ei kuitenkaan suositella, jos käytät WiFi-verkkoja, tällä taajuudella toimivia droneja jne., Tai häiriöitä esiintyy. Siksi on suositeltavaa käyttää 2.501Mhz: stä alkaen.

Sen ominaisuuksien suhteen toimii 1.9-3.6v, Joten sinun on helppoa virtaa siihen itse Arduino-kortilla 3.3-liitännällä, käyttämällä paristoja ja jopa virtalähteellä, jolla on kyseinen jännite. Lisäksi voit määrittää lähetysnopeuden välillä 250 Kbps, 1Mbps ja jopa 2Mbps.

Siru päästöissä ja vastaanottoissa voi toimia samanaikaisesti jopa 6 liitäntää erilaisia ​​laitteita. Sen avulla voit lähettää tai vastaanottaa eri pisteistä ilman mitään ongelmia. Ja jos olet huolissasi tiedonsiirron luotettavuudesta tai luotettavuudesta, sirulla itsessään on logiikkapiirit datavirheiden korjaamiseksi ja tietojen toimittamiseksi tarvittaessa. Siksi se vapauttaa prosessorin tästä tehtävästä.

Voit hallita sitä voit käyttää SPI-väylä, joten sen hallinta Arduinolla on hyvin yksinkertaista. Lisäksi NRF24L01: n datanastat tukevat ongelmitta 5 V: n jännitettä. Virrankulutus valmiustilassa on melko pieni, joten siitä ei tarvitse huolehtia, eikä se ole toiminnassaan kallein, koska se tarvitsee vain 15mA tietojen lähettämiseen ja vastaanottamiseen.

Markkinoilta löydät useita eri moduulit, jotka asentavat NRF24L01-sirun, ne muuttuvat vain niissä olevissa apuelementeissä tai joissakin yksityiskohdissa. Esimerkiksi antennityypissä. Joillakin on piirilevylle painettu antenni siksak-muodossa, jonka kantama on noin 20-30 metriä. Toiset myöntävät, että jonkin verran tehokkaampi ulkoinen antenni vahvistimella kulkee 700 metristä kilometriin.

kuitenkin varsinaista soveltamisalaa rajoittavat jotkut tekijät, kuten tien esteet, muiden elementtien tai signaalien aiheuttama melu tai häiriöt, lähetysnopeus, syöttöjännite (suurempi jännite, suurempi etäisyys) jne. Esimerkiksi, jos haluat lähettää 2Mbps: n maksiminopeudella, jolla on suuri rangaistus etäisyydellä, joka on korkeintaan 2 tai 3 metriä. Pienemmillä nopeuksilla saatat pystyä kiipeämään kyseisen matkan.

ESP8266
Aiheeseen liittyvä artikkeli:
ESP8266: WIFI-moduuli Arduinolle

Mitä sinun on tiedettävä ennen kuin ostat sen?

NRF40L01-antenni

El NRF24L01 on erittäin halpa siru joita voidaan käyttää monissa projekteissa. Esimerkiksi, jos sinulla ei ole ulkoista antennia, voit ostaa sen hintaan 0.65 €, jolloin ulkoinen antennimalli on hieman kalliimpi kuin tämä, mutta se on silti erittäin halpa eikä yleensä ylitä 1.7 €.

Jos sinulla ei ole muuta päästö- tai vastaanottoelementtiä, tiedät jo, että sinun on ostettava kaksi NRF24L01-moduulia, yksi käytettäväksi toisella puolella ja toinen lähetyskohdan toisella puolella. He molemmat toimivat lähettäjän tai vastaanottajan niinkuin haluat.

NRF24L01: n kiinnitys ja kiinnitys

liitin NRF40L01

Mitä tulee kokoonpanoon, se on melko yksinkertainen. NRF24L01: ssä on 8 nastaa, joten sen kiinnitys on erittäin helppoa ymmärtääksesi, kuinka voit nähdä tässä kuvassa, että jätän sinut. Oikealla näet taulun piikkikaavion Arduino UNO ja kuinka kukin moduulin nasta olisi kytketty siihen.

Kuten voit päätellä, levy NRF24L01 saa virran GND- ja 3.3v-nastoilla Arduinolta. Muista, ettet tee sitä 5v-signaalilla, tai moduuli vahingoittuu.

Integrointi Arduinon kanssa

2 NRF24L01 Arduinolla (piiri)

Kun tiedät mikä NRF24L01 on ja miten se voidaan liittää ja käyttää virtaa, sen lisäksi, kuinka monta projektia voit tehdä parilla näistä halvoista laitteista, seuraava asia on näyttää ohjelmointiesimerkki joten voit alkaa kokeilla Arduino IDE: täsi. Muista, että lähettämääsi datamuotoa voidaan muokata lähdekoodissa.

l298n
Aiheeseen liittyvä artikkeli:
L298N: moduuli moottoreiden ohjaamiseen Arduinolle

Voit lähettää ja vastaanottaa merkkijonon, kokonaisluvun, liukulukutiedot jne. Suosittelen sinua oppaamme Arduino-ohjelmoinnista jos aloitat. Sen avulla voit luoda ensimmäiset projektisi. Ja konkreettisena esimerkkinä NRF24L01: lle, jätän teidät merkkijonon edellyttämät koodit.

Koodi, joka sinun on kirjoitettava Arduino IDE: hen ja ohjelmoitava NRF24L01: een liitetty Arduino-kortti, jonka aiot määrittää lähetin:

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

Tässä koodi, joka sinun on syötettävä Arduino IDE: hen ja tallennettava taululle, jonka olet liittänyt omistettuun NRF24L01: een reseptorin:

#Sisällytä <nRF24L01.h>
#Sisällytä <RF24.h>
#include <RF24_config.h>
#sisällytä <SPI.h>

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

// Yhden radioputken osoite kahden solmun välittämiseksi.
const uint64_t -putki = 0xE8E8F0F0E1LL;

hiilitiedot [16];

void setup (void)
{
Sarja-aloitus (9600);
radio.begin ();
radio.openReadingPipe (1, putki);
radio.startKuuntelu ();
}

void loop (mitätön)
{
if (radio.available ())
{
int tehty = radio.read (data, datan koko);
Serial.println (data);
}
}

Tuon kanssa sinulla on kaikki tarvitsemasi ja voit yrittää lähettää yhden sanoja tai tekstimerkkijonoja ja nähdä, miten toinen ottaa ne vastaan. Käytä kahta USB-liitäntää Arduino-kortille kytkettyä tietokonetta käyttääksesi konsolia tietojen tarkasteluun. Erota ne varovaisella etäisyydellä sinulla olevan moduulin tai sen määrityksen mukaan ja alat nähdä toisen tietokoneen näytössä ensimmäiseen koodiin kirjoittamasi merkit ...


Kommentti, jätä sinun

Jätä kommentti

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *

*

*

  1. Vastuussa tiedoista: Miguel Ángel Gatón
  2. Tietojen tarkoitus: Roskapostin hallinta, kommenttien hallinta.
  3. Laillistaminen: Suostumuksesi
  4. Tietojen välittäminen: Tietoja ei luovuteta kolmansille osapuolille muutoin kuin lain nojalla.
  5. Tietojen varastointi: Occentus Networks (EU) isännöi tietokantaa
  6. Oikeudet: Voit milloin tahansa rajoittaa, palauttaa ja poistaa tietojasi.

  1.   Stefan dijo

    Hei Isaac
    Haluan suorittaa projektin arduinolla, vadelmalla tai muulla.
    Voitteko antaa sähköpostiosoitteen selittääksesi?
    Kaivos - a01b02@abv.bg
    kiitos