www.belza.cz - homepage

Dálkové ovládání k nf zesilovači (2)
Remote control for audio amplifier (2)

Související části / Related parts
Část 1 - Vysílač dálkového ovládání / Part 1 - Remote control sender
Část 2 - Přijímač DO pro zesilovač s motorovým potenciometrem / Part 2 - Remote control for amplifier with motorized potentiometer
Část 3 - Přijímač DO pro zesilovač s elektronickým potenciometrem / Part 3 - Remote control for amplifier with electronic potentiometer (PGA)


Obr. 1. Potenciometr ALPS s motorem
Fig. 1. ALPS motor-driven stereo potentiometer

Přijímač DO1

Zapojení je určeno pro zesilovače, které pro řízení hlasitosti používají potenciometr s malým stejnosměrným motorem a převody (obr. 1). Hlasitost lze samozřejmě ovládat i ručně, motorová část potenciometru je napojena přes třecí spojku. Přijímač je velmi jednoduchý, kromě řízení hlasitosti umožňuje zapnout a vypnout zesilovač, přepínat 3 vstupy, ovládat relé pro připojení reproduktoru a má jeden nezávislý bitový výstup. Zapojení přijímače DO je na obr. 8. Přijímač používá mikrokontrolér PIC16F628A. K příjmu povelů z DO slouží IR přijímač. Vyzkoušel jsem několik typů, dálkové ovládání fungovalo se všemi. V zapojení je ješte obvod pro připojení motoru a 6 tlačítek místního ovládání. Těmi lze zesilovač zapnout/vypnout, přepínat vstupy, ovládat MUTE a bitový výstup. Hlasitost se nastavuje knoflíkem potenciometru. Ostatní výstupy jsou jen ve formě logických signálů a je na konstruktérovi zesilovače, jak je využije.


Obr. 2. Zapojení přijímače DO pro zesilovač s motorovým potenciometrem
Fig. 2. Remote control receiver for amplifier with moterized potentiometer.
Works if PWFI input set Hi (Power fail indicator - internal pull-up).
Input mode: open - only one input select; close - any input may be set ON or OFF

Po připojení napájecího napětí program zapne zesilovač uvedením výstupu ONSW (RA3) do úrovně log. 1 a čeká na log. 1 na vstupu PWFI (Power Fail Indicator – RB1). Signál PWFI oznamuje mikrokontroléru, že je napájecí napětí zesilovače v pořádku. Na signál PWFI se čeká jen omezenou dobu, která je určená konstantou v programu. Pokud se na PWFI neobjeví log. 1, zesilovač se zase vypne. Objeví-li se signál PWFI včas, program podle informace z EEPROM obnoví poslední uložený stav přepínače vstupů a bitového výstupu. Po prodlevě program nastaví log. 1 na RA4 (MUTE) a ten přejde do stavu s velkou impedancí. (Port RA4 je typu open drain, s otevřeným kolektorem.) Tímto výstupem lze ovládat relé pro připojení reproduktorů nebo spínač mute, je-li jím zesilovač vybaven. Pokud signál PWFI přejde do log. 0, když je zesilovač zapnut, uloží se stav do EEPROM a zesilovač se vypne. Tento případ může nastat např. tehdy, když zesilovač vypneme hlavním síťovým spínačem nebo „vytažením ze zdi“ a mikrokontrolér je napájen z filtračních kondenzátorů zdroje. Vhodné obvody generující signál PWFI popíšu na konci článku. Nebudete-li signál PWFI využívat, nechte vstup nepřipojený (vnitřní pull-up) nebo ho připojte na Vdd.

