- RFM69HCW RF Module
- RFM69HCW
- Mga Pinout at Paglalarawan ng Module ng RFM69
- Paghahanda ng Custom Development Board
Hakbang 3: Maghanda ng isang PCB para dito, sumusunod ako sa tutorial na Ginawa ng Home PCB. Nai-print ko ang bakas ng paa sa isang board ng tanso at ibinagsak ito sa solusyon sa pag-ukit
Hakbang 4: Sundin ang pamamaraan para sa parehong mga board at maghinang ang iyong module sa yapak. Matapos ang paghihinang pareho ang aking mga module ay ganito sa ibaba
Ang pinout ng RFM69HCW RF Module ay ibinibigay sa figure sa ibaba
- Mga Materyal na Kinakailangan
- Koneksyon sa hardware
- Pagpapatakbo ng Halimbawa ng Sketch
- Paggawa ng Halimbawa ng Sketch
Pagdating sa pagbibigay ng iyong mga proyekto ng mga wireless na kakayahan, ang 433Mhz ASK Hybrid Transmitter at receiver ay isang pangkaraniwang pagpipilian sa mga inhinyero, developer, at libangan dahil sa Mababang Presyo nito, madaling gamitin ang mga aklatan at suporta ng pamayanan. Nakapagtayo din kami ng ilang mga proyekto tulad ng RF kinokontrol Home Home at Wireless Doorbell gamit ang 433MHz RF module na ito. Ngunit madalas na ang isang ASK Hybrid Transmitter at tatanggap ay hindi sapat, ito ay mababa ang saklaw at isang-daan na likas na komunikasyon ay ginagawang hindi angkop para sa maraming mga application
Upang malutas ang laging nangyayari na problemang ito, ang mga developer sa HopeRF ay gumawa ng isang cool na bagong RF module na tinatawag na RFM69HCW. Sa tutorial na ito, malalaman natin ang tungkol sa RFM69HCW RF module at ang mga pakinabang nito. Una, gagawin namin ang PCB na ginawa sa Home para sa RFM69HCW at pagkatapos ay i-interface ang RFM69HCW sa Arduino upang suriin ang pagtatrabaho nito upang magamit mo ito sa mga proyekto na iyong pinili. Kaya, magsimula na tayo.
RFM69HCW RF Module
Ang RFM69HCW ay isang murang madaling gamitin na module ng radyo na nagpapatakbo sa hindi lisensyang ISM (Industriya, Agham at Medisina) na banda na katulad ng nRF24L01 RF Module na ginamit namin sa mga nakaraang proyekto. Maaari itong magamit upang makipag-usap sa pagitan ng dalawang mga module o maaaring mai-configure bilang isang Mesh Network upang makipag-usap sa daan-daang mga module na ginagawang perpektong pagpipilian para sa pagbuo ng murang mga network ng wireless na para sa mga sensor na ginagamit sa automation sa bahay at iba pang mga proyekto sa pagkuha ng data.
Mga tampok ng RFM69HCW:
- +20 dBm - 100 mW Kakayahang Output ng Kapangyarihan
- Mataas na Sensitivity: pababa sa -120 dBm sa 1.2 kbps
- Mababang kasalukuyang: Rx = 16 mA, 100nA pagpapanatili ng rehistro
- Programmable Pout: -18 hanggang +20 dBm sa mga hakbang na 1dB
- Patuloy na pagganap ng RF sa isang saklaw ng boltahe ng module
- Ang mga modulasi ng FSK, GFSK, MSK, GMSK at OOK
- Ang built-in na Bit Synchronizer na gumaganap ng Clock Recovery
- 115 dB + Dynamic Range RSSI
- Awtomatikong Sense ng RF na may napakabilis na AFC
- Packet engine na may CRC-16, AES-128, 66-byte FIFO Built-in na sensor ng temperatura
- Mataas na Badyet ng Link
- Napakababang Gastos
RFM69HCW
Dalas
Ang RFM69HCW ay idinisenyo upang gumana sa bandang ISM (Industriya, Siyentipiko at Medikal), isang hanay ng mga hindi lisensyadong mga frequency ng radyo para sa mga aparatong mababa ang lakas, maikli ang saklaw. Ang iba`t ibang mga frequency ay ligal sa iba't ibang mga lugar kaya't kung bakit ang module ay maraming iba't ibang mga bersyon 315,433,868 at 915MHz. Ang lahat ng mga pangunahing mga parameter ng komunikasyon ng RF ay mai-program at ang karamihan sa mga ito ay maaaring mailagay nang pabagu-bago, nag-aalok din ang RFM69HCW ng natatanging kalamangan ng mai-programmable na makitid na banda at mga malawak na band na mga mode ng komunikasyon.
Tandaan: Dahil sa medyo mababa ang lakas at maikling distansya nito, ang pagpapatupad ng modyul na ito sa isang maliit na proyekto ay hindi magiging isang isyu, ngunit kung iniisip mo ang tungkol sa paggawa ng isang produkto, tiyaking gumagamit ka ng tamang dalas para sa iyong lokasyon.
Saklaw
Upang maunawaan nang mabuti ang saklaw kailangan nating harapin ang isang kumplikadong paksa na tinatawag na RF Link Budget. Kaya, ano ang badyet ng link na ito at bakit ito napakahalaga? Ang badyet ng link ay tulad ng bawat iba pang badyet, isang bagay na mayroon ka sa simula at kung saan mo ginugol sa paglipas ng panahon kung naubos ang iyong badyet ay hindi ka maaaring gumastos ng higit pa.
Ang badyet ng link ay mayroon ding kinalaman sa isang link o koneksyon sa pagitan ng nagpadala at ng tatanggap, pinunan ito ng kapangyarihan ng paghahatid ng nagpadala at ang pagiging sensitibo ng tatanggap at kinakalkula ito sa mga decibel o dB din ito ay dalas- umaasa Ang badyet ng link ay nabawasan ng lahat ng uri ng mga hadlang at ingay sa pagitan ng nagpadala at ng tatanggap tulad ng mga distansya na mga dingding na mga pader ng mga gusali ng gusali kung ang badyet ng link ay nalikha, lumilikha lamang ang tatanggap ng isang ingay sa output at hindi kami makakakuha ng anumang magagamit na signal. Ayon sa datasheet ng RFM69HCW , mayroon itong link budget na 140 dB kumpara sa 105 dB ng ASK Hybrid Transmitter ngunit ano ang ibig sabihin nito na ito ay isang mahalagang pagkakaiba? Sa kabutihang palad, nakita naminMga Link ng Badyet sa Link ng Radyo online kaya gumawa tayo ng ilang mga kalkulasyon upang mas maunawaan ang paksa. Una, ipagpalagay natin na mayroon kaming isang linya ng koneksyon sa paningin sa pagitan ng nagpadala at ang tatanggap at ang lahat ay perpekto dahil alam namin ang aming Budget para sa RFM69HCW ay 140 dB kaya suriin natin ang pinakamalaking distansya ng teoretikal na maaari nating makipag-usap, itinakda namin ang lahat sa zero at ang distansya hanggang 500km, Dalas hanggang 433MHz at nakakakuha kami ng isang pahalang na natanggap-lakas na 139.2 dBm
Ngayon, itinakda ko ang lahat sa zero at ang distansya sa 9KM Frequency sa 433MHz at Nakukuha namin ang isang pahalang na natanggap-lakas na 104.3 dBm
Kaya sa paghahambing sa itaas, sa palagay ko lahat tayo ay maaaring sumang-ayon na ang module ng RFM69 ay mas mahusay kaysa sa ASK Hybrid Transmitter at isang module ng tatanggap.
Ang Antenna
Pag-iingat! Ang paglakip ng isang antena sa module ay sapilitan sapagkat kung wala ito ang module ay maaaring mapinsala ng sarili nitong nakalarawan na kapangyarihan.
Ang paglikha ng isang antena ay hindi mahirap tulad ng tunog nito. Ang pinakasimpleng antena ay maaaring gawin mula lamang sa isang solong-straced na wire na 22SWG. Ang haba ng daluyong ng isang dalas ay maaaring kalkulahin ng formula v / f , kung saan ang v ay ang bilis ng paghahatid at ang f ay ang (average) dalas ng paghahatid. Sa hangin, ang v ay katumbas ng c , ang bilis ng ilaw, na 299.792.458 m / s. Ang haba ng daluyong para sa 433 MHz band ay sa gayon 299.792.458 / 433.000.000 = 34,54 cm. Ang kalahati nito ay 17,27 cm at isang isang-kapat ay 8,63 cm.
Para sa bandang 433 MHz ang haba ng daluyong ay 299.792.458 / 433.000.000 = 69,24 cm. Ang kalahati nito ay 34,62 cm at ang isang-kapat ay 17,31 cm. Kaya mula sa pormula sa itaas, maaari nating makita ang proseso ng pagkalkula ng haba ng wire ng antena.
Kinakailangan sa Kuryente
Ang RFM69HCW ay may operating boltahe sa pagitan ng 1.8V hanggang 3.6V at maaaring gumuhit ng hanggang sa 130mA ng kasalukuyang kapag nagpapadala ito. Sa ibaba sa talahanayan, malinaw na nakikita natin ang pagkonsumo ng kuryente ng module sa iba't ibang mga kundisyon
Babala: Kung ang iyong napiling Arduino ay gumagamit ng mga antas ng 5V na lohika upang makipag-ugnay sa peripheral's hooking up ang module nang direkta sa Arduino ay makakasira sa module
Simbolo |
Paglalarawan |
Mga Kundisyon |
Min |
Tipong |
Max |
Yunit |
IDDSL |
Kasalukuyan sa Sleep mode |
- |
0.1 |
1 |
uA |
|
IDDIDLE |
Kasalukuyan sa Idle mode |
Pinagana ang RC oscillator |
- |
1.2 |
- |
uA |
IDDST |
Kasalukuyan sa Standby Mode |
Pinagana ang Crystal oscillator |
- |
1.25 |
1.5 |
uA |
IDDFS |
kasalukuyang sa Synthesizer mode |
- |
9 |
- |
uA |
|
IDDR |
kasalukuyang sa mode na Tumanggap |
- |
16 |
- |
uA |
|
IDDT |
Ang kasalukuyang supply sa Transmit mode na may naaangkop na pagtutugma, matatag sa saklaw ng VDD |
RFOP = +20 dBm, sa PA_BOOST RFOP = +17 dBm, sa PA_BOOST RFOP = +13 dBm, sa RFIO pin RFOP = +10 dBm, sa RFIO pin RFOP = 0 dBm, sa RFIO pin RFOP = -1 dBm, sa RFIO pin |
- - - - - - |
130 95 45 33 20 16 |
- - - - - - |
mA mA mA mA mAmA |
Sa tutorial na ito, gagamitin namin ang dalawang Arduino Nano at dalawang converter ng antas ng lohika upang makipag-usap sa modyul. Gumagamit kami ng Arduino nano's dahil ang built-in na panloob na regulator ay maaaring pamahalaan ang rurok na kasalukuyang napaka-husay. Ang Fritzing diagram sa seksyon ng hardware sa ibaba ay magpapaliwanag sa iyo ng mas malinaw sa iyo.
TANDAAN: Kung ang iyong supply ng kuryente ay hindi maaaring magbigay ng 130mA ng rurok na kasalukuyan ang iyong Arduino ay maaaring mag-reboot o mas masahol na ang module ay maaaring mabigo upang makipag-usap nang maayos, sa sitwasyong ito ang isang malaking halaga capacitor na may mababang ESR ay maaaring mapabuti ang sitwasyon
Mga Pinout at Paglalarawan ng Module ng RFM69
Tatak |
Pag-andar |
Pag-andar |
Tatak |
ANT |
Output / input ng signal ng RF. |
Power Ground |
GND |
GND |
Antena ground (kapareho ng power ground) |
Digital I / O, naka-configure ang software |
DIO5 |
DIO3 |
Digital I / O, naka-configure ang software |
I-reset ang pag-input ng trigger |
RST |
DIO4 |
Digital I / O, naka-configure ang software |
SPI Chip select input |
NSS |
3.3V |
3.3V Supply (hindi bababa sa 130 mA) |
Pag-input ng SPI Clock |
SCK |
DIO0 |
Digital I / O, naka-configure ang software |
Pag-input ng Data ng SPI |
MOSI |
DIO1 |
Digital I / O, naka-configure ang software |
Output ng Data ng SPI |
MISO |
DIO2 |
Digital I / O, naka-configure ang software |
Power Ground |
GND |
Paghahanda ng Custom Development Board
Nang bilhin ko ang module ay hindi ito nagdala ng isang breakout board na katugmang breadboard kaya napagpasyahan naming gumawa ng isa sa sarili ko. Kung maaaring kailangan mong gawin ang pareho sundin lamang ang mga hakbang. Gayundin, tandaan na hindi sapilitan na sundin ang mga hakbang na ito, maaari mo lamang i-solder ang mga wire sa module ng RF at ikonekta ang mga ito sa breadboard at gagana pa rin ito. Sinusunod ko lang ang pamamaraang ito upang makakuha ng isang matatag at masungit na set-up.
Hakbang 1: Ihanda ang mga iskema para sa module na RFM69HCW
Hakbang 3: Maghanda ng isang PCB para dito, sumusunod ako sa tutorial na Ginawa ng Home PCB. Nai-print ko ang bakas ng paa sa isang board ng tanso at ibinagsak ito sa solusyon sa pag-ukit
Hakbang 4: Sundin ang pamamaraan para sa parehong mga board at maghinang ang iyong module sa yapak. Matapos ang paghihinang pareho ang aking mga module ay ganito sa ibaba
Ang pinout ng RFM69HCW RF Module ay ibinibigay sa figure sa ibaba
Mga Materyal na Kinakailangan
Narito ang listahan ng mga bagay na kakailanganin mong makipag-usap sa modyul
- Dalawang mga module ng RFM69HCW (na may mga pagtutugma ng mga frequency):
- 434 MHz (WRL-12823)
- Dalawang Arduino (Gumagamit ako ng Arduino NANO)
- Dalawang converter ng antas ng lohika
- Dalawang mga board ng breakout (Gumagamit ako ng isang pasadyang ginawa na breakout board)
- Isang push-button
- Apat na LED's
- Isang 4.7K risistor apat na 220Ohms risistor
- Jumper wires
- Enameled wire na tanso (22AWG), upang gawin ang antena.
- At sa wakas paghihinang (kung hindi mo pa nagagawa iyon)
Koneksyon sa hardware
Sa tutorial na ito ginagamit namin ang Arduino nano na gumagamit ng 5 volt na lohika ngunit ang module ng RFM69HCW ay gumagamit ng mga antas ng 3.3 volt na lohika tulad ng malinaw mong nakikita sa talahanayan sa itaas upang maayos na makipag-usap sa pagitan ng dalawang mga aparato isang sapilitan sa antas ng lohika ay sapilitan, sa diagram na nakabalot sa ibaba ipinakita namin sa iyo kung paano i-hook ang Arduino nano sa module na RFM69.
Fritzing Diagram Sender Node
Node ng Nagpapadala ng Talahanayan ng Koneksyon
Arduino Pin |
RFM69HCW Pin |
I / O Mga Pin |
D2 |
DIO0 |
- |
D3 |
- |
TAC_SWITCH |
D4 |
- |
LED_GREEN |
D5 |
- |
LED_RED |
D9 |
- |
LED_BLUE |
D10 |
NSS |
- |
D11 |
MOSI |
- |
D12 |
MISO |
- |
D13 |
SCK |
- |
Fritzing Diagram Receiver Node
Node ng Tagatanggap ng Talahanayan ng Koneksyon
Arduino Pin |
RFM69HCW Pin |
I / O Mga Pin |
D2 |
DIO0 |
- |
D9 |
- |
LED |
D10 |
NSS |
- |
D11 |
MOSI |
- |
D12 |
MISO |
- |
D13 |
SCK |
- |
Pagpapatakbo ng Halimbawa ng Sketch
Sa tutorial na ito, magse-set up kami ng dalawang Arduino RFM69 node at ipakipag-usap sa isa't isa. Sa seksyon sa ibaba malalaman namin kung paano makakapagpatakbo ng modyul sa tulong ng RFM69 library na nakasulat ni Felix Rusu ng LowPowerLab
Pag-import ng Library
Sana, nagawa mo na ang kaunting programa ng Arduino bago at alam kung paano mag-install ng isang silid-aklatan. Kung hindi suriin ang seksyong Pag- import ng isang.zip Library ng link na ito
Pag-plug sa mga Node
I-plug ang USB ng Sender Node sa iyong PC, ang isang bagong numero ng COM port ay dapat idagdag sa listahan ng "Mga Tool / Port" ng Arduino IDE, isulat ito, ngayon plug sa node ng Receiver ang isa pang COM port ay dapat lumitaw sa Tools / Listahan ng port, isulat din ito, sa tulong ng numero ng port mai-a-upload namin ang sketch sa nagpadala at sa node ng tatanggap.
Pagbubukas ng dalawang sesyon ng Arduino
Buksan ang dalawang session ng Arduino IDE sa pamamagitan ng pag-double click sa icon ng Arduino IDE pagkatapos mag-load ang unang session, ipinag-uutos na buksan ang dalawang session ng Arduino dahil iyan ang paraan upang mabuksan ang dalawang Arduino serial monitor window at sabay na subaybayan ang output ng dalawang node
Pagbubukas ng Halimbawa ng Code
Ngayon kapag naayos ang lahat kailangan nating buksan ang halimbawa ng code sa parehong mga session ng Arduino upang magawa ito, goto
File> Mga Halimbawa> RFM6_LowPowerLab> Mga Halimbawa> TxRxBlinky
at i-click ito upang buksan ito
Pagbabago ng Halimbawa ng Code
- Malapit sa tuktok ng code, hanapin ang # tukuyin ang NETWORKID at baguhin ang halaga sa 0. Sa Id na ito, lahat ng iyong mga node ay maaaring makipag-usap sa bawat isa.
- Hanapin ang #define FREQUENCY baguhin ito upang tumugma sa dalas ng board (ang sa akin ay 433_MHz).
- Hanapin ang #define ENCRYPTKEY ito ang iyong 16-bit na key sa pag-encrypt.
- Hanapin ang # tukuyin ang IS_RFM69HW_HCW, at i-unsment ito kung gumagamit ka ng isang module na RFM69_HCW
- At sa wakas, hanapin ang # tukuyin ang NODEID dapat itong itakda bilang isang TANGGAP bilang default
I-upload ngayon ang code sa iyong Receiver Node na dati mong na-set up.
Oras upang baguhin ang Sketch para sa Sender Node
Ngayon sa # tukuyin ang NODEID macro baguhin ito sa SENDER at i-upload ang code sa iyong Sender Node.
Iyon lang, kung nagawa mo nang tama ang lahat mayroon kang dalawang kumpletong mga modelo ng pagtatrabaho na handa nang subukan.
Paggawa ng Halimbawa ng Sketch
Matapos ang matagumpay na pag-upload ng Sketch ay matutunghayan mo ang Red LED na konektado sa pin D4 ng Arduino lits up, pindutin ngayon ang pindutan sa Sender Node at mapapansin mo na ang Red LED ay naka-off at ang Green LED na konektado sa Pin D5 ng Arduino na ilaw tulad ng ipinakita sa imahe sa ibaba
Maaari mo ring obserbahan ang Button Pressed! teksto sa window ng Serial monitor tulad ng ipinakita sa ibaba
Ngayon ay obserbahan ang Blue LED na konektado sa Pin D9 ng Sender Node, magpikit ito ng dalawang beses at sa window ng Serial Monitor ng Nakatanggap na Node ay mapapansin mo ang sumusunod na mensahe at pati na rin ang Blue LED na konektado sa D9 pin sa ang Receiver Node ay magliwanag. Kung nakikita mo ang mensahe sa itaas sa window ng Serial Monitor ng node ng tatanggap at kung ang ilaw ng LED ay binabati kita! Matagumpay mong naipaabot ang module ng RFM69 sa Arduino IDE. Ang kumpletong pagtatrabaho ng tutorial na ito ay maaari ding matagpuan sa video na ibinigay sa ilalim ng pahinang ito.
Lahat sa lahat ng mga modyul na ito ay nagpapatunay na mahusay para sa pagbuo ng mga istasyon ng panahon, pintuan ng garahe, wireless pump controller na may tagapagpahiwatig, mga drone, robot, iyong pusa… ang langit ang limitasyon! Inaasahan kong naintindihan mo ang tutorial at nasiyahan sa pagbuo ng isang bagay na kapaki-pakinabang. Kung mayroon kang anumang mga katanungan mangyaring iwanan ang mga ito sa seksyon ng komento o gamitin ang mga forum para sa iba pang mga teknikal na query.