Menu

Email: SakulRaider@seznam.cz

Servery:

Dnes návštěv: 293  On-line: 4

Elektronika

Bezdrátové moduly

 - Modul HC-11 (433MHz)

 

​​

Jedná se o bezdrátový modul v pásmu 433MHz, určený k bezdrátovému přenosu dat ze sériové linky UART. Pomocí dvou těchto modulů je tak možné vytvořit most mezi dvěma aplikacemi komunikujícími po sériové lince UART, využívající RX a TX kanál. Výhodou tohoto modulu je možnost připojení externí antény (ANT1) nebo malé spirálové, jež je dodávána spolu s modulem (ANT2). Taktéž tato verze modulu jde nakonfigurovat tak, aby bylo možno přenášet až 3 logické signály z vysílače do přijímače.

Technické specifikace

Napájecí napětí 3,3-6V
Odběr proudu 80uA-22mA (dle zvoleného režimu provozu FU)
Komunikace UART (RX, TX)
Podporované rychlosti 1200-115200bps
Výkon -30 až 10dBm (nastavitelné v 8mi úrovních)
Dosah až 300m
Konfigurace pomocí AT příkazů
Režim provozu UART / IO (sériová komunikace nebo vstupy- výstupy)

Použití

Hlavním použitím těchto modulů je náhrada kabelového sériového rozhraní za bezdrátové. Pokud se používá komunikace pouze jedním směrem (vysílá jen jeden modul) je možno definovat hned několik modulů, které budou vysílaná data přijímat. To se může hodit, pokud máme například někde rozmístěny 2 displeje a chce na nich zobrazovat stejná data z jednoho zdroje.
Druhou možností použití je přenos až 3 logických stavů mezi dvěma moduly, kdy jeden je nakonfigurován jako MASTER a druhý SLAVE.

Připojení BT do aplikace

​​

Na obrázku je znázorněno připojení k desce Arduino UNO a v horní části obrázku pak blokové schéma propojení dvou aplikací (Arduino desek) pomocí dvou modulů HC-11. I zde si můžete všimnout, že všechny datové linky TX a RX jsou vždy mezi modulem a aplikací překříženy.

Konfigurace

Tento modul můžeme konfigurovat pomocí AT příkazů. Do AT módu lze vstoupit dvěma způsoby:
1. Za běžného provozu přivedeme na vývod 5 (CON / SET) logickou úroveň L. V tomto režimu s námi bude modul stále komunikovat rychlostí, jež má aktuálně nastavenu. V AT režimu bude po dobu, co bude na vývodu 5 (CON / SET) logická úroveň L. Jakmile tento vstup přejde do úrovně H, přejde modul do běžného provozu.
2. Vypneme napájení modulu, následně přivedeme na vývod 5 (CON / SET) logickou úroveň L a opět zapneme napájení modulu. Tím se dostaneme také do AT módu s tím rozdílem, že bude nastavena komunikační rychlost UARTu na 9600bps bez ohledu s jakou rychlostí komunikuje modul v běžném provozu. (Toto platí pro verzi firmware 1.8 a novější. U verze 1.7 a starší dojde současně k obnově továrního nastavení.) V AT režimu bude po dobu, co bude na vývodu 5 (CON / SET) logická úroveň L. Jakmile tento vstup přejde do úrovně H, přejde modul do běžného provozu. Následné přivedení logické úrovně L je stejné jako dle bodu 1.
Z toho plyne, že je možno připojením vývodu 5 (CON / SET) k Vaší aplikaci tento modul za běhu překonfigurovávat, dle momentální potřeby. Pokud není vývod 5 (CON / SET) nikam připojen je na něm automaticky logická úroveň H, což je běžný provoz.
Pokud jsme tedy v režimu AT příkazů je třeba se s modulem spojit pomocí nějakého sériového terminálu. Těchto terminálů existuje nepřeberné množství a pokud nemáte nějaký svůj oblíbený můžete použít například SimpleSerialTerminal od společnosti Flajzar. Tento terminál používám já velice rád neb je jednoduchý a tím pádem velice přehledný. Taktéž je možno si předdefinovat až 6 samostatných příkazů. Takže poté co jsme propojily modul s převodníkem USB/TTL a ten následně připojili k PC (samozřejmě jsme předtím nainstalovali ovladače pro převodník) můžeme spustit SimpleSerialTerminal (SST). Nyní potřebujeme vědět Com port, pod kterým se nám do systému přihlásil USB/TTL převodník. To zjistíme ve správci zařízení. Do toho se dostaneme tak, že klikneme pravím myšítkem na Tento počítač a vybereme Vlastnosti. V otevřeném okně následně klikneme na Správce zařízení. Otevře se nám další okno, kde rozklikneme řádek Porty (COM a LPT). Tam bychom měli vidět všechny dostupné Com porty a jejich čísla. Viz následující obrázek:

