Zdalne sterowanie na podczerwień pilotem RC5
Ocena użytkowników: / 9
SłabyŚwietny czwartek, 17 lutego 2011 13:51
Autorski projekt wyłącznika zdalnie sterowanego za pomocą pilota RC5. Cały układ kontrolowany jest przez mikroprocesor z rodziny AVR, ATtiny2313. Na uwagę zasługuje zasilanie układu bezpośrednio z sieci elektroenergetycznej o napięciu 230V, zrealizowane przez zasilacz beztransformatorow. Jako odbiornik podczerwieni z pilota wykorzystano układ TSOP1736. Bardzo prosty interfejs użytkownika oparty o jeden przycisk i jedną diodyę LED ułatwia programowanie układu. Płytka drukowana została przystosowana do montażu w obudowie plastykowej typu Z-27.
Wstęp
Wraz z rozwojem elektroniki i urządzeń elektronicznych użytkownicy tych sprzętów stają się coraz wygodniejsi, żeby nie powiedzieć leniwi. Głównym celem budowy tego projektu było zwiększenie wygody korzystania z urządzeń elektrycznych, w których nie ma możliwości załączania i wyłączania za pomocą pilota zdalnego sterowania. Obecnie układ wykorzystywany jest do sterowania oświetleniem w mieszkaniu.
Założenia projektowe
Najważniejszym założeniem układu było załączanie i wyłączanie obwodów prądu przemiennego o napięciu skutecznym 230V za pomocą powszechnie dostępnych pilotów o standardzie kodowania RC5 i wykorzystaniu 2 z ich przycisków. Co najważniejsze użyte mogą zostać piloty wykorzystywane w codziennym sterowaniu urządzeniami RTV co nie powiększa ilości pilotów znajdujących się w domu o kolejny do sterowania wyłącznikiem. Należy wtedy wykorzystać przyciski, które są nie używane na co dzień tak by nie doszło do sytuacji, gdy na przykład zmieniamy kanał w telewizorze i załącza się oświetlenie w pokoju.
Projekt charakteryzuje się prostą budową oraz wykorzystaniem tanich i łatwo dostępnych elementów elektronicznych. Wszystkie zastosowane elementy elektroniczne są typu przewlekanego, a płytka drukowa jest jednostronna.
Kolejne założenie dotyczyło programowania przycisku załączenia i wyłączenia. Miało to zostać realizowane w jak najprostszy sposób przy wykorzystaniu jednego przycisku i jednej diody.
Zasilanie bateryjne układu nie było brane pod uwagę ze względu na stosunkowo duży prąd ciągły pobierany przez cewkę przekaźnika w czasie załączenia. Zrezygnowano również z wewnętrznego zasilacza transformatorowego ze względu na jego duże wymiary. Według założeń układ miał być zasilany zasilaczem beztransformatorowym bezpośrednio z sieci elektroenergetycznej o napięciu skutecznym 230V.
Mikrokontroler ATtiny2313
Podczas fazy projektowania urządzenia i pisania programu sterującego wykorzystywany był mikroprocesor ATmega32. Niestety ze względu na wysoką cenę i wielkość obudowy nie nadawał się on do tak prostego projektu. Postawiono następujące warunki minimalne jakie musiał spełniać mikroprocesor:
2kB pamięci flash
Jedno przerwanie zewnętrzne
4B pamięci EEPROM
Jeden licznik 8 bitowy
Jeden licznik 16 bitowy
4 linie wejścia/wyjścia
Zasilanie 5V
Niewielka obudowa
Łatwa dostępność
Niska cena
Porównanie oferty mikroprocesorów rodziny AVR wyłoniło mikroprocesor typu TINY (z angielskiego - mały), a dokładniej ATtiny2313. Układ ten posiada wszystkie cechy niezbędne do poprawnego działania sterownika. Poniżej wyszczególniono główne cechy wybranego mikroprocesora AVR ATtiny2313 z noty katalogowej producenta:
2kB pamięci flash
128B pamięci EEPROM
128B pamięci SRAM
dwa przerwania zewnętrzne
Jeden licznik 8 bitowy
Jeden licznik 16 bitowy
18 linii wejścia/wyjścia
Zasilanie 2,7V - 5,5V
średniej wielkości obudowa PDIP-20
Dostępny w prawie każdym sklepie elektronicznym
Niska cena w granicach 6 zł -10 zł
Zasilanie
Jako, że układ zdalnego sterowania miał być możliwie prosty i nie wymagać dodatkowego zasilania z zewnątrz, postanowiono zastosować zasilacz beztransformatorowy. Rozwiązanie tego typu pociąga za sobą szereg problemów, z których główny to brak separacji galwanicznej układów elektronicznych i sieci elektroenergetycznej. Możliwość pojawienia się pełnego napięcia sieciowego 230V w układzie w razie uszkodzenia jednego z elementów zasilacza sprawia, że projekt powinien być wykonywany jedynie przez doświadczonych użytkowników lub pod ich nadzorem.
Kolejnym minusem zasilacza beztransformatorowego jest bardzo ograniczona wydolność prądowa, co sprawia, że takie zasilacze mogą być wykorzystywane tylko w projektach, w których pobór prądu jest nie większy niż kilkadziesiąt mili amperów. Ograniczenie maksymalnego prądu wyjściowe zasilacza podyktowane jest w głównej mierze pojemnością kondensatora C5. Dla zastosowanej pojemności 1µF maksymalny prąd wyjściowy zasilacza wynosi około 50mA (0,05A).
Głównymi elementami zasilacza są kondensator polipropylenowy (MKP lub KFPM) C5 o pojemności (1µF), rezystor ograniczający prąd R1 o wartości 220Ω i mocy minimalnej 1W (zalecane 2W) oraz mostek prostowniczy. Główny kondensator zasilacza C5 powinien być na napięcie 400V. Wynika to z faktu, iż napięcie znamionowe kondensatora to napięcie stałe (chwilowe) jakie może wytrzymać izolacja kondensatora. W sieci elektroenergetycznej napięcie 230V to napięcie skuteczne, a wartość napięcia szczytowego chwilowego może sięgać 230*√2 = 325V. Zakładając 10% wahania napięcia w sieci otrzymujemy 230*1,1*√2 = 358V. Dlatego zastosowano kondensator na napięcie 400V. Do zastosowania w projekcie nie nadają się kondensatory MKT lub MKSE na napięcie 400V, należy zastosować wtedy kondensator tego typu na napięcie 630V. Na rezystorze R1 wydzielają się duże ilości ciepła wywołane stratami przez prąd płynący bezpośrednio z sieci elektroenergetycznej. Dwa rezystory R2 i R3 o rezystancji 47kΩ połączone równolegle z kondensatorem C5 powodują jego rozładowanie po odłączeniu od zasilania sieciowego, co zwiększa bezpieczeństwo użytkowania układu. Gdyby nie zastosowano rezystorów rozładowczych po odłączeniu układu od sieci elektroenergetycznej i dotknięciu bolców wtyku zasilającego, użytkownik mógł by zostać porażony niewielkim prądem, co niekoniecznie musiało by być groźne dla życia lub zdrowia ale powodowało by nieprzyjemne uczucie.
Kolejnym ważnym elementem jest mostek prostowniczy zbudowany z 4 diod prostowniczych D1-D4 typu 1N4004 w układzie Gretze'a. Absolutnie nie nadają się do tego popularne diody impulsowe 1N4148. Zaraz za mostkiem prostowniczym zastosowano kondensator stabilizujący napięcie C2 o pojemności 1000µF oraz diodę Zenera D5 o napięciu znamionowym 12V. W tym miejscu napięcie wyjściowe jest już stałe o wartości około 12V. Bezpośrednio z tego punktu zasilany jest przekaźnik. Celowo zastosowano przekaźnik 12V dla zmniejszenia prądu pobieranego przez cały układ.
Na potrzeby zasilania mikroprocesora zastosowano stabilizator napięcia 78L05 w obudowie TO92 (rys.1a), na schemacie ideowym oznaczony jako IC1. Na schemacie montażowym można zauważyć, że w miejscu stabilizatora 78L05 znajduje się rysunek obudowy TO220, jest to celowy zabieg pozwalający na użycie stabilizatora 7805 w obudowie TO220 (rys.1b). Jedyna różnica pomiędzy stabilizatorami 7805 i 78L05 poza obudową to wydajność prądowa, która wynosi odpowiednio 1A i 100mA (0,1A). Na potrzeby tego projektu w zupełności wystarcza stabilizator o prądzie 100mA (78L05). Według noty katalogowej układu przed i za stabilizatorem należy zastosować kondensator filtrujący zakłócenia zasilania o wartości 100nF, na schemacie są to kondensatory C3 i C7.
Rys. 1. Obudowy typu TO: a) TO92; b) TO220
Odbiornik podczerwieni
Sygnał z pilota zdalnego sterowania wysyłany jest jako promienie podczerwone z diody nadawczej. Sygnał ten jest modulowany co oznacza że stan wysoki wysyłany jest jako szereg impulsów prostokątnych o częstotliwości 36kHz. Taki sposób przesyłu zmniejsza pobór prądu przez diodę nadawczą, ponieważ nie działa ona przez cały czas nadawania tylko jest zależy od wypełnienia sygnału modulowanego. Wypełnienie tego sygnału nie przekracza 50%., a z reguły ma wartość od 20%-30% Demodulowanie sygnału czyli przejście z sygnały zmodulowanego o częstotliwości 36kHz na sygnał ciągły zapewnia scalony odbiornik podczerwieni TSOP1736. Na jego wyjściu otrzymywany jest sygnał ciągły nie modulowany zanegowany. W stanie gdy nie jest wysyłany żaden sygnał na wyjściu odbiornika pojawia się stan wysoki (+5V) natomiast gdy wysyłany jest impuls na wyjściu pojawia się stan niski. Negacja sygnału wyjściowego pozwala na zmniejszenie zakłóceń. W nocie katalogowej producenta można przeczytać, że należy zastosować rezystor "podciągający" wyjście do napięcia zasilania co pokazano na rysunku 2. W tym projekcie nie było takiej potrzeby ponieważ wejście PD2 (INT0) mikroprocesora "podciągane" jest do napięcia zasilania wewnątrz układu za pomocą odpowiedniego ustawienia rejestru PORTD. W nocie katalogowej można również zauważyć, że do pewnego działania układu należy zastosować rezystor ograniczający prąd zasilania układu oraz kondensator filtrujący to napięcia, na schemacie jest to odpowiednio R5 (100Ω) oraz C1 (4,7µF).
Rys. 2. Sposób podłączanie zintegrowanego odbiornika podczerwieni TSOP1736 do mikroprocesora według noty katalogowej producenta układu.
Programowanie przycisków pilota
Jednym z założeń układu miało być łatwe programowanie przycisków pilota załącz/wyłącz. Zrealizowano to za pomocą jednego przycisku typu mikroswitch oraz jednej diody LED. Przycisk podłączony jest z jednej strony do masy układu, a z drugiej bezpośrednio do wejścia PD6 mikrokontrolera ATtiny2313. Wejście to jest "podciągnięte" programowo do napięcia zasilania, czyli w czasie gdy przycisk nie jest wciśnięty na wejściu PD6 utrzymuje się stan wysoki +5V. Natomiast w czasie gdy przycisk jest zwarty (naciśnięty) na wejściu PD6 pojawia się stan niski co jest interpretowane przez mikrokontroler jako naciśnięcie przycisku. By umożliwić naciskanie przycisku znajdującego się na płytce drukowanej należało wykonać przedłużkę przycisku. Element ten wykonano na tokarce z pręta aluminiowego. Jego wygląd przedstawiono na rys. 3 Dioda LED katodą podłączona jest do masy układu, a anodą przez rezystor do wyjścia mikrokontrolera PD5. Stan wysoki na wyjściu PD5 powoduje zaświecenie diody, a stan niski jej wyłączenie.
Rys. 3. Aluminiowe przedłużenie przycisku wykorzystywanego do programowania układu.
Programowanie odbywa się poprzez wciśnięcie i przytrzymanie przycisku na około 2 sekundy. Dioda LED zaczyna wolno migać, należy wtedy skierować pilot zdalnego sterowania na odbiornik podczerwienie i nacisnąć wybrany przycisk załączenia na pilocie. Po prawidłowym odebraniu ramki danych dioda LED zaświeca się na stałe na około 1 sekundę, a przekaźnik zostaje załączony. Następnie dioda zaczyna migać szybciej co oznacza oczekiwanie na wciśnięcie wybranego przycisku wyłączenia na pilocie. Analogicznie po odebraniu prawidłowej ramki danych z pilota, dioda LED przestaje migać i świeci stale przez 1 sekundę i zostaje wyłączona, a przekaźnik zostaje rozłączony. Po tym procesie programowanie przycisków zostaje zakończone i można korzystać z urządzenia. W projekcie urządzenia przewidziano zapisu danych do pamięci nieulotnej EEPROM. Nie ma potrzeby każdorazowego programowania układu po zaniku napięcia zasilania. Ustawienia są odczytywane z pamięci po włączeniu układu.
Projekt płytki drukowanej
Schemat ideowy jak i płytka drukowana zostały zaprojektowane przy pomocy programu Eagle. Poniżej na rysunku 4 przedstawiono widok schematu połączeń elektrycznych (schemat ideowy). Dodatkowo na rysunku 5 pokazano widok schematu montażowego. Jak widać płytka została zaprojektowana specjalnie do obudowy plastykowej typu Z-27 (rys. 6). W artykule zamieszczono również schemat ideowy, montażowy i mozaikę ścieżek w plikach PDF w wysokiej rozdzielczości i bez znaku wodnego. Plik "Zdalne sterowanie RC5.zip" zawiera wszystkie niezbędne pliki: schemat ideowy, schemat montażowy, mozaikę ścieżek oraz pliki wsadowe do procesora, projekt programu napisany w języku C jaki i projekt płytki w programie Eagle. Pliki zawierające mozaikę ścieżek jak i opis elementów na płytce są ich lustrzanym odbiciem wyglądu rzeczywistego, a to po to by można je odrazy wydrukować na papierze kredowym i użyć do termotransferowej metody wykonywania płytek drukowanych. Pliki PDF należy drukować na arkuszach o formacie A4 i ustawiając zerowe marginesy tak by wydruk zgadzał się z rzeczywistą wielkością płytki.
Rys. 4. Schemat ideowy układu zdalnego sterowania.
Rys. 5. Schemat montażowy.
Rys. 6. Uniwersalna obudowa plastykowa Z-27.
Uwagi
Mikrokontroler pracuje z wewnętrznym generatorem o częstotliwości 1MHz, dlatego w projekcie nie uwzględniono miejsca na zewnętrzny generator kwarcowy.
Mikrokontroler rodziny AVR ATtiny2313 przystosowany jest do programowania w płytce układu docelowego jest to tak zwany system ISP (In-System Programming). Pozwala on na programowanie pamięci mikrokontrolera bez wymontowywanie go z układu docelowego. Z uwagi na bliskość elementów będących pod napięciem sieciowym, zrezygnowano z zastosowania gniazda programowania czy wyprowadzenia linii potrzebnych do programowania na gniazdo szpilkowe. Mikrokontroler należy zaprogramować poza układem, a następnie wlutować lub wmontować w płytkę drukowaną, zamknąć obudowę i dopiero przystąpić do zasilania z gniazda sieciowego.
Podczas uruchamiania układu należy zachować szczególną ostrożność, ponieważ występuje tam napięcie sieciowe o wartości skutecznej większej niż 50V (230V), które jest niebezpieczne dla życia i zdrowia człowieka.
Układ działa jedynie z pilotami wysyłającymi dane w standardzie RC5. Podczas odbioru danych zapisywany jest adres jak i komenda wysłane z pilota. Może się zdarzyć jak w przypadku pilota pokazanego na rysunku poniżej, że wciśnięcie przycisku CD, TAPE, TUNER, AUX, lub CDR zmienia komendy i adresy poszczególnych przycisków. Dla przykładu jeżeli wciśnięty zostanieprzycisk CD a następnie naciśnięty przycisk PLAY zostanie wysłana ramka danych odpowiadająca uruchomieniu płyty CD, natomiast po wciśnięciu klawisza TAPE, a następnie przycisku PLAY nastąpi uruchomienie kasety magnetofonowej. Należy zwrócić na to uwagę podczas programowania przycisków w układzie. Jednocześnie można dobrze wykorzystać pilot tego typu, ponieważ dzięki takiemu rozbudowaniu pilota zwiększa się ilość kombinacji przycisków co pozwala na korzystnie na co dzień z pilota do sterowania urządzeniami RTV jak również do sterowania zaprezentowanym wyłącznikiem. Jednym pilotem można sterować wieloma wyłącznikami tego typu. Ograniczeniem jest jedynie ilość możliwych kombinacji klawiszy na pilocie zdalnego sterowania.
Poniżej zaprezentowano zdjęcia układu, spis potrzebnych elementów, film pokazujący pracę urządzenia i programowanie oraz pliki do pobrania.
Spis elementów:
Rezystory:
R1 - 220Ω/1W
R2, R3 - 47kΩ
R4, R7 - 4,7kΩ
R5 - 100Ω
R6 - 430Ω
Kondensatory:
C1 - 4,7µF/10V
C2 -1000µF/16V
C3, C4, C7 - 100nF
C5 - 1µF/400 MKP lub KFPM
C6 -220µF/10V
Diody:
D1, D2, D3, D4 - 1N4004
D5 - dioda zenera 10V
D6 - 1N4148
Inne:
US1 - ATtiny2313
T1 - BC547
LED1 - Dioda LED
PR1 - JQC-3FF 12V lub odpowiednik
SW - mikrostyk
Odbiornik podczerwieni - TSOP1736
Stabilizator - 78L05 lub 7805
Gniazdo śrubowe ARK2 i ARK3
Pliki do pobrania:
Zdalne sterowanie RC5 - 489KB