Komunikační moduly RFM12B
http://pandatron.cz/?1536&komunikacni_moduly_rfm12b
Komunikační moduly RFM12B
Základní představení bezdrátových komunikačních modulů RFM12B/868D, způsob jejich řízení i praktické zkušenosti s jejich využitím.
Komunikační moduly RFM12B představují dostupnou a snadnou možnost realizace bezdrátové komunikace. Tyto transceivery od firmy HOPE MICROELEKTRONICS jsou k nám dodávány ve dvou verzích z hlediska komunikační frekvence. Konkrétně jde o 433 MHz a 868 MHz. Obě frekvence spadají do bezlicenčního ISM pásma a vyhovují předpisům FCC (Federal Communications Commission) a ETSI (European Telecommunications Standards Institute). Moduly jsou vhodné pro dálkové řízení, přenos dat ze senzorů, zabezpečovací systémy aj.
Jádrem transceiveru je integrovaný obvod RF12B, který používá FSK modulaci a má integrovaný PLL syntetizér s výstupním zesilovačem, nízkošumový vstupní zesilovač, I/Q směšovače, filtry, zesilovače v základním pásmu a I/Q demodulátor. Komunikace modulu a mikroprocesoru probíhá přes SPI rozhraní, které je využíváno jednak pro přenos dat, tak pro přenos konfiguračních příkazů. Důležité parametry obsahuje tabulka 1.
|
||||||||||||||
Tab. 1: Parametry modulu |
Obr. 1: Transceivery RFM12B868/S2
Fyzické parametry
Moduly jsou k dostání ve dvou fyzických verzích. Jednak s pinovou lištou DIP 2x6 pinů a také pro povrchovou montáž SMD (obrázek 1). Verze s DIP lištou však skýtá možné problémy s dostupností vhodného protikusu. Piny na liště mají totiž nestandardní rozteče 2 mm, zobrazené na obrázku 2. Běžné pinové lišty dostupné od prodejců elektronických součástek mají rozteč pinů 2,54 mm.
Obr. 2: Rozměry modulu s DIP lištou [1]
Specifikace pro SMD montáž má po stranách destičky pájecí plošky, kterých je o dvě více než pinů u verze s pinovou lištou. Jde o jednu plošku pro anténu a jednu zemnicí navíc. Rozteče plošek jsou opět 2 mm. Další rozměry jsou na obrázku 3.
Obr. 3: Rozměry modulu pro SMD montáž [1]
|
||||||||||||||||||||||||
Tab. 2: Funkce pinů [1] |
Výčet funkcí jednotlivých pinů shrnuje tabulka 2. Při výběru vhodného mikroprocesoru pro obsluhu modulů je potřeba brát v úvahu jejich doporučené napájecí napětí. Nabízí se možnost použít mikroprocesory s napájením 3,3 V a napájet tedy z jednoho zdroje. Druhou možností je použít mikroprocesor napájený 5 V a mít oddělené stabilizované napětí 2,2 - 3,8 V pro radiový modul. V tomto případě je nutné snížit napětí na IO pinech pomocí předřazených odporů např. 4,7 kOhm.
Programování
V první řadě se provádí inicializace modulu odesláním konfiguračních příkazů. Seznam konfiguračních příkazů lze nalézt v katalogovém listu transceiveru RF12B [1]. Lze nastavovat vysílací výkon, frekvenční deviaci, bitovou rychlost, podobu synchronizačního bytu, lze aktivovat wake-up časovač, detekci nízké napájecí úrovně a další užitečné parametry.
Pro komunikaci lze využít hardwarovou SPI mikroprocesoru, nebo softwarovou obdobu, kterou zle nalézt v programátorské příručce [2].
Tvar odesílané zprávy je doporučován v [3] a měl by mít podobu:
- Synchronizační byte 8-12 bitů (0xAA nebo 0x55)
- Adresní byty (0x2D, 0xD4)
- Datové byty
- Kontrolní součet
Data jsou odesílána zapsáním jednoho bytu do vysílacího registru a ten je následně odvysílán. Vysílací registr má adresu 0xB8yy kde yy je vysílaný datový byte. Odeslání dat je potvrzeno nastavením NIRQ výstupu do nízké úrovně.
Inicializace přijímače je v podstatě shodná s vysílačem. Je třeba si dát pozor na aktivaci přijímače a deaktivaci vysílače v příkazu řízení výkonu. V kódu z programátorské příručky [2] se právě v tomto příkazu nachází chyba!
Funkci pro příjem dat je možné realizovat jako čtení status registru a kontrolu prvního bitu, který signalizuje naplnění FIFO registru přijatými daty. Poté data vyčteme, vynulujeme FIFO registr a restartujeme rozeznávání synchronizačního pole (1. bit FIFO a reset mode příkazu).
Obr. 4: Moduly připravené k testování
Zkušenosti
Osobní zkušenost s moduly RFM12B je velice dobrá. Moduly byly použity v projektu domácí meteostanice pro přenos senzorických dat, naměřených jednotkou umístěnou vně domu, k vnitřní jednotce, která údaje zpracovává a interpretuje. Aplikace není náročná na rychlost přenesených dat, ale na dosah vysílání i skrze překážky. Testování dosahu probíhalo jednak ve volném prostředí, tak z vnějšku dovnitř domu. Naměřená data jsou v tabulce 3.
|
||||||||||||||||
Tab. 3: Dosah modulu |
Moduly jsou vhodným prostředkem k realizaci aplikací vyžadující komunikaci na střední vzdálenost (desítky metrů) a jejíž požadavky na rychlost dat jsou do 115 kbps. Jsou velmi příznivé svou cenou a jednoduchostí implementace.
Autor: Ing. Jiří Dvořák
Seznam literatury:
[1] HopeRF. RFM12B datasheet [online]. [citováno 18.7.2010]. Dostupné z WWW: http://www.hoperf.com/upfile/RFM12B.pdf
[2] HopeRF. RF12B programming guide [online]. [citováno 18.7.2010]. Dostupné z WWW: http://www.hoperf.com/upfile/RF12B_code.pdf
[3] HopeRF. RF12B universal ISM band FSK transceiver [online]. [citováno 18.7.2010]. Dostupné z WWW: http://www.hoperf.com/upfile/RF12B.pdf