- RFM69HCW RF modul
- RFM69HCW
- Zapojení a popis modulu RFM69
- Příprava rady pro vlastní vývoj
Krok 3: Připravte si na to desku plošných spojů, sleduji tento tutoriál Home Made PCB. Otiskl jsem stopu na měděnou desku a upustil ji do leptacího roztoku
Krok 4: Postupujte podle postupu pro desky a pájejte modul na stopu. Po pájení oba moje moduly vypadají níže
Vývodů z RFM69HCW RF modulu je uveden v následující obrázku
- Potřebné materiály
- Hardwarové připojení
- Spuštění ukázkové skici
- Práce s ukázkovým náčrtem
Pokud jde o poskytování bezdrátových funkcí vašim projektům, hybridní vysílač a přijímač 433Mhz ASK je běžnou volbou mezi inženýry, vývojáři a fandy kvůli nízké ceně, snadno použitelným knihovnám a komunitní podpoře. Pomocí tohoto 433MHz RF modulu jsme také postavili několik projektů, jako je RF řízená domácí automatizace a bezdrátový zvonek. Ale často hybridní vysílač a přijímač ASK prostě nestačí, má nízký dosah a díky jednosměrné komunikaci je nevhodný pro mnoho aplikací
Abychom vyřešili tento stále se vyskytující problém, vyvinuli vývojáři v HopeRF skvělý nový RF modul s názvem RFM69HCW. V tomto výukovém programu se seznámíme s RF modulem RFM69HCW a jeho výhodami. Nejprve vyrobíme Home PCB pro RFM69HCW a poté rozhraní RFM69HCW s Arduino, abychom zkontrolovali jeho fungování, abyste jej mohli použít v projektech podle vašeho výběru. Pojďme tedy začít.
RFM69HCW RF modul
RFM69HCW je levný snadno použitelný rádiový modul, který pracuje v nelicencovaném pásmu ISM (průmysl, věda a medicína) podobně jako RF modul nRF24L01, který jsme použili v předchozích projektech. Může být použit ke komunikaci mezi dvěma moduly nebo může být nakonfigurován jako síť Mesh pro komunikaci mezi stovkami modulů, což z něj činí ideální volbu pro budování levných bezdrátových sítí krátkého dosahu pro senzory používané v domácí automatizaci a dalších projektech sběru dat.
Vlastnosti RFM69HCW:
- +20 dBm - 100 mW výstupní výkon
- Vysoká citlivost: až -120 dBm při 1,2 kbps
- Nízký proud: Rx = 16 mA, retence registru 100 nA
- Programovatelný výstup: -18 až +20 dBm v krocích po 1 dB
- Konstantní RF výkon v napěťovém rozsahu modulu
- Modulace FSK, GFSK, MSK, GMSK a OOK
- Integrovaný bitový synchronizátor provádějící obnovu hodin
- 115 dB + dynamický rozsah RSSI
- Automatický RF snímač s ultrarychlým AFC
- Paketový motor s CRC-16, AES-128, 66bajtovým FIFO vestavěným teplotním senzorem
- Vysoký rozpočet na odkazy
- Velmi nízké náklady
RFM69HCW
Frekvence
RFM69HCW je navržen pro práci v pásmu ISM (průmysl, věda a lékařství), což je sada nelicencovaných rádiových frekvencí pro zařízení s nízkým výkonem a krátkým dosahem. Různé frekvence jsou v různých oblastech legální, proto má modul mnoho různých verzí 315 433 868 a 915 MHz. Všechny hlavní parametry RF komunikace jsou programovatelné a většinu z nich lze dynamicky nastavovat. Také RFM69HCW nabízí jedinečnou výhodu programovatelných úzkopásmových a širokopásmových komunikačních režimů.
Poznámka: Vzhledem k poměrně nízkému výkonu a krátkému dosahu nebude implementace tohoto modulu v malém projektu problémem, ale pokud uvažujete o tom, že z něj vyrobíte produkt, ujistěte se, že používáte správnou frekvenci pro vaše pozice.
Rozsah
Abychom lépe porozuměli rozsahu, musíme se vypořádat s poměrně komplikovaným tématem zvaným RF Link Budget. Jaký je tedy tento odkazový rozpočet a proč je tak důležitý? Rozpočet odkazu je jako každý jiný rozpočet, něco, co máte na začátku a které v průběhu času utratíte, pokud je váš rozpočet vyčerpán, nemůžete utratit více.
Rozpočet linky má také co do činění s linkou nebo spojením mezi odesílatelem a přijímačem, je vyplněn přenosovým výkonem odesílatele a citlivostí přijímače a je počítán v decibelech nebo dB je také frekvenčně- závislý. Rozpočet linky se odečte od nejrůznějších překážek a hluku mezi odesílatelem a přijímačem, jako jsou vzdálenosti kabelů, zdí, stromů, budov, pokud je rozpočet linky vyčerpán, přijímač vytváří pouze nějaký šum na výstupu a my nedostaneme žádný použitelný signál. Podle listu o RFM69HCW , má rozpočet propojení 140 dB ve srovnání s 105 dB ASK Hybrid vysílač, ale co to znamená, to je podstatný rozdíl? Naštěstí jsme našliRádiová kalkulačka rozpočtu online, takže uděláme několik výpočtů, abychom lépe porozuměli tématu. Nejprve předpokládejme, že máme přímou viditelnost spojení mezi odesílatelem a přijímačem a vše je perfektní, protože víme, že náš rozpočet pro RFM69HCW je 140 dB, takže pojďme zkontrolovat největší teoretickou vzdálenost, kterou můžeme komunikovat, nastavíme vše na nulu a vzdálenost na 500KM, frekvence na 433MHz a dostaneme horizontální přijímaný výkon 139,2 dBm
Nyní jsem vše nastavil na nulu a vzdálenost na 9KM frekvenci na 433MHz a dostaneme horizontální přijímaný výkon 104,3 dBm
Takže s výše uvedeným porovnáním si myslím, že se všichni můžeme shodnout, že modul RFM69 je mnohem lepší než hybridní vysílač ASK a modul přijímače.
Anténa
Pozor! Připojení antény k modulu je povinné, protože bez ní může být modul poškozen vlastním odraženým výkonem.
Vytvoření antény není tak těžké, jak to může znít. Nejjednodušší anténu lze vyrobit pouze z jednovláknového drátu 22SWG. Vlnová délka frekvence může být vypočítána podle vzorce v / f , kde v je rychlost přenosu, a f je (průměr) vysílací frekvence. Ve vzduchu se v rovná c , rychlosti světla, která je 299 792 458 m / s. Vlnová délka pro pásmo 433 MHz je tedy 299 792 458/433 000 000 = 34,54 cm. Polovina z toho je 17,27 cm a čtvrtina z 8,63 cm.
Pro pásmo 433 MHz je vlnová délka 299 792 458/433 000 000 = 69,24 cm. Polovina z toho je 34,62 cm a čtvrtina z 17,31 cm. Z výše uvedeného vzorce tedy vidíme proces výpočtu délky anténního drátu.
Požadavek napájení
RFM69HCW má provozní napětí mezi 1,8 V až 3,6 V a při přenosu může odebírat až 130 mA proudu. Níže v tabulce můžeme jasně vidět spotřebu energie modulu v různých podmínkách
Varování: Pokud vaše zvolené Arduino používá 5V logické úrovně ke komunikaci s periferním připojením modulu přímo k Arduinu, poškodí modul
Symbol |
Popis |
Podmínky |
Min |
Typ |
Max |
Jednotka |
IDDSL |
Aktuální v režimu spánku |
- |
0,1 |
1 |
uA |
|
IDDIDLE |
Aktuální v základním režimu |
RC oscilátor povolen |
- |
1.2 |
- |
uA |
IDDST |
Aktuální v pohotovostním režimu |
Crystal oscilátor povolen |
- |
1.25 |
1.5 |
uA |
IDDFS |
proud v syntetizátoru režimu |
- |
9 |
- |
uA |
|
IDDR |
proud v režimu příjmu |
- |
16 |
- |
uA |
|
IDDT |
Napájecí proud v režimu přenosu s odpovídajícím přizpůsobením, stabilní v celém rozsahu VDD |
RFOP = +20 dBm, na PA_BOOST RFOP = +17 dBm, na PA_BOOST RFOP = +13 dBm, na RFIO pinu RFOP = +10 dBm, na kolíku RFIO RFOP = 0 dBm, na kolíku RFIO RFOP = -1 dBm, na kolíku RFIO |
- - - - - - |
130 95 45 33 20 16 |
- - - - - - |
mA mA mA mA mAmA |
V tomto tutoriálu budeme ke komunikaci s modulem používat dva převaděče Arduino Nano a dva převaděče logické úrovně. Používáme Arduino nano, protože vestavěný interní regulátor dokáže velmi efektivně řídit špičkový proud. Fritzingův diagram v hardwarové části níže vám to vysvětlí jasněji.
POZNÁMKA: Pokud váš napájecí zdroj nedokáže zajistit špičkový proud 130 mA, může se vaše Arduino restartovat nebo ještě hůře, modul nemusí správně komunikovat, v této situaci může situaci zlepšit velký kondenzátor s nízkým ESR.
Zapojení a popis modulu RFM69
Označení |
Funkce |
Funkce |
Označení |
MRAVENEC |
Výstup / vstup RF signálu. |
Napájecí zem |
GND |
GND |
Zem antény (stejná jako napájecí zem) |
Digitální I / O, softwarově konfigurováno |
DIO5 |
DIO3 |
Digitální I / O, softwarově konfigurováno |
Resetujte spouštěcí vstup |
RST |
DIO4 |
Digitální I / O, softwarově konfigurováno |
Vstup pro výběr čipu SPI |
NSS |
3,3 V |
Napájení 3,3 V (minimálně 130 mA) |
Vstup SPI hodin |
SCK |
DIO0 |
Digitální I / O, softwarově konfigurováno |
Vstup dat SPI |
MOSI |
DIO1 |
Digitální I / O, softwarově konfigurováno |
SPI datový výstup |
MISO |
DIO2 |
Digitální I / O, softwarově konfigurováno |
Napájecí zem |
GND |
Příprava rady pro vlastní vývoj
Když jsem modul koupil, nepřišel s odlamovací deskou kompatibilní s prkénkem, takže jsme se rozhodli si jeden vyrobit. Pokud budete muset udělat totéž, postupujte podle pokynů. Tyto kroky není povinné dodržovat, můžete jednoduše pájet vodiče k modulu RF a připojit je k prkénku a stále by to fungovalo. Tento postup sleduji pouze proto, abych získal stabilní a robustní nastavení.
Krok 1: Připravte schémata pro modul RFM69HCW
Krok 3: Připravte si na to desku plošných spojů, sleduji tento tutoriál Home Made PCB. Otiskl jsem stopu na měděnou desku a upustil ji do leptacího roztoku
Krok 4: Postupujte podle postupu pro desky a pájejte modul na stopu. Po pájení oba moje moduly vypadají níže
Vývodů z RFM69HCW RF modulu je uveden v následující obrázku
Potřebné materiály
Zde je seznam věcí, které budete potřebovat ke komunikaci s modulem
- Dva moduly RFM69HCW (s odpovídajícími frekvencemi):
- 434 MHz (WRL-12823)
- Dvě Arduino (používám Arduino NANO)
- Dva převaděče logické úrovně
- Dvě průlomové desky (používám průlomovou desku na zakázku)
- Tlačítko
- Čtyři LED
- Jeden 4,7K rezistor, čtyři 220Ohms rezistor
- Propojovací vodiče
- Smaltovaný měděný drát (22AWG) pro výrobu antény.
- A konečně pájení (pokud jste to již neudělali)
Hardwarové připojení
V tomto tutoriálu používáme Arduino nano, které používá 5 voltovou logiku, ale modul RFM69HCW používá 3,3 voltové logické úrovně, jak můžete jasně vidět ve výše uvedené tabulce, takže pro správnou komunikaci mezi dvěma zařízeními je převodník logické úrovně povinný, v níže uvedeném diagramu ukázali jsme vám, jak připojit Arduino nano k modulu RFM69.
Uzel odesílatele frýzujícího diagramu
Uzel odesílatele tabulky připojení
Pin Arduino |
RFM69HCW Pin |
I / O piny |
D2 |
DIO0 |
- |
D3 |
- |
TAC_SWITCH |
D4 |
- |
LED_ZELENÁ |
D5 |
- |
LED_RED |
D9 |
- |
LED_BLUE |
D10 |
NSS |
- |
D11 |
MOSI |
- |
D12 |
MISO |
- |
D13 |
SCK |
- |
Uzel přijímače Fritzing Diagram
Uzel přijímače tabulky připojení
Pin Arduino |
RFM69HCW Pin |
I / O piny |
D2 |
DIO0 |
- |
D9 |
- |
VEDENÝ |
D10 |
NSS |
- |
D11 |
MOSI |
- |
D12 |
MISO |
- |
D13 |
SCK |
- |
Spuštění ukázkové skici
V tomto tutoriálu nastavíme dva uzly Arduino RFM69 a přimíme je, aby spolu komunikovali. V níže uvedené části budeme vědět, jak uvést modul do provozu pomocí knihovny RFM69, kterou napsal Felix Rusu z LowPowerLab.
Import knihovny
Doufejme, že jste předtím trochu programovali Arduino a víte, jak nainstalovat knihovnu. Pokud ne, zkontrolujte v tomto odkazu sekci Import knihovny.zip
Připojení uzlů
Připojte USB uzel odesílatele k počítači, do seznamu „Nástroje / Port“ Arduino IDE by mělo být přidáno nové číslo portu COM, pero dolů, nyní připojte uzel přijímače, další port COM by se měl objevit v Nástroje / Seznam portů, také si to poznamenejte, pomocí čísla portu nahrajeme náčrt do uzlu odesílatele a příjemce.
Otevření dvou relací Arduino
Otevřete dvě relace Arduino IDE poklepáním na ikonu Arduino IDE po načtení první relace, je povinné otevřít dvě relace Arduino, protože tak můžete otevřít dvě okna sériového monitoru Arduino a současně sledovat výstup dvou uzlů
Otevření ukázkového kódu
Nyní, když je vše nastaveno, musíme otevřít ukázkový kód v obou relacích Arduino, abychom to udělali, goto
Soubor> Příklady> RFM6_LowPowerLab> Příklady> TxRxBlinky
a kliknutím jej otevřete
Úprava vzorového kódu
- V horní části kódu vyhledejte #define NETWORKID a změňte hodnotu na 0. S tímto ID mohou všechny vaše uzly navzájem komunikovat.
- Podívejte se na změnu #define FREQUENCY tak, aby odpovídala frekvenci desky (moje je 433_MHz).
- Podívejte se na #define ENCRYPTKEY, toto je váš 16bitový šifrovací klíč.
- Hledejte #define IS_RFM69HW_HCW a odkomentujte jej, pokud používáte modul RFM69_HCW
- A nakonec vyhledejte #define NODEID, který by měl být ve výchozím nastavení nastaven jako PŘIJÍMAČ
Nyní nahrajte kód do uzlu přijímače, který jste dříve nastavili.
Je čas upravit skicu pro uzel odesílatele
Nyní v makru #define NODEID změňte nastavení na SENDER a nahrajte kód do svého uzlu odesílatele.
To je vše, pokud jste udělali vše správně, máte připraveny dva kompletní pracovní modely k testování.
Práce s ukázkovým náčrtem
Po úspěšném nahrání náčrtu uvidíte, že červená LED, která je spojena s pinem D4 Arduina, se rozsvítí, nyní stiskněte tlačítko v uzlu odesílatele a uvidíte, že červená LED zhasne a zelená LED, která je připojený k Pin D5 Arduina se rozsvítí, jak je znázorněno na obrázku níže
Můžete také sledovat stisknutí tlačítka! text v okně Sériový monitor, jak je uvedeno níže
Nyní sledujte modrou LED, která je připojena ke kolíku D9 uzlu odesílatele, dvakrát blikne a v okně sériového monitoru přijímacího uzlu budete sledovat následující zprávu a také modrou LED, která je připojena ke kolíku D9 v uzel přijímače se rozsvítí. Pokud vidíte výše uvedenou zprávu v okně Serial Monitor v uzlu přijímače a také pokud se rozsvítí LED Gratulujeme! Úspěšně jste komunikovali modul RFM69 s Arduino IDE. Kompletní práci v tomto výukovém programu najdete také ve videu ve spodní části této stránky.
Celkově se tyto moduly osvědčily pro stavění meteorologických stanic, garážových vrat, bezdrátového ovladače čerpadel s indikátorem, dronů, robotů, vaší kočky… nebe je limit! Doufám, že jste pochopili výukový program a bavilo vás stavět něco užitečného. Máte-li jakékoli dotazy, nechte je v sekci komentářů nebo použijte fóra pro další technické dotazy.