58 (103)

58 (103)



Forum Czytelników


Na łaniach EdW pojawiło się już sporo układów' pozwalających pilotem sterować odbiornikami energii elektrycznej, a zwłaszcza oświetleniem. Elektronik jest jednak tym szczęśliwym człowiekiem, który nie jest zdany na gotowe rozwiązania i może przygotować własne, najlepiej dostosowane do jego potrzeb. Tak leż było w moim przypadku, gdy stwierdziłem, że mojej lampce nocnej brakuje możliwości zdalnego włączania i wyłączania. Stoi ona co prawda całkiem blisko łóżka, jednak wstając wczesnym zimowym rankiem czasem trudno po omacku trafić we włącznik. Postanowiłem zatem skorzystać z pilota RC5, który kupiłem dość dawno temu. właśnie do takich zastosowań.

Poniżej prezentuję proste, ale wygodne rozwiązanie. Mój ministerownik wyróżnia się takimi własnościami, jak:

-    sterowanie za pomocą jednego przycisku (włącz/wyłącz) lub dwóch (dodatkowo wyłączanie po upływie czasu odmierzanego przez timer),

-    współpraca z dowolnym pilotem RC5,

-    jeden pilot może obsłużyć nawet kilkanaście odbiorników (zależy to tylko od liczby dostępnych przycisków),

-    możliwość uczenia się komend, dzięki czemu nic trzeba przeprogramowywać mikrokontrolera po zmianie pilota,

-    zasilanie za pomocą zasilacza beztransfor-matorowego, dzięki czemu układ bez problemu mieści się w obudowie Z-27.

Opis układu

Na rysunku 1 zaprezentowany jest schemat ideowy. Jak widać, układem steruje mikrokontroler ATtiny 13 firmy ATMEL. Jest on wyposażony w' 1KB pamięci programu FLASH, 64B nieulotnej pamięci danych EEPROM i 64B pamięci operacyjnej SRAM. Pamięć programu jest bardzo mała, udało mi się jednak zmieścić w niej wszystkie funkcje, jakie planowałem. Zasilanie zrealizowałem w oparciu o zasilacz beztransfor-matorowy. Kondensator C1 o pojemności 330nF powinien gwarantować wydajność prądową powyżej 15mA nawet przy obniżonym napięciu sieci. W związku z niewielką wydajnością takiego prostego zasilacza użyłem optotriaka MOC3043, w którym prąd otwarcia wynosi zaledwie 5mA, dlatego nie należy go zastępować MOC3042, czy tym bardziej MOC3041, chy


ba że odpowiednio zwiększymy pojemność Cl. Jako odbiornik sygnału z pilota pracuje TFMS5360 lub jego odpowiednik TSOP1736. R5 i C4 zapewniają filtrację zasilania dla odbiornika. Rezystor R6 wraz z rezystorem C5 filtrują sygnał na nóżce resetu. Co prawda mikrokontrolery AVR mają wbudowane obwody zapewniające reset po starcie zasilania, ale podczas testowania prototypu okazało się, że jest on wrażliwy na zakłócenia pojawiające się w sieci przy włączaniu i wtyłączaniu halogenowej lampki nocnej. Źródłem zakłóceń był zapewne wbudowany w lampkę transformator. Co prawda, gdy lampka jest sterowana przez układ, zakłócenia są znikome dzięki użyciu optotriaka z detekcją przejścia fazy przez zero, jednak ręczne przełączanie włącznika lampki często powodowało resetowa-nie mikrokontrolera. Po dodaniu wspomnianych elementów sytuacja uległa poprawie.

Program sterujący układem został napisany w? języku C i zajmuje prawie całą dostępną pamięć mikrokontrolera - można go ściągnąć z Elporta-lu. Na początku pętli głównej znajdują się procedury odmierzania czasu i algorytm dekodowania rozkazów RC5. Odmierzanie czasu dla algorytmu dekodującego polega na odczytywaniu zawartości stanu rejestru TCNTO ti-mera TimerO. Timer jest taktowany

preskalerem zaprogramowanym na ......—

dzielenie częstotliwości zegara systemowego przez 16, dzięki czemu inkrementacja następuje co 53,3ps.

