Díky již několikanásobné poptávce od konstruktérů, ale i "obyčejných bastlířů" na jednoduchý dálkový infra vysílač / přijímač s několika vstupy / výstupy jsem se rozhodl sestavit malou součástkovou základnu v doufám dostatečném výběru parametrů součástek (popřípadě uživatelské konfigurovatelnosti) tak, aby tato řada pokryla, pokud možno v rozumné cenové relaci co nejvíce požadavků.

O co vlasně jde ? Jde o malou ucelenou kolekci procesorů PIC s implementovanými různými programy pro vysílání / příjem IR signálu. Každý procesor má své označení, a ke každé takovéto součástce je vytvořen katalogový list (datasheet), popisující detailně její vnější chování. Tím konstruktér nepotřebuje znát vnitřní implementaci programu a pouze si vybere tu kterou součástku dle svého požadavku, popřípadě si sestaví ovládací systém dle svého požadavku.

Kladl jsem důraz na velmi jednoduché hardwarové uspořádání.



  Možné volby a kombinace:
  Přenos stavů až 30 tlačítek - 30 výstupů u dekodéru + výstup stavů na RS232 - pokud je tlačítko na vysílači stisknuto je výstup přijímače aktivní, po uvolnění deaktivován
  Přenos stavů 30 tlačítek - 30 výstupů u dekodéru - možnost uživatelske konfigurace výstupu tlačítko / bistabilní výstup - bez přenosu stavů přes RS232, uživatelská konfigurace uložena v interní EEPROM součástky
  Přenos stavů 11 nebo 8 tlačítek (menší pouzdra v případě potřeby méně výstupů) + možnost uživatelske konfigurace výstupu tlačítko / bistabilní výstup
  Přenos RS232 z PC pomocí infra kanálu (1200 Bd, 8,1,N) do Vašeho zařízení, na přijímací straně pouze infra příjímač (SFH506-36)
  Přenos RS232 z Vaší aplikace pomocí infra kanálu (1200 Bd, 8,1,N) do PC, na vysílací straně kodér na přijímací straně PC opět pouze infra příjímač (SFH506-36) a převodník na PC úrovně RS232 z TTL
 
  Kodér pro vysílání až 30 kombinací - vstup maticová klávesnice, automatický režim nízké spotřeby (sleep)
  Kodér pro vysílání dat z RS232 - vstup UART RS232 v TTL úrovních (datový tok 1200 Bd,8,1,N)
  Dekodér 30 výstupů (tlačítka) + výstup kombinací na UART - RS232
  Dekodér 30 výstupů - možnost uživatelske volby tlačítko / bistabilní výstup (zapnout/vypnout) - bez RS232
  Dekodér 10 výstupů - možnost uživatelske volby tlačítko / bistabilní výstup (zapnout/vypnout) - bez RS232
  Velmi jednoduché dekódování kombinací buď ve Vaší aplikaci nebo PC
  Různá pouzdra (DIP 40, DIP 18, SOIC)
  Přenos 8-mi bitové kombinace ze vstupu kodéru
 
  V budoucnu dle zájmu možná nabídka hotových modulů (kodér + koncový stupeň + infra LED / příjímač + dekodér v redukcích do standardních patic DIP)
  Ke každé součástce datasheet s popisem funkce a zapojení + doporučené schéma zapojení.



Úvodem
     Stavíte nějakou konstrukci, zařízení a podobně a rádi byste měli možnost je ovládat svým vlastním dálkovým infračerveným ovládáním ? Jste konstruktér "analogů", zesilovačů a podobně a procesory Vám nic moc neříkají ? Potřebujete přenést bezdrátově na relativně malou vzdálenost informaci pomocí protokolu RS232 z Vaší aplikace do PC případně naopak ? A nebo si chcete jen pohrát a postavit si nějakou hračku bezdrátově ovládanou na několik metrů ?

  Společným jmenovatelem těchto požadavků pro konstruktéra je asi toto:
  i když bych to zvládnul sám, nemám čas se tím zabývat
  potřebuji to pokud možno rychle
  chci aby to bylo jednoduché
  pokud možno konfigurovatelné bez potřeby znalostí programování
  aby se to případně dalo jednoduše začlenit do mojí plánované konstrukce
  a v neposlední řadě aby to bylo v rozumné cenové relaci

      Pak je právě pro Vás připraven Infra Red Program. Jde o několik typů kodérů a dekodérů pro infračervený přenos dat, stisknutých tlačítek atd. kdy danou součástku s vlastním označením pouze zapojíte podle jejího datasheetu s několika externími součástkami a můžete začít ovládat, přenášet data nebo si hrát.


