background image

Mateusz Niedziółka – IV rok  
Koło Naukowe Techniki Cyfrowej 
dr inż. Wojciech Mysiński – opiekun naukowy 
 
 

CAN BUS IN MOTORIZATION. 

 

The topic of this article will be using CAN bus in motorization. This is a very popular advice also 
use  in  spheres  like  industrial  automation,  robotics.  We  owe  its  commonness  to  easy 
implementation, low costs of production and high protection against errors. 

 

MAGISTRALA CAN W MOTORYZACJI. 

Tematem tego artykułu będzie zastosowanie magistrali CAN w motoryzacji. Jest ona powszechnie 
wykorzystywana w różnego rodzaju dziedzinach takich jak: automatyka przemysłowa, robotyka  i 
tym  podobne.  Jej  powszechność  zawdzięczamy  przede  wszystkim  łatwą  implementacją,  niskimi 
kosztami produkcji  i wysoką ochroną przed błędami. 

Keywords: network, motorization, automation, bus, protocol, topology 
Słowa kluczowe: sieć, motoryzacja, automatyka, magistrala, protokół, topologia 

 

1. ZARYS HISTORYCZNY. 

Powstała  na  początku  lat  80.  Jest  to  magistrala  szeregowa.  Nazwa  ta  obejmuje  zarówno      
protokół komunikacyjny jak i samą magistralę. Protokół określa sposób przesyłania danych. 

Na  początku  ta  magistrala  była  stosowana  w  głównie  przemyśle  jednak  później  firma  Bosch 
wpadła na pomysł by wykorzystać jej zalety w samochodach. Idea narodziła się z powodu bardzo 
szybkiego rozwoju motoryzacji na początku lat 80. Spowodowało to potrzebę coraz to lepszych i 
bardziej innowacyjnych systemów sterowania podzespołów elektronicznych w samochodach. 

W 1987 roku pojawiły się pierwsze chipy CAN wyprodukowane przez firmę Intel. 5 lat później na 
rynek  wchodzi  pierwszy  Mercedes  z  magistralą  CAN.  Był  to  faktyczny  początek  zastosowania 
nowej  magistrali  w  motoryzacji.  W  1993  roku  został  opublikowany  standard  ISO11898,  który 
zawiera  opis  warstwy  fizycznej  jak  i  warstwy  łącza  danych  dla  magistrali  CAN,  czyli  rzeczy 
takich  jak np. poziomy napięć, szybkość przesyłania danych

[10]

 

2. CONTROLLER AREA NETWORK. 

Magistrala  CAN  nie  korzysta  ze  standardowych  poziomów  logicznych  „0”,  „1”

  [5]

.  Mamy  tu  do 

czynienia  z  dwoma  stanami:  dominującym  i  recesywnym.  Stan  dominujący  może  zasłonić  stan 
recesywny na linii. Ma to zapewnić poprawną transmisję podczas próby nadawania sygnału przez 

background image

dwa  urządzenia.  Poziom  dominujący  ma  wyższy  priorytet  niż  poziom  recesywny.  Dzięki  temu 
podczas  próby  jednoczesnej  transmisji  bitu  dominującego  i  recesywnego  przez  dwa  różne 
urządzenia otrzymuje się zawsze poziom dominujący i – co najważniejsze – nie nastąpi przy tym 
zakłócenie transmisji

[6]

. 

 

 

Rys. 1 Topologia sieci CAN

[1]

 

 

Na  rys.  1.  mamy  zarys  topologii  sieci  CAN.  Wartości  prędkości,  długości  przewodów  jak  i 
rezystorów  są  dobrane  według  standardu  ISO11898.  Jak  widzimy  prędkość  1Mbit/s  możemy 
osiągnąć nie przekraczając długości 40m. Natomiast długość przewodu, który idzie do urządzenia  
nie powinna przekraczać 30cm. Poniżej w tabeli widzimy poziomy napięć według ISO11898 dla 
stanu recesywnego i stanu dominującego. 
 
 

Tab. 1. Poziomy napięć dla sieci CAN w standardzie ISO 11898

[1]

 

Stan recesywny („1”) 

Stan dominujący („0”) 

 

minimalnie 

nominalnie 

maksymalnie 

minimalnie 

nominalnie 

maksymalnie 

2.0 

2.5 

