Sterownik 2-kanałowy Keeloq

Sterownik 2-kanałowy Keeloq
Pobierz PDF Download icon

Współczesny sprzęt elektroniczny coraz częściej jest wyposażany w moduły łączności bezprzewodowej. Obsługa urządzenia staje się dzięki nim prostsza i wygodniejsza. Rekomendacje: użyty w sterowniku typowy pilot od alarmu samochodowego nie ogranicza obszaru zastosowań samego urządzenia, który dzięki swej uniwersalności może być bardzo różnorodny.

Podstawowe parametry:
  • Płytka o wymiarach 104×41 mm
  • Zasilanie +12 V
  • Prąd zasilania 10 mA w spoczynku, max. 100 mA
  • Sterowanie radiowe 433 MHz
  • Transmisja radiowa zmiennokodowa Keeloq
  • Dwa obwody sterujące 8 A/250 V
  • Liczba uprawnionych pilotów: maks. 8
  • Zasięg minimalny: 20 m
  • Sygnalizacji wyczerpania baterii

Stosowane w urządzeniach moduły łączności bezprzewodowej wykorzystują różne metody przesyłania informacji. Obecnie najczęściej jest stosowana transmisja w podczerwieni (sterowanie urządzeń audio-video) oraz transmisja radiowa (np. obsługa alarmów samochodowych). Przedstawiony w artykule układ umożliwia sterowanie dwoma przekaźnikami za pomocą fal radiowych. Medium to zostało wybrane z uwagi na możliwość szerszego zastosowania. Nie ogranicza to bowiem działania urządzenia w obrębie jednego pomieszczenia, jak w przypadku łączności w podczerwieni. Dodatkowym założeniem podczas projektowania układu była możliwość zastosowania gotowych pilotów, co pozwoliłoby uniknąć trudności z uruchomieniem toru radiowego. Przesyłanie danych drogą radiową wymaga zabezpieczenia przed błędami. W najprostszy sposób można to wykonać stosując scalony koder i dekoder, na przykład MC145028. Jednak jest to układ „stałokodowy” i w formie gotowego pilota jest już niespotykany.

Komunikacja radiowa jest powszechnie wykorzystywana w alarmach samochodowych i z tego względu wymagane jest zabezpieczenie przed błędami, a także przed dostępem osób niepowołanych. Najłatwiej będzie więc zastosować piloty od takich systemów. Jednym z najbardziej rozpowszechnionych jest system kodowania Keeloq opracowany przez firmę Microchip. Jest to system transmisji zmiennokodowej, co gwarantuje duże bezpieczeństwo przesyłanych danych. I choć do sterowania przekaźnikami nie jest wymagane takie zabezpieczenie, to decydując się na nie, nie tracimy możliwości szerszego zastosowania takiego układu sterowania. Piloty pracujące w tym systemie są najbardziej dostępne i takie też zostały zastosowane w prezentowanym sterowniku.

Wykorzystanie kodowania Keeloq wiąże się z koniecznością wstępnego zaprogramowania układu znajdującego się w pilocie oraz dopasowanie go do układu odbiorczego. Wynika to z faktu, że każdy pilot otrzymuje w procesie programowania między innymi: numer seryjny i kod producenta. Zastosowanie takiego samego kodu producenta po stronie odbiorczej pozwala na współpracę obydwu układów. Jest to dodatkowe zabezpieczenie, przed możliwością użycia pilota zaprogramowanego przez innego producenta. Zgodność kodu producenta po stronie nadawczej i odbiorczej pozwala więc na wpisanie informacji o danym pilocie w pamięci odbiornika. To z kolei pozwala na analizowanie danych wysyłanych przez tego pilota i zmianę stanu przekaźników. Struktura danych wysyłanych przez nadajnik jest przedstawiona na rys. 1.

Rys. 1. Struktura pakietu danych w standardzie Keeloq 

Cały pakiet składa się z 66 bitów i jest podzielony na dwie części: stałokodową i zmiennokodową. W części stałokodowej (Fixed Data Code) znajduje się numer seryjny, kod naciśniętego przycisku pilota, informacja o stanie baterii oraz status naciśniętego przycisku (czy jest naciśnięty kilkukrotnie, czy jest przytrzymywany). W części zmiennokodowej (Encrypted Data Code) na 4 bitach znajduje się informacja o naciśniętym przycisku, a na pozostałych zmienne dane zapewniające unikatową zawartość każdego pakietu. Każde naciśnięcie przycisku pilota powoduje generowanie innego kodu zgodnie z algorytmem opracowanym przez firmę Microchip. Dlatego nawet podsłuchanie transmisji radiowej i ponowne wysłanie jej do odbiornika nie umożliwi dostępu do niego – każdy pakiet może być użyty tylko jeden raz. Aby nadajnik mógł współpracować z odbiornikiem, w czasie wpisywania go do pamięci następuje synchronizacja. Po takiej synchronizacji odbiornik przewiduje (zgodnie z algorytmem kodowania i dekodowania), jaki będzie następny kod wysłany przez nadajnik i na taki kod reaguje. Jeśli nadajnik wygeneruje dużą liczbę transmisji nie będąc w zasięgu odbiornika, to dojdzie do rozsynchronizowania. W takiej sytuacji kod wysłany przez nadajnik będzie różny od kodu przewidzianego przez odbiornik i polecenie nie zostanie rozpoznane. Aby zapewnić jak najbardziej funkcjonalne działanie, system kodowania jest wyposażony w mechanizm szybkiej synchronizacji. Dwukrotne naciśnięcie przycisku w pilocie powoduje ponowne zsynchronizowanie nadajnika z odbiornikiem.

Po stronie odbiorczej znajduje się mikrokontroler typu PIC16F628A, który zawiera oprogramowanie dekodujące dane wysyłane w systemie Keeloq i na tej podstawie odpowiednio steruje przekaźnikami. Oprogramowanie jest przystosowane do pilotów produkowanych przez firmę Quasarelectronics i współpraca jest możliwa tylko z pilotami tej firmy. Zastosowane piloty posiadają dwa przyciski, które włączają i wyłączają niezależnie każdy z przekaźników. Możliwe jest też przełączenie w tryb, w którym jeden przycisk będzie załączał obydwa przekaźniki, a drugi będzie je rozłączał.

Budowa

Schemat elektryczny sterownika jest przedstawiony na rys. 2. Sercem całego układu jest mikrokontroler typu PIC16F628A. Układ ten steruje wszystkimi procesami poczynając od obsługi przycisku programującego, poprzez sterowanie przekaźnikami, aż do odbioru i dekodowania danych pochodzących z odbiornika radiowego. Do taktowania procesora zastosowano wewnętrzny generator RC. Dostarcza on przebieg o częstotliwości 4 MHz, dlatego nie jest konieczne dołączanie dodatkowego, zewnętrznego rezonatora kwarcowego.

Rys. 2. Schemat elektryczny sterownika

Tak wytworzona częstotliwość taktująca jest mniej stabilna niż generatora kwarcowego, jednak w tym zastosowaniu nie jest wymagana wysoka dokładność i stabilność przebiegu taktującego. Dokładane odmierzanie czasu jest wymagane do dekodowania danych pochodzących z toru radiowego. Aby zapewnić prawidłowy ich odbiór, procesor synchronizując się z tym przebiegiem dostosowuje się do parametrów transmisji. Dlatego zmiany częstotliwości jego zegara taktującego nie mają wpływu na poprawność odbierania danych.

Do odbioru danych zastosowano moduł odbiornika radiowego na pasmo 433 MHz. Dzięki temu cały proces związany z obróbką sygnału radiowego jest wykonywany przez niego, a do procesora trafia przetworzony na postać cyfrową sygnał. Złącze CON4 służy do dołączenia anteny odbiornika.

Jako układy wykonawcze zostały zastosowane dwa przekaźniki PK1 i PK2. Są one sterowane przez procesor, za pośrednictwem wzmacniaczy tranzystorowych T1 i T2. Stan przekaźników jest sygnalizowany za pomocą diod świecących D3 i D4. Dodatkowa sygnalizacja pracy urządzenia jest wykonywana za pomocą diod D6 i D7. Dioda D6 wskazuje poprawność odebrania komendy z pilota i zapalana jest na czas 500 ms po jego naciśnięciu. Dioda D7 sygnalizuje wyczerpanie baterii w pilocie. Przycisk S1 służy do wprowadzenia procesora w tryb programowania pilotów. Zworka JP1 umożliwia zmianę trybu sterowania przekaźników.

Układ sterownika jest zasilany napięciem +12 V dołączonym do złącza CON1. Dioda D1 zabezpiecza układ przed dołączeniem napięcia o odwrotnej polaryzacji. Napięcie zasilające jest następnie kierowane do cewek przekaźników oraz na wejście stabilizatora napięcia US2. Na jego wyjściu uzyskuje się napięcie stabilizowane o wartości +5 V, które służy do zasilania układów elektronicznych sterownika.

Montaż

Układ sterownika został zmontowany na dwustronnej płytce, której widok jest przedstawiony na rys. 3. Montaż należy rozpocząć od wlutowania rezystorów oraz diod prostowniczych (D1, D2, D5). W dalszej kolejności należy zamontować podstawkę pod mikrokontroler, kondensatory i tranzystory. W ostatnim etapie montowane są pozostałe elementy poczynając od mikrowłącznika, a kończąc na przekaźnikach. Po zamontowaniu wszystkich elementów należy jeszcze przylutować antenę, która jest wykonana z odcinka przewodu o długości 17 cm. Do tak zmontowanego układu można dołączyć napięcie zasilania o wartości +12 V i wydajności prądowej minimum 200 mA.

Rys. 3. Rozmieszczenie elementów na płytce sterownika 

Programowanie pilotów

Do uruchomienia funkcji programowania pilotów służy przycisk S1, przy czym może on uruchomić dwie funkcje: programowanie pilotów oraz kasowanie pilotów zapisanych w pamięci procesora.

Po krótkotrwałym naciśnięciu przycisku zapali się dioda D6 na czas 15 sekund. Należy wówczas nacisnąć przycisk pilota, który ma być zapisany do pamięci. Po prawidłowym odebraniu sygnału z pilota dioda D6 zacznie błyskać, a po kilku sekundach zgaśnie. Kod pilota zostanie zapisany w pamięci procesora i od tej pory sterownik będzie reagował na sygnały od tego pilota. Wpisanie kolejnych pilotów polega na powtórzeniu wyżej opisanej procedury dla każdego z nich. W pamięci procesora można zapisać maksymalnie 8 pilotów.

Powyższa procedura umożliwia tylko zapis pilotów do pamięci i nie ma możliwości usunięcia pojedynczego pilota z pamięci. Aby wykasować zaprogramowane piloty, należy nacisnąć przycisk S1 na 10 sekund. Spowoduje to zapalenie się diody D6. Przycisk należy trzymać aż do momentu zgaśnięcia diody. Po tym czasie wszystkie zapisane w pamięci piloty zostaną wykasowane.

Obsługa

Po zapisaniu uprawnionych pilotów w pamięci procesora układ jest gotowy do pracy. Sposób sterowania przekaźnikami jest uzależniony od ustawienia zworki JP1. Jeśli będzie rozwarta, to każdy z przycisków pilota steruje innym przekaźnikiem. Naciśniecie przycisku powoduje załączenie przekaźnika, ponowne naciśniecie powoduje jego wyłączenie. Jeśli zworka będzie zwarta, to oba przekaźniki będą pracowały równocześnie. Naciśnięcie jednego przycisku na pilocie spowoduje ich załączenie, a drugiego spowoduje ich wyłączenie.

Dioda D6 będzie sygnalizowała odebranie kodu pilota. Jeśli równocześnie z diodą D6 zapali się dioda D7, to będzie to oznaczało, że bateria w pilocie jest bliska wyczerpaniu i należy ją wymienić.

Krzysztof Pławsiuk

Elektronika Praktyczna Plus lipiec - grudzień 2012

Elektronika Praktyczna Plus

Monograficzne wydania specjalne

Elektronik lipiec 2026

Elektronik

Magazyn elektroniki profesjonalnej

Raspberry Pi 2015

Raspberry Pi

Wykorzystaj wszystkie możliwości wyjątkowego minikomputera

Świat Radio lipiec - sierpień 2026

Świat Radio

Magazyn krótkofalowców i amatorów CB

Automatyka, Podzespoły, Aplikacje czerwiec 2026

Automatyka, Podzespoły, Aplikacje

Technika i rynek systemów automatyki

Elektronika Praktyczna czerwiec 2026

Elektronika Praktyczna

Międzynarodowy magazyn elektroników konstruktorów

Elektronika dla Wszystkich lipiec 2026

Elektronika dla Wszystkich

Interesująca elektronika dla pasjonatów