Popis
Vlastní označení součástkové minizákladny je vždy DHS s následujícím číslem a prefixem. Součástky jsou rozděleny do skupin - zvlášť vysílače, zvlášť přijímače, a zvlášť dělené přijímače. V tabulce uvedené níže je popis pro rychlou orientaci v typech a v tom, který kodér je možno použít s kterým dekodérem a na co. V jedné tabulce jsou vždy uvedeny související součástky. Pro přesný popis jak která součástka pracuje čtěte prosím datasheety, které naleznete ke stažení na konci stránky.

DHS004-A kodér pro infra vysílač - připojení maticové klávesnice 2x15 tlačítek - podporuje "sleep" režim (snížená spotřeba)
DHS005-A dekodér 30 logických výstupů "tlačítka" + možnost získání informace aktivního výstupu přes RS232 dekodéru
DHS005-B dekodér 30 logických výstupů - možnost konfigurace výstupů "tlačítka" nebo zap. / vyp.
DHS006-A dekodér 11 logických výstupů - možnost konfigurace výstupů "tlačítka" nebo zap. / vyp. - kombinace na kodéru tlačítka 1 až 11
DHS006-B dekodér 11 logických výstupů - možnost konfigurace výstupů "tlačítka" nebo zap. / vyp. - kombinace na kodéru tlačítka 12 až 22
DHS006-C dekodér 8 logických výstupů - možnost konfigurace výstupů "tlačítka" nebo zap. / vyp. - kombinace na kodéru tlačítka 23 až 30


DHS004-B kodér pro infra vysílač - kóduje data vstupující do jeho sériového kanálu
-------- pro příjem stačí pouze přijímač SFH506/36 popřípadě SFH5110/36 - z nich již přímo protokol RS232 v TTL


DHS004-C kodér pro odeslání 8-mi bitové informace z pinů kodéru
DHS007 dekodér pro příjem 8-mi bitové informace z DHS004-C - zrcadlí na svých vývodech kombinaci na vývodech kodéru

      Prefix (v tabulkách neuveden) u označení součástky označuje typ Vámi požadovaného pouzdra. Např. DHS004-A/P značí DIP pouzdro. Prefix DHS004-A/S značí pouzdro SMD SO8.



Zapojení
      I když je detailní popis i doporučené schéma zapojení uvedeno zvlášť ke každé součástce v jejím datasheetu, alespoň pro rychlou informaci uvedu jednotlivá schémata, bez podrobnějšího popisu.

      Čip DHS004 je určen ke kódování vstupní informace tak, aby ji bylo možno odeslat pomocí infračerveného spojení do přijímače. Čip DHS004 existuje v několika variantách, které se odlišují různou funkcí.

DHS004-A
      Tato varianta čipu umožňuje připojit maticovou klávesnici, pomocí které je možno odesílat 15 různých kombinací kódu. Dále je možno pomocí stisknutí tlačítka „SHIFT“ a současného stisku klávesy na klávesnici odeslat dalších 15 kombinací. Dohromady je tedy možné do přijímače odeslat 30 různých kódů, na které dokáže přijímač reagovat. Náhled na schéma zapojení se otevře po kliknutí na tento odkaz.


DHS004-B
      Tato varianta čipu provádí zakódování (resp. modulaci) dat přivedených na rozhraní UART čipu v úrovni TTL a odesílá tato data. Rychlost datového přenosu je 1200 Bd, 8 bitů, 1 stop bit, bez parity. Nízká přenosová rychlost je bohužel daní za jednoduchý způsob přenosu (omezení je dáno nosnou frekvencí infračerveného přenosu 36 kHz).


DHS004-C
      Tato varianta čipu umožňuje odeslání 8-mi bitové kombinace na pinech součástky. To znamená, že je možno odesílat 255 různých kombinací na 8 vývodech. V praxi tedy DHS004-C pracuje tak, že nastavená kombinace na vstupních pinech je zrcadlena na výstupních pinech přijímače.


     Čipy DHS005 jsou určeny k dekódování vstupní informace, přivedené z přijímače / demodulátoru typu SFH506/36, popř. SFH5110/36. Po přijmutí informace je po jejím vyhodnocení sepnut jeden odpovídající pin obvodu, popřípadě vykonána činnost dle verze čipu. Možná chybovost IR přenosu je ošetřena vícenásobným příjmem stejných dat (dekodér musí přijmout 3x po sobě shodný znak pro správné vyhodnocení a sepnutí výstupu).