3.0 

2.75 

3.5 

4.5 

2.0 

2.5 

3.0 

0.5 

1.5 

2.25 

background image

 

Rys. 2. Budowa węzła CAN

[1]

 

 
Kolejną  ważną  cechą  magistrali  CAN,  którą  warto  zapamiętać  jest  to,  że  korzysta  się  tu  z 
asynchronicznego  sposobu  przesyłania  danych  –  każda  wcześniejsza  stacja  jest  taktowana  za 
pomocą wcześniejszej

[6]

 
 

3. WARSTWA FIZYCZNA I WARSTWA ŁĄCZA DANYCH  

W STANDARDZIE ISO 11898. 

 
Ustala normy dla magistrali CAN – warstwę fizyczną i warstwę łącza danych.  
 
Warstwa fizyczna

[5]

-dwuprzewodowa skrętka 
-rezystory 
-sygnał różnicowy 
 
Magistrala od strony fizycznej to dwuprzewodowa skrętka. Jest ona stosowana gdyż taka budowa 
zapobiega  zakłóceniom  elektromagnetycznym  i  jest  to  tanie  rozwiązanie,  w  porównaniu  do 
wchodzących  na  rynek  światłowodów.  Na  końcach  skrętki  mamy  umieszczone  rezystory,  które 
zapobiegają  zjawisku  odbicia  fali  elektromagnetycznej.  Minimalna  wartość  tych  rezystorów  to: 
minimalna:100 ,  nominalna:120   natomiast  maksymalna  to  około  130 .  W  przypadku  dużo 
dłuższych przewodów (np. ponad 6km) magistrali, wartość ta może ulec zmianie. 

1.Rezystor 120  
2.Przewód typu skrętka 
3.Nadajnik/odbiornik 
4.Kontroler CAN 
5.Mikrokontroler 
6.Układ sterowalny 1 
7.Węzeł CAN 1 
8.Układ sterowalny 2 
9.Węzeł CAN 2 

 

background image

Warstwa łącza danych

[5]

-adresy urządzeń 
-sterowanie 
-dane 
-zabezpieczenia przed błędami 
 

Szczególnie  ważnym  aspektem  w  tej  warstwie  jest  identyfikator.  Każda  wiadomość  ma  swój 
identyfikator  –  np.  wartość  mierzona  wysyłana  z  czujnika  temperatury  ma  swój  szczególny 
identyfikator, który określa znaczenie zawartych w wiadomości danych. Z identyfikatorem wiążą 
się  dwie  wersje  protokołu:  2.0A  z  11  bitowym  identyfikatorem  oraz  2.0B  z  29  bitowym 
identyfikatorem.  Identyfikator  długości  11  bitów  umożliwia  rozróżnienie  2032  różnych  typów 
telegramów, a długości 29 bitów umożliwia rozróżnienie 536 870 912 telegramów

[6]

. Za pomocą 

identyfikatora  układ CAN  rozpoznaje  także priorytet  wysyłanych danych  –  im  mniejsza  wartość 
liczbowa  tym  większy  priorytet.  Należy  zapamiętać,  że  identyfikator  nie  jest  przypisany  do 
urządzenia, lecz do komunikatu.  

 

4. JAK PRZESYŁANE SĄ DANE W PROTOKOLE CAN? 

Dane wysyłane są w postaci pakietów nazywanych ramkami.  

 

Rys.3. Ramka protokołu CAN 

 

SOF – bit startowy – zawsze dominujący. Wszystkie stacje dołączone do magistrali synchronizują  
swoje wewnętrzne stopnie odbiorcze z narastającym zboczem tego bitu. 
Identifier + RTR – pole arbitrażu – zawiera identyfikator. 
RTR – umożliwia stacji zaadresowanie i wysyłanie wiadomości do innej określonej stacji. 
Control – zawiera informację o tym jak zbudowana jest ramka danych. 
ACK  –  bit  recesywny  –  może  być  przykry.  Umożliwia  to  stacjom  odbierającym  wysyłanie 
potwierdzenia odebrania poprawnej ramki danych. 
EOF – składa się z 7 recesywnych bitów i kończy ramkę danych. 
 