Zvláštní odstavec je třeba věnovat přepínači vstupů. Klasické přepínání vstupů 1 z n u zesilovače k PC nevyhoví. Většinou chceme slyšet zvuky generované počítačem a k nim si třeba pustit hudbu z nějakého jiného zdroje – přenosného přehrávače, mobilního telefonu, TV, FM tuneru... Proto jsem program napsal tak, že přepínač vstupů může pracovat ve dvou režimech. Pokud je na vstupu MODE (vývod RA5) log. 0, přepínač vstupů pracuje klasickým způsobem – vždy je zapnut jen jeden vstup. Zvolíme-li např. vstup 2, vstupy 1 a 3 se odpojí. Pokud je na vstupu MODE log. 1, lze jednotlivé vstupy zapínat a vypínat nezávisle na sobě. V tomto případě ale musí být vhodným způsobem navržena i signálová část zesilovače, aby se signály směšovaly. Obvykle nelze spojit dva výstupy nf signálu s malou impedancí „natvrdo“ paralelně. Výsledný signál by byl pravděpodobně zkreslený, v krajním případě se může zdroj signálu poškodit. Log. 0 je na vstupu MODE zajištěna rezistorem R5. Pokud chceme vstupy zapínat nezávisle, stačí na ICSP konektoru nasunout na piny Vpp a Vdd zkratovací propojku. Pravověrní hifisté budou vstupy přepínat relé, s dobrými výsledky lze k přepínání použít i analogové spínače CMOS. Použití relé sice umožní zcela oddělit řídicí a signálovou část zesilovače, je však třeba použít speciální signálová relé, která dlouhodobě dobře spínají i při zanedbatelném proudu tekoucím kontakty.

Výstup na motor používá jednoduchý H-můstek s tranzistory T1 až T4. Pokud je na vývodech (výstupech) RA6 a RA7 log. 0, jsou všechny tranzistory uzavřeny a motor se netočí. Když se objeví např. na RA7 log. 1, sepne tranzistor T1 a přes R7 i tranzistor T4, a motor se roztočí. Při log. 1 na RA6 sepnou tranzistory T2 a T3 a motor se točí na opačnou stranu. Programem musí být zajištěno, že se nikdy neobjeví log. 1 na obou výstupech RA6 a RA7 současně. Podle katalogového listu je napájecí proud motoru max. 100 mA, případně 150 mA v krajní poloze, kdy se protáčí třecí spojka. Při rozběhu může být odebíraný proud větší. U dvojitého potenciometru z obr. 7 jsem naměřil tyto proudy zhruba poloviční a rozběhový proud asi 250 mA. Proto je třeba použít tranzistory pro větší proud, např. BC327/337 nebo v SMD provedení BC807/817. Na konkrétním typu příliš nezáleží, tranzistory by však měly mít velký proudový zesilovací činitel (nejlépe větší jak 200). Uvedené zapojení H-můstku je jedno z nejjednodušších a je poměrně citlivé na odpory rezistorů R5 až R8. Odpor rezistorů musí být dostatečně malý, aby se tranzistory otevřely do saturace, odpor však nelze zmenšovat příliš. Alternativní zapojení H-můstku je na obr. 3.


Obr. 3. H-můstek s obvodem L9110
Fig. 3. H-Bridge with L9110

Integrovaný obvod L9110 byl popsaný v PE-AR 11/2014 [1]. K jeho vlastnostem je však nutno dodat několik informací. Pokud je na obou vstupech nízká úroveň, je odběr obvodu prakticky nulový. Přivedeme-li na některý ze vstupů napětí +5 V (log. 1 z mikrokontroléru), odebírá IO z napájení proud asi 10 mA i bez připojeného motoru; při obou vstupech připojených na +5 V je odběr asi 5 mA. Proud do vstupu je asi 350 µA, ale jen v případě, že je IO napájen. Je-li však IO bez napájení, začne se proud do vstupu při napětí asi 1,5 V prudce zvětšovat a při napětí 2 V je už omezen pouze použitým zdrojem. Mikrokontrolér má povolený maximální výstupní proud 20 mA a port zapojený „do zkratu“ by se mohl zničit. Je tedy třeba zajistit, aby byl IO napájen buď současně s mikrokontrolérem, nebo mezi výstupy z mikrokontroléru a IO zapojit omezovací rezistory, např. 1 kohm.


