. : New eShop! - Mobilní verze - Pandatron.cz - Pandatron.sk - Diskuzní fórum - Zakázkový vývoj : .
 
Dálkové ovládání s Bluetooth
13. prosince 2008 | Pandatron | Dálkové ovládání s Bluetooth | Komentářů: 13  

Dálkové ovládání s Bluetooth

Po sérii článků představujících Bluetooth program od connectBlue a základní práci s Bluetooth moduly je na čase postavit něco praktického. Volba padla na bezdrátové dálkové ovládání, protože je pro něho přímá podpora ze strany výrobce modulů a tak je jeho konstrukce velice jednoduchá.

Bluetooth dálkové ovládání:
Následující konstrukce představuje snad nejjednodušší možný způsob konstrukce kvalitního bezdrátového dálkového ovládání. Zařízení je postaveno na modulech Bluetooth v.2.0 typu OEMSPA-311i od známého švédského výrobce connectBlue. Jde o moduly s rozměry 16 x 36mm, s integrovanou anténou a známým čipem Philips BGB203. Výstupní výkon modulů je 7dBm a dosah kolem 100m na volném prostranství. Díky použití rádiových vln není potřeba přímé viditelnosti mezi vysílačem a přijímačem a navíc díky možnosti šifrování (tj. s použitím PINu) je komunikace velmi bezpečná.


Obr. 1: Vysílač dálkového ovládání
 
Obr. 2: Přijímač dálkového ovládání

Bluetooth moduly:
Moduly Bluetooth jsou primárně určeny pro bezdrátový přenos dat - náhradu sériové linky RS-232 (případně 422/485). Pro tuto svoji základní funkci jsou již z výroby vybaveny vnitřním firmware uloženém ve vnitřní paměti flash. Výrobce však kromě tohoto základního firmware poskytuje zcela zdarma rovněž jiný, méně obvyklý firmware, který umožní úplně změnit funkci modulů. Firmware, který v našem případě použijeme se nazývá „Bluetooth IO Module" (BT IO).

Nahráním tohoto firmware do modulu zůstane zachována jeho základní funkce – tedy přenos sériových dat. Navíc se však změní funkce některých dalších kontaktů a vzniknou tak libovolně konfigurovatelné I/O piny. Maximální počet takových pinů je u modulu OEMSPA-311i rovných 12. Jelikož se však nejedná o primární funkci modulu, jsou tyto piny na modulu rozmístěny různě a navíc při použití modulu zaletovaného přímo na desku s plošnými spoji získáme maximálně 11 I/O pinů.

V následující tabulce jsou uvedeny jednotlivé piny modulu OEMSPA-311i, číslo a typ I/O pinu podle výrobce a použití pinu v následující konstrukci vysílače a přijímače dálkového ovládání.

Číslo pinu Funkce Připojen ve vysílači Připojen v přijímači
1 -RESET    
2 VSS zem zem
3 VCC_3V3 napájení napájení
4 I/O_8 (3V) Tl 4 OUT 4
5 I/O_0 (3V) Tl 3 OUT 3
6 GREEN    
7 BLUE modrá LED modrá LED
8 I/O_4 (3V) Tl 2 OUT 2
9 UART-TxD    
10 I/O_6 (3V) Tl 1 OUT 1
11 UART-RxD    
12 I/O_12 (1,8V) LED 5 IN 5
13 I/O_13 (1,8V) LED 4 IN 4
14 I/O_14 (1,8V) LED 3 IN 3
15 I/O_15 (1,8V) LED 2 IN 2
16 I/O_9 (3V) LED 1 IN 1
17 I/O_10 (1,8V) Tl 5 OUT 5
18 I/O_11 (1,8V)    
Tab. 1: Využití pinů modulu OEMSPA-311i

Konstrukce:
I když moduly OEMSPA-311i disponují až 12 I/O piny, byl jejich počet v tomto dálkovém ovládání omezen na rovných 10. Piny byly dále rozděleny na polovinu, kdy jedna polovina je na vysílači osazena ovládacími tlačítky (tedy se jedná o vstupy) a druhá polovina je osazena diodami LED (tedy v tomto případě jde výstupy). Tlačítka na vysílači spínají tranzistory s otevřeným kolektorem osazené na přijímači a následně například relátka a podobně. LED umístěné na vysílači indikují stav naopak vstupních pinů na přijímači. Jde tedy o dálkové ovládání využívající pět kanálů jedním směrem a druhých pět směrem opačným. Samozřejmě, jelikož se na modulech jedná vždy o I/O piny, je možné jejich rozložení a poměr vstupních k výstupním pinům libovolně ve svém zařízení upravit podle potřeby.

Schéma vysílače dálkového ovládání je na následujícím obrázku.


Obr. 3: Schéma zapojení vysílače

Základem je již zmíněný Bluetooth modul OEMSPA-311i, který má přímo na svých pinech připojeny ovládací tlačítka a přes omezovací rezistory i indikační LED (viz. tabulka č.1). Dále je na pinu č.9 nazvaném BLUE připojena i modrá LED indikující navázání spojení a následný přenos dat.
Vysílač je napájen třemi tužkovými bateriemi, připojenými na piny J1 (+) a J2 (-).

Na následujících obrázcích je možný motiv desky s plošnými spoji a její osazení.


Obr. 4: Rozmístění součástek
 
Obr. 5: Plošný spoj (pro originál 600dpi klikněte)

Kromě Bluetooth modulu jsou všechny součástky osazené z horní strany. Modul, jelikož je v provedení SMD byl osazen ze spodní strany, tedy ze strany spojů.

Seznam součástek vysílače
R1,R2,R3,R4,R5,R6   1k
R7,R8               0R
D1,D2,D3,D4,D5      LED 3mm
D6                  LED 3mm modrá
Tl1,Tl2,Tl3,Tl4,Tl5 P-B1715
S1                  P-KNX1
IO1                 Modul OEMSPA-311i

Schéma zapojení přijímače k dálkovému ovládání je uvedeno na následujícím obrázku.


Obr. 6: Schéma zapojení přijímače

Shodně jako v případě vysílače je samozřejmě i on postaven na Bluetooth modulu OEMSPA-311i. Modul má na svých výstupních pinech, na pinech kde jsou ve vysílači tlačítka, připojeny výstupní tranzistory BC337, jejichž kolektory jsou vyvedeny na piny J3 až J7. Naopak na pinech, kde jsou na vysílači umístěny diody LED, jsou zde vstupní ochranné rezistory a diody, vedoucí z pinů J9 až J13.
Napájení přijímače je připojeno na piny J1 (+) a J2 (-) a mělo by být v rozsahu 5 až 16V. V přijímači je toto napětí stabilizováno klasickým stabilizátorem LF33CV na hodnotu 3,3V.

Na následujících obrázcích je možný motiv desky s plošnými spoji přijímače a její osazení.


Obr. 7: Rozmístění součástek
 
Obr. 8: Plošný spoj (pro originál 600dpi klikněte)

Opět kromě Bluetooth modulu jsou všechny součástky osazené z horní strany. Modul, jelikož je v provedení SMD byl osazen ze spodní strany desky.

Seznam součástek přijímače
R1,R2,R3,R4,R5,R11  1k
R6,R7,R8,R9,R10     100R
C1                  100n
C2                  10u/25V
D1,D2,D3,D4,D5      BAT48
D6                  LED 3mm modrá
T1,T2,T3,T4,T5      BC337
IO1                 Modul OEMSPA-311i
IO2                 LF33CV

Nahrání speciálního firmware BT IO:
Bluetooth moduly jsou z výroby vybaveny základním firmwarem umožňujícím pouze sériový přenos dat. Pro použití I/O pinů je potřeba do modulů nahrát speciální BT IO firmware. Ten lze získat zdarma od dodavatele těchto modulů na český trh, společnosti
Spezial Electronic, případně přímo od výrobce connectBlue po předchozí bezplatné registraci na jeho stránkách Connectblue.com a následném obdržení hesla pro přístup na stránky technické podpory tamtéž.

Při nahrávání BT IO firmware se postupuje podle pokynů popsaných v dokumentaci, která je spolu s „Flash Loaderem“ přiložena k potřebným souborům.


Obr. 9: Flash Loader

Druhá a zároveň jednodušší cesta je přes českého dodavatele, firmu Spezial Electronic. Ta nabízí jak bezplatné nahrání BT IO firmware, tak i bezplatnou konfiguraci modulů pro Vaši aplikaci.

Konfigurace modulů:
Před použitím Bluetooth modulů s nahraným firmware BT IO jako dálkového ovladače je potřeba provést jeho základní nastavení a konfiguraci. To je možné provést buď bezdrátově, například pomocí libovolné Bluetooth klíčenky, nebo pomocí sériové linky připojené k modulu.

Pro bezdrátovou konfiguraci je potřeba v modulech nejprve aktivovat funkci „Configuration Over Air“. To Vám na požádání provede také jejich distributor, firma Spezial Electronic při nahrání nového firmware, nebo je to potřeba provést při první konfiguraci pomocí sériové linky.

Pro konfiguraci přes sériovou linku je potřeba pomocí převodníku RS232/TTL (3V3) (či USB) propojit piny RxD, TxD a samozřejmě zem s počítačem. Takové převodníky je možné nalézt i na tomto webu v sekci Mikroprocesory. Vývod CTS na modulu jednoduše uzemníme.

Moduly jsou z výroby nastaveny na rychlost 57,6 kbps, 8 data bits, no parity, 1 stop bit a Hardware flow control (57600 8-N-1, HW Flow Ctrl.), shodně s tímto je potřeba mít nastavený sériový port v PC - kromě Flow Ctrl., tuto volbu necháme jako "žádnou" (None), právě z tohoto důvodu jsme dočasně (pro první připojení) uzemnili pin CTS na modulu.

Nyní spustíme Serial Port Adapter Toolbox. Program nám nejdříve nabídne výběr produktu - zvolíme Bluetooth IO. Dále stiskneme tlačítko Connect a následně nastavíme parametry sériové linky, tj. správné číslo COM portu a 57 600 8-N-1. Po stisku tlačítka OK je navázána komunikace.

Při konfiguraci pomocí Bluetooth zařízení, např. běžného Bluetooth „dongle“, si nejprve zjistíme, na jaký virtuální COM port se musíme připojit. Tato procedura se u různých ovladačů mírně liší. Poté shodně jako v předchozím případě spustíme program Serial Port Adapter Toolbox a v něm nastavíme číslo tohoto portu.

Nyní jsme již úspěšně spojení s modulem. Pro konfiguraci je však potřeba ještě přepnout modul do AT módu. To se v programu Serial Port Adapter Toolbox provede jednoduše stiskem tlačítka „AT Mode“. V dolním okně SPA Toolboxu, Console, pak vidíme výpis odpovědi modulu, včetně aktuálního firmware, viz obr.10. Stisknutím tlačítka Read All pak zobrazíme aktuální nastavení modulu uvedené v jednotlivých záložkách.


Obr. 10: Navázání komunikace a přepnutí do AT módu

Nastavení:
Pro nastavení modulů je potřeba nejprve se rozhodnout, který z modulů bude nakonfigurován jako Client (tj. tento modulu aktivně naváže spojení s druhým modulem - Serverem) a druhý jako Server. Z hlediska následného používání je lhostejné, který modul bude Client a který Server.

Pro funkci Client nastavíme (v našem případě vysílač) modul takto:

Záložka Basic Settings
Local Name - zde můžeme vložit libovolný název, pod jakým se bude modul zobrazovat.
Class of Device - ponecháme nastavenou 0.
Discoverable - určuje, zda bude možné zapnutý modul vyhledat ostatními Bluetooth zařízeními, tj. „bude viditelný“, z hlediska bezpečnosti je nejlepší nastavit „Not Discoverable“.
Pairable - nastavíme na Pairable.
Poté nastavené hodnoty uložíme stiskem tlačítka Write.


Obr. 11: Záložka Basic Settings

Záložka Security
Security Mode - nastavíme na Link Level.
Pin Code - zde nastavíme libovolný, až 16 alfanumerických znaků dlouhý PIN kód.
Poté nastavené hodnoty uložíme stiskem tlačítka Write.


Obr. 12: Záložka Security

Záložka Server
Server Profile - nastavíme SPP.
Master/Slave Switch Policy - nastavíme Don’t Care.
Wireless Multidrop - Disable.
Poté nastavené hodnoty uložíme stiskem tlačítka Write.


Obr. 13: Záložka Server

Záložka Client
Client Profile - SPP
No Remote Peers - 1.
Peer ID - 0.
Address - zde vložíme adresu druhého modulu, tj. 12 alfanumerických znaků bez mezer (velká a malá písmena se nerozlišují). Pokud adresu druhého modulu neznáme, můžeme postupovat takto:
Připojíme druhý modul na napájení, a protože modul je v základní konfiguraci nastaven jako „viditelný nebo vyhledatelný“ (discoverable), stiskneme v Toolboxu, kde máme připojen první modul, tlačítko (na záložce Client) Device Discovery. Po chvilce první modul vyhledá všechna Bluetooth zařízení v okolí, včetně druhého modulu. Nyní můžeme tento druhý modul vybrat v roletkovém menu. Tím se nám přenese jeho adresa do políčka Address.
Záložka Name - nemusí se vyplňovat.
Always Connected - zašrktneme tuto volbu.
Wireless Multidrop - Disable.
Poté nastavené hodnoty uložíme stiskem tlačítka Write.


Obr. 14: Záložka Client

Záložka IO
V této sekci se nastavují požadované funkce jednotlivých I/O pinů. V našem případě jsme u vysílače (obr.15) zvolili 5 kanálů jako vstupních a 5 kanálů jako výstupních. Přijímač je nastaven zrcadlově obráceně (tedy hodnoty buněk "I/O").


Obr. 15: Záložka IO

U druhého modulu, který bude nakonfigurován jako Server, stačí nastavit pouze záložku IO, případně vlastnosti sériového portu. Jinak není potřeba nic dalšího konfigurovat.

Praktická zkušenost:
Popsané dálkové ovládání bylo sestaveno a byla ověřena jeho bezchybná funkce. Měřením bylo zjištěno, že doba potřebná k navázání komunikace po zapnutí modulů je typ. 2-3s a doba přenosu stisku tlačítka z vysílače na přijímač je cca 20ms (tuto dobu lze zkrátit změnou času samplování vstupů na záložce IO - "Poll Time"). Modrá LED indikuje svým trvalým svitem úspěšné navázání spojení a krátkým probliknutím poté přenos stavu pinů (například při stisku tlačítka).

Dosah na volném prostranství byl zhruba výrobcem udávaných 100m. Dosah v budově, vzhledem k horší prostupnosti vysoké frekvence (2,4GHz) okolními předměty byl maximálně přes 2-3 patra. Zde je však dosah silně závislý na konkrétním umístění okolních předmětů a jejich materiálu.


Rozšíření kanálů:
I když Bluetooth modul OEMSPA-311i nabízí až 12 obousměrných I/O kanálů, může se v některých případech vyskytnout potřeba přenášet ještě větší množství kanálů. V tom případě je řešení opět velice jednoduché. Stačí použít na vstupní piny Bluetooth modulu převodník například bin/BCD a 12 I/O kanálů rozšířit použitím třech takových převodníků až na neuvěřitelných více než 4000 kanálů.
Jedinou podmínkou, která však musí být zachována je přenos vždy jen jediného kanálu v jeden okamžik. Není tak možné přenášet libovolný stav až 4000 pinů, avšak pro použití například s tlačítky, kdy může být stisknuto vždy jen jediné z nich je tato varianta velice dobře použitelná.

Na obr.16 je možné schéma vysílače pro rozšíření čtyř pinů Bluetooth modulu na 15 kanálů.


Obr. 16: Schéma zapojení

Princip zapojení je takový, že aktivací jednoho libovolného vstupního pinu označeného 1-15 dojde k vygenerování logické hodnoty 0000b až 1111b na výstupech převodníku (piny A-D). Tato logická hodnota je automaticky přenesena pomocí Bluetooth modulu OEMSPA-311i do druhého Bluetooth modulu a zde je následně opět dekódována převodníkem BCD/bin na signál 1 z 15.
Jelikož však, alespoň pokud je mi známo, není možné sehnat převodník binárního kódu na BCD, pouze opačný, je potřeba v tomto případě použít na vysílací straně buď malé hradlové pole či například diodovou logiku. Schéma takového převodníku tvořeného diodami je na následujícím obrázku.


Obr. 17: Schéma zapojení diodového převodníku bin/BCD

Na přijímací straně je již situace mnohem jednodušší, protože převodníků BCD/bin je celá řada. Na obr.18 je tak schéma přijímače, tvořeného Bluetooth modulem OEMSPA-311i a integrovaného obvodu 74HC154.


Obr. 18: Schéma zapojení

Na tomto příkladu bylo názorně ukázáno, jak je možné rozšířit čtyři piny Bluetooth modulu na rovných 15 (šestnáctý s nulovou hodnotou je klidový stav). Je samozřejmě možné nastavit na Bluetooth modulu opět několik pinů přenášejících stav jedním směrem a jiný počet pinů přenášejících stav opačným směrem. Pak je tedy možné použít například na prvních pinech diodový kodér a na druhých integrovaný dekodér.
Jinak je možné, použije-li se všech 12 pinů pro komunikaci jediným směrem dosáhnout až 2 na 12, tedy 4096 kombinací. Takové množství pinů již však nepůjde dost dobře na vysílací straně řešit diodovou logikou a bylo by potřeba použít například již zmíněné hradlové pole.

Odkazy & Download:
Výrobce modulů, společnost connectBlue - http://www.connectblue.com

Český distributor Spezial Electronic - http://www.spezial.cz 
Další praktické rady a příklady na Spezial Electronic - http://www.spezial.cz/apps/index.html
Bluetooth, Wireless LAN (WiFi) a 802.15.4 (ZigBee) produkty - http://www.spezial.cz/connectblue/index.html







GooglePlus1 FaceBook Twitter del.icio.us DiGG Google StumbleUpon Google Buzz Email RSS PDF Tisk

Komentáře (13):

Zobrazit starší 30 dnů (13)...



Název příspěvku: Vaše jméno: host
                 
  Zakázat formátování [Zakáže kódování a nahrazování smajlíky.]
Připojit soubory
reklama:
IPRELAY8R - IP RELÉ a teploměr s webovým rozhraním
Moduly IP RELÉ - IPRELAY8R obsahují osm releových výstupů s přepínacím kontaktem, webové rozhraní, integrovaný a externí teplotní senzor s pamětí na 10 záznamů a zobrazením naměřených hodnot v grafu.
Skladem od 1520 Kč

Informace uvedené v článcích jsou platné v době jejich vydání a samotné články jsou určeny pouze jako zdroj informací. Autor článku ani správce webu nenesou žádnou zodpovědnost za případné újmy na majetku a zdraví. Názvy společností a výrobků, loga a další multimediální materiál mohou být ochrannými známkami příslušných společností.
RSS kanály: | |
+420 723 846 377
info@pandatron.cz
Všechna práva vyhrazena | mobilní verze | © Copyright 2000 - 2016 ISSN 1803-6007