V našem případě je to ComPort 4 (ten bude mít každý jiný!). Tento port musíme tedy v SST nastavit. Taktéž nastavíme přenosovou rychlost na 9600 (použijeme tedy 2 způsob konfigurace). Poté můžeme kliknout na tlačítko Open, kterým otevřeme komunikaci na daném portu. V tuto chvíli již můžeme začít posílat AT příkazy. Pro ověření, že máme s modulem spojení, odešleme pouze samotné AT. Následně by nám měl modul odpovědět OK, případně příkaz AT+RX, který nám vypíše aktuální konfiguraci modulu. Viz následující obrázek:

Na obrázku z SST jsou zároveň vidět již před vyplněné další příkazy (F1-F6). Při zadávání těchto příkazů je taktéž dobré vědět, že za příkaz se musí vložit ukončovací znaky (v tomto terminálu to jsou ). Carriage Return označovaný jako CR (konec řádku) a znak Linefeed označovaný jako LF (nový řádek). Proto pokud používáte jiný terminál je nutné si pohlídat, aby jste v jeho nastavení měli zapnuté automatické vkládání těchto znaků, případně je dopsat ručně.

Jednotlivé AT příkazy

Opět tu nebudu vypisovat naprosto všechny podporované příkazy, ale pouze ty důležité pro konfiguraci a zprovoznění modulu. Další příkazy můžete najít v Datasheetu od tohoto modulu.

AT+RX – Tento příkaz vypíše aktuální nastavení modulu (viz obrázek SST). Taktéž lze zadat příkazy pro vypsání konkrétního parametru. To se provede zapsáním příkazu AT+Ry, kde místo y vyplníme písmeno daného parametru, který chceme zobrazit. Například A-adresa, C-kanál, P-vysílací výkon, B-přenosová rychlost, F-režim provozu. Tedy například AT+RB nám vrátí komunikační rychlost UARTu.

AT+A – Tímto příkazem nastavíme adresu modulu. V ukázce z SST, jeto příkaz AT+A001. Vždy se adresa udává jako 3 místné číslo. V tomto případě je to adresa 1. Rozsah adres je 000-255. Tyto adresy musí být na všech modulech, jež spolu mají bezdrátově komunikovat stejné.

AT+C – Tímto příkazem se nastavuje kanál. V ukázce z SST, jeto příkaz AT+C001. Vždy se kanál udává jako 3 místné číslo. V tomto případě je to kanál 1. Zde je rozhodně dobré vědět, že v České Republice je povoleno v tomto pásmu vysílat pouze na kanálech 1-4. Ostatní kanály jsou zakázané! Pro úplnost rozsah kanálů je 001-127. Tyto kanály musí být na všech modulech, jež spolu mají bezdrátově komunikovat stejné.

AT+B – Tímto příkazem se nastavuje komunikační rychlost. V ukázce z SST, jeto příkaz AT+B19200. Tedy komunikační rychlost 19200bps. Další podporované rychlosti jsou: 1200, 2400, 4800, 9600, 19200, 38400, 57600 a 115200.

AT+ FU – Tímto příkazem se nastavuje režim provozu, který má vliv na spotřebu proudu, maximální přenosovou rychlost a celkové chování sériového rozhraní. V ukázce z SST, jeto příkaz AT+FU3. Význam jednotlivých režimů:
FU1 – Toto je režim, který je zpětně kompatibilní s verzemi firmware 1.7 a spotřeba proudu je kolem 3mA.
FU2 – Toto je režim s nízkou spotřebou (80uA). Nicméně díky tomu má přenos extrémně vysokou latenci až 400ms. Taktéž je podporována pouze rychlost 1200, 2400 a 4800. Při tomto nastavení je také nutné hlídat buffer, a nesmí být odesíláno najednou více jak 245 bytů. Tento režim je vhodný pro bateriově napájené aplikace s nízkým datovým tokem, jako jsou například různé teploměry.
FU3 – Toto je režim s nejnižší latencí kolem 10ms. To je vykoupeno největší spotřebou kolem 25mA. Zato jsou podporovány všechny dostupné komunikační rychlosti. Ideální pro nasazení v aplikacích s velkým datovým tokem oběma směry.
FU4 – Tento režim je zaměřen na co největší dosah. Čím nižší je přenosová rychlost, tím je dosah větší, ale stupá latence. Při rychlostech pod 9600bps může latence překročit i 300ms.
Doporučuji na všech modulech jež spolu mají komunikovat nastavit stejný režim FU.