Czasy RC5REF] i RC5REF2 zostały. dla uproszczenia, ustawione na sztywno, choć w nocie AVR410 są one obliczane na podstawie długości bitu startu.

Dekodowanie sygnału RC5 polega na próbkowaniu stanu wejścia PB2.

Najpierw oczekujemy przez czas RC5 REFO (ok. 3,5ms) na


ustabilizowanie się linii. Podczas poprawnej komunikacji odstęp między paczkami wynosi kilkadziesiąt milisekund, a długość bitu ok. 1,8ms, zatem odczekanie 3,5ms powinno pozwolić na uniknięcie błędów spowodowanych próbą interpretowania zakłóceń lub ramki „złapanej” w połowie transmisji.

Po ustabilizowaniu się linii czekamy na stan niski, który będzie oznaczał rozpoczęcie ramki, a konkretnie pierwszy z dwóch bitów startu. TimerO zostanie wyzerowany i rozpocznie się odliczanie czasu RC5REFL Po upływie ok. 3/4 długości bitu nastąpi odczytanie stanu linii, co na rysunku 2 jest zaznaczone przerywaną linią. Stan wysoki interpretujemy jako bit o wartości „1” (gdyż za chwilę pojawi się zbocze opadające, które koduje właśnie jedynkę), stan niski zaś interpretujemy jako bit o wartości „0” (gdyż za chwilę pojawi się zbocze narastające, które koduje zero).

Stała czasowa RC5REF2 równa jest ok. 5/4 długości bita. Jeżeli zbocze nie wystąpi między końcem RC5REF1 a końcem RC5REF2 (między zieloną a niebieską linią przerywaną), zostanie to uznane za błąd transmisji i

RC5REF2

l4->;

RC5R5F1 RĆ5REF1 RC5REF1 RC5REF1 RC5REF1


TCNT0=0

Rys. 2


r

i

1

L_

]

L

i

0 -1


i


Rys. 1


230V


R1


■CZJ


220/0,5W


F1


OUT


I


R2


R3


KZZl—IZZH


47k


C1

W


47k


BR1


100mA


ZSZ


330n/400V


vcc


C2 1000u/25V


C3


100n


I


vcc

?

D1 5V1


58


02

BT136

MOC3043

TFMS5360


vcc

Q1

SW1

SW DIP-2


ATtiny 13


vcc


1

(MOS!/AINO)PBO

(MISO/INTO)PB1

(SCKflT0)PB2

(XTAL1)PB3 _

(XTAL2)PB4 PBS(Reset)

Re

4,'

4

1 C5

JjOr



Wyszukiwarka

Podobne podstrony:
58 (104) M Forum Czytelników Fot. 5 Fot. 6 Fot. 7 mocującej ten róg Artykuł jest owocem 149 zadania
58 (105) Forum Czytelników Zasilanie rrw-bfono Zasijai PrzedwtniactMCZ
52 (127) Do czego to służy? Na łaniach EdW wielokrotnie publikowane były projekty różnego rodzaju st
Image346 projektować układ, aby na jego wyjściach pojawił się zakodowany numer tego z wybranych wejś
Image462 Przykład 3. Podać rozwiązanie selektora czasowego, na którego wyjściu pojawia się impuls o
Image512 emiterowego RE. Po przełączeniu na wyjściu układu pojawia się sygnał 1, przy czym sygnał te
Image617 Impuls 1 na wejściu powoduje pojawienie się impulsu 1 na wejściu tranzystora T2, co powoduj
img035 35 Pragniemy teraz zwrócić uwagę na pewien efekt pojawiający się w sygnale DSB-SC, gdy sygnał
s482 482 Poznaj Linux System plików typu ext2 ma własną strategię reagowania na błędy. Jeśli pojawi
21820 P5170153 156 Rozdział s Na koniec może pojawić się i ten zarzut, że praca Battersby jest bardz
Zadanie 19. (0-1) Na jednym z blogów pojawił się wpis dotyczący pojęcia dobro, ale autor wpisu me za
Na światowym rynku pojawi się naturalna, dobrowolna federacja producentów i konsumentów. Dobrowolny

więcej podobnych podstron