- Modul RFM69HCW
- RFM69HCW
- Pinouts și descrierea modulului RFM69
- Pregătirea consiliului de dezvoltare personalizată
Pasul 3: Pregătiți un PCB pentru acesta, urmez acest tutorial PCB Home Made. Am imprimat amprenta pe o placă de cupru și am lăsat-o în soluția de gravare
Pasul 4: urmați procedura pentru ambele plăci și lipiți modulul pe amprentă. După lipirea ambelor module, arată așa mai jos
Pinout de RFM69HCW modul RF este dată în figura de mai jos
- Materiale necesare
- Conexiune hardware
- Rularea schiței de exemplu
- Funcționarea schiței de exemplu
Când vine vorba de a oferi proiectelor capabilități fără fir, transmițătorul și receptorul ASK hibrid de 433Mhz sunt o alegere obișnuită în rândul inginerilor, dezvoltatorilor și pasionaților datorită prețului redus, bibliotecilor ușor de utilizat și suportului comunitar. Am construit, de asemenea, câteva proiecte, cum ar fi automatizarea acasă controlată de RF și soneria fără fir, utilizând acest modul RF de 433 MHz. Dar, de multe ori, un transmițător și un receptor ASK hibrid pur și simplu nu sunt suficienți, gama redusă și natura comunicării unidirecționale îl fac nepotrivit pentru multe aplicații
Pentru a rezolva această problemă care apare mereu, dezvoltatorii de la HopeRF au conceput un nou modul RF interesant numit RFM69HCW. În acest tutorial, vom afla despre modulul RFM69HCW RF și avantajele acestuia. În primul rând, vom face PCB de casă pentru RFM69HCW și apoi vom interfața RFM69HCW cu Arduino pentru a verifica funcționarea acestuia, astfel încât să îl puteți folosi în proiectele la alegere. Deci sa începem.
Modul RFM69HCW
RFM69HCW este un modul radio ușor de utilizat, ieftin, care funcționează în banda fără licență ISM (industrie, știință și medicină) similară cu modulul RF nRF24L01 pe care l-am folosit în proiectele anterioare. Poate fi folosit pentru a comunica între două module sau poate fi configurat ca o rețea Mesh pentru a comunica între sute de module, ceea ce îl face o alegere perfectă pentru construirea de rețele fără fir cu rază scurtă de acțiune pentru senzori utilizați în automatizarea casei și alte proiecte de achiziție de date.
Caracteristici ale RFM69HCW:
- +20 dBm - 100 mW Capacitate de ieșire de putere
- Sensibilitate ridicată: până la -120 dBm la 1,2 kbps
- Curent redus: Rx = 16 mA, păstrarea registrului 100nA
- Pout programabil: -18 până la +20 dBm în pași de 1dB
- Performanță RF constantă pe o gamă de tensiune a modulului
- Modulații FSK, GFSK, MSK, GMSK și OOK
- Sincronizator de biți încorporat care efectuează recuperarea ceasului
- 115 dB + gamă dinamică RSSI
- Sensor RF automat cu AFC ultrarapid
- Motor de pachete cu CRC-16, AES-128, senzor de temperatură încorporat FIFO de 66 octeți
- Buget ridicat
- Cost foarte mic
RFM69HCW
Frecvență
RFM69HCW este conceput pentru a funcționa în banda ISM (industrie, științifică și medicală), un set de frecvențe radio fără licență pentru dispozitive cu putere redusă, cu rază scurtă de acțiune. Diferite frecvențe sunt legale în diferite zone, deci de aceea modulul are multe versiuni diferite de 315,433,868 și 915 MHz. Toți parametrii majori de comunicații RF sunt programabili și majoritatea pot fi setați dinamic, de asemenea, RFM69HCW oferă avantajul unic al modurilor de comunicare programabile în bandă îngustă și bandă largă.
Notă: Datorită puterii sale relativ mici și a razei de acțiune scurte, implementarea acestui modul într-un proiect mic nu va fi o problemă, dar dacă vă gândiți să faceți un produs din acesta, asigurați-vă că utilizați frecvența corectă pentru locația ta.
Gamă
Pentru a înțelege mai bine gama, trebuie să ne ocupăm de un subiect destul de complicat numit Buget RF Link. Deci, ce este acest buget de legătură și de ce este atât de important? Bugetul de legătură este ca orice alt buget, lucru pe care îl aveți la început și pe care îl cheltuiți în timp dacă bugetul dvs. este epuizat, nu puteți cheltui mai mult.
Bugetul legăturii are, de asemenea, legătură cu o legătură sau conexiunea dintre expeditor și receptor, este umplut de puterea de transmisie a expeditorului și de sensibilitatea receptorului și este calculat în decibeli sau dB, este și frecvență- dependent. Bugetul legăturii este dedus de tot felul de obstacole și zgomot între expeditor și receptor, cum ar fi cablurile de distanță pereți copaci clădiri dacă bugetul legăturii este epuizat, receptorul creează doar ceva zgomot la ieșire și nu vom primi niciun semnal utilizabil. Conform fișei tehnice a RFM69HCW , acesta are un buget de legătură de 140 dB comparativ cu 105 dB al transmițătorului hibrid ASK, dar ce înseamnă asta este o diferență importantă? Din fericire, găsimCalculatoare de buget Radio Link online, deci Să facem câteva calcule pentru a înțelege mai bine subiectul. În primul rând, să presupunem că avem o conexiune de linie de vedere între expeditor și receptor și totul este perfect, deoarece știm că bugetul nostru pentru RFM69HCW este de 140 dB, deci să verificăm cea mai mare distanță teoretică pe care o putem comunica, setăm totul la zero și distanța la 500KM, Frecvența la 433MHz și obținem o putere recepționată orizontală de 139,2 dBm
Acum, am setat totul la zero și distanța la 9KM Frecvență la 433MHz și obținem o putere primită orizontală de 104,3 dBm
Deci, cu comparația de mai sus, cred că suntem cu toții de acord că modulul RFM69 este mult mai bun decât transmițătorul hibrid ASK și un modul receptor.
Antena
Prudență! Atașarea unei antene la modul este obligatorie, deoarece fără ea modulul poate fi deteriorat de propria sa putere reflectată.
Crearea unei antene nu este atât de greu pe cât ar putea suna. Cea mai simplă antenă poate fi realizată doar dintr-un fir 22SWG monocatenar. Lungimea de undă a unei frecvențe poate fi calculată cu formula v / f , unde v este viteza de transmitere și f este frecvența (medie) de transmisie. În aer, v este egal cu c , viteza luminii, care este 299.792.458 m / s. Lungimea de undă pentru banda de 433 MHz este astfel 299.792.458 / 433.000.000 = 34,54 cm. Jumătate din acest lucru este de 17,27 cm și un sfert este de 8,63 cm.
Pentru banda de 433 MHz lungimea de undă este 299.792.458 / 433.000.000 = 69,24 cm. Jumătate din aceasta este de 34,62 cm și un sfert este de 17,31 cm. Deci, din formula de mai sus, putem vedea procesul de calcul al lungimii firului antenei.
Cerința de putere
RFM69HCW are o tensiune de funcționare cuprinsă între 1,8V și 3,6V și poate consuma până la 130mA de curent atunci când transmite. Mai jos în tabel, putem vedea clar consumul de energie al modulului în diferite condiții
Avertisment: dacă Arduino-ul ales folosește niveluri logice de 5V pentru a comunica cu conectarea perifericului modulului direct la Arduino, acesta va deteriora modulul
Simbol |
Descriere |
Condiții |
Min |
Tip |
Max |
Unitate |
IDDSL |
Curent în modul Repaus |
- |
0,1 |
1 |
uA |
|
IDDIDLE |
Curent în modul Repaus |
Oscilator RC activat |
- |
1.2 |
- |
uA |
IDDST |
Curent în modul Standby |
Oscilator de cristal activat |
- |
1,25 |
1.5 |
uA |
IDDFS |
curent în Sintetizator modul |
- |
9 |
- |
uA |
|
IDDR |
curent în modul de primire |
- |
16 |
- |
uA |
|
IDDT |
Furnizați curent în modul Transmitere cu potrivire adecvată, stabilă pe toată gama VDD |
RFOP = +20 dBm, pe PA_BOOST RFOP = +17 dBm, pe PA_BOOST RFOP = +13 dBm, pe pinul RFIO RFOP = +10 dBm, pe pinul RFIO RFOP = 0 dBm, pe pinul RFIO RFOP = -1 dBm, pe pinul RFIO |
- - - - - - |
130 95 45 33 20 16 |
- - - - - - |
mA mA mA mA mAmA |
În acest tutorial, vom folosi două Arduino Nano și două convertoare de nivel logic pentru a comunica cu modulul. Folosim nano-uri Arduino, deoarece regulatorul intern încorporat poate gestiona curentul de vârf foarte eficient. Diagrama Fritzing din secțiunea hardware de mai jos vă va explica mai clar.
NOTĂ: Dacă sursa dvs. de alimentare nu poate furniza 130mA de curent de vârf, Arduino se poate reporni sau, mai rău, modulul nu reușește să comunice corect, în această situație un condensator de valoare mare cu ESR scăzut poate îmbunătăți situația
Pinouts și descrierea modulului RFM69
Eticheta |
Funcţie |
Funcţie |
Eticheta |
FURNICĂ |
Iesire / intrare semnal RF. |
Masă electrică |
GND |
GND |
Masă antenă (la fel ca masă electrică) |
I / O digitală, software configurat |
DIO5 |
DIO3 |
I / O digitală, software configurat |
Resetați intrarea declanșatorului |
RST |
DIO4 |
I / O digitală, software configurat |
Intrare de selectare a cipului SPI |
NSS |
3,3V |
Alimentare de 3,3 V (cel puțin 130 mA) |
Intrare SPI Clock |
SCK |
DIO0 |
I / O digitală, software configurat |
Introducere date SPI |
MOSI |
DIO1 |
I / O digitală, software configurat |
Ieșire date SPI |
MISO |
DIO2 |
I / O digitală, software configurat |
Masă electrică |
GND |
Pregătirea consiliului de dezvoltare personalizată
Când am cumpărat modulul, acesta nu venea cu o placă de separare compatibilă cu placa de calcul, așa că am decis să fac unul singur. Dacă ar trebui să faceți același lucru, urmați pașii. De asemenea, rețineți că nu este obligatoriu să urmați acești pași, puteți pur și simplu să lipiți firele la modulul RF și să le conectați la panoul de control și ar funcționa în continuare. Urmez această procedură doar pentru a obține o configurație stabilă și robustă.
Pasul 1: Pregătiți schemele pentru modulul RFM69HCW
Pasul 3: Pregătiți un PCB pentru acesta, urmez acest tutorial PCB Home Made. Am imprimat amprenta pe o placă de cupru și am lăsat-o în soluția de gravare
Pasul 4: urmați procedura pentru ambele plăci și lipiți modulul pe amprentă. După lipirea ambelor module, arată așa mai jos
Pinout de RFM69HCW modul RF este dată în figura de mai jos
Materiale necesare
Iată lista lucrurilor de care va trebui să comunicați cu modulul
- Două module RFM69HCW (cu frecvențe potrivite):
- 434 MHz (WRL-12823)
- Two Arduino (folosesc Arduino NANO)
- Două convertoare de nivel logic
- Două plăci de decupare (folosesc o placă de decupare personalizată)
- Un buton
- Patru LED-uri
- Un rezistor de 4.7K patru rezistor de 220Ohms
- Sârme de jumper
- Sârmă de cupru emailată (22AWG), pentru realizarea antenei.
- Și în cele din urmă lipirea (dacă nu ați făcut deja asta)
Conexiune hardware
În acest tutorial folosim Arduino nano care utilizează logica de 5 volți, dar modulul RFM69HCW folosește niveluri logice de 3,3 volți, așa cum puteți vedea clar în tabelul de mai sus, astfel încât să comunicați corect între două dispozitive este obligatoriu un convertor de nivel logic, în diagrama fritzing de mai jos. v-am arătat cum să conectați Arduino nano la modulul RFM69.
Fritzing Diagrama Sender Node
Nod expeditor tabel conexiune
Pinul Arduino |
RFM69HCW Pin |
Pinii I / O |
D2 |
DIO0 |
- |
D3 |
- |
TAC_SWITCH |
D4 |
- |
LED_GREEN |
D5 |
- |
LED_RED |
D9 |
- |
LED_BLUE |
D10 |
NSS |
- |
D11 |
MOSI |
- |
D12 |
MISO |
- |
D13 |
SCK |
- |
Nod receptor receptor diagramă Fritzing
Nod receptor receptor tabel conexiune
Pinul Arduino |
RFM69HCW Pin |
Pinii I / O |
D2 |
DIO0 |
- |
D9 |
- |
LED |
D10 |
NSS |
- |
D11 |
MOSI |
- |
D12 |
MISO |
- |
D13 |
SCK |
- |
Rularea schiței de exemplu
În acest tutorial, vom configura două noduri Arduino RFM69 și le vom face să comunice între ele. În secțiunea de mai jos vom ști cum să punem modulul în funcțiune cu ajutorul bibliotecii RFM69, scrisă de Felix Rusu de la LowPowerLab.
Importul bibliotecii
Sperăm că ați mai făcut un pic de programare Arduino și ați știut cum să instalați o bibliotecă. Dacă nu, verificați secțiunea Importarea unei biblioteci.zip din acest link
Conectarea nodurilor
Conectați USB-ul nodului expeditor la computerul dvs., un nou număr de port COM ar trebui adăugat la lista „Tools / Port” a Arduino IDE, conectați-l, acum conectați nodul receptorului un alt port COM ar trebui să apară în Tools / Lista porturilor, de asemenea, descrieți-o, cu ajutorul numărului portului, vom încărca schița către expeditor și nodul receptorului.
Deschiderea a două sesiuni Arduino
Deschideți două sesiuni Arduino IDE făcând dublu clic pe pictograma Arduino IDE după încărcarea primei sesiuni, este obligatoriu să deschideți două sesiuni Arduino deoarece așa puteți deschide două ferestre de monitorizare serial Arduino și monitoriza simultan ieșirea a două noduri
Deschiderea exemplului de cod
Acum, când totul este configurat, trebuie să deschidem exemplul de cod în ambele sesiuni Arduino pentru a face acest lucru, mergem
Fișier> Exemple> RFM6_LowPowerLab> Exemple> TxRxBlinky
și faceți clic pe acesta pentru a-l deschide
Modificarea exemplului de cod
- Aproape de partea de sus a codului, căutați #define NETWORKID și schimbați valoarea la 0. Cu acest ID, toate nodurile dvs. pot comunica între ele.
- Căutați #define FREQUENCY modificați acest lucru pentru a se potrivi cu frecvența plăcii (a mea este de 433_MHz).
- Căutați #define ENCRYPTKEY aceasta este cheia dvs. de criptare pe 16 biți.
- Căutați #define IS_RFM69HW_HCW și decomentați-l dacă utilizați un modul RFM69_HCW
- Și, în cele din urmă, căutați #define NODEID, ar trebui setat în mod implicit ca RECEPTOR
Acum încărcați codul pe nodul receptorului pe care l-ați configurat anterior.
Este timpul să modificați schița pentru nodul expeditorului
Acum, în macrocomanda #define NODEID, schimbați-l în SENDER și încărcați codul în nodul expeditorului.
Gata, dacă ai făcut totul corect, ai două modele complete de lucru gata de testat.
Funcționarea schiței de exemplu
După încărcarea cu succes a schiței, veți observa LED-ul roșu care este conectat cu pinul D4 al Arduino se aprinde, apăsați acum butonul din nodul expeditorului și veți observa că LED-ul roșu se stinge și LED-ul verde care este conectat la Pinul D5 al Arduino se aprinde așa cum se arată în imaginea de mai jos
De asemenea, puteți observa butonul apăsat! text în fereastra Monitor serial, așa cum se arată mai jos
Acum observați LED-ul albastru care este conectat la pinul D9 al nodului expeditor, va clipi de două ori și în fereastra Serial Monitor a nodului de recepție veți observa următorul mesaj și, de asemenea, LED-ul albastru care este conectat la pinul D9 din Nodul receptorului se va aprinde. Dacă vedeți mesajul de mai sus în fereastra Serial Monitor a nodului receptorului și, de asemenea, dacă LED-ul se aprinde Felicitări! Ați comunicat cu succes modulul RFM69 cu Arduino IDE. Funcționarea completă a acestui tutorial poate fi găsită și în videoclipul oferit în partea de jos a acestei pagini.
În ansamblu, aceste module se dovedesc a fi grozave pentru construirea stațiilor meteo, ușilor de garaj, controlerului de pompă fără fir cu indicator, drone, roboți, pisica ta… cerul este limita! Sper că ai înțeles tutorialul și ți-a plăcut să construiești ceva util. Dacă aveți întrebări, vă rugăm să le lăsați în secțiunea de comentarii sau să utilizați forumurile pentru alte întrebări tehnice.