. : New eShop! - Mobilní verze - Pandatron.cz - Pandatron.sk - Diskuzní fórum - Zakázkový vývoj : .
 
Přenos libovolných signálů prostřednictvím Bluetooth

Přenos libovolných signálů prostřednictvím Bluetooth

Přenos až tří rychlých stavových či datových signálů prostřednictvím Bluetooth. Zapojení vhodné například jako náhrada nestandardních dálkových ovladačů a podobně.

V předchozím článku Dálkové ovládání s Bluetooth byla představena možnost využít Bluetooth modul firmy connectBlue pro přenos až dvanácti stavových informací (12ti tlačítek). Vše bylo vyřešeno pouhou změnou firmware Bluetooth modulu a jednoduchým nastavením. Kromě přenosu stavu tlačítek tak bylo možné přenášet stav jakýchkoliv kontaktů a signálů na poměrně velkou vzdálenost a navíc i velice bezpečně.

Pokud však vyvstane potřeba přenášet stavové informace vyšší rychlosti, není takové řešení příliš vhodné. Příkladem rychlých pulsů může být nejen klasický snímač otáček, ale i jakýkoliv obyčejný přenos dat. Například ve většině dálkově řízených modelech a robotech je dálkové ovládání řešeno pomocí jediného modulovaného kanálu. Samotný povel je poté tvořen například i jen přesně danou délkou pulsu, či jednoduchým sériovým protokolem. Pokud však chcete takové dálkové ovládání předělat na Bluetooth, máte problém. Použitý protokol má často k sériovému portu (RS232) daleko a pro přenos pomocí I/O pinů modulu je příliš rychlý.

Řešením takového problému je právě následující konstrukce. Ta zjednodušeně řečeno sejme stav až tří vstupních pinů, vysokou rychlostí je přenese pomocí sériového portu do druhého modulu a zde tento stav zkopíruje na výstupní piny. Tím umožněn přenos v zásadě jakékoliv informace vysokou rychlostí a s minimálním zpožděním. Navíc při použití Bluetooth modulů je zajištěna i vysoká bezpečnost a nulová zarušitelnost i od podobně řešených dálkových ovladačů.

Blokové schéma zapojení:
Na následujícím obrázku je blokové schéma zapojení vysílače a přijímače:


Obr. 1: Blokové schéma

Základem obou zařízení je Bluetooth v.2.0 modul typu OEMSPA-311i od známého švédského výrobce connectBlue. Jde o miniaturní modul s rozměry 16 x 36mm a integrovanou anténou. Výstupní výkon modulů je 7dBm a dosah kolem 100m na volném prostranství. Moduly i včetně veškeré dokumentace je možné získat od dodavatele na český trh, společnosti Spezial Electronic.

Převod tří signálů na sériový protokol a zpět řídí malý procesor PIC. Ten ve vysílači hlídá stav tří vstupních pinů a při jejich změně předá sériovou linkou rychlostí 0,5Mb informaci o změně do Bluetooth modulu. Ten informaci přenese bezdrátově do druhého modulu, kde je opět v podobě sériové linky přenesena taktéž do malého procesoru PIC. Zde je informace dekódována a přenesena na tři výstupní piny ve formátu 1:1, jak byla sejmuta ve vysílači.

Přenosová rychlost 460.800Bd/s je maximální, kterou je možné malých osmibitovým procesorem PIC vytvořit. Díky použití přesného krystalu je však vytvořena se 100% přesností, takže se ani při větším přenosu dat nestane, že došlo k nějakému rozhození přijímače a vysílače.

Vysílač:
Na následujícím obrázku je již kompletní schéma zapojení vysílače.


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

Tři vstupní piny na konektoru J3 jsou držené pull-down rezistory R1 až R3 na klidové hodnotě logické nuly. V případě potřeby je zde samozřejmě možné použít naopak pull-up rezistory, aniž by tato změna měla jakýkoliv vliv na funkci obvodu. Nikdy by však neměli být piny nechány „ve vzduchu“. Stav těchto tří pinů je snímán piny GP1 až GP3 procesoru PIC12F629/675 (obvod IO1). Sériový signál o rychlosti 0,5Mb je veden z pinu GP0 IO1 na pin RxD Bluetooth modulu OEMSPA-311 (U1), jímž je ihned vyslán do příjímače.
Procesor je taktován krystalem X1 s frekvencí 18,432MHz. Jelikož je z jeho frekvence generován velice rychlý sériový signál, není možné zde použít krystal o jiné frekvenci.
Napájecí napětí by mělo být hodnoty 3,3V. Pokud se v konečné aplikaci takové napětí nenachází, je potřeba použít stabilizátor například typu LF33. Odběr ani zdaleka nepřesahuje 100mA.

Na následujícím obrázku je možný motiv desky s plošnými spoji vysílače pro použití SMD součástek.


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

Kromě případné jednořadé lišty na pozici J3 jsou všechny součástky v provedení SMD. Rezistory i kondenzátory jsou velikosti 0805, pouze R4 je velikosti 1206 a tvoří můstek. Krystal typu Epson FA-365 18.432MHz je možné společně s Bluetooth modulem získat u firmy Spezial Electronic.

Seznam součástek
R1             10k 0805
R2             10k 0805
R3             10k 0805
R4             0R 1206
C1             100n 0805
C2             22p 0805
C3             22p 0805
X1             Epson FA-365 18.432MHz
IO1            PIC12F629-I/SO
U1             OEMSPA-311i

Přijímač:
Pro příjem signálů je použít přijímač podle následujícího obrázku.


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

