8-kanałowy przełącznik
Transkrypt
8-kanałowy przełącznik
8-kanałowy przełącznik 3138 sterowany dowolnym pilotem na podczerwień Do czego to służy? Urządzenie umożliwia zdalne sterowanie ośmioma urządzeniami za pomocą standardowych pilotów na podczerwień od sprzętu powszechnego użytku. Do każdego wyjścia można przypisać dowolny przycisk, praktycznie dowolnego pilota, który będzie powodował zmianę stanu odpowiedniego przekaźnika przełącznika. Ponadto urządzenie może „nauczyć się” kilku różnych pilotów bez względu na to, w jakim standardzie pracują. Możliwe jest sterowanie bistabilne – przyciśnięcie przycisku pilota załącza przekaźnik, kolejne przyciśnięcie przycisku rozłącza go, lub sterowanie monostabilne – przekaźnik jest załączony tak długo, jak wciśnięty jest przycisk w pilocie, zwolnienie przycisku wyłącza przekaźnik. Urządzenie doskonale sprawdzi się jako włącznik urządzeń, przełącznik sygnałów lub sterownik oświetlenia. Jak to działa? Schemat elektryczny przełącznika pokazano na rysunku 1. Głównym elementem jest mikrokontroler typu ATmega328, a zawarte w nim oprogramowanie jest odpowiedzialne za analizowanie i dekodowanie sygnałów nadawanych w podczerwieni. Procesor taktowany jest wewnętrznym sygnałem zegarowym o częstotliwości 8MHz. Jako odbiornik podczerwieni zastosowano specjalizowany układ typu TSOP4836, który zasilany jest poprzez układ rezystora R1 i kondensatora C5, 48 filtrują one jego napięcie zasilania, co poprawia czułość odbiornika (eliminuje zakłócenia pochodzące od zasilania). Jako wzmacniacz wyjściowy dla poszczególnych kanałów przełącznika zastosowany został układ typu ULN2803A, który zawiera w swojej strukturze osiem stopni wzmacniaczy tranzystorowych wraz z diodami zabezpieczającymi umożliwiającymi bezpośrednie sterowanie przekaźnikami. Do programowania parametrów przełącznika wykorzystano podwójne szpilki goldpin S1 wraz z jumperami oraz mikroswitch PROG. Naciskając przycisk PROG, można przełączyć procesor w tryb programowania, a za pomocą zworek S1 ustawić numer kanału, dla którego będą programowane parametry. Zworki S1 służą także do wyboru rodzaju reakcji danego wyjścia na odebrany kod pilota. Do sygnalizacji stanu pracy urządzenia służą diody świecące LED9 (ST/ON) i LED10 (IR/OFF). Pierwsza sygnalizuje aktywność urządzenia krótkimi mignięciami co kilka sekund, natomiast druga sygnalizuje odebranie poprawnego kodu. Diody sygnalizują także etapy trybu programowania. Cały układ jest zasilany poprzez stabilizator 78L05. Dioda D1 zabezpiecza układ przed napięciem zasilania o błędnej polaryzacji, a kondensatory C1...C5 filtrują to napięcie. Główne zadanie, które wykonuje program, to odbieranie sygnału z odbiornika podczerwieni i odnajdowanie w tym sygnale ramek, czyli kodów wysyłanych z pilota IR. Taka ramka zawiera zwykle od kilkunastu do kilkudziesięciu impulsów, których czasy trwania i czasy przerwy z reguły mieszczą się w przedziale od 0,2ms do 3ms. Program pozwala mierzyć impulsy o długości do 8ms, a jeżeli na wejściu sygnału utrzyma się niezmieniony stan przez 8ms to jest to znak, że nadawanie jednej ramki zostało zakończone i najbliższy impuls będzie początkiem nowej ramki. Gdy pojawi się sygnał, program odmierza czasy impulsów i czasy przerw pomiędzy nimi i zapisuje wyniki w tablicy aż do kolejnej 8-milisekundowej przerwy lub do uzyskania 64 pomiarów. Zatem jedynymi ograniczeniami co do pilota (kodu), którego urządzenie potrafi się „nauczyć”, jest czas każdego pojedynczego impulsu i przerwy, które muszą zawierać się we Październik 2015 E l e k t r o n i k a d l a Ws z y s t k i c h Właściwości: - współpracuje z prawie każdym pilotem na podczerwień, - możliwość przypisania do każdego z wyjść dowolnego przycisku, dowolnego pilota, - sterowanie wyjściami w sposób bistabilny (włącz/wyłącz) lub monostabilny (impulsowy), - sposób sterowania ustawiany indywidualnie dla każdego wyjścia, - obciążalność każdego z wyjść 8A/230V, - zasilanie 9...12VDC, - wymiary płytki 61x137mm 22 GND 8 GND 14 15 16 17 18 19 CF8 D8 D7 D6 D5 D4 R6 1k O S O LED2 P S IR GND IR CF1 CF2 CF5 CF6 CF7 CON3 PK3 R7 1k LED3 O 2 3 4 5 6 11 12 13 P CON4 PK4 R8 1k LED4 MEGA328-PU U2 1 2 CON2 S PB0(ICP1/CLKO/PCINT0) PB1(OC1A/PCINT1) PB2(SS/OC1B/PCINT2) PB3(MOSI/OC2A/PCINT3) PB4(MISO/PCINT4) PB5(SCK/PCINT5) AGND P PK2 PB7(XTAL2/TOSC2/PCINT7) PD0(RXD/PCINT16) PD1(TXD/PCINT17) VCC PD2(INT0/PCINT18) PD3(INT1/OC2B/PCINT19) PD4(T0/XCK/PCINT20) AVCC PD5(T1/OC0B/PCINT21) AREF PD6(AIN0/OC0A/PCINT22) PD7(AIN1/PCINT23) 20 21 LED1 O 7 R5 1k P S VDD PK1 1 10 CON1 D2 D1 D3 PROG LED2 LED1 2 9 CF4 PC0(ADC0/PCINT8) PC1(ADC1/PCINT9) PC2(ADC2/PCINT10) PC3(ADC3/PCINT11) PC4(ADC4/SDA/PCINT12) PC5(ADC5/SCLPCINT13) PB6(XTAL1/TOSC1/PCINT6) 1 CF3 23 24 25 26 27 28 PC6(/RESET/PCINT14) 2 1 1 VDD 2 Rys. 1 GND 1k R11 1k LED7 R2 1k U1 GND IR GND C2 C3 100uF 100nF 78L05 VO VI CON8 3 GND PK8 C4 100nF C1 100uF D1 1N4007 wspomnianych granicach oraz maksymalna długość kodu – 32 impulsy (i 32 przerwy). Ostatni warunek to częstotliwość modulacji sygnału IR – każdy pilot wysyła kody na określonej częstotliwości nośnej, najpopularniejsza, najczęściej spotykana to 36kHz, mniej popularne to 38 czy 40kHz. Zastosowany odbiornik podczerwieni TSOP4836 jest zestrojony dla sygnałów o częstotliwości 36kHz, ale jak się okazało podczas testów, zastosowanie odbiornika o częstotliwości 36kHz umoż- liwia odbiór sygnałów z większości systemów, bez większego ograniczenia zasięgu. W razie potrzeby odbiornik można wymienić na podobny o innej częstotliwości (TSOP4833 – 33kHz, TSOP4838 – 38kHz, TSOP4840 – 40kHz). Pomiar czasów impulsów dokonywany jest za pomocą układu licznikowego TIMER0, który skonfigurowany jest do pracy z okresem około 8ms i rozdzielczością 0,032ms. Każda zmiana stanu z wejścia odbiera- E l e k t r o n i k a d l a Ws z y s t k i c h Październik 2015 12VDC R12 1k LED8 1 1 VDD + VDD O P P 2 IR R1 10 2 GND 100nF 1 CON7 ULN2803A + VDD P PK7 C5 IR 1 LED6 S R10 1k 2 LED9 ST/ON CON6 PK6 O LED2 18 17 16 15 14 13 12 11 10 S 1k R3 GND O1 I1 O2 I2 O3 I3 O4 I4 O5 I5 O6 I6 O7 I7 I8 O8 GND CD+ O LED1 1 2 3 4 5 6 7 8 9 D1 D2 D3 D4 D5 D6 D7 D8 GND S R4 15 13 11 9 7 5 3 1 2 LED10 IR/OFF U3 S1 16 14 12 10 8 6 4 2 CF8 CF7 CF6 CF5 CF4 CF3 CF1 CF2 1 3 4 GND P 2 1 2 PROG LED5 S R9 1k PROG O CON5 PK5 jącego sygnał IR generuje przerwanie, a podprogram obsługi przerwania powoduje odczyt i zapisanie w tablicy scan. buffer[] stanu licznika i wyzerowanie go w celu ponownego odliczania. Po skompletowaniu całej ramki zmienna scan. status przyjmuje wartość SCAN_COMPLETE i blokuje nadpisywanie tablicy do momentu wyzerowania statusu. Utworzona tablica porównywana jest z ramkami zapisanymi w pamięci eeprom mikrokontrolera, z uwzględnieniem pewnej tolerancji określonej stałą SCAN_PULSE_ TOLERANCE. Jeśli porównanie da wynik pozytywny, to podejmowana jest odpowiednia akcja. Niektóre standardy transmisji na podczerwień wstawiają w ramce bit zmienny – np. RC5 i zawarty w nim toggle bit. W takim przypadku urządzenie reagowałoby tylko na co drugie naciśnięcie przycisku pilota. Problem ten został rozwiązany w ten sposób, że urządzenie zapamiętuje dwa kody pilota dla jednej funkcji – jest to sposób prosty, ale wymaga odpowiednio dużo pamięci, dlatego pracą urządzenia steruje mikrokontroler ATmega328 (1024B pamięci eeprom). 49 Program dla mikrokontrolera, zarówno w postaci źródłowej, jak i pliki wynikowe, jest umieszczony w Elportalu wśród materiałów dodatkowych do tego numeru EdW. 3 2 1 3 2 1 3 2 1 3 2 1 3 2 1 3 2 1 3 2 1 3 2 1 50 1 2 1 Przełącznik został zmontowany na płytce, której 1 2 widok pokazano na rysun3 4 ku 2. Montaż należy rozpocząć od wlutowania rezystorów, następnie kondensatorów i podstawek pod układy scalone. W dalszej kolejności należy wlutować stabilizator napięcia, diody LED, szpilki goldpin, przycisk PROG oraz złącza śrubowe, a na samym końcu przekaźniki. Po prawidłowym zmontowaniu układu można przejść do procedury uruchamiania przełącznika. Do złącza CON9 należy dołączyć napięcie zasilania o wartości około 9–12V. Osoby niedoświadczone powinny poprosić kogoś o pomoc w zaprogramowaniu procesora albo zdecydować się na zakup gotowego Rys. 2 zestawu do samodzielnego montażu z gotowym, zaprogramowanym już układem. W czasie normalnej pracy aktywność urządzenia sygnalizuje krótkimi mignięciami co kilka sekund dioda LED9 opisana ST (STATUS). Dioda miga również wtedy, gdy do urządzenia dotrze sygnał z pilota. Druga dioda LED10, opisana IR, sygnalizuje nieco dłuższym mignięciem odebranie sygnału, który został wcześniej zaprogramowany. Aby wprowadzić urządzenie w tryb programowania, należy w pierwszej kolejności założyć zworkę na wybrane szpilki złącza S1, a następnie wcisnąć na czas około dwóch sekund przycisk PROG. Zaświecą się diody ST i IR i po chwili zgaśnie dioda IR. Teraz urządzenie czeka na pierwszy sygnał pilota. Po odebraniu prawidłowego sygnału dioda ST zgaśnie a zaświeci się dioda IR – teraz urządzenie czeka na drugi sygnał z pilota (lub jeszcze raz ten sam 2 Montaż i uruchomienie 3 1 sygnał). Po ponownym odebraniu prawidłowego sygnału zaświecą się na chwilę obie diody, po czym zgasną. Oznacza to, że programowanie sygnału pilota zostało zakończone i urządzenie powróciło do normalnej pracy. Powyższą procedurę trzeba przeprowadzić w sposób analogiczny dla pozostałych kanałów. Nie należy programować tego samego sygnału dla kilku wyjść, ponieważ urządzenie i tak załączy tylko jedno z tych wyjść (zawsze będzie to wyjście o najniższym numerze). Po zaprogramowaniu sygnałów z pilota za pomocą zworek S1 można skonfigurować tryby pracy dla poszczególnych wyjść. Jeśli zworka nie jest założona, to odpowiadające jej wyjście pracuje bistabilnie, czyli w takiej konfiguracji każde przyciśnięcie przycisku pilota załącza przekaźnik a kolejne przyciśnięcie przycisku wyłącza go. Jeśli na danym kanale będzie założona zworka, to odpowiadający jej przekaźnik pracuje monostabilnie, czyli wyjście załączone jest tak długo, jak długo wciśnięty jest przycisk, a zwolnienie przycisku rozłącza wyjście. EB Październik 2015 E l e k t r o n i k a d l a Ws z y s t k i c h Wykaz elementów R1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10W R2-R12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1kW C1, C2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100uF C3-C5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100nF D1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1N4007 U1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78L05 U2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ATMEGA328 U3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ULN2803A LED1-LED10 . . . . . . . . . . . . . . . . . . . . . . . dioda LED PROG . . . . . . . . . . . . . . . . . . . . . . . . . . . .mikroswitch CON1-CON8, IR . . . . . . . . . . . . . . . złącze DG301-5/3 CON9 . . . . . . . . . . . . . . . . . . . . . . . złącze DG301-5/2 PK1-PK8 . . . .przekaźnik JQC3FF/121ZS lub podobny S1 . . . . . . . . . . . . . . . . . listwa goldpin 2x8 + zworki Komplet podzespołów z płytką jest dostępny w sieci handlowej AVT jako kit szkolny AVT-3138.