Ramka jest bardzo skomplikowana i może spędzać sen z powiek programistom. Jednak jest na to 
rozwiązanie  -  specjalne  moduły  spełniają  na  poziomie  hardware-u  funkcje  takie  jak:  obliczanie 
CRC,  dodawanie  pozostałych  pól,  łączenie  z  magistralą,  transmisje  danych,  wykrywanie  i 
usuwanie błędów

[6]

 

background image

5. DLACZEGO STOSUJEMY MAGISTRALĘ CAN W MOTORYZACJI?  

Przede wszystkim należy pamiętać, że magistrala CAN jak i sam protokół zapewnia szeroki zakres 
prędkości przenoszenia danych. Dodatkowo odbywa się to w zasadzie bez występowania błędów. 
Kolejną  ważną  zaletą  w  tym  przypadku  ekonomiczną  jest  łatwość  utrzymania  i  niskie  koszty 
masowej  produkcji  a  co  za  tym  idzie  powszechność  i  dostępność.  Nie  zapominajmy  również  o 
prostocie  konstrukcji  –  media  magistrali,  topologia,  rozwiązania  hardwarowe  jak  i  mała  zajętość 
przestrzeni. 
 

Na  początku  lat  80,  kiedy  to  jeszcze  w  samochodach  stosowano  wyłącznie  sam  system 

mikroprocesorowy,  ilość  kabli  i  ich  waga  była  dość  zawrotna.  Dla  przykładu.  W  przeciętnym 
samochodzie  długość  kabli  dochodziła  do  3,2km  co  ważyło  około  56kg.  Kiedy  na  początku 
wprowadzono magistralę  CAN długość kabli  wynosiła 2,2km czyli o 1km mniej. Waga również 
się zredukowała i to aż o 17kg

[1]

 
 
 
 
 
 

 
 
 
 
 

 

Rys.4. System oparty wyłącznie o mikroprocesor

[1]

 

 
 
 
 
 
 
 
 
 

 
 
 

Rys.5. System CAN w samochodzie

[1]

 

 
Dalszy  rozwój  techniki  przyczynił  się  to  tego,  że  na  chwilę  obecną,  pojedyncza  sieć  CAN  ma 
długość 40m. Jest to długość optymalna przy której uzyskuje się prędkości do 1Mbit/s. Wcześniej 
wspomniany standard ISO 11898 określa właśnie taką długość skrętki i szybkość przesyłu danych. 
Gdzie  można  zastosować  CAN? Praktycznie  nie  ma  ograniczeń. Magistralę  wykorzystuję  się  do 
sterowania  szybami,  zamkami  w  drzwiach,  alarmami  jak  i  do  systemów  (np.  ABS,  ASR) 
dbających o nasze bezpieczeństwo. 

background image

 

Rys.6. Przykład rozmieszczenia poszczególnych podzespołów magistrali CAN

[1]

 

 

 

Rys.7. Przykład rozmieszczenia poszczególnych podzespołów magistrali CAN

[1]

 

background image

6. MAGISTRALA CAN W SAMOCHODACH FIRMY MERCEDES-BENZ. 

Opiszę teraz zastosowanie magistrali CAN na przykładzie mercedesa. Jest to marka która już od 
ponad  18  lat  korzysta  z  systemu  CAN  i  rozwinęła  jego  zastosowanie  praktycznie  w  każdym 
miejscu w samochodzie. W mercedesie można wyróżnić dwie główne sieci CAN. Pierwszy będzie 
odpowiadał  za takie  rzeczy jak: zamki  w drzwiach, alarmy, sterowanie  fotelami,  czy  systemami 
audio.  Drugi  natomiast  będzie  się  zajmował  systemami  takimi  jak:  ABS  (Anti-Lock  Braking 
System),  ASR  (Acceleration  Slip  Regulation),  ESP  ( Electronic  Stability  Program)  czy  skrzynia 
biegów

[9]

.Coraz  częściej  używa  się  jednak  jeszcze  dodatkowej  sieci,  służącej  do  diagnostyki 

całego  samochodu.  Kolejnym  ciekawym  zastosowaniem  magistrali  CAN  jest  połączenie  jej  z 
modułem nawigacji GPS.  
Podsumowując; w nowych modelach klasy E takich jak W211, W164, W169 można wyróżnić

[13]

 

CAN B: sieć odpowiadającą za ciało samochodu 

 

CAN C: sieć odpowiadającą za silnik i nadwozie 

 

