Na rysunku 1 pokazano schemat ideowy modułu dla zmodyfikowanego urządzenia. Schemat powstał zgodnie z zaleceniami w nocie PDF odbiornika TSOP31236. Kondensator C1 oraz rezystor R1 służą do tłumienia zakłóceń zasilania. Rezystor R2 podciąga linię danych do linii zasilania. Na płytce umieściłem także trzy goldpiny służące do połączenia odbiornika podczerwieni z układem sterownika.
Schemat montażowy płytki z odbiornikiem jest przedstawiony na rysunku 2. Płytka ma niewielkie wymiary (zaledwie 21 mm×14 mm), co pozwala na łatwe przymocowanie jej w dowolnym miejscu. Przy lutowaniu, układ TSOP powinien znajdować na stronie elementów SMD. Dzięki temu mamy jedną stronę płytki PCB bez jakiegokolwiek elementu, co znacznie ułatwi np. przyklejenie odbiornika do obudowy.
Oprogramowanie
Zbiór wynikowy do zaprogramowania procesora zawiera kompletny program ze sterownika AVT5408, poszerzony o obsługę odbiornika podczerwieni. Program napisany dla nadajnika podczerwieni widocznego na rysunku 3, model RC6 LX. Wszystkie przyciski pilota zostały wykorzystane. Podzieliłem je na trzy sekcje, widoczne na rysunku 4. Przyciski z sekcji "A" wykorzystywane są do obsługi pierwszego przekaźnika. Przyciski z sekcji "B" obsługują przekaźnik drugi, natomiast przyciski z sekcji "C" obsługują oba przekaźniki jednocześnie.
Po wciśnięciu przycisku pilota, wysyła on dane w ramce, w której znajduje się adres oraz kod komendy. W zasadzie głównym punktem programu jest sprawdzanie komendy otrzymanej z pilota i odpowiednie zareagowanie na nią.
W celu łatwiejszej identyfikacji przycisków postanowiłem wprowadzić indywidualną numerację. Sposób w jaki to zrobiłem jest widoczny na rysunku 5. Dzięki wprowadzonej numeracji jest łatwiej także zrozumieć listingi. Pierwszy z nich (listing 1) zawiera definicje wszystkich przycisków. Po #define mamy nazwę przycisku, którą wykorzystujemy w kodzie programu. Następnie mamy liczbę oznaczająca komendę wysłaną przez pilot po wciśnięciu danego przycisku. W komentarzu wpisany jest kolejny numer zgodnie z numeracją przedstawioną na rys. 5.
Kiedy mamy już gotowe definicje przycisków, możemy przejść do obsługi sterownika z poziomu pilota. Program sprawdza jaka komenda przyszła z pilota. Następnie dopasowuje ją do odpowiedniego kodu (zgodnie z listingiem 1) i odpowiednio reaguje. W listingu 2 (patrz: materiały dodatkowe na serwerze ftp) mamy kompleksową obsługę funkcji urządzenia dla wszystkich przycisków pilota. Zaprezentowane domyślne oprogramowanie jest jedynie propozycją użycia funkcji sterownika. Do każdego przycisku można dopasować odpowiednią funkcję według własnych potrzeb. Listing 2 zawiera kompletne wzory zachowań, których można użyć przy personalizowaniu ustawień sterownika.
Funkcje
Sterownik może nadzorować pracę każdego przekaźnika wymuszając jeden z trzech stanów. Każdy przekaźnik może być włączony, wyłączony lub wykonywać pracę programową. Praca programowa dzieli się na dwa tryby: cykliczny oraz chwilowy.
Analizę funkcji pilota zaczniemy zgodnie z numeracją, którą wcześniej przyjęliśmy. Przyciski z numerem 1 oraz 2 należą do sekcji "C", czyli działają na oba przekaźniki jednocześnie. Przycisk numer 1 (zielony) włącza oba przekaźniki natomiast przycisk nr 2 (czerwony) wyłącza.
Przyciski z sekcji "A" mają swoje odpowiedniki z sekcji "B". Tak więc przycisk nr 3 spełnia dla przekaźnika 1 tę samą funkcję co przycisk nr 5 dla przekaźnika 2, przycisk numer 4 tę samą funkcję dla przekaźnika 1 co przycisk nr 6 dla przekaźnika 2 itd. Do pierwszej sekcji "A" należą przyciski z numerami: 3, 4, 7, 8, 11, 12, natomiast do pierwszej sekcji "B" przyciski: 5, 6, 9, 10, 13, 14.
Przyciski te włączają odpowiednie przekaźniki w stan pracy programowej, w trybie chwilowym. Do drugiej sekcji "A" należą przyciski: 24, 25, 28, 29, 32, 33, 36, 37, natomiast do drugiej sekcji "B": 26, 27, 30, 31, 34, 35, 38, 39. Przyciski te włączają odpowiednie przekaźniki także w stan pracy programowej, tylko w trybie cyklicznym. Wyjątkami w tej sekcji są przyciski 3, 4 oraz 5, 6. Przyciski 3 i 5 włączają odpowiedni przekaźnik a przyciski 4 oraz 6 wyłączają.
W ostatniej sekcji "C", do której należą oprócz wspomnianych już przycisków numer 1 i 2, przyciski od 15 do 23. Przyciski od 15 do 18 oraz od 20 do 23 włączają oba przekaźniki w tryb pracy chwilowy. Wciśnięcie przycisku z numerem 19 powoduje podświetlenie wyświetlacza LCD na 10 sekund. Dokładne czasy włączania i wyłączania przekaźników odpowiadające odpowiednim przyciskom, dla przejrzystości i łatwości ich użycia zostały przedstawione w tabeli 1.
Tomasz Piechowicz
tomaszpiechowicz1@gmail.com