DHS005-A
      Tato varianta čipu umožňuje připojit 30 výstupů. Každý výstup je v klidovém stavu v logické úrovni L. Po přijetí a vyhodnocení kódu z připojeného infračerveného přijímače (pin 26 – INPUT - data) následuje změna úrovně na odpovídajícím výstupu z log. L do log. H. Tato změna trvá tak dlouho, dokud je přijímán signál, odpovídající tomu kterému výstupu. Dokud tedy držíme na vysílači stisknuté tlačítko (klávesu) je po tuto dobu odpovídající výstup v úrovni log. H. Jednotlivé výstupy odpovídají stejným kombinacím na klávesnici vysílače DHS004-A pro který je tento přijímač určen. Například pro kombinaci S1 na klávesnici vysílače je z vysílače odeslána informace pro sepnutí výstupu OUT1 dekodéru. Zároveň je „stažen“ do úrovně GND pin číslo 6 (LED – příjem) sloužící pro indikaci přijetí povelu. Dekodér DHS005-A umožňuje odesílat přijatou informaci navíc standardním rozhraním RS232 v TTL úrovních. Tento výstup je na pinu 25, označeném OUTPUT – serial RS232. Formát dat je 1200 Bd, 8 datových bitů, bez parity, 1 stop bit. Vždy je odeslána číselná informace v ASCII formátu o aktivním výstupu.

Náhled na schéma zapojení se otevře po kliknutí na tento odkaz.


DHS005-B
      Tato varianta čipu umožňuje připojit tak jako DHS005-A 30 výstupů. Na rozdíl od DHS005-A nemá možnost odesílat data sériovou linkou. Do tohoto čipu je však implementována možnost uživatelsky zvolit konfiguraci libovolného počtu z 30 výstupů tak, aby pracoval buď jako tlačítkový výstup (jako doposud – tedy aby byl v log. úrovni H po dobu stisknutí tlačítka na vysílači) a nebo aby pracoval jako bistabilní výstup zap / vyp (to znamená jedním stisknutím zapnout, dalším vypnout atd.). Uživatelská konfigurace se ukládá do interní energeticky nezávislé paměti EEPROM součástky a tím je zaručeno, že uložená konfigurace zůstane zachována i po vypnutí napájecího napětí. Konfigurace se provádí velmi jednoduše připojením pinu PRG input na úroveň GND a vysláním povelu (více v datasheetu součástky).


DHS006
      Dělené dekodéry DHS006 jsou určeny k dekódování vstupní informace, přivedené z přijímače / demodulátoru typu SFH506/36 případně SFH 5110/36 apod. Po přijmutí informace je po jejím vyhodnocení sepnut jeden odpovídající pin obvodu. Možná chybovost IR přenosu je ošetřena vícenásobným příjmem stejných dat (dekodér musí přijmout 3x po sobě shodný znak pro správné vyhodnocení a sepnutí výstupu). Název dekodérů „dělené“ vyplývá z použití 3 součástek pro obsažení možných 30 výstupů. V praxi jde o to, že ne každý konstruktér potřebuje součástku (dekodér) se 30 výstupy. Proto vznikla řada tří součástek DHS006-A až DHS006-C, kdy je rozsah výstupů rozdělen mezi tyto tři součástky, které je možno skládat a tak je možno si vytvořit rozsah dle požadavku. DHS006-A umožňuje připojit 11 výstupů, DHS006-B taktéž 11 výstupů a DHS006-C zbývajících 8 výstupů (do počtu 30).


      Pokud tedy konstruktér potřebuje v aplikaci použít například pouze 10 výstupů, použije čip DHS006-A a ke spínání výstupů použije kombinace tlačítek 1 až 10 z vysílače. Pokud konstruktér potřebuje například 15 výstupů, pak použije DHS006-A a DHS006-B připojené na jedno čidlo. Výstupy obvodů pak odpovídají pro tento příklad DHS006-A = 1 až 11, a DHS006-B = 12 až 15.
     Všechny čipy DHS006 podporují funkci konfigurace výstupních pinů a to buď aby každý výstup pracoval jako tlačítkový výstup (tedy aby byl v log. úrovni H po dobu stisknutí tlačítka na vysílači) a nebo aby pracoval jako bistabilní výstup zap / vyp (to znamená jedním stisknutím zapnout, dalším vypnout atd.).

Náhled na schéma zapojení se otevře po kliknutí na tento odkaz.


DHS007
      Čip DHS007 je určen k dekódování vstupní informace, přivedené z přijímače / demodulátoru typu SFH506/36 případně SFH 5110/36 apod. Po přijmutí informace je po jejím vyhodnocení sepnuta odpovídající kombinace pinů obvodu. Možná chybovost IR přenosu je ošetřena vícenásobným příjmem stejných dat (dekodér musí přijmout 3x po sobě shodný znak pro správné vyhodnocení a sepnutí výstupu). Název dekodéru „kombinovaný“ vyplývá z použití. Tato varianta dekodéru umožňuje vyhodnocení 8-mi bitové kombinace na vstupních pinech vysílače DHS004-C. To znamená, že je možno přenášet 255 různých kombinací na 8 vývodech. V praxi tedy dvojice DHS004-C (vysílač) a DHS007 (přijímač) pracují tak, že nastavená kombinace na vstupních pinech kodéru je zrcadlena na výstupních pinech přijímače. V případě kombinace 0 (na všech pinech vysílače je logická úroveň H, popřípadě jsou piny nezapojeny) není odesílána žádná hodnota a přijímač má na všech výstupech úroveň log. L.