CAN D: sieć diagnostyczną 

 
 
 
 
 
 
 
 
 
 
 

 

Rys.8. Układ do diagnostyki

[17]

 

 
Na  rys.  8.  Widzimy  układ  do  diagnostyki  samochodu 

[17]

.  Elementy  niebieskie  są  to  zamknięte 

gniazdka  do  których  podpina  się  specjalne  urządzenie  (rys.  9.).Wykorzystuję  się  to  głównie  w 
serwisach  samochodowych  w  celu  diagnostyki  silnika  i  nie  tylko.  System  jest  jednak  tak 
opracowany by przeciętny użytkownik był zdolny do zrobienia tego samemu. 

 

 

 

 

 

 

Rys.9. Urządzenie diagnostyczne

[11]

 

background image

Trzeba  jednak  pamiętać,  że  w  samochodach,  które  jak  wiemy,  są  narażone  na  wiele  czynników 
zewnętrznych,  będą  zdarzać  się  wszelkiego  rodzaju  zakłócenia  pracy,  nie  tylko  układów 
mechanicznych  jak  i  układów  elektrycznych.  Najbardziej  awaryjna  jest  elektronika,  a  jest  to 
związane  z  kruchością  ścieżek  i  powstawania  wszelkiego  rodzaju  zwarć.  Nie  ma  systemów 
idealnych.  Nawet  zbyt  duża  temperatura  silnika,  może  negatywnie  wpływać  na  układy 
mikroprocesorowe  sterujące  pracą  magistrali.  Pamiętajmy  zatem,  że  jeżeli  chcemy  jeździć 
bezpiecznie,  wszelkie  niepokojące  zachowania  przyrządów  należy  sprawdzać  natychmiast  i 
najlepiej zrobić to w autoryzowanym serwisie. Magistrala CAN ma wiele rodzajów zabezpieczeń, 
zwłaszcza jeśli chodzi  o bezbłędność  przesyłu  wiadomości, jednak jest to  urządzenie  i też może 
zawieść. 

 

 

Rys.10. Główny moduł sterowania

[7]

 

 

Na rys. 10 widać główny komputer pokładowy. Na zbliżeniu widzimy skrętkę dwuprzewodową, o 
której wcześniej tyle było powiedziane. Główne moduły mogą znajdować się w różnych miejscach 
w  zależności  od  marki  samochodu.  Oznaczenia  kolorystyczne  przewodów  CAN  HIGH  i  CAN 
LOW również są inne w innych pojazdach, jak to widzimy na poniższych rysunkach. 

background image

 

 

Rys.11. Skrętka przewodów CAN HIGH i CAN LOW magistrali CAN zastosowana w 

samochodzie BMW 3 Series

[7]

 

 
 

 

 

 

Rys.12. Skrętka przewodów CAN HIGH i CAN LOW magistrali CAN zastosowana w 

samochodzie Citroen C5

[7]

 

 
 
 
 
 
 
 
 
 

background image

 

 

Rys.13. Skrętka przewodów CAN HIGH i CAN LOW magistrali CAN zastosowana w 

samochodzie Honda Accord

[7]

 

 

 

 

Rys.14. Moduły znajdujące się na silniku ciężarowego samochodu marki Scania

[8]

 

 

Na  rys.  14.  widzimy  silnik  samochodu  ciężarowego  marki  Scania.  Czerwonymi  strzałkami  są 
zaznaczone moduły odpowiedzialne za kontrolowanie parametrów takich jak: obroty, temperaturę 
silnika,  ilość  paliwa  wtryskiwanego  do  silnika  w  jednostce  czasu.  Wcześniej  wspomniałem  o 
zakłóceniach jakie podczas jazdy samochodem mogą powstawać. Zauważmy jak czujniki na rys. 
14.  są  zabudowane.  Jest  to  solidna  metalowa  konstrukcja  minimalizująca  wpływ  zakłóceń    na 
pracę silnika. 

 

background image

6.1. MOŻLIWOŚCI MAGISTRALI CAN. 

Magistrala  CAN  umożliwia  również  sterowanie  naszym  wymarzonym  samochodem 
bezprzewodowo. Można do tego zastosować palmtopa, Windows Mobile i Bluetooth

[16]

