Magistrala CAN cz 3


Magistrala CAN, część 3
Zdecentralizowana wymiana danych
Dwie pierwsze czści tego Detekcja błdw
i ich korekcja
artykułu dotyczyły historii,
Jedną z najbardziej
normalizacji, podstawowej
rzucających si w oczy
struktury i protokołu
cech magistrali CAM jest
transmisji danych Sieci
jej nadzwyczajna zdol-
Obszaru Sterownika.
nośĘ wykrywania wielu
W niniejszej, trzeciej czści,
błdw podczas transmi-
połołono nacisk na aspekty
sji danych i odpowie-
praktyczne.
dniego reagowania na
nie. Ma ona odstp Ham-
minga (nazywany takłe
odstpem sygnałowym)
rwny 6. Odstp sygna-
łowy midzy dwoma sło-
wami dwjkowymi o tej
samej długości jest li-
czbą bitw na odpowia-
dających sobie pozycjach, ktre jest tylko jedna stacja, ktra wy-
mają rłne wartości. Na przykład syła wiadomośĘ do magistrali i od-
odstp sygnałowy midzy słowa- biera zwrotnie inny, rłniący si
mi dwjkowymi 11011010 od wysłanego bit (stan magistrali),
i 10000110 wynosi 4, poniewał to jest oczywiste, łe na magistrali
bity: 3-ci, 4-ty, 5-ty i 7-my (licząc wystąpił błąd. W takiej sytuacji
od prawej) rłnią si wartościami. stacja przełącza si na procedur
Magistralą CAN dane mogą byĘ korekcji błdu. (patrz dalej).
Tab. 3. Porównanie parametrów
transmitowane z szybkością 500
systemów CAN 20A (format ramki
kbitw/s. Na kałde 0,7 s przypada Wykrywanie błdnych bitw do-
standardowej) i CAN 20B (format ramki
jeden błdny bit spowodowany datkowych
rozszerzonej)
zewntrznymi zakłceniami. SieĘ W specyfikacja CAN określa
Parametr ................................... CAN2.0A CAN2.0B
mołe pracowaĘ osiem godzin wyranie, łe gdy w ramce danych
Maksymalna liczba
dziennie przez 365 dni w roku. jest transmitowanych kolejno wi-
identyfikatorów .............................. 211 229
Liczba stacji (węzłów) ..................... 32 32 Wbudowany sposb zabezpiecze- cej nił piĘ bitw o tej samej
Szybkość transmisji [kbit/s] ........ 5..125 5..1000
nia przed błdami gwarantuje, łe wartości (na przykład siedem razy
Liczba bajtów w ramce ................. 0 - 8 0 - 8
przez 1000 lat pracy tylko jeden wartośĘ zero w jakimś polu), to
Maksymalna długość
błąd nie bdzie wykryty. Błdy kałda grupa piciu bitw jest
ramki ........................................ 117 bitów 13 bitów
Maksymalny zasięg mogą wystpowaĘ i oczywiście poprzedzana przez bit komple-
sieci .......................................... patrz tekst patrz tekst
wystpują, ale skoro są rozpozna- mentarny (tutaj oczywiście 1).
wane, to mołna je skorygowaĘ. Ten wprowadzony bit, ktry oczy-
Tylko nierozpoznane błdy mogą wiście nie zawiera w ogle ładnej
powodowaĘ, łe fałszywe wyniki informacji, jest nazywany bitem
pomiarw bdą przetwarzane. dodatkowym. Po zakoczeniu od-
bioru, te bity są usuwane ze
Wykrywanie błdw strumienia danych, tak łe tylko
transmisji pierwotna wiadomośĘ jest prze-
Artykuł publikujemy na pod-
W CAN zastosowano rwno- twarzana.
stawie umowy z wydawcą mie-
cześnie kilka sposobw wykrywa- Dodatkowe bity mogą byĘ z łat-
sicznika "Elektor Electronics".
nia błdw. wością ułyte do kontroli błdw.
Jełeli odbiornik wykryje w ramce
Editorial items appearing on
Detekcja błdnego bitu wicej nił piĘ kolejnych bitw
pages 13..16 are the copyright
Kałda stacja zawsze odbiera o tej samej wartości (lecz nie
property of (C) Segment B.V., the
zwrotnie swoją własną transmisj. w polu EOF), to jest oczywiste, łe
Netherlands, 1998 which reserves
Dlatego, jełeli po fazie arbitrału to nie jest poprawny odczyt, i łe
all rights.
Elektronika Praktyczna 3/2000
13
wystąpił błąd podczas transmisji
Szyna
danych
danych (wystąpił dodatkowy bit
Dane TxD CAN H
użytkownika
lub został odwrcony jeden lub
wicej bitw). Wtedy odbiornik
RxD CAN L
Transceiver
zawiesza działanie i uruchamia
CAN
Szyna
sterująca
procedur poprawiania błdw
(zobacz dalej).
Ramki
Detekcja błdu CRC
CAN
Proces ten polega, jak juł
wspomniano, na oszacowaniu su-
Rys. 9 Schemat blokowy trójstopniowej Sieci Obszaru Sterownika (CAN).
my kontrolnej CRC w odbiorniku.
Gdy sumy kontrolne: odebrana Po pierwsze, ramki w ktrych wiednią szybkością lub jest sta-
i obliczona rłnią si, to odbior- został stwierdzony jakiś błąd są cją, ktra odbiera tylko błdne
nik zmienia swoje działanie uru- natychmiast odrzucane przez od- dane? Taka stacja mogłaby stale
chamiając procedur korekcji bł- powiednią stacj i nie przetwa- wysyłaĘ ramk sygnalizująca
dw (zobacz dalej). rzane. Po drugie, jełeli ktraś ze błąd i tym samym zablokowaĘ
stacji systemu wykryje jakiś błąd, całą sieĘ. CAN jest odpowie-
Detekcja błdu potwierdzenia to wysyła natychmiast ramk in- dnio zabezpieczony przed ta-
W opisie formatu ramki (patrz formującą o błdzie, ktra składa kim zdarzeniem, ale brak miej-
rys. 6) wspomniano o bicie ACK si z sześciu dominujących bitw sca nie pozwala na opisanie
(bit przerwy na potwierdzenie), (sygnalizacja błdu) i ograniczni- tego w tym artykule.
ktry jest wysyłany przez stacj ka ramki błdu zawierającego
jako bit recesywny. Wszystkie osiem bitw recesywnych. Wsku- Podsumowanie
stacje, ktre poprawnie odebrały tek tego wszystkie bity recesywne Parametry dwch wersji syste-
poprzednią ramk nadpisują na magistrali są nadpisywane, tak mu CAN, tj. CAN 20A (format
(przykrywają) ten bit bitem do- łe wystpuje na niej tylko sześĘ ramki standardowej) i CAN 20B
minującym. Stacja nadająca wy- dominujących bitw. Jest to jed- (format ramki rozszerzonej) por-
krywa to i wie, łe przynajmniej nak naruszenie przyjtej zasady, wnano w tablicy 3.
jedna stacja odebrała jej dane łe nie wicej nił piĘ kolejnych Chociał CAN jest efektywnym
poprawnie. bitw mołe mieĘ tą samą war- i bardzo niezawodnym systemem
Jełeli stacja nadająca stwier- tośĘ. do przesyłania danych, to Czytel-
dzi, łe jej bit w przerwie na Wszystkie pozostałe stacje do- nik i potencjalny ułytkownik sy-
potwierdzenie (ACK slot) nie zo- łączone do magistrali wykrywają stemu mołe zapytaĘ jak mołna
stał nadpisany, to wie, łe ładna ten stan i uznają dopiero co ode- praktycznie zastosowaĘ ten sy-
stacja nie odebrała jej wiadomości braną ramk jako błdną (wadli- stem? Są w nim bity dominujące
poprawnie. W takim razie, zawie- wą), odrzucają ją i takłe wysyłają i recesywne, 11-bitowy identyfika-
sza swoje dotychczasowe działa- ramk sygnalizującą o błdzie. Ina- tor, 15-bitowa suma kontrolna
nie i wywołuje procedur korekcji czej mwiąc, stacja ktra wykryła CRC, 1-bitowy ogranicznik, 7-
błdw (zobacz dalej). błąd celowo uszkadza całą trans- bitowe pole EOF, 6-bitowa ramka
mitowaną ramk, tak łe wszystkie błdu i wiele innych dziwności.
Detekcja błdu formatu stacje dołączone do magistrali adna z nich nie kojarzy si
W tym procesie wykorzystywa- odbierają ją jako błdną. To oz- bezpośrednio ze strukturą danych
ny jest fakt, łe w ramce jest kilka nacza, łe o jakimś błdzie lokal- mikrokontrolera 8- lub 16-
pl, ktre muszą zawsze mieĘ nym w jednej stacji są natych- bitowego.
ustaloną zawartośĘ: w polu ogra- miast poinformowane wszystkie Jak wic jest mołliwe zapro-
nicznika CRC (bit koca CRC), pozostałe stacje. Głwnym załołe- gramowanie mikrokontrolera zgo-
w polu ogranicznika potwierdze- niem sieci jest, łeby wszystkie dnie z protokłem sieci? Jełeli
nia i w polu EOF są zawsze bity stacje odbierały poprawne dane, o to chodzi, to przyszły konstruk-
recesywne. Jełeli w tych polach ktre mogą byĘ dalej przetwarza- tor nie powinien si tym mar-
zostanie wykryty bit dominujący, ne lub łeby wszystkie stacje od- twiĘ. Dla tej sieci jest bowiem
to taki stan mołe byĘ tylko bierały błdne dane, ktre bdą dostpnych mnstwo gotowych,
spowodowany przez błąd transmi- odrzucane. Pierwotna stacja nada- niedrogich elementw składo-
sji danych. Wwczas stacja nada- jąca stwierdza oczywiście, łe ram- wych, modułw. Są one dostar-
jąca uruchamia takłe procedur ka ktrą wysłała jest z błdem, czane przez producentw ukła-
korekcji błdu. poprawia tą wiadomośĘ i natych- dw scalonych dla systemu CAN,
miast wysyła ponownie. co spowodowało, łe ta sieĘ stała
Korekcja błdw si tak popularna, w tak krtkim
Procedura korekcji błdw Błąd wewnątrz stacji czasie.
w wypadku błdu transmisji da- Co si stanie, gdy stacja Typowe interfejsy CAN skła-
nych jest realizowana w dwch sama stwierdzi, łe jest uszko- dają si głwnie, jak to widaĘ
wariantach. dzona, wysyła dane z nieodpo- na schemacie blokowym (rys.
Elektronika Praktyczna 3/2000
14
Mikrokontroler
9), z trzech chipw. Jedynym Przed przystąpieniem do om- 700..707. Wybr pojedynczego
zadaniem mikrosterownika jest wienia konstrukcji interfejsu identyfikatora jest wtedy mołli-
wpisywanie bajtw danych przedstawionych jeszcze zostanie wy tylko po przeprowadzeniu
(0..8), ktre mają zostaĘ wysłane kilka dodatkowych informacji. dalszej selekcji z ułyciem mik-
do układu scalonego protokołu rosterownika. Przeznaczone dla
CAN, wypełnianie pola identy- Filtrowanie akceptacyjne danej stacji ramki zdalne rw-
fikatora i pola DLC oraz odpo- Z czści 2 wiadomo, łe CAN nieł przechodzą przez filtr przed
wiednie ustawienie bitu RTR. działająca w standardowym for- dotarciem do mikrosterownika.
Pozostałe elementy procesu macie ramek (CAN20A) jest w sta- Tylko wtedy mołe on wygene-
przetwarzania: nie przetwarzaĘ do 2048 rłnych rowaĘ w odpowiedzi właściwe
- obliczanie sumy kontrolnej CRC, identyfikatorw. Oczywiście nie dane i skierowaĘ je do sterow-
- dodawanie pozostałych pl, jest niezbdne, aby kałda ze stacji nika CAN.
- łączenie si z magistralą, przyłączonych do magistrali otrzy-
- transmisja danych, mywała wszystkie ramki danych. Układ FullCAN
- wykrywanie i usuwanie błdw Na przykład mołe byĘ tak, łe dla Układ ten umołliwia dokładne
są wykonywane przez układ sca- stacji K istotne są tylko ramki zaprogramowaniei selekcj pojedyn-
lony sterownika CAN. z identyfikatorami 129, 1345 czego identyfikatora. Innymi słowy,
Dane są wprowadzane do ma- i 1999, a 2045 pozostałych nie układ mołe zostaĘ przystosowany
gistrali za pośrednictwem układu ładnego znaczenia. Bardzo połą- do akceptowania jednej lub okreś-
scalonego transceivera CAN, ktry dane staje si wic wprowadzenie lonej liczby ramek, na przykład
jest bezpośrednio połączony z ma- takiej selekcji identyfikatorw, aby tylko ramki z identyfikatorem 798.
gistralą. Mikrosterownik otrzymu- do mikrosterownika nie docierały Jednak układ ten nie bdzie prze-
je wtedy potwierdzenie pomyślne- ramki zbyteczne. Selekcja ta na- puszczał dułej liczby ramek o rł-
go wysłania danych, albo komu- zywa si filtracją akceptacyjną. nych identyfikatorach, poniewał
nikat o błdzie, poczym podejmu- Umołliwia ona takie zaprogramo- program sterownika jest ustalony.
je odpowiednie działanie. wanie sterownika CAN, łeby Jełeli wic ma byĘ odbierane
Mniej wicej to samo dzieje si sprawdzał wszystkie otrzymywane wiele ramek o rłnych identyfika-
przy odbiorze danych. Sterownik ramki (wraz z korekcją błdw), torach, lepiej wybraĘ chip Basi-
CAN, za pośrednictwem układu ale do mikrosterownika wysyłał CAN. Trzeba jednak pamitaĘ, łe
scalonego transceivera CAN, otrzy- tylko ramki o określonych identy- wtedy znaczna czśĘ procesu se-
muje ramki CAN z magistrali, po- fikatorach. Bez konieczności do- lekcji z konieczności przejmie
nownie sprawdza sum kontrolną, konywania przez mikrosterownik mikrosterownik, ktrego moc prze-
usuwa z ramek wszystkie zbdne zbytecznych porwna przetwa- twarzania bdzie musiała byĘ
pola i do mikrosterownika przesy- rzanie staje si szybsze. Do fil- zwikszona.
ła otrzymane dane, albo komuni- trowania akceptacyjnego mołna Zaletą układu FullCAN jest
kat o błdzie. ułyĘ dwch rłnych układw mołliwośĘ programowania przez
Czytelnik z pewnością juł za- scalonych. mikrosterownik w układzie scalo-
uwałył, łe wymagania sprztowe nym sterownika CAN odpowiedzi
i programowe interfejsu magist- Układ BasiCAN na zdalną ramk. Gdy taki układ
rali CAN nie są wielkie. Mik- Układ ten zawiera prosty filtr otrzymuje dozwoloną zdalną ram-
rosterowniki, zawierające sterow- o szerokości ośmiu bitw, po- k dla odnośnej stacji, mołe wy-
nik CAN, są juł dostpne na zwalający na jedynie zgrubną słaĘ w odpowiedzi ramk danych
rynku. Umołliwiają one skon- selekcj wstpną. Polega ona na bez interwencji mikrosterownika.
struowanie dwustopniowego in- tylko grupowym przepuszczaniu Wraz z nieuniknionym rozwo-
terfejsu CAN. identyfikatorw, na przykład jem technologii rłnice pomidzy
układami BasicCAN i FullCAN sta-
ją si coraz mniej wyrane. Chipy
Tab. 4. Podstawowe parametry scalonego interfejsu SJA1000. FullCAN stają si takłe coraz
sprawniejsze, mogąc wybieraĘ co-
Układ scalony sterownika SJA1000 (Philips Semiconductors)
CAN
raz wiksze liczby identyfikatorw
i przechowywaĘ coraz wicej rejes-
Interfejs mikrosterownika Może zostać dostosowany do mikrosterowników Intel i z nim zgodnych
lub do mikrosterowników Motorola i z nim zgodnych.
trw danych. Najnowsze układy
Tryb działania 1 Rozmieszczeniem wyprowadzeń, sprzętowo i programowo zgodny
sterownikw CAN mogą za pomo-
z PCA82C200, CAN20A i bierny CAN20B. Standardowy format ramek.
cą programu przełączaĘ si pomi-
Szybkość transmisji danych do 1Mb/s. Filtr akceptacyjny BasicCAN.
dzy dwoma trybami działania.
Tryb działania 2 Standardowy i rozszerzony format ramek. Szybkość transmisji danych do
1 Mb/s. Możliwość CAN 20B. Rozszerzony filtr akceptacyjny o własnoś-
ZgodnośĘ pomidzy
ciach BasicCAN.
20A i 20B
Układ scalony transceivera Szybki CAN, zgodny z ISO/DIS11898. Szybkość transmisji do 1 Mb/s. Za-
bezpieczenie wewnętrzne przed zakłóceniami wytwarzanymi przez pojazdy Jak juł wiadomo z dyskusji
silnikowe. Zabezpieczenie wewnętrzne przed zwarciami i przegrzaniem.
o formatach ramek, istnieje Format
Nie zasilone węzły (stacje) nie oddziaływują na magistralę. Pozwala kon-
Standardowy z 11-bitowymi iden-
struować CAN o liczbie węzłów do 110.
tyfikatorami i Format Rozszerzony
Elektronika Praktyczna 3/2000
15
z 29-bitowymi identyfikatorami. Sterowniki z mołliwym 20A Sterowniki z mołliwym 20B
Dlatego przy wyborze sterownika i biernymi cechami 20B Te sterowniki przetwarzają,
CAN, gdy w magistrali są uływane Układy te akceptują ramki roz- przechowują i przepuszczają ram-
oba formaty (co jest zupełnie szerzone z 29-bitowymi identyfi- ki zarwno formatu standardowe-
mołliwe i dopuszczalne), naleły katorami, przeprowadzają prb go jak i rozszerzonego.
zachowaĘ dułą ostrołnośĘ. błdu i odpowiadają bitem ACK Przy podejmowaniu decyzji
(potwierdzenia) albo ramką bł- o zakupie sterownika CAN, czy
Sterowniki z mołliwym 20A du. mikrosterownika zawierającego
Te sterowniki mogą przetwa- ŁącznośĘ nie zostaje zakłco- sterownik CAN, napotyka si na
rzaĘ tylko ramki standardowe, na, ale rozszerzone ramki danych tak duły ich wybr, łe opłaca si
a po odebraniu ramki rozszerzonej nie są ani zapisywane ani prze- przejrzeĘ przedtem internetowe
generują komunikat o błdzie. Mo- puszczane, poniewał układy te są witryny najbardziej znanych pro-
łe to całkowicie wstrzymaĘ dzia- przewidziane jedynie do przetwa- ducentw tych układw, Hitachi,
łanie systemu, wic sterowniki rzania ramek formatu standardo- Intel, Motorola, NSC, Philips, SGS,
tego rodzaju mogą byĘ uływane wego. Niemniej w pełni nadają Siemens, Temic i Texas Instru-
tylko systemach z ramkami wy- si do ułytku w systemach hyb- ments.
łącznie standardowymi. rydowych. EE
Elektronika Praktyczna 3/2000
16


Wyszukiwarka

Podobne podstrony:
Magistrala CAN cz 4
Ekploatacyjne właściwości magistrali CAN w pojazdach samochodowych Politechnika Warszawska
Sieci CAN, cz 2
Sieci CAN, cz 2
Sieci CAN, cz 1
Sieci CAN, cz 3
Sieć magistral CAN układu komfortowego
CAN (wszystko na temat magistrali CAN)
Magistrala danych CAN wtyczki rozłączające
Rozgrzewka po kwadracie – cz 2
sprzęt wędkarski cz 1
Escherichia coli charakterystyka i wykrywanie w zywności Cz I
Deszczowa piosenka [cz 1]

więcej podobnych podstron