Obr. 4. Připojení relé pro spínání reproduktoru s bipolárními tranzistory nebo MOSFET
Fig. 4. Speaker switch with bipolar transistor or MOSFET. Speaker protect circuit can be connect to point "A"

Jak již bylo uvedeno, vývod portu RA4 je typu open drain. Relé pro spínání reproduktoru lze zapojit podle obr. 4. S ohledem na spotřebu ve vypnutém stavu, kdy je na RA4 log. 0, je třeba volit odpor rezistoru Rb co největší. Pokud je zesilovač vybaven obvodem, který hlídá stejnosměrné napětí na výstupu zesilovače (ochrana reproduktorů), lze jeho výstup připojit do bodu „A“. Desku s plošnými spoji jsem nenavrhoval, stejně si každý jistě bude chtít ovládání přizpůsobit svému zesilovači. (Tak mi o ní nepište, není.) Přijímač je velmi jednoduchý a v případě potřeby ho můžete postavit i na univerzální desce.

Ovládací program lze rozdělit do dvou částí. První část zajišťuje příjem povelů dálkového ovládání. Tato část programu se vykonává při přerušení, které je vyvoláno buď signálem v log. 0 z výstupu IR přijímače, nebo přetečením časovače TIMER0. Druhá část programu skenuje místní tlačítka a zajišťuje vykonání povelů. Povel typu zapni/vypni používá příznak prvního vysílání povelu (viz popis vysílače DO), takže při stisku tlačítka se povel vykoná jen jednou. Povel typu impuls (zde řízení motoru) nastaví signál na výstupu, současně také nastaví časovač na 65,5 ms. Držíme-li tlačítko, vyšle se povel znovu za 62,5 ms. Signál na výstupu je stále nastaven, nastavení časovače se při opakovaném příjmu povelu resetuje. Po uvolnění tlačítka se již povel nevysílá, časovač přeteče a povel typu impuls se ukončí. Třetím typem povelu je např. přepínání vstupů v módu 1 z n. Tento povel se vykoná vždy. Dávám k dispozici jak přeložený program, tak zdrojový kód v asembleru. Mírně pokročilí programátoři si tak mohou upravit podle potřeby tu část, která se stará o vykonání povelů. Část programu dekódující signál z přijímače dálkového ovládání je složitější, a její případné úpravy doporučuji až po pochopení funkce.


Obr. 5. Nastavení konstant přijímače DO1
Fig. 5. Customize receiver.
Adress 3F0h: adress remote control (0...3, must be same as RC sender), default "0"
3F1h: offset remote control (0...FFh, must be same as RC sender), default "47h"
3F2h: wating time to PWFI signal (0...FFh, n-times.65,5 ms). 10h ~ 1 s, max. 16,7 s; default "10h"
3F3h: waiting time to switch speaker ON (0...FFh, n-times 262 ms), max. 67 s; default "04h"

Podobně jako u vysílače DO, je v paměti programu uloženo několik konstant.

Pokud si chcete konstanty upravit, nemusíte je měnit ve zdrojovém kódu programu a ten pak překládat, stačí je změnit až při vypalování programu do mikrokontroléru. V obslužném programu programátoru stačí načíst přeložený hex soubor a najít řádek odpovídající adrese 3f0h. Konstanty jsou zde uloženy jako instrukce RETLW, vyjádřané kódem 34xx, kde xx je požadovaná konstanta. Přehledně je to vidět na obr. 5, kde je výřez z okna programu UP pro programátor Presto. Na obrázcích je i okno konfigurace. Pojistky však není třeba nastavovat, konfigurace je součástí hex souboru. Pro úplnost dodávám, že programy byly napsány v poslední verzi (8.92) vývojového prostředí MPLAB IDE.

Program pro všechny verze dálkového ovládání (vysílač, přijímač DO1 a DO2)
zdrojový kód v asembleru a přeložený hex soubor pro programátor je zde.
Firmware for sender and receiver is here

Seznam součástek (obr. 2)
Parts list (Fig. 2)