Náhled na schéma zapojení se otevře po kliknutí na tento odkaz.


Příjem signálu a vyhodnocení



     Protože se u vysílaného signálu jedná o modulovaný RS232 přenos, je jeho zpracování velmi jednoduché. Pokud na přijímací straně hodláme data zpracovávat jednočipovým mikroprocesorem, nebo programem v PC, stačí přijmout data pomocí IR přijímače s demodulátorem – například typu SFH506/36 nebo SFH5110/36 (modulační frekvence přenosu je 36 kHz). Na výstupu demodulátoru je již k dispozici klasický datový tok RS232 protokolu. Následně stačí výstup přijímače / demodulátoru připojit na RxD pin jednočipového mikroprocesoru, nastavit parametry seriové linky procesoru nebo PC na rychlost 1200 Bd, 8 datových bitů, 1 stop bit, bez parity a je možné ihned data zpracovávat.

      Pro přenos znaků do PC je zapotřebí ještě mezi přijímač a PC vložit převodník úrovní. V každém případě se jedná o velmi jednoduchou kombinaci, kdy se vlastní přijímač s převodníkem úrovní dá vestavět do krytky konektoru CANNON 9. Vysílač pro tento přenos je DHS004-B.

     Ve vysílači DHS004-B je provedena modulace dat vstupujících do jeho sériového kanálu (rychlost 1200 Bd, 8 bitů, 1 stop bit, bez parity), následuje odeslání modulovaných dat koncovým stupněm a příjem dat přijímačem SFH506-36 (popř. SFH 5110). Na výstupu tohoto přijímače / demodulátoru je již k dispozici zpět sériový tok formátu RS232 v TTL úrovních (opět s parametry 1200, 8, 1, N). Pro vlastní příjem dat je ještě třeba upozornit na skutečnost, že data nejsou nijak chráněna proti chybám při přenosu, a tak je nutno tuto skutečnost zohlednit na obou koncových bodech (například opakované vysílání u DHS004-B / čtení a podobně). Samozřejmě v přijímačích dálkového ovládání (DHS005 a DHS006) které mají přímo jednotlivé výstupy je situace možných chyb ošetřena.

Další detailní popis naleznete v datasheetech přijímačů (ke stažení na konci stránky).


Co dál ?
      Zde uvedené součástky (resp. jejich software) není uvolněn ke stažení, protože jako obvykle dal spoustu ladění, dokumentace dala také hodně práce a v důsledku je počítáno s tím, že jak jsem psal v úvodu, součástky jsou určené "obyčejným lidem" - tedy není předpoklad, že by každý měl doma PIC programátor, nebo kamaráda s tímto programátorem.

Naprogramované čipy si můžete objednat na mojí e-mailové adrese.


Zdarma
     Aby ale vše nebyla jen komerce a abych dodržel to, že ke každé konstrukci by mělo být něco zdarma, je ke stažení uvolněn software v *.HEX formátu pro vysílač DHS004A (připojení maticové klávesnice) v "light" verzi - s možností připojit pouze 4 tlačítka místo 2x15 tlačítek.
     Dále je ke stažení uvolněn také "light" kód pro přijímač typu DHS006, který umožňuje připojit 4 výstupy ovládané "light" verzí DHS004A. Omezení tohoto přijímače je pouze v počtu výstupů - umožňuje tedy plnou konfiguraci výstupů tlačítko / zap.-vyp.

Pokud Vám tedy stačí ovládat 4 signály buď jako tlačítka, nebo mít libovolný z nich (případně všechny) jako bistabilní výstup (zap./vyp.) není nic snazšího, než si stáhnout free verzi.


Ke stažení jsou tyto soubory:

   Velikost 109 kByte   Kodér DHS004 a dekodér DHS006 light verze (*.HEX), vloženo schéma v zkomprimovaném BMP formátu + schéma v EAGLE 4.01
    
   Velikost 439 kByte Datasheet kodérů DHS004A až DHS004C + schéma v EAGLE 4.01 pro Váš snazší návrh
    
   Velikost 422 kByte Datasheet dekodérů DHS005A a DHS005B + schéma v EAGLE 4.01 pro Váš snazší návrh
    
   Velikost 596 kByte Datasheet dělených dekodérů DHS006A až DHS006C + schéma v EAGLE 4.01 pro Váš snazší návrh
    
    Velikost 322 kByte Datasheet kombinovaného dekodéru DHS007 + schéma v EAGLE 4.01 pro Váš snazší návrh


Vytisknout stránku

Zpátky Zpátky
© DH servis 2002 -