- RFM69HCW RF-modul
- RFM69HCW
- RFM69 modul pinouts og beskrivelse
- Forbereder Custom Development Board
Trin 3: Forbered et PCB til det, jeg følger denne hjemmelavede PCB-tutorial. Jeg trykte fodaftrykket på et kobberbræt og faldt det i ætseløsningen
Trin 4: Følg proceduren for både kortene og lod dit modul til fodaftryk. Efter lodning ser begge mine moduler sådan ud nedenfor
Den pinout af RFM69HCW RF modul er givet i nedenstående figur
- Nødvendige materialer
- Hardwareforbindelse
- Kørsel af eksemplet skitse
- Arbejdet med eksemplet skitse
Når det kommer til at give dine projekter trådløse funktioner, er 433Mhz ASK Hybrid-sender og modtager et almindeligt valg blandt ingeniører, udviklere og hobbyister på grund af den lave pris, brugervenlige biblioteker og dens samfundsstøtte. Vi har også bygget få projekter som RF-styret hjemmeautomatisering og trådløs dørklokke ved hjælp af dette 433MHz RF-modul. Men ofte er en ASK Hybrid-sender og modtager bare ikke nok, det er lav rækkevidde og envejskommunikation gør det uegnet til mange applikationer
For at løse dette stadigt forekommende problem udtænkte udviklerne hos HopeRF et køligt nyt RF-modul kaldet RFM69HCW. I denne vejledning lærer vi om RFM69HCW RF-modulet og dets fordele. Først laver vi hjemmelavet printkort til RFM69HCW og derefter interface RFM69HCW med Arduino for at kontrollere, at det fungerer, så du kan bruge det til projekter efter eget valg. Så lad os komme i gang.
RFM69HCW RF-modul
RFM69HCW er et billigt, letanvendeligt radiomodul, der fungerer i det ikke-licenserede ISM (industri, videnskab og medicin) bånd svarende til nRF24L01 RF-modulet, som vi har brugt i tidligere projekter. Det kan bruges til at kommunikere mellem to moduler eller kan konfigureres som et Mesh-netværk til at kommunikere mellem hundreder af moduler, hvilket gør det til et perfekt valg til at opbygge billige trådløse netværk til korte afstande til sensorer, der bruges i hjemmeautomatisering og andre dataindsamlingsprojekter.
Funktioner ved RFM69HCW:
- +20 dBm - 100 mW kapacitet til effektudgang
- Høj følsomhed: ned til -120 dBm ved 1,2 kbps
- Lav strøm: Rx = 16 mA, 100nA registerretention
- Programmerbar Pout: -18 til +20 dBm i trin på 1 dB
- Konstant RF-ydeevne over et spændingsområde af modulet
- FSK-, GFSK-, MSK-, GMSK- og OOK-moduleringer
- Indbygget Bit Synchronizer, der udfører Clock Recovery
- 115 dB + Dynamisk rækkevidde RSSI
- Automatisk RF-følelse med ultrahurtig AFC
- Pakkemotor med CRC-16, AES-128, 66-byte FIFO Indbygget temperaturføler
- High Link Budget
- Meget lave omkostninger
RFM69HCW
Frekvens
RFM69HCW er udtænkt til at arbejde i ISM-båndet (industri, videnskabelig og medicinsk), et sæt ikke-licenserede radiofrekvenser til enheder med lav effekt, kort rækkevidde. Forskellige frekvenser er lovlige i forskellige områder, så det er derfor, modulet har mange forskellige versioner 315.433.868 og 915MHz. Alle vigtige RF-kommunikationsparametre er programmerbare, og de fleste af dem kan indstilles dynamisk, også RFM69HCW tilbyder den unikke fordel ved programmerbare smalbånds- og bredbåndskommunikationstilstande.
Bemærk: På grund af dets relativt lave effekt og korte rækkevidde vil implementering af dette modul i et lille projekt ikke være et problem, men hvis du overvejer at lave et produkt ud af det, skal du være sikker på at du bruger den korrekte frekvens til din placering.
Rækkevidde
For at forstå rækkevidden bedre er vi nødt til at håndtere et ganske kompliceret emne kaldet RF Link Budget. Så hvad er dette linkbudget, og hvorfor er det så vigtigt? Linkbudgettet er som ethvert andet budget, noget du har i starten, og som du bruger over tid, hvis dit budget er brugt op, kan du ikke bruge mere.
Linkbudgettet har også at gøre med et link eller forbindelsen mellem afsenderen og modtageren, det er fyldt op med afsenderens transmissionskraft og modtagerens følsomhed og det beregnes i decibel eller dB det er også frekvens- afhængig. Linkbudgettet trækkes af alle mulige forhindringer og støj mellem afsenderen og modtageren som afstandskabler vægge træer bygninger, hvis linkbudgettet er opbrugt, modtageren skaber kun noget støj ved udgangen, og vi får ikke noget brugbart signal. Ifølge databladet til RFM69HCW har det et linkbudget på 140 dB sammenlignet med 105 dB for ASK Hybrid Transmitter, men hvad betyder det, er dette en vigtig forskel? Heldigvis finder vi detRadio Link Budget Regnemaskiner online, så lad os lave nogle beregninger for at forstå emnet bedre. Lad os antage, at vi har en synslinjeforbindelse mellem afsenderen og modtageren, og at alt er perfekt, da vi ved, at vores budget for RFM69HCW er 140 dB, så lad os kontrollere den største teoretiske afstand, vi kan kommunikere, vi sætter alt til nul og afstanden til 500 km, frekvens til 433 MHz, og vi får en vandret modtaget effekt på 139,2 dBm
Nu satte jeg alt til nul og afstanden til 9 km frekvens til 433 MHz, og vi får en vandret modtaget effekt på 104,3 dBm
Så med ovenstående sammenligning tror jeg, at vi alle kan være enige om, at RFM69-modulet er langt bedre end ASK Hybrid Transmitter og et modtagermodul.
Antennen
Advarsel!!!! Det er obligatorisk at fastgøre en antenne til modulet, fordi uden det kan modulet blive beskadiget af sin egen reflekterede strøm.
Oprettelse af en antenne er ikke så hårdt, som det måske lyder. Den enkleste antenne kan laves bare fra en enkeltstrenget 22SWG-ledning. En frekvenss bølgelængde kan beregnes ved hjælp af formlen v / f , hvor v er transmissionens hastighed, og f er (gennemsnit) transmissionsfrekvensen. I luften er v lig med c , lysets hastighed, som er 299,792,458 m / s. Bølgelængden for 433 MHz-båndet er således 299.792.458 / 433.000.000 = 34,54 cm. Halvdelen heraf er 17,27 cm og en fjerdedel 8,63 cm.
For 433 MHz-båndet er bølgelængden 299.792.458 / 433.000.000 = 69,24 cm. Halvdelen heraf er 34,62 cm og en fjerdedel er 17,31 cm. Så fra ovenstående formel kan vi se processen med at beregne længden af antennetråden.
Strømkrav
RFM69HCW har en driftsspænding mellem 1,8 V og 3,6 V og kan trække op til 130 mA strøm, når den transmitterer. Nedenfor i tabellen kan vi tydeligt se modulets strømforbrug under forskellige forhold
Advarsel: Hvis din valgte Arduino bruger 5V logiske niveauer til at kommunikere med perifere enheder, der tilslutter modulet direkte til Arduino, beskadiges modulet
Symbol |
Beskrivelse |
Betingelser |
Min |
Typ |
Maks |
Enhed |
IDDSL |
Aktuel i dvaletilstand |
- |
0,1 |
1 |
uA |
|
IDIDIDLE |
Aktuel i inaktiv tilstand |
RC oscillator aktiveret |
- |
1.2 |
- |
uA |
IDDST |
Aktuel i standbytilstand |
Krystaloscillator aktiveret |
- |
1.25 |
1.5 |
uA |
IDDFS |
aktuel i Synthesizer mode |
- |
9 |
- |
uA |
|
IDDR |
strøm i modtagefunktion |
- |
16 |
- |
uA |
|
IDDT |
Forsyningsstrøm i transmissionstilstand med passende matchning, stabil på tværs af VDD-området |
RFOP = +20 dBm, på PA_BOOST RFOP = +17 dBm, på PA_BOOST RFOP = +13 dBm, på RFIO-pin RFOP = +10 dBm, på RFIO-pin RFOP = 0 dBm, på RFIO-pin RFOP = -1 dBm, på RFIO-pin |
- - - - - - |
130 95 45 33 20 16 |
- - - - - - |
mA mA mA mA mAmA |
I denne vejledning skal vi bruge to Arduino Nano og to logiske niveauomformere til at kommunikere med modulet. Vi bruger Arduino nano, fordi den indbyggede interne regulator kan styre spidsstrømmen meget effektivt. Fritzing-diagrammet i hardwareafsnittet nedenfor forklarer det mere tydeligt for dig.
BEMÆRK: Hvis din strømforsyning ikke kan levere 130 mA spidsstrøm, kan din Arduino genstarte eller værre, kan modulet ikke kommunikere ordentligt, i denne situation kan en kondensator med stor værdi med lav ESR forbedre situationen
RFM69 modul pinouts og beskrivelse
Etiket |
Fungere |
Fungere |
Etiket |
MYRE |
RF signal output / input. |
Power Ground |
GND |
GND |
Antenn jord (samme som strøm jord) |
Digital I / O, software konfigureret |
DIO5 |
DIO3 |
Digital I / O, software konfigureret |
Nulstil triggerindgang |
RST |
DIO4 |
Digital I / O, software konfigureret |
SPI Chip select input |
NSS |
3.3V |
3,3 V forsyning (mindst 130 mA) |
SPI Clock input |
SCK |
DIO0 |
Digital I / O, software konfigureret |
SPI Dataindgang |
MOSI |
DIO1 |
Digital I / O, software konfigureret |
SPI Data output |
MISO |
DIO2 |
Digital I / O, software konfigureret |
Power Ground |
GND |
Forbereder Custom Development Board
Da jeg købte modulet, fulgte det ikke med et breadboard-kompatibelt breakout board, så vi har besluttet at lave et selv. Hvis du muligvis skal gøre det samme, skal du blot følge trinene. Bemærk også, at det ikke er obligatorisk at følge disse trin, du kan simpelthen lodde ledninger til RF-modulet og forbinde dem til breadboard, og det fungerer stadig. Jeg følger kun denne procedure for at få en stabil og robust opsætning.
Trin 1: Forbered skemaerne til RFM69HCW-modulet
Trin 3: Forbered et PCB til det, jeg følger denne hjemmelavede PCB-tutorial. Jeg trykte fodaftrykket på et kobberbræt og faldt det i ætseløsningen
Trin 4: Følg proceduren for både kortene og lod dit modul til fodaftryk. Efter lodning ser begge mine moduler sådan ud nedenfor
Den pinout af RFM69HCW RF modul er givet i nedenstående figur
Nødvendige materialer
Her er listen over ting, du skal kommunikere med modulet
- To RFM69HCW-moduler (med matchende frekvenser):
- 434 MHz (WRL-12823)
- To Arduino (jeg bruger Arduino NANO)
- To logiske niveauomformere
- To breakout boards (jeg bruger et specialfremstillet breakout board)
- En trykknap
- Fire LED'er
- En 4,7K modstand fire 220Ohm modstand
- Jumper ledninger
- Emaljeret kobbertråd (22AWG), for at fremstille antennen.
- Og endelig lodning (hvis du ikke allerede har gjort det)
Hardwareforbindelse
I denne vejledning bruger vi Arduino nano, der bruger 5 volt logik, men RFM69HCW-modulet bruger 3,3 volt logiske niveauer, som du tydeligt kan se i ovenstående tabel, så for at kommunikere korrekt mellem to enheder er en logisk niveauomformer obligatorisk, i fritzing-diagrammet nedenfor vi har vist dig, hvordan du tilslutter Arduino nano til RFM69-modulet.
Fritzing Diagram Sender Node
Forbindelse tabel afsender node
Arduino Pin |
RFM69HCW Pin |
I / O-ben |
D2 |
DIO0 |
- |
D3 |
- |
TAC_SWITCH |
D4 |
- |
LED_GRØN |
D5 |
- |
LED_RØD |
D9 |
- |
LED_BLÅ |
D10 |
NSS |
- |
D11 |
MOSI |
- |
D12 |
MISO |
- |
D13 |
SCK |
- |
Fritzing Diagram Modtager Node
Tilslutningstabel Modtagerknude
Arduino Pin |
RFM69HCW Pin |
I / O-ben |
D2 |
DIO0 |
- |
D9 |
- |
LED |
D10 |
NSS |
- |
D11 |
MOSI |
- |
D12 |
MISO |
- |
D13 |
SCK |
- |
Kørsel af eksemplet skitse
I denne vejledning vil vi oprette to Arduino RFM69-noder og få dem til at kommunikere med hinanden. I afsnittet nedenfor ved vi, hvordan man får modulet i gang ved hjælp af RFM69-biblioteket, som er skrevet af Felix Rusu fra LowPowerLab.
Importerer biblioteket
Forhåbentlig har du lavet lidt Arduino-programmering før og ved, hvordan du installerer et bibliotek. Hvis ikke, skal du kontrollere afsnittet Importere et.zip-bibliotek i dette link
Tilslut noder
Sæt USB fra Sender Node til din pc, et nyt COM-portnummer skal føjes til Arduino IDE's "Tools / Port" -liste, pen det ned, tilslut nu modtagerknuden, en anden COM-port skal vises i Tools / Portliste, penn den også ned, ved hjælp af portnummeret uploader vi skitsen til afsenderen og modtagernoden.
Åbning af to Arduino-sessioner
Åbn to Arduino IDE-sessioner ved at dobbeltklikke på Arduino IDE-ikonet efter den første session er indlæst, det er obligatorisk at åbne to Arduino-sessioner, fordi det er sådan, du kan åbne to Arduino serielle skærmvinduer og samtidig overvåge output fra to noder
Åbning af eksempelkoden
Når alt er konfigureret, skal vi åbne eksempelkoden i begge Arduino-sessioner for at gøre det
Fil> Eksempler> RFM6_LowPowerLab> Eksempler> TxRxBlinky
og klik på den for at åbne den
Ændring af eksempelkoden
- Nær toppen af koden skal du kigge efter #definer NETWORKID og ændre værdien til 0. Med denne id kan alle dine noder kommunikere med hinanden.
- Se efter #define FREQUENCY, skift dette for at matche kortfrekvensen (min er 433_MHz).
- Se efter #define ENCRYPTKEY dette er din 16-bit krypteringsnøgle.
- Se efter #define IS_RFM69HW_HCW, og fjern kommentar, hvis du bruger et RFM69_HCW-modul
- Og endelig skal du kigge efter #define NODEID, det skal indstilles som en MODTAGER som standard
Upload nu koden til din modtagerknude, som du tidligere har konfigureret.
Tid til at ændre skitsen til afsenderknuden
Nu i makroen #define NODEID skal du ændre den til SENDER og uploade koden til din afsenderknude.
Det er det, hvis du har gjort alt korrekt, har du to komplette arbejdsmodeller klar til test.
Arbejdet med eksemplet skitse
Efter den vellykkede upload af skitsen vil du observere den røde lysdiode, der er forbundet med stiften D4 på Arduino lyser op, tryk nu på knappen i afsenderknuden, og du vil observere, at den røde lysdiode slukker, og den grønne lysdiode, som er tilsluttet pin D5 på Arduino lyser som vist på billedet nedenfor
Du kan også observere knap trykket! tekst i det serielle skærmvindue som vist nedenfor
Observer nu den blå lysdiode, der er tilsluttet pin D9 i afsendernoden, den vil blinke to gange, og i vinduet Serial Monitor i modtagelsesnoden vil du observere følgende meddelelse og også den blå lysdiode, der er forbundet til D9-stiften i modtagernoden lyser. Hvis du ser ovenstående meddelelse i vinduet Serial Monitor på modtagerknuden, og også hvis LED'en lyser Tillykke! Du har med succes kommunikeret RFM69-modulet med Arduino IDE. Den komplette bearbejdning af denne vejledning kan også findes i videoen nederst på denne side.
Alt i alt viser disse moduler sig at være gode til bygning af vejrstationer, garageporte, trådløs pumpestyring med indikator, droner, robotter, din kat… himlen er grænsen! Håber du forstod vejledningen og nød at bygge noget nyttigt. Hvis du har spørgsmål, bedes du lade dem være i kommentarsektionen eller bruge fora til andre tekniske forespørgsler.