AT+P – Tímto příkazem se nastavuje vysílací výkon. V ukázce z SST, jeto příkaz AT+P5. To odpovídá 0dBm (1mW), což je také maximální výkon povolený v tomto pásmu s tímto provozem v České Republice! Pro úplnost zde jsou všechny možnosti: -30dBm(1), -20dBm(2), -15dBm(3), -10dBm(4), 0dBm(5), 5dBm(6), 7dBm(7) a 10dBm(8).

AT+V – Tímto příkazem je možno zjistit verzi Firmware. Můj modul má v1.9.

AT+FC – Tímto příkazem je možno přepnout modul z režimu přenosu dat na přenos logických úrovní (IO). V tomto režimu musí být vždy jeden modul konfigurován jako MASTER (jeho porty RX, TX a SET jsou konfigurovány jako vstupy) a druhý modul jako SLAVE (jeho porty RX, TX a SET jsou konfigurovány jako výstupy).
Za příkaz AT+FCxy se ještě přidávají 2 parametry. Parametr x je volba konfigurace modulu MASTER (M) nebo SLAVE (S). Parametr y pak udává, zda má výstup kopírovat vstup FOLLOW (F) nebo zda ho má cyklicky přepínat ON/OFF TURNOVER (T). Jednoduché znázornění konfigurace dvou modulů je vyobrazeno na následujícím obrázku:

​​

Tento IO režim je poměrně rozsáhle popsán i v manuálu včetně ukázkových zapojení, takže pro bližší informace doporučuji si prostudovat Datasheet. Pokud potřebujeme modul vrátit zpět do datového režimu, jde to pouze dle bodu 2, tedy že odpojíme modul od napájení, spojíme vývod SET s GND a zapneme napájení. Tím přejde modul do režimu AT příkazů a příkazem AT+FUx ho přepneme zpět do některého z datových režimů (například AT+FU3). Taktéž je dobré, pokud máte modul v režimu IO, aby při zapnutí napájení byl vstup SET vždy v logické úrovni H, jinak se modul přepne dočasně z režimu IO do režimu AT příkazů, čímž je jeho funkce znemožněna. Teprve při přechodu vstupu SET do H bude modul přepnut zpět do IO režimu.

Konfigurace pomocí aplikace

Konfigurace přes terminál je celkem nepohodlná a je tu tedy ještě jedna možnost a to použití aplikace určené přímo pro konfiguraci tohoto modulu. Ukázka této aplikace je na následujícím obrázku:

Při spuštění této aplikace budeme dotázáni na kterém Com portu je modul připojen. Po jeho vybrání a potvrzení se nám již objeví toto okno. Zde můžeme konfigurovat přenosovou rychlost včetně nastavení Parity a StopBitů.
Dále režim provozu FU. Pravá část se věnuje bezdrátové části, kde v horní části volíme vysílací výkon, následuje kanál, na kterém bude modul vysílat a adresa, která daný modul přesně identifikuje. Pro uložení hodnot do modulu slouží tlačítko send config.

Závěrem

Tento modul je výbornou volbou pro přenos dat a díky možnosti režimu IO je ideální i pro jednoduchá dálková ovládání. Taktéž je vhodný pro přenos dat z jedné aplikace do více podřízených aplikací (například do několika displejů). Taktéž velké plus vidím v možnosti připojit externí anténu do připraveného konektoru přímo na desce modulu. Na druhou stranu je nutné si pohlídat parametry, které v modulu měníme (vysílací výkon a kanál), které jsou v České Republice značně omezeny. Ale i tak si myslím, že tento modul najde svoje uplatnění v mnoha aplikacích.

​​

DOKUMENTACE

Závěrem si zde můžete stáhnout veškerou dokumentaci.
DOWNLOAD
Diskusi pro tuto konstrukci najdete ZDE

Kde koupit

 

Zajímavé odkazy

VO-R/10/05.2014-3 Využívání vymezených rádiových kmitočtů
Simple Serial Terminal Stažení terminálu Flajzar
Aliexpress Kde koupit HC-11​
Mcu store USB/TTL Kde koupit USB/TTL převodník
Carriage Return WikipediE – zakončovaní znaky
Linefeed WikipediE – zakončovaní znaky

 

Můj Youtube kanál:

fb-large.png, 5,8kB
Copyright © Resi-Design 2017 www.resi-design.cz.
TOPlist