Zde signál začíná Bluetooth modulem U1 opět typu OEMSPA-311, který přijme signál od vysílače a pinem TxD ho předá procesoru PIC (IO1). Řídící procesor je taktéž typu PIC12F629/675, který sériový signál přijme na pinu GP3. Změna oproti vysílači je proto, protože tento pin je pouze vstupní a tak by nemohl být použit na jeden ze tří výstupních pinů.
Procesor sériový signál rychlosti 0,5Mb přijme a dekóduje z něho stav tří pinů vysílače. Ten poté zkopíruje na výstupní piny GP0 až GP2, které jsou vyvedeny na konektor J3. Jejich stav odpovídá podle popisu přesnému stavu vstupních pinů na vysílači. Stav pinu IN1 na vysílači je tak přenesen na pin OUT1 přijímače. IN2 je přenesen na OUT2 a stejně tak i IN3 je přenesen na pin OUT3.
Výstupní piny OUT1-OUT3 jsou vždy v jednom ze dvou logických stavů. Nikdy u nich není nastaven třetí strav (tedy vysoká impedance). Po zapnutí, dokud není přijmut signál vysílače je to vždy log.0.

Na následujícím obrázku je možný motiv desky s plošnými spoji přijímače pro použití SMD součástek.


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

Kromě případné jednořadé lišty na pozici J3 jsou všechny součástky v provedení SMD. Kondenzátory jsou opět velikosti 0805, pouze R1 je velikosti 1206 a tvoří můstek. Krystal typu Epson FA-365 18.432MHz je možné společně s Bluetooth modulem získat u firmy Spezial Electronic.

Seznam součástek
R1             0R 1206
C1             100n 0805
C2             22p 0805
C3             22p 0805
X1             Epson FA-365 18.432MHz
IO1            PIC12F629-I/SO
U1             OEMSPA-311i

Ovládací firmware:
Program pro oba použité procesory je možné stáhnout na konci článku. Stažený HEX soubor již obsahuje programovací pojistky, případně jsou uvedeny na obr.č10 shodně pro oba procesory. Soubor je možné beze změny naprogramovat jak do procesoru PIC12F629, tak i do PIC12F675 (AD převodníky jsou v programu vypínány).


Obr. 10: Konfigurační pojistky procesoru

Z důvodu vysoké náročnosti na časování jsou oba programy napsány v assembleru. Navíc, aby bylo dosaženo co možná největší přenosové rychlosti, jsou piny snímány i při již probíhajícím vysílání a v jednom bytu jsou uloženy dvě hodnoty každého pinu. Tím je umožněno odeslání impulsů dlouhých i jen 10us.

Konfigurace Bluetooth modulů:
V zapojení jsou použity moduly OEMSPA-311i, neboť jsem je měl při vývoji k dispozici. Beze změny je zde však možné použít i levnější variantu OEMSPA-310 s menším dosahem, či naopak typy jako OEMSPA-333 s dosahem více než 0,5km a podobně.

Bluetooth moduly jsou již z výroby nastaveny na přenos sériového portu. Pro jejich použití tak stačí v dodávaném software nastavit jejich datové spojení a rychlost sériového portu. 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 jejich distributor, firma Spezial Electronic, 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. Pro správnou funkci je ještě potřeba uzemnit vývod CTS, neboť z výroby je nastaveno hardwarové řízení toku dat.

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 SPA. 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.


Obr. 11: Výběr portu

Při konfiguraci pomocí Bluetooth zařízení, např. běžné Bluetooth klíčenky, 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. 12: 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.

U prvního modulu se tedy přepneme na záložku Client a nastavíme:
- client Profile=SPP a No Remote Peers=1. Stiskneme tlačítko Write.
- nyní připojíme napájení ke druhému modulu (k Serveru) a v programu stiskneme tlačítko Device Discovery.
- nakonec nastavíme Peer Id=0, stiskneme šipku v roletkovém menu "Search For and Select..." a kliknutím označíme modul Serveru, který byl nalezen v předchozím kroku. Tímto se přenese adresa modulu Server do kolonky Address. Zatrhneme "Always Connected" a opět stiskneme tlačítko Write.

Poté se přepneme na záložku Seriál a zde nastavíme následující hodnoty:
- 460800 8-N-1
A stiskneme tlačítko Write.


Obr. 13: Nastavení sériového portu

Nyní připojíme druhý modul, opět s ním navážeme komunikaci a přepneme se na AT mód. Zde je již potřeba nastavit pouze sériový port na záložce Seriál.
Klikneme tedy na tuto záložku a nastavíme opět hodnoty 460800 8-N-1, jako u prvního modulu a klikneme na tlačítko Write.

Tím je celé nastavení dokončeno a moduly je možné použít.

Závěr:
Popsané zapojení je možné využít všude tam, kde je potřeba bezdrátově přenést libovolný stav až tří pinů, nebo všude tam, kde je potřeba bezdrátově přenést nestandardní komunikační linku. Nahrazení klasického vysílače/přijímače u dálkově řízených modelů tímto zapojením je možné nejen výrazně prodloužit dosah ovládání, ale i snížit nebezpečí zarušení jiným vysílačem. Případně je možné využít i zbylý pin procesoru k přenosu dalších ovládacích povelů, jako například generování zvuků, ovládání světlometů a podobně.
Jak se říká, možnostem využití se meze rozhodně nekladou.

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

Firmware pro procesory - DOWNLOAD







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

Komentáře (17):

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



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:
Bluetooth modul BTM-112
BTM-112 je snadno dostupný Bluetooth modul výrobce Rayson.
Skladem od 208 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