Autor: Michal Zajačik – Ctěl jsem ovládat lustr dálkovým infračerveným ovladačem televize a „věže“. Jedinou nevýhodou těchto dnes již standardně prodávaných spínačů je, že reagují na jakékoliv stisknuté tlačítko na ovladači. To je dosti nepraktické, proto jsem se rozhodl pro vlastní řešení, které je v následujícím textu popsáno.
- Spínači lze přiřadit konkrétní tlačítko na ovladači, na něž bude reagovat.
- Je možné použít ovladač jak s protokolem RC5 tak NEC (běžné ovladače).
- Do paměti lze zaznamenat 20 tlačítek. (víc ovladačů k spínači A i B).
- Záznam a mazání se uskutečňuje snadno – uživatelsky.
- Pokud ztratíme, nebo se rozbije příslušný ovladač, lze smazat celou paměť jakým koliv jiným ovladačem – uživatelsky.
- Je zachováno manuální ovládání obou spínačů.
- Spínání žárovek při průchodu nulou.
- Tímto zařízením je pouze doplněn původní spínač.
- Elegantní vzhled a nízká cena součástek.
Srdcem celého zařízení je mikrokontrolér PIC16F628-20/P. Mikrokontrolér obsahuje programovou paměť FLASH o velikosti 2048 x 14 slov, 224 x 8 bytů datové RAM, pro nás velmi důležitých 128x 8 bytů datové EEPROM, „watchdog“, možnost taktovací frekvence až do 20MHz a další komponenty které v této aplikaci nevyužijeme. Samozřejmě výhodou je i jeho cena. Kompletní katalogové listy je možné stáhnout na stránkách firmy Microchip Technology Inc.. Napájení celé kostrukce je zajištěno úbytkem napětí na diodách zapojených přes můstkový uměrňovač do série se spotřebičem (toto zapojení zdroje popsal ing.Milan Kuchař v AR3/2001, kde ho pužil ve své konstrukci „Síťový vypínač řízený mikroprocesorem“).
Původní mechanický lustrový spínač je v zapojení ponechán. Nyní je však zapojen do procesoru na vývody 10 (spínač A) a 9 (spínač B). Jeho původní funkci nahradili triaky T1 a T2 spínané přes optočlen MOC3062 a řízené procesorem z vývodů 1 (spínač A) a 3 (spínač B). Díky optočlenu MOC3062 je zajištěno spínání žárovek při průchodu nulou.
Jako infračervené čidlo jsem použil SFH506-36. Je to IR snímač s vestavěným tvarovačem. Celé zařízení je chráněno rychlou pojistkou 2 A. Přes triak T1 je z důvodu do série zapojených diod D1 – D7 možné odebírat proud max 1 A. Přes triak T2 by bylo možné nechat procházet proud takový, jaký dovoluje katalog (v tomto případě 3 A), pokud ovšem zajistíme dostatečné chlazení.
Pokud použijeme zařízení jako jednoduchý spínač (ne „lustrák“), musíme použít pro připojení žárovky triak T1 (spínač A). Jinak zařízení nebude pracovat, což je vidět ze schématu. Pak lze vynechat triak T2, optočeln O2 a rezistor R4.
„Utahovací“ pull-up odpory ke spínačům A a B nejsou na schématu nakresleny. Jsou na čipu mikrokontroléru.
Mechanická konstrukce celého zařízení je zřejmá z tvaru desky s plošnými spoji a z fotografií. Desky s plošnými spoji byly několikrát překreslovány a upraveny.
Jako ideální se osvědčilo použít spínače „tango“. Při laborování kam umístit čidlo SFH506-36 jsem zjistil, že kryty těchto spínačů jsou průsvitné (ne průhledné). Proto není čidlo vidět. Je přilepeno pod víčkem (lepidlo chemoprén). Spínač díky tomu neztratí svůj elegantní zjev umístěním čidla vně krabičky. U obyčejných spínačů je nutné čidlo ven umístit.
Deska je ke spínači tango přišroubována šroubky M3. Pokud tam závit není, lze ho proříznou závitníkem, nebo převrtat a použít matičku.
Celé zařízení se dá použít i jinak. Pokud ho nebudeme montovat pod spínač na zeď, je možné napájet ho z jakéhokoliv stejnosměrného zdroje 5 V. Lze použít jiné spínače pro manuální ovládání a výstupy lze také upravit podle libosti. Vývod 3 tj. RA4 je vývod s otevřeným kolektorem ! Nesmíme zapomenout, že mikrokontrolér je CMOS, a podle toho se k němu musíme chovat (nesmíme překročit maximální povolené hodnoty proudu a napětí, kterými můžeme I/O piny těžovat. Viz. katalog).
Spínač pracuje při pečlivém postupu na první zapojení.Nejprve osadíme na desce drátové propojky!Potom ostatní součástky. Triaky jsou ohnuty nad kondenzátor C1.Musíme dát pozor, aby se kovová ploška triaků nedotýkala pouzdra pojistky! Při oživování pamatujeme, že pracujeme se síťovým, životu nebespečným napětím!
Postup záznamu tlačítka na spínač A
- Namíříme dálkový ovladač na náš učící se spínač.
- Stiskneme příslušné tlačítko na ovladači na které chceme aby náš spínač reagoval a držíme.
- Čtyřikrát překlapneme mechanický spínač A (ne míň, ne víc).
- Pustíme tlačítko na ovladači – je zaznamenáno. Nyní půjde příslušným tlačítkem ovládat osvětlení.
Pokud nám spínač reaguje jen na každé druhé stisknutí tlačítka na ovladači, pracuje ovladač s protokolem RC5.Tento protokol při každém vyslání kódu od příslušného tlačítka mění tzv. toggle bit. Není nic snažšího než zaznamenat i druhý kód s tímto změněným bitem. Pak už bude spínač reagovat na každý stisk daného tlačítka.
Smazání příslušného tlačítka z paměti
Pokud chceme smazat příslušné tlačítko z paměti, provedeme stejný postup jako při záznamu. Je-li daný kód tlačítka v paměti uložen, bude vymazán.
- Namíříme dálkový ovladač na náš učící se spínač.
- Stiskneme příslušné tlačítko na ovladači které chceme z paměti vymazat a držíme.
- Čtyřikrát překlapneme mechanický spínač A (ne míň, ne víc).
- Pustíme tlačítko na ovladači – je smazáno .Nyní již spínač nebude na dané tlačítko reagovat.
Pokud stále spínač reaguje na každé druhé stisknutí tlačítka na ovladači, vymažeme z paměti i druhý kód se změněným toggle bitem (protokol RC5).
Chceme-li smazat celou pamět např. pokud se rozbil příslušný ovladač, provedeme následující:
- Namíříme jakýkoliv IR dálkový ovladač na náš učící se spínač.
- Stiskneme jakékoliv tlačítko na ovladači a držíme.
- Osmkrát překlapneme mechanický spínač A nebo B (ne míň, ne víc).
- Pustíme tlačítko na ovladači – je smazána celá pamět. Překlapávání spínače musíme zvládnout v určitém čase, jinak se programování nepodaří!
Pokud je paměť plná, tj 20 nahraných tlačítek (kódú talčítek), nebude další nahrávání nových tlačítek fungovat. Až po uvolnění paměti.
Celé zařízení jsem odlaďoval a zkoušel s různými IR ovladači (Aiwa, Sony, 2 x Tesla, ovladač od satelitu, Votra atd.). Zkoušel jsem mnoho algoritmů jak vysílané kódy dekódovat (RC5 a NEC). Nejprve jsem vycházel z teoretického popisu jednotlivých protokolů podle normy. To neměo moc velký úspěch. Vždy se mi podařilo perfektně dekódovat jen některé ovladače (vetšinou Tesla).
U ostatních se stávalo, že po naučení na jedeno konkrétní tlačítko, přijímač reagoval i na různá jiná téhož ovladače (ne všechny). Jak jsem se nakonec přesvědčil na osciloskopu, normu protokolu přesně dodržuje jen málo kdo. U některých RC5 chyběl start bit, jinde byly dva, o dodržení časování ani nemluvim . Co firma to protokol originál. Nakonec jsem přistoupil na řešení protokoly nedekódovat, ale vytvořit z každého kódu jedinečné 5B číslo. To se myslím povedlo. Přijímač začal pracovat tak jak má se všemi testovanými ovladači. Jde naučit vžy na jedno konkrétní tlačítko(a). Vzhledem k rozmanitosti značek zkoušených ovladačů si dovoluji předpokládat, že zařízení bude pracovat s většinou standardních ovladačů od spotřební elektroniky.
Cena naprogramovaného PIC 16F628-20/P ……………..240 Kč + poštovné.
Popisovaný obvod je možno objednat u autora : Michal Zajačik
______________________________________________________________________________________
______________________________________________________________________________________