EP 2005_10.pdf

(42325 KB) Pobierz
450753366 UNPDF
450753366.051.png
Immobilizer z szyfratorem DES
Immobilizer
z szyfratorem DES
Założeniem przedstawionego
projektu była ochrona
samochodu przed niepowołanym
uruchomieniem, natomiast
inspiracją historia jednego ze
znajomych autora, który stał
się szczęśliwym posiadaczem
niebanalnego pojazdu.
Rekomendacje:
urządzenie o niebanalnych:
konstrukcji i pomyśle. Jest
to pierwsze prezentowane
na łamach EP praktyczne
zastosowanie sprzętowego
szyfratora DES – warto
dowiedzieć się jak działają
i gdzie można kupić tak
wyrafinowane układy!
Niebanalność polegała na tym,
iż towarzystwo ubezpieczeniowe nie
chciało wydać polisy na ów pojazd
bez zamontowania w nim dodatko-
wo (oprócz standardowego alarmu)
systemu trackingowego. Jako do-
datek do owego systemu dołączo-
na została karta transponderowa,
która przez cały czas użytkowania
samochodu musi pozostać w jego
wnętrzu, stanowiąc jednoczenie za-
bezpieczenie przed ucieczką samo-
chodem po uprzednim, fizycznym
usunięciu właściciela z jego wnę-
trza. Po zgrubnych oględzinach kar-
ty okazało się, że jest ona zasilana
bateryjnie i posiada nadajnik radio-
wy. Usunięcie karty z wnętrza po-
jazdu powoduje zerwanie komunika-
cji karty z jednostką w samochodzie
i tym samym powiadomienie (GPRS)
patrolu interwencyjnego firmy za-
pewniającej obsługę całego systemu.
Skomplikowane i kosztowne...
W artykule przedstawiono pro-
jekt immobilizera samochodowego
z aktywną kartą transponderową.
Funkcja układu sprowadza się do
blokady dopływu paliwa do silnika
samochodu w przypadku, gdy niepo-
wołana osoba nie dysponuje kartą
transponderową. Urządzenie działa
niejako w tle, nie absorbując uwagi
użytkownika. Duży nacisk położono
na realizację bateryjnego zasilania
karty transponderowej (tak aby wy-
miana baterii nie stała się głównym
zajęciem kierowcy). Od pewnego
czasu na rynku krajowym dostęp-
ny jest dość interesujący i niedrogi
układ, idealnie nadający się do ce-
lów prezentowanego projektu. Jest
to CC1010 produkowany przez fir-
mę Chipcon.
Opis układu
CC1010 jest scalonym transce-
iverem pracującym w paśmie ISM,
zintegrowanym z mikrokontrolerem
8051. Hierarchia (transceiver z mi-
krokontrolerem) nie jest tu przypad-
kowa, ponieważ bloki układu w nim
zawarte zostały dobrane wyłącznie
z myślą o transmisjach radiowych.
Na rys. 1 przedstawiono schemat
blokowy układu CC1010, natomiast
w tab. 1 zestawiono jego najważ-
niejsze parametry. Oprócz standar-
dowych elementów jak pamięć pro-
gramu typu Flash czy przetwornik
A/C, układ CC1010 ma wbudowane
dwa interfejsy UART, zegar czasu
rzeczywistego (po dołączeniu ze-
wnętrznego rezonatora 32,768 kHz),
interfejs SPI. Prawdziwym rarytasem
w prezentowanym układzie jest pro-
gramowo konfigurowalny transceiver
pozwalający na pracę w jednym
z wybranych pasm ISM (315 MHz,
433 MHz, 868 MHz i 915 MHz).
W każdym z pasm mamy do wybo-
ru kilka kanałów pracy transceivera
oraz możliwość programowej kon-
troli poziomu mocy emitowanego
sygnału. Całości dopełnia sprzętowy
blok kryptograficzny (DES – data
encryption standard ) pozwalający na
szyfrowanie i deszyfrowanie bloków
po 256 bajtów danych za pomo-
cą 56 bitowego klucza. Dodatkowo
blok ten może pracować w tzw. try-
bie Triple – DES (dedykowanym do
PODSTAWOWE PARAMETRY
• Płytka o wymiarach: 100 x 64 mm
• Zasilanie płytki jednostki centralnej: 12 VDC
(instalacja samochodowa)
• Zasilanie karty transponderowej: 3 VDC
(bateria CR2477 – 3 V/1000 mAh)
• Czas pracy karty na jednej baterii: ok. 2
miesięcy
• Pasmo pracy: 868 MHz
• Moc sygnału: +4 dBm
• Modulacja: FSK
• Kodowanie: Manchester
• Prędkość transmisji: 2400 bd
• Czułość: –103 dB
• Sposób zabezpieczenia: blokada dopływu
paliwa
10
Elektronika Praktyczna 10/2005
P R O J E K T Y
Niebanalność polegała na tym, lów prezentowanego projektu. Jest
450753366.062.png 450753366.073.png
Immobilizer z szyfratorem DES
Tab. 1. Najważniejsze parametry układu CC1010
Parametry transceivera
Parametry rdzenia 8051
dostarczonego wraz z dokumentacją
układu. Płytki dostarczane są bez
elementów, które należy skompleto-
wać we własnym zakresie na pod-
stawie dołączonego do dokumenta-
cji wykazu elementów. Opisywana
płytka ma wymiar 5x6 cm i mieści
na sobie pola lutownicze do mon-
tażu samego CC1010, elementów
toru radiowego, dwóch oscylato-
rów kwarcowych oraz specjalnych
konektorów SMD lutowanych od
spodu. Kompletny schemat modułu
przedstawiono na rys. 2 . W celu re-
alizacji karty transponderowej uży-
ta została jedna taka płytka, którą
wyposażono w gniazdo płaskiej ba-
terii litowej 3 V. Jedynym poważ-
nym mankamentem CC1010 jest
to, że narzędzia oficjalnie wspiera-
ne przez Chipcona nie są dostępne
bezpłatnie. Dostarczone do układu
biblioteki HAL ( Hardware Abstrac-
tion Library ) i CUL ( Chipcon Utility
Library ) zostały stworzone z myślą
o środowisku Keil uVision, którego
ewaluacyjna wersja posiada ograni-
czenie rozmiaru kodu wynikowego
do 2 kB (co uniemożliwia swobod-
ne korzystanie z układu). Z pomocą
jednak przyszedł kompilator SDCC,
który nie jest oficjalnie wspierany
przez Chipcon, to jednak bezpro-
blemowo radzi sobie z kompilacją
programów pisanych z użyciem obu
wymienionych bibliotek.
Programowana częstotliwość pracy (300 do
1000 MHz)
Zoptymalizowany rdzeń 8051. 2,5 raza wydaj-
niejszy niż standardowy 8051
Duża czułość odbiornika (typ. –107 dBm przy
2,4 kbd)
Tryb bezczynności (idle) i czuwania (sleep)
Programowalny poziom mocy wyjściowej (–20 do
+10 dBm)
32 kB nieulotnej pamięci Flash
Niski pobór mocy (9,1 mA w trybie odbioru) 2 k + 128 bajtów wewnętrznej pamięci
SRAM
Modulacja FSK (max. 76,8 kbd) Zasilanie 2,7…3,6 V
Wyjście RSSI (poziom sygnały wejściowego) Częstotliwość taktowania 3…24 MHz
Rys. 1. Schemat blokowy układu CC1010
Karta transponderowa
Jak wspomniano wcześniej, bu-
dowa karty transponderowej opiera
się jedynie na module z układem
CC1010 z dołączoną baterią. Nie-
co więcej wysiłku wymagała część
programowa. Problemem był pobór
prądu podczas pracy układu. Po-
nieważ z założenia karta po zbli-
żeniu do samochodu powinna ode-
brać ramkę danych nadawaną przez
część immobilizera umieszczoną
w samochodzie, a następnie po jej
odszyfrowaniu, modyfikacji i ponow-
nym zaszyfrowaniu odesłać odpo-
wiedź, to jej odbiornik powinien
być gotowy na przyjęcie transmisji
w każdej chwili. Oznaczałoby to, że
pobór prądu przez kartę wynosił-
by około 20 mA, co powodowałby
bardzo szybkie zużycie baterii. Aby
rozwiązać ten problem, zastosowa-
no tzw. polling odbiornika radiowe-
go. Na początku pracy transponder
(przypomnijmy wyposażony w dwa
generatory kwarcowe) uruchamia
drugi generator o częstotliwości pra-
cy 32,768 kHz, po czym przełącza
systemów o szczególnych wymogach
bezpieczeństwa). Transceiver jest
wyposażony w wyjście napięciowe
poziomu odebranego sygnału (RSSI
received signal strength indica-
tion ), które może być bezpośrednio
podane na wejście wewnętrznego
przetwornika A/C. Ciekawostką jest
wyposażenie układu w generator
losowego bitu, przy czym nie jest
to blok pseudolosowy. Wartość bitu
uzyskiwana jest poprzez wzmoc-
nienie poziomu szumu w torze od-
biorczym transceivera, a następnie
podawanie takiego sygnału na blok
decyzyjny. Sam CC1010 do popraw-
nej pracy wymaga niewielu elemen-
tów zewnętrznych. Większość z nich
jest niezbędna do poprawnej pracy
części radiowej układu. Pozornie,
jak przekonał się autor, sprawa pro-
jektu płytki drukowanej pod opisy-
wany układ wygląda prosto. Jednak
po dokładnym przestudiowaniu do-
kumentacji dostarczonej przez Chip-
cona okazuje się, że do popraw-
nej pracy w paśmie 868 MHz (taką
częstotliwość pracy wybrano do
projektu) niezbędne jest wykonanie
4–warstwowej płytki drukowanej,
co okazało się zbyt kosztownym
zadaniem. Z pomocą przybył kra-
jowy dystrybutor firmy Chipcon,
oferujący w swoim asortymencie
4–warstwowe płytki drukowane
wykonane według reference design
Elektronika Praktyczna 10/2005
11
450753366.079.png 450753366.001.png 450753366.002.png 450753366.003.png 450753366.004.png 450753366.005.png 450753366.006.png 450753366.007.png 450753366.008.png 450753366.009.png 450753366.010.png
Immobilizer z szyfratorem DES
Rys. 2. Schemat elektryczny modułu z reference design dostarczonego przez Chipcon
12
Elektronika Praktyczna 10/2005
450753366.011.png 450753366.012.png 450753366.013.png 450753366.014.png 450753366.015.png 450753366.016.png 450753366.017.png 450753366.018.png 450753366.019.png 450753366.020.png 450753366.021.png 450753366.022.png 450753366.023.png 450753366.024.png 450753366.025.png 450753366.026.png 450753366.027.png 450753366.028.png 450753366.029.png 450753366.030.png 450753366.031.png 450753366.032.png 450753366.033.png 450753366.034.png 450753366.035.png 450753366.036.png 450753366.037.png 450753366.038.png 450753366.039.png 450753366.040.png 450753366.041.png 450753366.042.png 450753366.043.png 450753366.044.png 450753366.045.png 450753366.046.png 450753366.047.png 450753366.048.png 450753366.049.png 450753366.050.png 450753366.052.png 450753366.053.png 450753366.054.png 450753366.055.png 450753366.056.png 450753366.057.png 450753366.058.png 450753366.059.png 450753366.060.png 450753366.061.png 450753366.063.png 450753366.064.png 450753366.065.png 450753366.066.png 450753366.067.png 450753366.068.png 450753366.069.png 450753366.070.png 450753366.071.png 450753366.072.png 450753366.074.png
Immobilizer z szyfratorem DES
Rys. 3. Schemat elektryczny jednostki umieszczonej w samochodzie
układ taktowania rdzenia na ten
właśnie wolny oscylator uprzednio
uaktywniając zegar czasu rzeczywi-
stego, tak aby generował przerwa-
nie co 2 s. Pobór prądu w tym mo-
mencie wynosi 1,3 mA i niemożliwe
jest korzystanie z transceivera. Kolej-
nym krokiem jest przejście rdzenia
mikrokontrolera w tryb bezczynności
( idle ), co powoduje kolejny spadek
poboru prądu do 29,4 mA. Mikro-
kontroler pozostanie w trybie idle
do momentu, kiedy zegar RT nie
wygeneruje sygnału przerwania,
czyli przez dwie sekundy. Po tej
czynności układ przechodzi ponow-
nie do trybu aktywnego i przełącza
źródło zegara na szybki oscylator
(14,7456 MHz). Na-
stępuje uruchomienie
toru odbiorczego trans-
pondera i rozpoczyna
się oczekiwanie na
nadejście ramki. Czas
oczekiwania wynosi
20 ms. Kod odpowie-
dzialny za tę część
programu przedstawio-
no na list. 1 .
Jeśli nie było trans-
misji, układ po 20 ms
oczekiwania przecho-
dzi ponownie w tryb
bezczynności i jest tak-
towany sygnałem zegarowym o ma-
łej częstotliwości. Jeżeli ramka da-
nych została poprawnie odebrana,
następuje analiza nagłówka ramki.
Są dwa możliwe przypadki: ramka
konfiguracyjna i ramka kontrolna.
Ramka konfiguracyjna jest to ram-
ka niosąca informację o 7–bajtowym
kluczu, jaki ma być używany do
dekodowania ramek standardowych.
Klucz wyłuskany z ramki zostaje
zapisany w obszarze pamięci flash
pod stosownym adresem tak, aby
po wyjęciu baterii wartość klucza
została zachowana. Służy do tego
Rys. 4. Sposób montażu goldpinów na module
CC1010 (widok modułu od strony złącza)
Pasma ISM
ISM – Industrial, Scientific, Medical – są to
nielicencjonowane pasma radiowe, przezna-
czone do transmisji z małymi mocami na nie-
wielkie odległości. Najpopularniejszym pasmem
ISM jest 2,4 GHz, wykorzystywane m.in.
przez urządzenia Bluetooth oraz WiFi. Równie
popularnym pasmem dopuszczonym do
użytkowania w Polsce jest 868 MHz, w którym
pracuje immobilizer opisany w artykule.
Elektronika Praktyczna 10/2005
13
450753366.075.png 450753366.076.png 450753366.077.png 450753366.078.png
Zgłoś jeśli naruszono regulamin