Sommario:

Trasmissione wireless NRF24L01 tra Arduino: 10 passaggi
Trasmissione wireless NRF24L01 tra Arduino: 10 passaggi

Video: Trasmissione wireless NRF24L01 tra Arduino: 10 passaggi

Video: Trasmissione wireless NRF24L01 tra Arduino: 10 passaggi
Video: Wireless Arduino communication with an NRF24L01+ radio chip (RF24) 2024, Dicembre
Anonim
Trasmissione wireless NRF24L01 tra Arduino
Trasmissione wireless NRF24L01 tra Arduino

NRF24L01 è un modulo RF wireless a bassa potenza da 2,4 GHz di Nordic Semiconductors. Può funzionare con baud rate da 250 kbps fino a 2 Mbps. Se viene utilizzato in uno spazio aperto con una velocità di trasmissione inferiore, può raggiungere fino a 300 piedi. Quindi viene utilizzato in applicazioni a corto raggio come l'automazione domestica, i giocattoli, i controller di gioco e altro ancora.

Il modulo NRF24L01 può sia trasmettere che ricevere i dati. Utilizza il protocollo SPI per comunicare con i microcontrollori. Quindi puoi usare il modulo con Arduino sui pin di comunicazione SPI. Vedremo come interfacciare questo modulo con un Arduino e controllare un LED da un altro Arduino. Con una spaziatura di 1 Mhz sul range operativo 2400 Mhz – 2525 Mhz (2,40 Ghz – 2,525 GHz), può dare la possibilità di avere una rete di 125 modem funzionanti indipendentemente nella stessa area. Ogni canale può avere fino a 6 indirizzi e può comunicare con un massimo di altre 6 unità contemporaneamente.

Passaggio 1: caratteristiche di NRF24L01

Caratteristiche:

  • Tensione di esercizio: da 9V a 3.6V
  • Tensione di alimentazione: 3V
  • Tensione pin: 5 V tollerante (non sono necessari convertitori di livello)
  • IC ricetrasmettitore RF GFSK a chip singolo a basso costo
  • Raggio d'azione (spazio aperto): 300 piedi (può aumentare fino a 3000 piedi utilizzando un'antenna esterna)

In questo tutorial, invieremo e riceveremo dati utilizzando la configurazione di due moduli NRF24L01. Una configurazione è per il lato trasmettitore e un'altra per il lato ricevitore. Inviamo i comandi come stringa "ON" (qualunque messaggio si desideri inviare) sul lato trasmettitore, lato ricevitore stamperemo lo stesso messaggio sul monitor seriale che è stato inviato dall'altro lato.

Per sapere come creare un progetto di monitoraggio del bambino utilizzando NRF24L01 - Visita qui

Passaggio 2: prerequisiti

Componenti richiesti:

  • Arduino Uno – 2 No. (può anche usare Nano)
  • Modulo RF wireless NRF24L01 - 2 fili jumper n

Biblioteche:

  • Libreria RF24 –
  • Libreria SPI

Passaggio 3: dettagli pin

Dettagli pin
Dettagli pin
  1. GND – Terra
  2. VCC – Alimentazione 3,3 V (da 1,9 V a 3,6 V)
  3. CE – Abilitazione chip
  4. CSN – Chip Select Not
  5. SCK – Orologio seriale per bus SPI
  6. MOSI – Master Out Slave In
  7. MISO – Master in Slave Out
  8. IRQ – Pin di interruzione (attivo basso)

Il modulo consuma da 1,9 V a 3,6 V, ma i pin possono tollerare fino a 5 V.

Passaggio 4: connessioni SPI per varie schede

Se stai usando Arduino Uno, Pro Mini, Nano o Pro Micro, i pin SPI sono gli stessi del seguente schema elettrico. Se stai usando Arduino Mega, controlla i pin SPI che sono mappati in modo diverso secondo il suo design hardware. Controlla la pagina di riferimento della libreria SPI per diversi Pin SPI su diversi tipi di schede qui. Inoltre, le schede Arduino hanno un'intestazione ICSP separata per la compatibilità con Sheilds.

Passaggio 5: il circuito per il lato trasmettitore e il lato ricevitore sono gli stessi per questo esempio

Il circuito per il lato trasmettitore e il lato ricevitore sono gli stessi per questo esempio
Il circuito per il lato trasmettitore e il lato ricevitore sono gli stessi per questo esempio

Il circuito per il lato trasmettitore e il lato ricevitore sono gli stessi per questo esempio.

Passaggio 6: Codice – Lato trasmettitore:

Passaggio 7: ricevitore

Il circuito del ricevitore è lo stesso del nostro circuito del trasmettitore nel nostro progetto. Quindi effettuare i collegamenti secondo il circuito del trasmettitore e assicurarsi di caricare il codice corretto per il ricevitore.

Passaggio 8: codice ricevitore:

Passaggio 9: spiegazione:

Descrizione:

L'NRF24l01 può fungere da trasmettitore e ricevitore. Nel codice sopra sul lato trasmettitore, inviamo il testo "ON" e lo stesso verrà visualizzato sul lato ricevitore tramite monitor seriale e accende il LED collegato al pin 4. L'NRF24l01 può essere identificato dal suo indirizzo. È menzionato in una stringa di numeri. Abbiamo usato

const byte indirizzo[6] = "00001";

Abbiamo usato "00001" come indirizzo qui. È possibile assegnare qualsiasi stringa numerica per impostare l'indirizzo. I dati vengono inviati tramite una pipe di lettura/scrittura su NRF24l01. È un buffer temporaneo che contiene i dati da inviare o ricevere.

Trasmettitore – Scrittura dati sul tubo:

radio.openWritingPipe(indirizzo);

Ricevitore – Lettura dati dal Pipe:

radio.openReadingPipe(0, indirizzo);

Questa è la semplice configurazione di trasmissione e ricezione per il modulo NRF. In alternativa, è possibile inviare i dati del sensore dal lato trasmettitore e, in base ai valori del sensore, è possibile eseguire alcune azioni dal lato ricevitore.

Passaggio 10: progetto di monitoraggio del bambino utilizzando NRF24L01

La versione estesa di questo tutorial è trattata nel nostro blog. Crea un progetto di monitoraggio del bambino utilizzando il modulo NRF24L01.

Visita il nostro blog per "Progetto di monitoraggio del bambino utilizzando questo modulo NRF24L01".

Per ulteriori tutorial, visita il blog di FactoryForward

Acquista online su FactoryForward India (Raspberry Pi, Arduino, sensori, parti robotiche, kit fai da te) e altro ancora.

Consigliato: