Spezial Electronic

Univerzální dálkové ovládání s Bluetooth

link na hlavní stránku connectBlue

Se souhlasem převzato z časopisu Praktická elektronika 10/2007     Praktická Elektronika

S použitím dvou modulů Bluetooth (o velikosti 16 x 36 mm) od známého švédského výrobce connectBlue, vybavených speciálním firmware, lze velmi elegantně sestrojit univerzální 5kanálové dálkové ovládání (případně 6- nebo při použití OEMSPA311i až 12kanálové). Moduly jsou osazeny interní anténou a ke své funkci tak vyžadují pouze přivedení napájecího napětí 3 až 6 V a několik rezistorů. Aplikace popisuje praktickou realizaci tohoto řešení.Univerzální dálkové ovládání s Bluetooth

Moduly OEMSPA310i, které jsou použity, jsou v provedení Bluetooth 2.0 a jsou vybaveny známým chipsetem Philips BGB203. Výkonově jsou v provedení Class 2, s výstupním výkonem +3,5 dBm. Dosah modulů je udáván na přibližně 75 m a jde o dosah na přímou viditelnost. Při použití v budovách bude dosah menší a závisí na konkrétních podmínkách.

Moduly Bluetooth jsou primárně určeny pro bezdrátový přenos - náhradu sériové linky, např. RS-232 (případně 422/485). Pro tuto svoji základní funkci jsou již z výroby vybaveny vnitřním software (dále jen jako firmware) uloženém ve vnitřní paměti flash. Výrobce ovšem kromě tohoto základního firmware poskytuje rovněž jiný, méně obvyklý, upravený firmware, který umožní úplně změnit funkci modulů. Sympatické je, že všechny existující druhy firmware jsou k dispozici zdarma a lze je snadno svépomocí do modulu nahrát.

V našem případě použijeme firmware, který se nazývá „Bluetooth IO Module (BT IO)“. Nejdříve několik slov o tom, jak takto upravený modul vlastně pracuje. Moduly jsou ve svém základním provedení určeny k přenosu sériové linky. Jsou proto vybaveny několika vstupy a výstupy umožňujícími přenést kompletní RS-232 linku. Jsou zde tudíž kontakty pro připojení RxD, TxD, RTS, CTS, DTR a DTS, dále kontakty pro připojení LED indikujících stav modulu, signál RESET a samozřejmě napájecí kontakty - viz obr. 1.

Zapojení OEMSPA310i

Je-li v modulu nahrán BT IO firmware, zůstane zachována jeho základní funkce - tedy přenos sériových dat, navíc se však změní funkčnost některých kontaktů. V případě námi použitých modulů OEMSPA310i se změní funkce 6 kontaktů - viz tab. 1.

Jak vyplývá z tabulky, máme k dispozici celkem 6 kontaktů (kanálů) I/O. Do této chvíle jsme všechny dostupné kanály označovali jako I/O; je to proto, že každý z těchto kanálů může být konfigurován jako vstup (I) nebo jako výstup (O). Přitom je zcela lhostejné, jak budou I/O kanály rozděleny; můžeme například v jednom modulu nakonfigurovat 5 vstupů a 1 výstup, druhý modul bude samozřejmě nakonfigurován zrcadlově obráceně, tj. 5 výstupů a 1 vstup. Uvedená kombinace je vhodná např. pro přenos pěti signálů jedním směrem a jednoho signálu směrem opačným, může to být např. výstup monitoru napětí baterie.

                                                                                                                                                                                                    Tab. 1.
IO Kontakt Napěť. úroveň Normální funkce BT IO funkce Funkce v konstrukci
0 J6 pin 5 3V Red LED I/O 0 vstup 1
1 J2 pin 12 1,8V Switch 0 I/O 1 -
2 - - Green LED/Sw.1 - -
3 - - Blue LED - -
4 J6 pin 8 3V CTS I/O 4 vstup 2
5 - - TxD - -
6 J6 pin 10 3V RTS I/O 6 vstup 3
7 - - RxD - -
8 J6 pin 4 3V DTR I/O 8 vstup 4
9 J6 pin16 3V DSR I/O 9 výstup 1

Z tab. 1 je rovněž patrné, že kromě I/O1 jsou ostatní I/O kontakty na napěťové úrovni 3 V. I/O1 je na napěťové úrovni 1,8 V, z tohoto důvodu a dále proto, že je kontakt I/O1 k dispozici pouze na spodní plošce konektoru J2, využijeme pouze zbývajících 5 kontaktů. Pro demonstraci různých možností budou v naší konstrukci použity 4 kanály jako vstupy a 1 kanál jako výstup.

Společným rysem všech modulů Bluetooth od connectBlue je možnost jejich konfigurace AT příkazy. Jde o snadný a elegantní způsob konfigurace, kdy není zapotřebí žádný speciální hardware nebo software. Moduly lze pomocí jednoduchého převodníku, např. jako na obr. 2, připojit na sériovou linku RS-232. AT příkazy, jejichž kompletní seznam je v [1], lze zadávat několika způsoby. Lze např. použít HyperTerminal, jenž je součástí běžné instalace operačních systémů Windows XP (Start > Programy > Příslušenství > Komunikace > HyperTerminal).

Uživatelsky příjemnější je však použít jednoduchý program Serial Port Adapter Toolbox (SPA Toolbox), který výrobce modulů connectBlue poskytuje zdarma (ke stažení zde). Jde vlastně o obdobu HyperTerminalu, avšak všechny funkce jsou zde přístupné pomocí zatržítek nebo menu. Pro naše účely tak nemusíme studovat jednotlivé AT příkazy, Serial Port Adapter Toolbox je po zvolení dané funkce vygeneruje sám.

Tento software bude rovněž dále popsán.

Obvodové řešení

Univerzální dálkové ovládání bylo pro svoji jednoduchost zkonstruováno na univerzální desce s plošnými spoji. Vzhledem k tomu, že si každý zájemce přizpůsobí konstrukci podle svých potřeb, by ani speciálně navržená deska nebyla účelná. Navíc jde spíše o to, ukázat možnosti takového řešení.

V naší konstrukci jsme použili přenos 4 signálů jedním směrem a jednoho signálu zpátky. Jako vstupy nám posloužily mikrospínače a jako výstupy diody LED.

Pro případ, že si zájemce bude chtít moduly nakonfigurovat sám, je na obr. 2 uveden příklad zapojení jednoduchého převodníku z úrovní UART 3 V na RS-232, případně více v článku 3,3V UART<>RS232 převodník s ICL3232IBNZ.

3,3 V převodník RS232

Nahrání speciálního firmware BT IO

Jak bylo již řečeno, moduly pro naši konstrukci musí být vybaveny speciálním BT IO firmware. Ten lze získat od dodavatele těchto modulů na český trh, společnosti Spezial Electronic, případně přímo od výrobce connectBlue po předchozí registraci na www.connectblue.com a následném obdržení hesla pro přístup na stránky technické podpory tamtéž.

Jednodušší cesta je přes českého dodavatele, navíc společnost Spezial Electronic nabízí i bezplatnou konfiguraci modulů, včetně nahrání BT IO firmware!

V případě vlastního nahrá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.

Konfigurace modulu

Pokud si necháme u distributora Spezial Electronic nahrát BT IO firmware, můžeme při této příležitosti požádat také o aktivaci možnosti konfigurace „Over Air“. Znamená to, že veškerá potřebná nastavení a případné změny kdykoli v budoucnu můžeme uskutečnit jiným Bluetooth zařízením.

Pokud budeme moduly konfigurovat přes sériovou linku, budeme potřebovat 3,3 V převodník na standardní linku RS-232, např. takový, jako je na obr. 2.

Připojíme modul čtyřmi vodiči: +3,3 V, zem, RxD a TxD. Vývod CTS prozatím uzemníme (pin 8 na konektoru J6). Do počítače připojíme konektor RS-232 vedoucí z převodníku a zapneme napájení modulu s převodníkem (pozn.: není-li PC vybaven sériovou linkou, lze bez problémů použít běžně prodávané konvertory USB/RS-232). 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.

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ý COM Port a 57 600 8-N-1. Po stisku tlačítka OK je navázána komunikace.

Pokud nastavujeme moduly pomocí Bluetooth zařízení, např. běžného Bluetooth „dongle“ nebo třeba notebooku, zjistíme si nejprve, na jaký virtuální COM port se musíme připojit. Tato procedura se u různých ovladačů mírně liší, v zásadě jde o to zjistit, na kterém COM portu bude přiřazen sériový profil modulu - SPP, modul je nejprve potřeba vyhledat (search for Bluetooth devices), po vyhledání modulu si vyžádat seznam podporovaných profilů (discover available services) a po kliknutí na SPP profil modulu se podívat, na jakém COM portu se nachází.
Tento COM port se poté zadá do připojovacího dialogu programu SPA Toolbox, ostatní parametry, jako rychlost apod. v tomto případě nejsou důležité.

Pozn. pro připojení sériovou linkou bez programu SPA Toolbox: moduly Bluetooth od connectBlue se mohou nacházet v jednom ze dvou provozních režimů: Data mód nebo AT mód. Po připojení napájecího napětí se modul nachází v Data módu, do režimu AT módu, který je určen ke konfiguraci modulu, se modul dostane po přijetí tzv. „escape sekvence“, z výroby je modul nastaven na „defaultní sekvenci „ „///“ (tři lomítka).

Je nutné mít na paměti, že celá „escape sekvence“ („///“) musí být odeslána
v čase kratším než 200 ms, což lze zajistit např. tak, že v PC vytvoříme nový textový dokument, do něj napíšeme ///, následně tento řetězec zkopírujeme do schránky a obsah schránky přes kombinaci Ctrl+V odešleme najednou do modulu.

V případě zde popisovaného použití SPA Toolboxu přejdeme do AT módu jednoduše stisknutím 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. 3. Stisknutím tlačítka Read All pak zobrazíme aktuální nastavení modulu.

Bluetooth IO Toolbox

Nastavení

Moduly pro funkci dálkového ovládání nastavíme 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.

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.

Záložka Server
Server Profile - nastavíme SPP.
Master/Slave Switch Policy - pro vysílač nastavíme Always Master, pro přijímač nastavíme Don’t Care.
Wireless Multidrop - Disable.

Poté nastavené hodnoty uložíme stiskem tlačítka Write.

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.

Záložka IO

V této sekci se nastavují požadované funkce jednotlivých kontaktů. V našem případě jsme zvolili 4 kanály jako vstupní a 1 kanál jako výstupní u vysílače. Přijímač je nastaven zrcadlově obráceně. Vysílač nastavíme podle obr. 4, přijímač nastavíme podle obr. 5.

Obr. 4. Nastavení vysílače
Nastavení vysílače

Obr. 5. Nastavení přijímače
Nastavení přijímače

Poté nastavené hodnoty uložíme stiskem tlačítka Write.

Jako velmi užitečné ještě můžeme na poslední záložce Misc zaškrtnout volbu Allow Configuration over Air. Tato volba nám umožní konfigurovat moduly bez toho, aniž bychom je museli připojovat na sériovou linku, konfiguraci můžeme provést libovolným Bluetooth zařízením, které obsahuje profil sériové linky, třeba Bluetooth USB „donglem“, případně použitím vestavěného Bluetooth zařízení - např. v notebooku. Konfigurace modulu „Over Air“ je obzvláště výhodná v případě, že je modul vestavěn v zařízení.

Dále je možné na záložce "Serial" zrušit řízení dat (HW Flow control), abychom při konfiguraci přes sériový port nemuseli uzemňovat pin CTS.

Tím máme základní nastavení dokončeno.

Zapojení modulů

Jak vyplývá ze schématu vysílače na obr. 6 a přijímače na obr. 7, zapojení je velice jednoduché. Vstupní kontakty jsou přes interní rezistory 16 kΩ spojeny s napájecím napětím, jsou tedy na logické úrovni H a aktivují se úrovní L, tj. uzemněním.

Schéma zapojení

Výstupy modulu je možné zatížit maximálním proudem 4 mA, můžeme tedy indikovat stav výstupu (přes ochranný rezistor) připojenou diodou LED s malým příkonem.

Logické úrovně na výstupech (O) kopírují logické úrovně na vstupech (I), to znamená, že v klidovém stavu, kdy jsou vstupy na log. úrovni H, je tato úroveň rovněž na výstupech. Aktivací vstupu, tj. přivedením log. úrovně L přejde i výstup do úrovně L, čímž se rozsvítí LED.

Funkce jednotlivých I/O vývodů u přijímače je zrcadlově otočená (místo vstupů jsou výstupy a naopak), zapojení je funkčně shodné jako u vysílače. Moduly jsou napájeny nestabilizovaným napětím 3 až 6 V (moduly mají vlastní stabilizátor), přičemž vlastní spotřeba modulu je necelých 15 mA při napájení 3,3 V.

Bude-li popisovaná aplikace navázaná na další obvody, například logiku CMOS, což bude v praxi zřejmě nejčastější, lze v případě použití 3,0 V nebo 3,3 V logiky připojit vstupy i výstupy přes ochranné 100 Ω rezistory přímo k dalším obvodům. V prostředí 5 V logiky CMOS se použije přizpůsobení výstupu pomocí „bufferu“ (např. 74HCT08), vstupy lze připojit přes odporový dělič, viz obr. 8. Pokud budeme chtít využít i 6. kanál (I/O 1), který je v logice 1,8 V, tak použijeme doporučené zapojení uvedené v manuálu modulu [1].

Příklad připojení dalších obvodů

Mechanické provedení

Vzhledem k jednoduchosti zapojení bylo dálkové ovládání sestaveno na univerzální desce s plošnými spoji. Desky se součástkami jsou spojeny 7 vodiči s moduly Bluetooth. Pro popsanou konstrukci byly využity pouze kontakty konektoru J6, tj. kontaktní plošky na okraji modulu. Při pájení kontaktů na modulu musíme mít na zřeteli, že se jedná o citlivé zařízení. Pájíme proto zásadně mikropáječkou a co nejkratší dobu. Výrobce doporučuje pájet na kontaktních ploškách pouze jednou.

12kanálové dálkové ovládání

Je-li potřeba více než 6 kanálů, které poskytují moduly OEMSPA310i, lze použít např. moduly s větším výkonem OEMSPA311i (s interní anténou) nebo OEMSPA311x (s připojením na externí anténu). Sortiment dodávaných modulů je však mnohem širší a zahrnuje provedení s různými výkony nebo např. s integrovaným převodníkem na RS-232, s různými konektory, více zde.

Praktické použití jako dálkové ovládání digitální zrcadlovky Canon

Bezdrátové dálkové ovládání fotoaparátu CanonNa obr. 9 je znázorněno praktické použití jako bezdrátového dálkového ovládání digitální zrcadlovky Canon. Tyto fotoaparáty jsou vybaveny konektorem pro připojení dálkového ovládání. Na konektoru jsou dva ovládací kontakty a uzemnění.

Jeden kontakt (AF, tj. Autofocus) aktivuje „namáčknutí spouště“ fotoaparátu, druhý (Shutter, tj. závěrka) aktivuje spuštění závěrky.

Shutter by podle dostupných informací neměl být aktivován bez toho, aby nebyl aktivován kontakt AF, v opačném případě se může zablokovat fotoaparát (v takovém případě se musí na chvíli z fotoaparátu vyjmout baterie). Dioda D1 proto takové situaci zabraňuje tím, že při aktivaci kontaktu Shutter současně aktivuje i AF.




MP

Literatura

[1] www.connectblue.com
[2] www.spezial.cz
[3] www.maxim-ic.com
[4] pdf Data-sheet OEMSPA310i
[5] pdf Data-sheet OEMSPA311i/x
Produkty |  Novinky |  Aplikační poznámky |  Technická podpora |  Obchodní podmínky |  Kontakt |  Home