Dzięki  odpowiedniej  wiedzy  i  wysiłkowi  można  za  pośrednictwem  odpowiedniego 
oprogramowania  sterować  podzespołami  naszego  mercedesa  takimi  jak  drzwi,  okna,  lusterka, 
ustawienie kierownicy.  

 

 

Rys. 15. Zrzut z ekranu palmtopa, na którym widzimy możliwość sterowania 

położeniem kierownicy

[16]

 

 

 

 

Rys. 16. Zrzut z ekranu palmtopa, na którym widzimy możliwość sterowania  

ciałem samochodu

[16]

 

 

 

 

 

 

 

 

 

 

 

 

 

background image

6.2. MAGISTRALA CAN W PRAKTYCE. 

Dużo  było  powiedziane  o  wszelkiego  rodzaju  zastosowaniach  jak  i  możliwościach  magistrali 
CAN.  Jednak  jak  to  wygląda  w  praktyce?  Po  krótce  przedstwię  jak  przyłączyć  do  samochodu 
przyczepę

[15]

  i  jak  podpiąć  światła  tej  przyczepy,  by  były  one  zsynchronizowane  ze  światłami 

samochodu. 

Aby  podłączyć  przyczepę  i  światła  potrzebny  jest  specjalny  kabel.  Na  rys.  17  widzimy  dwu 
przewodową  skrętkę  służącą  do  podłączenia  do  systemu  CAN  zaznaczoną  czerwonym  kółkiem. 
Kabel  posiada  jeszcze  dodatkowe  gniazda  służące  do  podłączenia  wszystkiego  do  głównego 
komputera (rys. 18.). 

 

Rys. 17. Kabel służący do podłączenia oświetlenia przyczepy

[15]

 

 

 

 

Rys. 18. Główny moduł sterujący

[15]

 

Rys. 17. 

background image

 

 

Rys. 19. Podłączenie skrętki przewodów CAN HIGH i CAN LOW  

do głównej wtyczki

[15]

 

 

 

 

Rys. 20. Wpięcie głównej wtyczki do modułu sterującego

[15]

 

 

Na  rys.  19.  widzimy  jak  wpinamy  do  gniazda  nasze  przewody  CAN  HIGH  i  CAN  LOW.  Po 
wpięciu ich do wtyczki, całość wpinamy do głównego komputera (rys. 20.).  

Mam  nadzieję,  że  ten  artykuł  przybliżył  fenomen  magistrali  CAN.  Zapraszam  wszystkich  do 
szerokiej  literatury  i  Internetu  na  temat  tego  systemu.  Dziedziny,  które  wymieniłem  w  danym 
artykule  są  bardzo  obszerne  i  praktycznie  każda  wymaga  wnikliwego  przestudiowania,  by  ją 
dobrze zrozumieć. 

 

 

background image

7. BIBLIOGRAFIA. 

[1]  Controller Area Network: dr inż. Jędrzej Mączak z Wydziału Samochodów i Maszyn 

Roboczych, Politechnika Warszawska 

[2]  Mercedes CAN Bus & Diagnostics Manual 2009 
[3]  REAL-TIME SYSTEMS II Real-Time Networking Controller Area Network: Prof. J.-D. 

Decotignie  

[4]  Networks Controller Area Network: Prof. Dr Thomas Strang, Dipl.-Inform. Matthias 

Röckl  

[5]  Elektronika dla wszystkich: Elektronika w motoryzacji: Jarosław Barański, czerwiec 

2000 

[6]  Elektronika praktyczna 4/2000 
[7]  Can bus location – firmy Racelogic  
[8]  Vehicle Applications of Controller Area Network: Karl Henrik Johansson, Martin 

Torngren  

[9]  http://www.asashop.org/autoinc/may2007/techtips.htm 
[10] http://free.of.pl/c/can1/Opis.htm 
[11] http://www.mercedesmanuals.com 
[12] http://www.omitec.com/en/support/canbus/ 
[13] http://www.auto-diagnostics.info/mercedes_can_bus 
[14] http://www.peak-system.com/ 
[15] http://www.bertelshofer.com/media/products/7ME035_Einbauanleitung.pdf 
[16] http://www.honeysw.com/canproject.php 
[17] http://www.import-

car.com/Article/47364/mercedes_can_diagnostics__uncovering_faults_speeds_the_repair
_process.aspx