Sieci CAN, cz.1.pdf

(846 KB) Pobierz
ep_07_085-088_can_cz1.indd
S P R Z Ę T
Sieci CAN ,
Controller Area Network (CAN)
to standard przemysłowej
sieci transmisyjnej, stworzonej
na potrzeby przemysłu
motoryzacyjnego na początku
lat osiemdziesiątych przez
niemiecką firmę Bosch. W roku
1993 został przyjęty za normę
ISO 11898.
Sieci CAN są obecnie szeroko
stosowane w systemach elektroni-
ki i automatyki samochodowej oraz
przemysłowej, również ze względu
na rozsądny koszt ich implementacji.
Można je spotkać przykładowo w:
– systemach nadzoru parametrów
działania silników samochodo-
wych stosowanych przez Merce-
desa, Scanię, Iveco, BMW i wie-
lu innych producentów;
– systemach sterowania oświetle-
niem zewnętrznym i wewnętrz-
nym oraz funkcjami komfortu
(klimatyzacja, sterowanie me-
chatroniką w siedzeniach czy
oknach) w samochodach osobo-
wych i ciężarowych;
– lotniczych i okrętowych syste-
mach pokładowych;
– sterowaniu silnikami, pneumaty-
ką i hydrauliką w aparaturze i
maszynach przemysłowych – np.
sieci SDS czy DeviceNet;
– robotyce;
– elektronice medycznej.
Najnowsza specyfikacja CAN w
wersji 2.0 składa się z dwóch części
– A i B. Pierwsza z nich zawiera
specyfikację protokołu pokrywającego
się z wersją 1.2, zaś druga opisuje
unowocześnioną i przystosowaną do
rosnących potrzeb wersję 2.0 w od-
mianach standardowej i rozszerzonej,
które są aktualnie implementowane
w produkowanych kontrolerach CAN.
Różnice między obiema wersjami są
niewielkie, a najważniejsze z nich
wskazane w dalszej części tekstu.
rozproszonych (umożliwia również
osiągnięcie założeń systemów czasu
rzeczywistego), charakteryzujący się:
– wysokim bezpieczeństwem (odpor-
nością na błędy) transmisji, dzięki
rozbudowanym systemom wykry-
wania błędów i retransmisji da-
nych;
– prędkością transmisji aż do
1 Mbps (na odległościach do kil-
kunastu metrów) oraz maksymal-
nym zasięgiem do 1 km (przy
niskich prędkościach rzędu kilku-
dziesięciu kbps);
– architekturą multi – master (każ-
dy z węzłów sieci ma takie same
możliwości i prawa przy inicjowa-
niu transmisji);
– transmisją rozgłoszeniową (broad-
cast), gdzie informacja (ramka) jest
przesyłana do wszystkich węzłów
sieci, które samodzielnie (na pod-
stawie zawartości ramki i filtrów
ustawianych w kontrolerze) decy-
dują o przetwarzaniu (bądź nie)
zawartych danych – pozwala to
zapewnić integralność danych w
systemie rozproszonym.
Ostatnia z powyższych cech powo-
duje, że identyfikator wiadomości w
sieci CAN nie określa adresata, lecz
jej zawartość. Dodatkowo identyfikator
opisuje również priorytet wiadomości
i na jego podstawie dokonywany jest
arbitraż dostępu do łącza.
Wyróżnić można dwa charaktery-
styczne sposoby wymiany informacji
między węzłami sieci:
– wysłanie danych (data frame trans-
mission);
– żądanie wysłania danych (remote
transmission request).
Wszelkie pozostałe usługi takie
jak sygnalizacja błędów, retransmi-
sja wiadomości itp. są wykonywane
automatycznie przez kontrolery ma-
gistrali i nie wymagają interwencji
użytkownika.
Budowa warstwowa
Specyfikacja CAN pokrywa war-
stwę łącza danych (drugą warstwę
modeli ISO/OSI), przy czym w wersji
2.0 dzieli ją na dwie podwarstwy:
– Logical Link Control (LLC), od-
powiedzialną za filtrowanie wia-
domości na podstawie identyfika-
torów, powiadamianie o przepeł-
nieniach i zarządzanie odzyskiwa-
niem (retransmisją) wiadomości;
– Media Access Control (MAC),
zajmującą się kodowaniem da-
nych i ew. kapsułkowaniem da-
nych, zarządzaniem dostępem do
medium, wykrywaniem i sygnali-
zacją błędów.
Wprowadzenie
Standard CAN definiuje szeregowy
protokół komunikacyjny, mający zasto-
sowanie w przemysłowych systemach
84
Elektronika Praktyczna 7/2005
S P R Z Ę T
część 1
84
Elektronika Praktyczna 7/2005
27856469.015.png 27856469.016.png
S P R Z Ę T
Opisuje też fragment warstwy fi-
zycznej (pierwszej w modelu
OSI), definiując sposób kodowa-
nia bitu, jego uzależnienia cza-
sowe oraz sposób synchroniza-
cji. Sposób realizacji fizycznej
może być różny w zależności
od potrzeb projektanta. Niektó-
re z nich są zdefiniowane przez
normę ISO 11898 (omówione to
będzie w punkcie następnym).
Ostatnią z pokrywanych w sie-
ciach CAN warstw modelu OSI jest
warstwa aplikacji. Nie jest ona jed-
nak definiowana przez specyfikację
CAN ani przez normę ISO. Jej do-
bór należy wyłącznie od projektan-
ta, co daje dużą elastyczność przy
realizacji celów. Zostało zdefiniowa-
nych dużo standardów bazujących
na fundamentach CAN, z których
najbardziej znane to:
– CANopen i SAE J1939, stosowa-
ne w przemyśle samochodowym
i okrętowym;
– DeviceNet oraz SDS, spotykane
w automatyce.
Bardzo często stosowane są wła-
sne, często zamknięte i utajnione
protokoły, czego najlepszym przykła-
dem są protokoły sterujące moduła-
mi we współczesnych samochodach
osobowych.
transmisji asymetrycznej (po jed-
nym z przewodów, w przypadku
uszkodzenia drugiego). Krótkie od-
ległości (a więc brak problemów z
odbiciami), dla których opracowa-
ny został ten standard dają możli-
wość stosowania magistrali otwar-
tej, nawet w architekturze innej
niż liniowa, oraz stosowania ich
w urządzeniach o bardzo niskim
poborze mocy.
– Norma SAE J2411 definiuje trans-
misję jednoprzewodową (nawet
bez ekranowania) z prędkościami
33,3 kbps lub 83,3 kbps i liczbą
węzłów sieci do 32 oraz dowolną
architekturą.
– Protokół point–to–point ISO
11992, pozwalający łączyć seg-
menty (np. w kolejnych przycze-
pach za ciągnikiem) w łańcuch
( daisy–chain ), pracuje z pręd-
kością 125 kbps na maksymal-
ną odległość 40 m, korzystając
z nieekranowej skręconej pary
przewodów jako medium.
– Spotykane są również rozwiąza-
nia sieci CAN w oparciu o me-
dia optyczne, które nie doczeka-
ły się jeszcze standardu, jednak-
że ze względu na coraz częstsze
ich stosowanie z pewnością nie-
długo się to zmieni.
i „recesywny” opisują zachowa-
nie magistrali w momencie jedno-
czesnej próby dostępu do medium
przez dwa węzły sieci – w rywa-
lizacji zwycięży bit dominujący, a
magistrala przyjmie poziom niski
(podobnie jak w „iloczynie na dru-
cie”). Na tym mechanizmie opiera
się arbitraż (opisany w dalszej czę-
ści tekstu).
Transmisja bitów w ramce CAN
jest synchroniczna, przy czym syn-
chronizacja następuje na początku
ramki (bit SOF, patrz punkt doty-
czący budowy ramki) oraz na każ-
dym zboczu opadającym (tzw. re-
synchronizacja). Ze względu na ko-
nieczność ciągłej synchronizacji we-
wnątrz ramki, w trakcie transmisji
może wystąpić po sobie maksymal-
nie 5 bitów tego samego rodzaju
– w przypadku ich wystąpienia na-
dajnik „wstrzyknie” jeden bit kom-
plementarny (oczywiście pomijany
przy odbiorze) w celu wygenerowa-
nia zbocza synchronizującego.
Podstawową jednostką czasu w
sieci CAN jest kwant ( Time Quan-
tum , TQ). Bit składa się z czterech
nienachodzących na siebie segmen-
tów, z których każdy trwa przez
czas będący wielokrotnością kwan-
tu TQ. Ich wzajemne zależności
przedstawiono na rys. 1 . Jak widać
zarówno czasy trwania bitu jak i
całej ramki są również wielokrotno-
ściami czasu kwantu.
Odczyt wartości bitu w odbiorni-
ku następuje w punkcie próbkowa-
nia (pomiędzy segmentami PHASE),
zaś poszczególne segmenty spełniają
następujące zadanie:
Warstwa fizyczna
Jak już wspomniano, sposób re-
alizacji fizycznej transmisji nie jest
opisywany przez specyfikację. Jed-
nakże ze względu na konieczność
interoperacyjności kontrolerów CAN
różnych producentów stworzono
kilka standardów, opisanych przez
części 2 i 3 normy ISO oraz inne
dokumenty. Są to:
– Najczęściej używana szybka ma-
gistrala zgodna z normą ISO
11898–2, pozwalająca uzyskać
prędkość aż do 1 Mbps na od-
ległość do 40 m (oczywiści niż-
sze prędkości pozwalają uzyskać
większe odległości, nawet do kilo-
metra). Zbudowana jest jako dwu-
przewodowa magistrala różnicowa
o impedancji 120 V i zakresie na-
pięć od –2 V (CAN_L) do +7 V
(CAN_H). Liczba węzłów sieci
ograniczona jest wyłącznie obcią-
żeniem elektrycznym, zaś szybkość
propagacji sygnału to 5 ns/m.
– Trzecia część normy (ISO 11898–3)
opisuje wolniejszą (prędkość do
125 kbps) oraz ograniczoną do 32
węzłów magistralę, która charak-
teryzuje się wysoką odpornością
na błędy, włącznie z możliwością
Budowa bitu
Standard CAN definiuje dwa
rodzaje bitów: dominujący i rece-
sywny. Ze względu na zastosowa-
nie kodowania Non–Return–to–Zero
(NRZ) najczęściej odpowiadają one
poziomom logicznym niskiemu i
wysokiemu. Nazwy „dominujący”
Elektronika Praktyczna 7/2005
85
Elektronika Praktyczna 7/2005
85
27856469.017.png
S P R Z Ę T
Tab. 1. Zależności czasowe między
kwantem a długościami segmentów
segment wielokrotność kwantu
SYNC_SEG
1 TQ
PROP_SEG
1...8 TQ
PHASE_SEG1
1...8 TQ
PHASE_SEG2
1...8 TQ
– W trakcie trwania segmen-
tu synchronizacji (SYNC_SEG) może
pojawić się zbocze przy przejściu z
poziomu bitu poprzedniego na aktual-
ny. Jeśli będzie to zbocze opadające,
nastąpi resynchronizacja odbiorników
w węzłach sieci.
– Czas segmentu propagacji (PROP_
SEG) pozwala na skompensowanie
opóźnień propagacji sygnału na
magistrali we wszystkich węzłach.
Powinien mieć długość dwukrot-
ności czasu propagacji sygnału na
magistrali i w obwodach wejścio-
wych węzła.
– Segmenty bufora fazy (PHASE_
SEG1 oraz PHASE_SEG2) pozwala-
ją na dostosowywanie czasu trwa-
nia bitu do przesunięć fazy zbo-
czy resynchronizujących – mogą
być skracane lub wydłużane w
trakcie transmisji.
Zależności czasowe między kwan-
tem a długościami segmentów prze-
stawia tab. 1 . Czas trwania segmentu
PHASE_SEG2 jest większą z dwóch
wartości: długości PHARE_SEG1 i cza-
su potrzebnego na przetworzenie bitu
pobranego w punkcie próbkowania.
Długości poszczególnych segmen-
tów dobierane są przez projektanta,
co pozwala dopasować format nada-
wania do warunków fizycznych (np.
większa długość magistrali oznacza
dłuższy czas propagacji sygnału, co
jednocześnie zmniejsza efektywną
prędkość transmisji). Dodatkowo sam
kontroler magistrali może, w zależno-
ści od warunków, modyfikować długo-
ści segmentów – w szczególności sto-
sowane jest wydłużanie bądź skraca-
nie segmentów PHASE_SEG1 i PHA-
SE_SEG2 w celu kompensacji różnic
częstotliwości oscylatorów nadajnika i
odbiornika (co skutkuje problemami
przy resynchronizacji).
Rys. 1. Ogólny format ramki danych
Rys. 2. Ogólny format ramki danych
Rys. 3. Standardowy nagłówek ramki danych
Rys. 4. Pole kontrolne
Format ramki wiadomości
Standard CAN 2.0 opisuje dwa ro-
dzaje ramek: standardową (podstawo-
wą) i rozszerzoną. Obie mogą współ-
istnieć w jednej sieci, w zależności od
budowy węzłów sieci. Moduły zgodne
z częścią A specyfikacji lub poprzed-
nimi jej wersjami uznają ramkę roz-
szerzoną za błąd, zaś niektóre zgodne
z częścią B mogą je ignorować. Ogól-
Rys. 5. Rozszerzony nagłówek ramki danych
86
Elektronika Praktyczna 7/2005
27856469.018.png 27856469.001.png 27856469.002.png 27856469.003.png 27856469.004.png 27856469.005.png 27856469.006.png 27856469.007.png
S P R Z Ę T
dominujący tego bitu oznacza zwy-
kłą ramkę danych ( Data Frame ), zaś
recesywny ramkę zdalną ( Remote
Frame ). Ramka taka nie zawiera w
sobie pola danych, a oznacza żąda-
nie przesłania (zwykłą już ramką da-
nych) informacji o identyfikatorze i
długości danych zgodnych z zawarty-
mi w żądaniu. Po pojawieniu się ta-
kiej wiadomości na magistrali, węzeł
odpowiedzialny za przechowywanie
żądanej informacji powinien przesłać
ją najszybciej jak to jest możliwe.
Za identyfikatorem i bitem RTR
znajduje się pole kontrolne ( rys. 4 ),
składające się z bitu określającego
rodzaj ramki – dla formatu standar-
dowego jest to bit dominujący, bit
zarezerwowany oraz pole DLC okre-
ślające ilość danych przesyłanych w
ramce. Sposób jej przedstawiania zi-
lustrowano w tab. 2 (litera d ozna-
cza bit dominujący, r – recesywny).
gistrali poziom recesywny i oczeku-
je na potwierdzenie od przynajmniej
jednego z pozostałych węzłów, któ-
re odebranie bezbłędnej wiadomości
powinny potwierdzić pojedynczym
bitem dominującym. Jeśli taka sytu-
acja nie nastąpi, to wiadomość bę-
dzie retransmitowana do skutku.
Rys. 6. Pole sumy kontrolnej
Przepełnienie
W przypadku transmisji serii da-
nych stacja odbierająca, która ma
problemy z przetworzeniem danych
może poprosić o opóźnienie nadania
kolejnej porcji. Do tego celu służy
ramka przepełnienia ( Overflow Fra-
me ), która powinna być nadana w
trakcie pierwszego bitu odstępu po
ramce danych (lub żądania transmi-
sji) – jest to jedyna dopuszczalna
wówczas aktywność na magistrali.
Na ramkę przepełnienia składają
się dwa pola – flaga przepełnienia,
składająca się z sześciu bitów do-
minujących (moment ich nadania
odróżnia je od opisanej dalej ak-
tywnej flagi błędu) oraz następu-
jącego po fladze odstępu 8 bitów
recesywnych.
Rozpoczęcie nadawania fla-
gi przepełnienia zostanie wykryte
przez inne węzły sieci, które odpo-
wiedzą tym samym, co doprowadzi
do superpozycji tych flag i dodat-
kowo wydłuży odstęp.
Rys. 7. Pole potwierdzenia
ną budowę ramki CAN przedstawiono
na rys. 2 . Ramka zaczyna się bitem
startowym ( Start Of Frame , SOF), po
którym następuje pole arbitrażu (spo-
sób prowadzenia arbitrażu opisany
jest dalej), zawierające identyfikator
wiadomości, różny w zależności od
wersji ramki. Następnym elementem
jest pole kontrolne, określające m.in.
długość danych przekazywanych w
polu danych. Integralność danych w
ramce zapewnia pole sumy kontro-
lnej, zaś w polu potwierdzenia kon-
trolę nad magistralą przejmują węzły
sieci odbierające wiadomość. Na za-
kończenie ramki wskazuje pole End
Of Frame (EOF). Po nim następuje
odstęp międzyramkowy ( Intermission
Frame Space , IFS), mający długość
min. 3 bitów. W jego trakcie jedyną
aktywnością na magistrali może być
wysłanie ramki przepełnienia, omó-
wionej dalej. Po zakończenia tego
etapu magistrala jest uznawana za
wolną i może być zajęta przez węzeł
zainteresowany transmisją.
Nagłówek ramki rozszerzonej
Podstawową różnicą między ramką
standardową, a rozszerzoną są różni-
ce w nagłówku. Jak widać na rys. 5 ,
identyfikator jest podzielony na dwie
części o sumarycznej długości 29 bi-
tów. Aby zachować zgodność z na-
główkiem standardowym pierwsza
część ma długość 11 bitów, po niej
następuje bit SRR, będący „wypełnia-
czem” miejsca po bicie RTR, który
jak w poprzednim przypadku wystę-
puje po całym identyfikatorze, oraz
bit IDE, który w tym przypadku ma
wartość recesywną. W związku z
tym, że również bit SRR jest rece-
sywny, nie zakłócają one przebiegu
arbitrażu. Drugą różnicą jest to, że
pierwszy bit pola kontrolnego traci
swoje znaczenie IDE i staje się bi-
tem zarezerwowanym.
Arbitraż dostępu do medium
Protokół CAN opisuje sposób do-
stępu do medium w sposób okre-
ślany jako Carrier Sense Multiple
Access with Arbitration on Message
Priority . Od typowych metod z wy-
krywaniem zajętości łącza różni się
sposobem rozwiązywania kolizji.
Przykład takiej sytuacji jest po-
kazany na rys. 8 . Węzły A i B roz-
poczynają transmisję w tym samym
momencie. Węzeł A chce wysłać
wiadomość o identyfikatorze 0x0ef,
natomiast B – 0x0ed. Bity są trans-
mitowane począwszy od najbardziej
znaczącego. Przy bicie ID1 wystę-
puje konflikt – węzeł A chce po-
zostawić magistralę w stanie wyso-
kim (recesywnym), natomiast węzeł
B (podobnie jak przy „iloczynie na
drucie”) ustawia ją w stanie domi-
nującym – niskim. Ten fakt wy-
krywa kontroler węzła A, uznając
że przegrał arbitraż i wstrzymuje
transmisję swojej ramki. Z takiego
mechanizmu wynika fakt, że naj-
wyższy priorytet ma wiadomość z
identyfikatorem 0x000, która powin-
na zawierać informacje o krytycz-
Suma kontrolna
Suma kontrolna w sieciach CAN
jest obliczana ze wszystkich bi-
tów od bitu startu (włącznie) aż
do pola danych. Jest to cykliczna
suma nadmiarowa ( Cyclic Redun-
dancy Check , CRC), obliczana za
pomocą wielomianu generującego
x 15 +x 14 +x 10 +x 8 +x 7 +x 4 +x 3 +1.
Po 16 bitach sumy występuje je-
den, zawsze recesywny, bit odstępu.
Budowę całego pola przedstawiono
na rys. 6 .
Nagłówek ramki standardowej
Ramka standardowa zawiera w
sobie 11–bitowy identyfikator (co
okazało się zbyt małą liczbą bi-
tów w rozbudowanych systemach
i doprowadziło do powstania ramki
rozszerzonej), którego przynajmniej
jeden z siedmiu najbardziej zna-
czących bitów musi być bitem do-
minującym. Budowa nagłówka jest
przedstawiona na rys. 3 .
W polu arbitrażu oprócz iden-
tyfikatora znajduje się bit Remote
Tramsmission Request (RTR). Poziom
Potwierdzenie
Pole potwierdzenia, o długości
dwóch bitów, przedstawione jest na
rys. 7 . W trakcie jego wysyłania,
węzeł transmitujący ustawia na ma-
Elektronika Praktyczna 7/2005
87
27856469.008.png
S P R Z Ę T
nym znaczeniu dla działania syste-
mu rozproszonego.
Jako że, w ramkach z danymi,
następujący bezpośrednio po iden-
tyfikatorze bit RTR ma wartość do-
minującą, zaś w ramkach żądaniach
transmisji – recesywną, te pierwsze
mają większy priorytet przy dostę-
pie do łącza (bit RTR w oczywi-
sty sposób również uczestniczy w
arbitrażu).
– niewłaściwa (niezgodna ze stan-
dardem) struktura ramki;
– brak potwierdzenie odbioru.
Na poziomie bitów węzeł może
napotkać dwie sytuacje alarmowe:
– przekłamanie bitu – węzeł nada-
jący ramkę obserwuje jednocze-
śnie stan magistrali, co pozwala
natychmiast wykryć różnicę mię-
dzy bitem wysłanym a odbiera-
nym przez inne węzły;
– „niewstrzyknięcie” bitu, opisane
już wcześniej.
Stacje analizują stan sieci, po-
przez prowadzenie liczników nastę-
pujących po sobie błędów, osobno
dla błędów wykrytych przy nada-
waniu i przy odbieraniu ramek. Na
podstawie tych wartości węzeł wcho-
dzi do jednego z trzech stanów:
– stanu aktywnego ( Error Active ),
w którym może wysyłać aktyw-
ną flagę błędu,
– stanu pasywnego ( Error Passive ),
w którym może wysyłać jedynie
flagę pasywną,
– stanu wyłączenia ( Bus Off ), w
którym nie bierze aktywnego
udziału w transmisji (nie nadaje
ramek), jedynie nasłuchuje nad-
chodzących ramek.
Dokładny algorytm przejść mię-
dzy tymi stanami znajduje się w
specyfikacji. W uproszczeniu po-
lega on na zwiększaniu liczników
w przypadku odnotowania błędu
o wartość 1 lub 8 w zależności
od jego wagi i zmniejszaniu ich
o 1 po prawidłowej operacji. Progi
przejść pomiędzy stanami to warto-
ści 128 (przejście pomiędzy stanem
aktywnym i pasywnym) i 256 (mię-
dzy pasywnym, a wyłączeniem).
Tab. 2. Zależność pomiędzy stronami
bitów DLC i długością przesyłanych
danych
długość
danych
0 d d d d
1 d d d r
2 d d r d
3 d d r r
4 d r d d
5 d r d r
6 d r r d
7 d r r r
8 r d d d
Obsługa błędów
W przeciwieństwie do większości
standardów, sieci CAN nie wysyłają
dodatkowych informacji potwierdza-
jących poprawne otrzymanie komu-
nikatu (z wyjątkiem zwrotnego bitu
potwierdzenia), natomiast sygnalizu-
ją wykrycie błędu. Natychmiast po
zaistnieniu sytuacji awaryjnej wysy-
łają flagę błędu – pakiet sześciu bi-
tów recesywnych lub dominujących,
co łamie zasadę „wstrzykiwania”
bitu komplementarnego po pięciu
bitach jednego rodzaju.
Flaga składająca się z sześciu
bitów recesywnych określana jest
jako flaga pasywna – może być
nadpisana przez inną stację nada-
jącą bit dominujący. Flaga aktywna
natomiast – składająca się z sześciu
bitów dominujących – jest ostatecz-
na i powoduje wstrzymanie odbio-
ru ramki przez wszystkie węzły od-
biorcze, zaś nadawca automatycznie
próbuje wysłać ją ponownie.
Po fladze błędu musi nastąpić
odstęp składający się z ośmiu bi-
tów recesywnych. W tym celu każ-
da ze stacji musi ustawić na ma-
gistrali stan recesywny i utrzymuje
ten stan do momentu kiedy zrobią
to wszystkie pozostałe, po czym
odczekuje jeszcze przez okres sied-
miu bitów.
Sprawdzanie poprawności trans-
misji odbywa się na poziomie ram-
ki oraz na poziomie bitu. W pierw-
szym przypadku są możliwe 3 ro-
dzaje błędów:
– błędna suma kontrolna;
wyłącznie jednego bądź kilku rodza-
jów komunikatów. Kontroler musi za-
pewnić możliwość filtrowania ramek
na podstawie identyfikatorów (aby
wyłapywać jedynie komunikaty o
żądanym identyfikatorze), zaś opcją
jest możliwość korzystania z masek
bitowych, wybierających bity które
mają podlegać porównaniu (pozwa-
la na wybór grupy komunikatów o
zbliżonych identyfikatorach).
Kontroler musi pozwalać na do-
branie takich długości segmentów
bitu, że jego całkowity czas trwania
będzie się zawierał w zakresie 8 do
25 kwantów (TQ), zaś tolerancja czę-
stotliwości generowanej przez oscy-
lator wynosi 1,58%. Pozwala to na
zastosowanie generatorów ceramicz-
nych w sieciach o niskiej przepu-
stowości (do 125 kbps). Możliwość
ta pojawiła się dopiero w wersji 1.2
specyfikacji. W przypadku gdy w
sieci znajdują się kontrolery zgodnie
z wcześniejszymi wersjami, bądź też
w celu uzyskania większych pręd-
kości, konieczne jest użycie genera-
torów z oscylatorami kwarcowymi.
Istotny jest również fakt, że węzeł
sieci o najwyższych wymaganiach
dotyczących dokładności generatora,
określa to wymaganie również dla
pozostałych węzłów.
Wymagania dotyczące
kontrolerów
Specyfikacja definiuje również
szereg wymagań, którym odpowia-
dać powinien kontroler magistrali
CAN. Pozwala to projektantowi zro-
bić założenia dotyczące możliwości
wszystkich węzłów sieci.
Jednym z
najważniejszych
zadań kontrole-
ra jest filtrowa-
nie wiadomości
odbieranych na
magistrali – prze-
kazywanie całego
ruchu do proce-
sora węzła nie
ma żadnego sen-
su w momencie,
gdy oczekuje on
Źródła informacji
Najważniejszym materiałem źró-
dłowym jest oczywiście norma ISO
11898, jednakże nie można pobrać
jej bezpłatnie z serwisu ISO (co jest
niestety typowe dla organizacji nor-
malizacyjnych). Na szczęście faktycz-
ny twórca standardu – firma Bosch
– udostępnia specyfikację CAN 2.0
na stronie www.can.bosch.com . Do-
datkowym, bardzo przydatnym i
ciekawym, źródłem informacji jest
również strona organizacji CAN in
Automation – www.can–cia.org .
Paweł Moll
Rys. 8. Arbitraż dostępu do medium
88
Elektronika Praktyczna 7/2005
DLC3 DLC2 DLC1 DLC0
27856469.009.png 27856469.010.png 27856469.011.png 27856469.012.png 27856469.013.png 27856469.014.png
Zgłoś jeśli naruszono regulamin