Obsah:

Bezdrôtový prenos NRF24L01 medzi Arduinom: 10 krokov
Bezdrôtový prenos NRF24L01 medzi Arduinom: 10 krokov

Video: Bezdrôtový prenos NRF24L01 medzi Arduinom: 10 krokov

Video: Bezdrôtový prenos NRF24L01 medzi Arduinom: 10 krokov
Video: Гусеничная робоплатформа на Arduino-UNO с дистанционным радиоуправлением и видеопередатчиком. 2024, November
Anonim
Bezdrôtový prenos NRF24L01 medzi Arduinom
Bezdrôtový prenos NRF24L01 medzi Arduinom

NRF24L01 je nízkoenergetický 2,4 GHz bezdrôtový RF modul od spoločnosti Nordic Semiconductors. Môže pracovať s prenosovými rýchlosťami od 250 kbps do 2 Mbps. Ak je prevádzkovaný na otvorenom priestranstve s nižšou prenosovou rýchlosťou, môže dosiahnuť až 300 stôp. Používa sa teda v aplikáciách krátkeho dosahu, ako je domáca automatizácia, hračky, herné ovládače a ďalšie.

Modul NRF24L01 môže prenášať aj prijímať údaje. Na komunikáciu s mikrokontrolérmi používa protokol SPI. Preto môžete modul používať s Arduino na komunikačných kolíkoch SPI. Uvidíme, ako prepojiť tento modul s Arduinom a ovládať LED z iného Arduina. Vďaka rozstupu 1 Mhz v prevádzkovom rozsahu 2400 MHz - 2525 MHz (2,40 GHz - 2,525 GHz) môže mať možnosť mať sieť 125 nezávisle pracujúcich modemov v tej istej oblasti. Každý kanál môže mať až 6 adries a môže komunikovať až s 6 ďalšími jednotkami súčasne.

Krok 1: Vlastnosti NRF24L01

Vlastnosti:

  • Prevádzkové napätie: 9V až 3,6V
  • Napájacie napätie: 3V
  • Pin napätie: 5V tolerantné (nie je potrebné pre prevodníky úrovní)
  • Cenovo dostupný jednočipový 2,4GHz RF transceiver RF GFSK
  • Prevádzkový dosah (otvorený priestor): 300 stôp (pomocou externej antény sa môže zvýšiť až na 3 000 stôp)

V tomto tutoriáli budeme odosielať a prijímať údaje pomocou dvoch nastavení modulu NRF24L01. Jedno nastavenie je pre stranu vysielača a druhé pre stranu prijímača. Príkazy odosielame ako reťazec „ON“(akákoľvek správa, ktorú chcete odoslať) na strane vysielača, na strane prijímača vytlačíme rovnakú správu na sériový monitor, ktorá bola odoslaná z druhej strany.

Ak sa chcete dozvedieť, ako vytvoriť projekt monitorovania dieťaťa pomocou NRF24L01, navštívte stránku

Krok 2: Predpoklady

Požadované súčasti:

  • Arduino Uno - 2 č. (Môže používať aj Nano)
  • Bezdrôtový RF modul NRF24L01 - 2 nosné prepojovacie vodiče

Knižnice:

  • Knižnica RF24 -
  • Knižnica SPI

Krok 3: Podrobnosti o pine

Podrobnosti o pine
Podrobnosti o pine
  1. GND - zem
  2. VCC - napájací zdroj 3,3 V (1,9 V až 3,6 V)
  3. CE - Chip Enable
  4. CSN - Chip Select Not
  5. SCK - Sériové hodiny pre zbernicu SPI
  6. MOSI - Master Out Slave In
  7. MISO - Master in Slave Out
  8. IRQ - prerušovací kolík (aktívny nízky)

Modul spotrebuje 1,9 V až 3,6 V, ale kolíky zvládnu toleranciu až 5 V.

Krok 4: Pripojenia SPI pre rôzne dosky

Ak používate Arduino Uno, Pro Mini, Nano alebo Pro Micro, piny SPI sú rovnaké ako v nasledujúcom schéme zapojenia. Ak používate Arduino Mega, skontrolujte piny SPI, ktoré sú mapované odlišne podľa hardvérového dizajnu. Tu nájdete na referenčnej stránke knižnice SPI rôzne piny SPI na rôznych typoch dosiek. Dosky Arduino majú navyše samostatnú hlavičku ICSP, ktorá je kompatibilná so Sheilds.

Krok 5: Obvod na strane vysielača a na strane prijímača je pre tento príklad rovnaký

Obvod na strane vysielača a na strane prijímača je v tomto prípade rovnaký
Obvod na strane vysielača a na strane prijímača je v tomto prípade rovnaký

Obvod na strane vysielača a prijímača je v tomto prípade rovnaký.

Krok 6: Kód - Strana vysielača:

Krok 7: Prijímač

Obvod prijímača je rovnaký ako obvod nášho vysielača v našom projekte. Vykonajte zapojenie podľa obvodu vysielača a uistite sa, že odovzdáte správny kód pre prijímač.

Krok 8: Kód prijímača:

Krok 9: Vysvetlenie:

Popis:

NRF24l01 môže fungovať ako vysielač a prijímač. Vo vyššie uvedenom kóde na strane vysielača odošleme text „ZAPNUTÝ“a to isté sa zobrazí na strane prijímača prostredníctvom sériového monitora a zapne LED diódu pripojenú na kolíku 4. NRF24l01 je možné identifikovať podľa jeho adresy. Je to uvedené v číselnom reťazci. Použili sme

adresa bajtu const [6] = "00001";

Ako adresu sme tu použili „00001“. Na nastavenie adresy môžete priradiť ľubovoľný číselný reťazec. Údaje sa odosielajú cez potrubie na čítanie/zápis na NRF24l01. Je to dočasná vyrovnávacia pamäť, ktorá uchováva údaje na odoslanie alebo prijatie.

Vysielač - zapisovanie údajov do potrubia:

radio.openWritingPipe (adresa);

Prijímač - čítanie údajov z potrubia:

radio.openReadingPipe (0, adresa);

Toto je jednoduché nastavenie prenosu a príjmu pre modul NRF. Alternatívne môžete odosielať údaje senzorov zo strany vysielača a podľa hodnôt senzora môžete vykonávať niektoré činnosti na strane prijímača.

Krok 10: Projekt monitorovania dieťaťa pomocou NRF24L01

Rozšírená verzia tohto tutoriálu je popísaná v našom blogu. Vykonajte projekt monitorovania dieťaťa pomocou modulu NRF24L01.

Navštívte náš blog „Projekt monitorovania dieťaťa pomocou tohto modulu NRF24L01“.

Ďalšie návody nájdete na blogu FactoryForward

Nakupujte online v FactoryForward India (Raspberry Pi, Arduino, senzory, robotické súčiastky, stavebnice pre domácich majstrov) a ďalších.

Odporúča: