- RFM69HCW Modulo RF
- RFM69HCW
- Pinout e descrizione del modulo RFM69
- Preparazione della scheda di sviluppo personalizzata
Passaggio 3: prepara un PCB per questo, sto seguendo questo tutorial PCB fatto in casa. Ho stampato l'impronta su un pannello di rame e l'ho lasciato cadere nella soluzione di incisione
Passaggio 4: seguire la procedura per entrambe le schede e saldare il modulo all'impronta. Dopo aver saldato entrambi i miei moduli assomigliano a questo sotto
La piedinatura del modulo RF RFM69HCW è riportata nella figura seguente
- Materiali richiesti
- Connessione hardware
- Esecuzione dello schizzo di esempio
- Lavorazione dello schizzo di esempio
Quando si tratta di fornire funzionalità wireless ai tuoi progetti, il trasmettitore e ricevitore ibrido ASK 433Mhz è una scelta comune tra ingegneri, sviluppatori e hobbisti grazie al suo prezzo basso, alle librerie facili da usare e al supporto della comunità. Abbiamo anche realizzato alcuni progetti come l'automazione domestica controllata da RF e il campanello wireless utilizzando questo modulo RF a 433 MHz. Ma spesso un trasmettitore e un ricevitore ibrido ASK non sono sufficienti, la sua portata bassa e la natura della comunicazione unidirezionale lo rendono inadatto a molte applicazioni
Per risolvere questo problema che si verifica sempre, gli sviluppatori di HopeRF hanno ideato un nuovo fantastico modulo RF chiamato RFM69HCW. In questo tutorial, impareremo a conoscere il modulo RF RFM69HCW e i suoi vantaggi. Per prima cosa, realizzeremo PCB fatti in casa per RFM69HCW e quindi interfacciamo RFM69HCW con Arduino per verificarne il funzionamento in modo da poterlo utilizzare in progetti a tua scelta. Quindi iniziamo.
RFM69HCW Modulo RF
L'RFM69HCW è un modulo radio economico e facile da usare che opera nella banda ISM (industria, scienza e medicina) senza licenza simile al modulo RF nRF24L01 che abbiamo utilizzato in progetti precedenti. Può essere utilizzato per comunicare tra due moduli o può essere configurato come una rete Mesh per comunicare tra centinaia di moduli, il che lo rende una scelta perfetta per la creazione di reti wireless a corto raggio economiche per sensori utilizzati nell'automazione domestica e altri progetti di acquisizione dati.
Caratteristiche di RFM69HCW:
- +20 dBm - Capacità di potenza di uscita di 100 mW
- Alta sensibilità: fino a -120 dBm a 1,2 kbps
- Bassa corrente: Rx = 16 mA, ritenzione di registro 100nA
- Pout programmabile: da -18 a +20 dBm a passi di 1dB
- Prestazioni RF costanti su un intervallo di tensione del modulo
- Modulazioni FSK, GFSK, MSK, GMSK e OOK
- Bit Synchronizer integrato che esegue il ripristino dell'orologio
- 115 dB + gamma dinamica RSSI
- Rilevamento RF automatico con AFC ultraveloce
- Packet engine con CRC-16, AES-128, FIFO a 66 byte Sensore di temperatura integrato
- Budget di collegamento elevato
- Costo molto contenuto
RFM69HCW
Frequenza
L'RFM69HCW è concepito per funzionare nella banda ISM (industria, scienza e medicina), un insieme di frequenze radio senza licenza per dispositivi a corto raggio ea bassa potenza. Frequenze diverse sono legali in aree diverse, ecco perché il modulo ha molte versioni diverse 315,433,868 e 915MHz. Tutti i principali parametri di comunicazione RF sono programmabili e la maggior parte di essi può essere impostata dinamicamente, inoltre RFM69HCW offre il vantaggio unico delle modalità di comunicazione a banda stretta e larga programmabili.
Nota: a causa della sua potenza relativamente bassa e del corto raggio, l'implementazione di questo modulo in un piccolo progetto non sarà un problema, ma se stai pensando di realizzare un prodotto assicurati di utilizzare la frequenza corretta per la tua posizione.
Gamma
Per comprendere meglio la gamma, dobbiamo affrontare un argomento piuttosto complicato chiamato RF Link Budget. Allora, qual è questo budget di collegamento e perché è così importante? Il budget di collegamento è come ogni altro budget, qualcosa che hai all'inizio e che spendi nel tempo se il tuo budget è esaurito non puoi spendere di più.
Il link budget ha a che fare anche con un link o connessione tra mittente e destinatario, è riempito dalla potenza di trasmissione del mittente e dalla sensibilità del ricevitore ed è calcolato in decibel o dB è anche frequenza- dipendente. Il budget del collegamento viene detratto da tutti i tipi di ostacoli e rumori tra il mittente e il ricevitore come cavi di distanza muri alberi edifici se il budget del collegamento è esaurito, il ricevitore crea solo un po 'di rumore in uscita e non otterremo alcun segnale utilizzabile. Secondo la scheda tecnica dell'RFM69HCW , ha un budget di collegamento di 140 dB rispetto ai 105 dB del trasmettitore ibrido ASK, ma cosa significa questa differenza importante? Fortunatamente, troviamoCalcolatori del budget di collegamento radio online quindi Facciamo alcuni calcoli per capire meglio l'argomento. Innanzitutto, supponiamo di avere una connessione in linea di vista tra mittente e ricevitore e che tutto sia perfetto poiché sappiamo che il nostro budget per RFM69HCW è di 140 dB quindi controlliamo la distanza teorica più grande che possiamo comunicare, impostiamo tutto a zero e la distanza a 500 KM, frequenza a 433 MHz e otteniamo una potenza di ricezione orizzontale di 139,2 dBm
Ora, ho impostato tutto su zero e la distanza su 9KM Frequenza su 433 MHz e otteniamo una potenza di ricezione orizzontale di 104,3 dBm
Quindi, con il confronto sopra, penso che possiamo tutti essere d'accordo sul fatto che il modulo RFM69 è di gran lunga migliore del trasmettitore ibrido ASK e di un modulo ricevitore.
L'Antenna
Attenzione! Il collegamento di un'antenna al modulo è obbligatorio perché senza di essa il modulo può essere danneggiato dalla propria potenza riflessa.
Creare un'antenna non è così difficile come potrebbe sembrare. L'antenna più semplice può essere realizzata solo da un filo 22SWG a trefolo. La lunghezza d'onda di una frequenza può essere calcolata con la formula v / f , dove v è la velocità di trasmissione ef è la frequenza di trasmissione (media). Nell'aria, v è uguale ac , la velocità della luce, che è 299.792.458 m / s. La lunghezza d'onda per la banda 433 MHz è quindi 299.792.458 / 433.000.000 = 34,54 cm. La metà è di 17,27 cm e un quarto di 8,63 cm.
Per la banda 433 MHz la lunghezza d'onda è 299.792.458 / 433.000.000 = 69,24 cm. La metà è 34,62 cm e un quarto è 17,31 cm. Quindi dalla formula sopra, possiamo vedere il processo di calcolo della lunghezza del filo dell'antenna.
Requisiti di potenza
L'RFM69HCW ha una tensione operativa compresa tra 1,8 V e 3,6 V e può assorbire fino a 130 mA di corrente durante la trasmissione. Sotto nella tabella, possiamo vedere chiaramente il consumo energetico del modulo in diverse condizioni
Attenzione: se l'Arduino scelto utilizza livelli logici a 5V per comunicare con la periferica, collegare il modulo direttamente ad Arduino danneggerà il modulo
Simbolo |
Descrizione |
Condizioni |
Min |
Tip |
Max |
Unità |
IDDSL |
Corrente in modalità Sleep |
- |
0.1 |
1 |
uA |
|
IDDIDLE |
Corrente in modalità inattiva |
Oscillatore RC abilitato |
- |
1.2 |
- |
uA |
IDDST |
Corrente in modalità standby |
Oscillatore a cristallo abilitato |
- |
1.25 |
1.5 |
uA |
IDDFS |
corrente nel sintetizzatore modalità |
- |
9 |
- |
uA |
|
IDDR |
corrente in modalità di ricezione |
- |
16 |
- |
uA |
|
IDDT |
Fornire corrente in modalità di trasmissione con corrispondenza appropriata, stabile su tutta la gamma VDD |
RFOP = +20 dBm, su PA_BOOST RFOP = +17 dBm, su PA_BOOST RFOP = +13 dBm, su pin RFIO RFOP = +10 dBm, su pin RFIO RFOP = 0 dBm, su pin RFIO RFOP = -1 dBm, su pin RFIO |
- - - - - - |
130 95 45 33 20 16 |
- - - - - - |
mA mA mA mA mamma |
In questo tutorial, utilizzeremo due Arduino Nano e due convertitori di livello logico per comunicare con il modulo. Stiamo usando Arduino nano perché il regolatore interno integrato può gestire la corrente di picco in modo molto efficiente. Il diagramma di Fritzing nella sezione hardware sottostante te lo spiegherà più chiaramente.
NOTA: Se il tuo alimentatore non è in grado di fornire 130mA di corrente di picco, il tuo Arduino potrebbe riavviarsi o peggio il modulo potrebbe non riuscire a comunicare correttamente, in questa situazione un condensatore di grande valore con bassa ESR può migliorare la situazione
Pinout e descrizione del modulo RFM69
Etichetta |
Funzione |
Funzione |
Etichetta |
FORMICA |
Uscita / ingresso segnale RF. |
Potenza di terra |
GND |
GND |
Messa a terra dell'antenna (uguale alla messa a terra dell'alimentazione) |
I / O digitale, software configurato |
DIO5 |
DIO3 |
I / O digitale, software configurato |
Ripristina ingresso trigger |
RST |
DIO4 |
I / O digitale, software configurato |
Ingresso di selezione del chip SPI |
NSS |
3,3V |
Alimentazione 3,3 V (almeno 130 mA) |
Ingresso orologio SPI |
SCK |
DIO0 |
I / O digitale, software configurato |
Inserimento dati SPI |
MOSI |
DIO1 |
I / O digitale, software configurato |
Uscita dati SPI |
MISO |
DIO2 |
I / O digitale, software configurato |
Potenza di terra |
GND |
Preparazione della scheda di sviluppo personalizzata
Quando ho acquistato il modulo non veniva fornito con una scheda breakout compatibile con breadboard, quindi abbiamo deciso di crearne una io stesso. Se potresti dover fare lo stesso, segui i passaggi. Inoltre, tieni presente che non è obbligatorio seguire questi passaggi, puoi semplicemente saldare i fili al modulo RF e collegarli alla breadboard e funzionerebbe comunque. Sto seguendo questa procedura solo per ottenere una configurazione stabile e robusta.
Passaggio 1: preparare gli schemi per il modulo RFM69HCW
Passaggio 3: prepara un PCB per questo, sto seguendo questo tutorial PCB fatto in casa. Ho stampato l'impronta su un pannello di rame e l'ho lasciato cadere nella soluzione di incisione
Passaggio 4: seguire la procedura per entrambe le schede e saldare il modulo all'impronta. Dopo aver saldato entrambi i miei moduli assomigliano a questo sotto
La piedinatura del modulo RF RFM69HCW è riportata nella figura seguente
Materiali richiesti
Ecco l'elenco delle cose di cui avrai bisogno per comunicare con il modulo
- Due moduli RFM69HCW (con frequenze corrispondenti):
- 434 MHz (WRL-12823)
- Due Arduino (sto usando Arduino NANO)
- Due convertitori di livello logico
- Due schede di separazione (sto usando una scheda di separazione personalizzata)
- Un pulsante
- Quattro LED
- Una resistenza da 4.7K quattro resistenze da 220 Ohm
- Cavi jumper
- Filo di rame smaltato (22AWG), per realizzare l'antenna.
- E infine la saldatura (se non l'hai già fatto)
Connessione hardware
In questo tutorial stiamo usando Arduino nano che utilizza la logica a 5 volt ma il modulo RFM69HCW utilizza livelli logici a 3,3 volt come puoi vedere chiaramente nella tabella sopra, quindi per comunicare correttamente tra due dispositivi è obbligatorio un convertitore di livello logico, nello schema fritzing sotto ti abbiamo mostrato come collegare Arduino nano al modulo RFM69.
Fritzing Diagram Sender Node
Nodo mittente tabella di connessione
Pin di Arduino |
RFM69HCW Pin |
Pin I / O |
D2 |
DIO0 |
- |
D3 |
- |
TAC_SWITCH |
D4 |
- |
LED_GREEN |
D5 |
- |
LED_RED |
D9 |
- |
LED_BLUE |
D10 |
NSS |
- |
D11 |
MOSI |
- |
D12 |
MISO |
- |
D13 |
SCK |
- |
Schema di fritzing nodo ricevitore
Nodo ricevitore della tabella di connessione
Pin di Arduino |
RFM69HCW Pin |
Pin I / O |
D2 |
DIO0 |
- |
D9 |
- |
GUIDATO |
D10 |
NSS |
- |
D11 |
MOSI |
- |
D12 |
MISO |
- |
D13 |
SCK |
- |
Esecuzione dello schizzo di esempio
In questo tutorial, configureremo due nodi Arduino RFM69 e li faremo comunicare tra loro. Nella sezione seguente sapremo come far funzionare il modulo con l'aiuto della libreria RFM69 scritta da Felix Rusu di LowPowerLab.
Importazione della libreria
Si spera che tu abbia già fatto un po 'di programmazione Arduino e sappia come installare una libreria. In caso contrario, controlla la sezione Importing a.zip Library di questo link
Collegamento dei nodi
Collega l'USB del nodo mittente al tuo PC, un nuovo numero di porta COM dovrebbe essere aggiunto alla lista "Strumenti / Porta" dell'IDE di Arduino, penna, ora collega il nodo Ricevitore un'altra porta COM dovrebbe apparire in Strumenti / Elenco delle porte, anche scrivendolo, con l'aiuto del numero di porta caricheremo lo schizzo sul nodo del mittente e del destinatario.
Apertura di due sessioni di Arduino
Apri due sessioni IDE Arduino facendo doppio clic sull'icona IDE Arduino dopo il caricamento della prima sessione, è obbligatorio aprire due sessioni Arduino perché è così che puoi aprire due finestre di monitor seriale Arduino e monitorare simultaneamente l'output di due nodi
Apertura del codice di esempio
Ora, quando tutto è impostato, dobbiamo aprire il codice di esempio in entrambe le sessioni di Arduino per farlo, goto
File> Esempi> RFM6_LowPowerLab> Esempi> TxRxBlinky
e fare clic per aprirlo
Modifica del codice di esempio
- Nella parte superiore del codice, cerca #define NETWORKID e modifica il valore in 0. Con questo ID, tutti i tuoi nodi possono comunicare tra loro.
- Cerca la #define FREQUENCY cambiarla in modo che corrisponda alla frequenza della scheda (la mia è 433_MHz).
- Cerca la #define ENCRYPTKEY questa è la tua chiave di crittografia a 16 bit.
- Cerca #define IS_RFM69HW_HCW e rimuovilo dal commento se stai utilizzando un modulo RFM69_HCW
- Infine, cerca #define NODEID che dovrebbe essere impostato come RICEVITORE per impostazione predefinita
Ora carica il codice sul tuo nodo ricevitore che hai precedentemente impostato.
È ora di modificare lo schizzo per il nodo mittente
Ora nella macro #define NODEID cambialo in SENDER e carica il codice sul tuo nodo mittente.
Ecco fatto, se hai fatto tutto correttamente, hai due modelli funzionanti completi pronti per il test.
Lavorazione dello schizzo di esempio
Dopo il buon esito del caricamento dello Sketch osserverai che il LED Rosso che è connesso al pin D4 di Arduino si accende, ora premi il pulsante nel Nodo Sender e osserverai che il LED Rosso si spegne e il LED Verde che è collegato al Pin D5 di Arduino si accende come mostrato nell'immagine sotto
Puoi anche osservare Pulsante premuto! testo nella finestra Monitor seriale come mostrato di seguito
Ora osserva il LED Blu che è collegato al Pin D9 del Nodo Sender, lampeggerà due volte e nella finestra Monitor Seriale del Nodo di Ricezione osserverai il seguente messaggio e anche il LED Blu che è collegato al pin D9 in il nodo ricevitore si illuminerà. Se vedi il messaggio sopra nella finestra Serial Monitor del nodo ricevitore e anche se il LED si accende Congratulazioni! Hai comunicato con successo il modulo RFM69 con Arduino IDE. Il funzionamento completo di questo tutorial si trova anche nel video riportato in fondo a questa pagina.
Tutto sommato questi moduli si dimostrano ottimi per la costruzione di stazioni meteorologiche, porte di garage, controller wireless per pompe con indicatore, droni, robot, il tuo gatto… il cielo è il limite! Spero che tu abbia capito il tutorial e ti sia piaciuto costruire qualcosa di utile. In caso di domande, lasciarle nella sezione commenti o utilizzare i forum per altre domande tecniche.