R1 47 ohm
R2 4k7 to 100 kohm
R3, R4, R9, R10, R11 1 kohm, podle LED
R5, R6, R7, R8 1 kohm
C1, C2 10 µF/10 V
D1 1N4148
LED1 - LED5 LED podle výběru
LED1 IR LED, 940nm
T1, T2 BC337-40
T3, T4 BC327-40
IC1 PIC16F628A/P
IC2 TSOP31236
6x button switch  
M motorový potenciometr
motorized potentiometer (ALPS RK168)

 

Hlídání napájecího napětí
Power Fail Indicator


Obr. 6. Obvod detekce poklesu napájecího napětí s komparátorem (a) a resetovacím obvodem pro mikrokontroléry (b)
Fig. 6. Power Fail Indicator with comparator (a) and watchdog IC pof microcontrolers (b)

Jak už bylo uvedeno, lze k přijímači DO připojit obvod pro hlídání napájecího napětí. Jednoduchý obvod PWFI je na obr. 6a. Používá červenou LED jako zdroj referenčního napětí a komparátor LM393. Pokud je na svorce +U malé napětí, je na neinvertujícím vstupu komparátoru (vývod 3 IO) menší napětí, než na invertujícím vstupu (vývod 2) a tranzistor na výstupu komparátoru je sepnutý. Zvětší-li se napětí nad rozhodovací mez, komparátor se překlopí, tranzistor uzavře a na svorce PWFI může být log. 1. Ta je zajištěna pull-up rezistorem v mikrokontroléru. Při zkoušení obvodu zapojte mezi svorku PWFI a +5 V rezistor 22 až 47 kohmů. Trimrem P1 lze nastavit prahové napětí v rozsahu od 7 do 55 V. Pro rozsah do 25 V postačí trimr s odporem 1 Mohm. Rozsah nastavení závisí na prahovém napětí LED, které se může lišit podle typu diody. Místo dvojitého komparátoru LM393 lze beze změny zapojení použít prakticky libovolný operační zesilovač.
Jiné zapojení je na obr. 6b. Používá napěťový watchdog, obvykle užívaný pro spolehlivý reset mikrokontroléru. Použitý obvod má rozhodovací napětí 2,7 V. Je-li na vstupu napětí menší, je sepnut výstupní tranzistor. Ten však není sepnut, když je na pinu IN, ze kterého je resetovací obvod i napájen, napětí menší než asi 1 V. O napájení se zde stará dělič R3/R4 a tranzistor T2, který udržuje na vstupu IN napětí asi 2 V i v případě, že na svorce +U není žádné napětí. Prahové napětí je třeba trimrem P1 nastavovat opatrně, aby nebylo za provozu překročeno napájecí napětí IC1. Většina reset obvodů má maximální napájecí napětí 5,5 V. Uvedený typ je výjimkou, snese až 10 V. Ochranu před přepětím lze zajistit diodou D1. Výhodou tohoto řešení je malá spotřeba, obvykle nejvýše několik desítek µA.
Detektor napájení s malou spotřebou je vhodné použít, je-li přijímač DO napájen z akumulátoru, který se při zapnutém zesilovači dobíjí. Samotný přijímač DO má i s IR přijímačem spotřebu pod 1 mA a akumulátor s kapacitou 1000 mAh vydrží přes měsíc. Když však zesilovač nebude "v zásuvce" a zapnete ho dálkovým ovladačem, relé sepne napájení ze sítě, ale v přívodním kabelu žádné napětí není. Pokud si mikrokontrolér napájecí napětí zesilovače neohlídá, mohlo by relé zůstat sepnuté, aniž by si toho obsluha všimla. Relé napájené proudem desítek miliampér by pak akumulátor rychle vybilo.

[1] Černý, M.: Řadič ss motoru L9110. PE-AR 11/2014 s. 16 nebo tady.

Jaroslav Belza

Článek byl otištěn v časopise "Praktická elektronika" 2/2015 s. 28, 3/2015 na s. 29 a 4/2015 s. 28.
This article was printes in magazine "Praktická elektronika" 2/2015, page 28, 3/2015, page 29 and 4/2015 page 28.

26. 3. 2016