Obsah: Všeobecné informácie ↡ Výhody ↡ Formát prenosu dát ↡ Priority ↡ Rozpoznanie chyby ↡ Mechanizmy na úrovni dátového rámca ↡ Mechanizmy na bitovej úrovni ↡ Riešenie problémov ↡ Typy CAN zbernica ↡
Všeobecné informácie
Moderné autá využívajú niekoľko sieťových zberníc na výmenu dát CAN (Controller Area Network) medzi modulmi/riadiacimi jednotkami rôznych systémov a ovládačmi akčných členov vozidla.
Poradie výmeny dát cez zbernicu CAN
B - Senzor 1; CAN - Dátová komunikačná zbernica; M - Pohony I-III (servomechanizmy); N - Riadiace jednotky/ovládače IV
Autobus je plne duplexný (alebo len duplex), t.j. akékoľvek zariadenie k nemu pripojené môže súčasne prijímať a odosielať správy.
Signál z citlivého prvku zodpovedajúcej informácie (snímača) vstupuje do najbližšej riadiacej jednotky, ktorá ho spracuje a odošle na zbernicu výmeny dát CAN.
Akákoľvek riadiaca jednotka pripojená na dátovú zbernicu CAN môže tento signál čítať, na základe neho vypočítať riadiace parametre a riadiť činnosť príslušného aktuátora.
Výhody
Pri konvenčnej kabeláži elektrických a elektronických zariadení je každá riadiaca jednotka priamo prepojená so všetkými snímačmi a akčnými členmi, z ktorých prijíma merania alebo ich riadi.
Zvyšujúca sa zložitosť riadiaceho systému vedie k nadmernej dĺžke alebo viacnásobným káblovým vedeniam.
V porovnaní so štandardnou kabelážou poskytuje dátová zbernica:
- Zníženie počtu káblov. Vodiče od snímačov siahajú len k najbližšej riadiacej jednotke, ktorá namerané hodnoty prevádza na dátový paket a ten prenáša na zbernicu CAN;
- Pohon je možné ovládať ľubovoľnou riadiacou jednotkou, ktorá cez CAN zbernicu prijme príslušný dátový paket a na základe neho vypočíta hodnotu riadiacej akcie;
- Zlepšenie elektromagnetickej kompatibility;
- Zníženie počtu zástrčkových spojení a zníženie počtu kontaktných kolíkov na riadiacich jednotkách;
- Chudnutie;
- Zníženie počtu snímačov, pretože signály z jedného snímača (napríklad zo snímača teploty chladiacej kvapaliny) môžu byť použité rôznymi systémami;
- Vylepšené diagnostické možnosti. Pretože signály z jedného snímača (napríklad signál rýchlosti) sú používané rôznymi systémami, potom ak všetky systémy pomocou daného signálu vydajú poruchové hlásenie, je to zvyčajne snímač alebo riadiaca jednotka, ktorá spracováva jeho signály, ktorá je chybná. Ak chybové hlásenie prichádza len z jedného systému, hoci tento signál využívajú aj iné systémy, potom príčina poruchy najčastejšie spočíva v riadiacej jednotke spracovania alebo servomechanizme;
- Vysoká rýchlosť prenosu dát - možná až 1 Mbit/s pri maximálnej dĺžke linky 40 m V súčasnosti sa rýchlosť prenosu dát na vozidlách Mercedes-Benz pohybuje od 83 Kbit/s do 500 Kbit/s;
- Cez tú istú linku je možné striedavo prenášať niekoľko správ.
Dátová zbernica CAN pozostáva z dvojžilového vodiča vyrobeného vo forme krúteného páru. Všetky zariadenia sú pripojené k tejto linke (riadiace jednotky zariadenia).
Prenos údajov sa vykonáva s duplikáciou na oboch vodičoch a logické úrovne dátovej zbernice majú zrkadlový obraz (to znamená, že ak sa po jednom vodiči prenáša logická nulová úroveň (0), potom je logická jedna úroveň (1) prenášané po druhom vodiči a naopak).
Dvojvodičový prenosový obvod sa používa z dvoch dôvodov: na kontrolu chýb a ako základ spoľahlivosti.
Ak dôjde k napäťovému špičke iba na jednom vodiči – napríklad kvôli problémom s elektromagnetickou kompatibilitou (EMC), jednotky prijímača to môžu identifikovať ako chybu a špičku ignorovať.
V prípade skratu alebo prerušenia jedného z dvoch vodičov zbernice CAN sa vďaka integrovanému systému spoľahlivosti softvéru a hardvéru prepne do jednovodičového prevádzkového režimu. Poškodené prenosové vedenie sa stáva nepoužiteľným.
Poradie a formát toho, čo používatelia prenášajú a prijímajú (predplatiteľov) správ je definovaný v komunikačnom protokole.
Významným rozlišovacím znakom dátovej zbernice CAN v porovnaní s inými zbernicovými systémami založenými na princípe adresovania účastníka je adresovanie súvisiace so správou.
To znamená, že každej správe prenášanej cez zbernicu je priradená trvalá adresa (identifikátor), označujúce obsah tejto správy (napríklad: teplota chladiacej kvapaliny). Protokol dátovej zbernice CAN umožňuje prenos až 2048 rôznych správ, pričom adresy 2033 až 2048 sú trvalo priradené.
Objem dát v jednej správe cez zbernicu CAN je 8 bajtov.
Blok prijímača spracováva len tie správy, ktoré sú uložené v jeho vlastnom identifikačnom zozname (akceptačná kontrola).
Dátové pakety je možné prenášať len vtedy, ak je komunikačná zbernica CAN voľná (t.j. ak po poslednom pakete bol interval 3 bitov a žiadna z riadiacich jednotiek nezačne vysielať ďalšiu správu). V tomto prípade musí byť logická úroveň dátovej zbernice recesívna (logická "1").
Ak viaceré riadiace jednotky začnú vysielať správy súčasne, vstúpi do platnosti princíp priority, podľa ktorého sa správa s najvyššou prioritou prenesie ako prvá bez straty času alebo bitov (arbitráž žiadostí o prístup k spoločnej dátovej zbernici).
Každá riadiaca jednotka, ktorá stratí rozhodcovské práva, sa automaticky prepne na príjem a pokúsi sa znova odoslať svoju správu, len čo sa dátová zbernica opäť uvoľní.
Okrem dátových paketov sa pri výmene informácií využívajú na dátovej zbernici CAN aj pakety požiadaviek na určité správy - na takúto požiadavku odpovedá riadiaca jednotka, ktorá je schopná poskytnúť požadované informácie.
Formát prenosu dát
V normálnom režime prenosu sa používajú pakety nasledujúcich konfigurácií:
- Data Frame (rámec správy) na prenos správ cez dátovú zbernicu CAN (napríklad: teplota chladiacej kvapaliny);
- Remote Frame (rám žiadosti) vyžiadať si správy cez dátovú zbernicu CAN od inej riadiacej jednotky;
- Error Frame (chybový rámec), - všetky pripojené riadiace jednotky sú upozornené, že nastala chyba a posledná správa na dátovej zbernici CAN je neplatná.
Protokol dátovej zbernice CAN podporuje dva rôzne formáty rámca správ, ktoré sa líšia iba dĺžkou identifikátora: Štandardný a Rozšírený.
V súčasnosti systémy na výmenu údajov riadiaceho systému vozidla Daimler Chrysler používajú iba štandardný formát.
Formát rámu
Každý rámec správ prenášaných cez zbernicu CAN pozostáva zo siedmich po sebe nasledujúcich polí:
- Start of Frame (štart bit): Označí začiatok správy a synchronizuje všetky moduly;
- Arbitration Field (arbitrážne pole): Toto pole pozostáva z 11-bitového identifikátora (adresy) a jedného riadiaceho bitu (Remote Transmission Request-Bit), pričom rám označíte ako dátový rámec (dátový rámec) alebo ako vzdialený rám (rámec vzdialenej požiadavky);
- Control Field (ovládacie bity): 6-bitové riadiace pole obsahuje definujúci bit IDE (Identifier Extension Bit), ktorý sa používa na rozpoznanie typu používaného formátu (štandardné alebo rozšírené), rezervný bit pre následné rozšírenia a - v posledných 4 bitoch - informácia o počte bajtov dát uložených v dátovom poli (pozri nižšie);
- Data Field (dáta): Dátové pole môže obsahovať od 0 do 8 bajtov dát, - prenos 0 bajtových správ cez CAN zbernicu sa používa na synchronizáciu distribuovaných procesov;
- CRC Field (kontrolné pole): CRC pole (Cyclic-Redundancy-Check Field) obsahuje 16 bitov a slúži na rozpoznávanie chýb riadenia pri prenose;
- ACK Field (potvrdenie prijatia): pole ACK (Acknowledgement Field) obsahuje potvrdzovací signál pre príjem všetkých prijímacích jednotiek, ktoré prijali správu cez zbernicu CAN bez chýb;
- End of Frame (koniec rámu): Označuje koniec rámčeka;
- Intermission (interval): Interval medzi dvoma susednými dátovými rámcami. Dĺžka intervalu musí byť aspoň 3 bity, po identifikácii ktorá z riadiacich jednotiek môže začať vysielať ďalší paket;
- IDLE (kľudový režim): Ak žiadna riadiaca jednotka nevysiela správy, zbernica CAN zostáva v kľudovom (pohotovostnom) režime až do odoslania ďalšieho paketu.
Priority
Na spracovanie údajov v reálnom čase musí byť možné ich rýchlo prenášať.
To si vyžaduje nielen prítomnosť linky s vysokou rýchlosťou fyzického prenosu dát, ale vyžaduje si to aj rýchly prístup k spoločnej zbernici CAN, ak niekoľko riadiacich jednotiek potrebuje súčasne prenášať správy.
Aby bolo možné rozlíšiť správy prenášané cez dátovú zbernicu CAN podľa stupňa naliehavosti, sú pre jednotlivé správy poskytnuté rôzne priority.
Napríklad časovanie zapaľovania má najvyššiu prioritu, hodnoty sklzu majú strednú prioritu a teplota vonkajšieho vzduchu má najnižšiu prioritu.
Priorita, s ktorou sa správa prenáša cez zbernicu CAN, je určená identifikátorom (pole adresy) zodpovedajúcu správu.
Identifikátor zodpovedajúci menšiemu binárnemu číslu má vyššiu prioritu a naopak.
Protokol dátovej zbernice CAN je založený na dvoch logických stavoch: Bity sú buď "recesívne" (logická "1") alebo "dominantné" (logická "0"). Ak je dominantný bit vysielaný aspoň jedným modulom, potom sú recesívne bity prenášané inými modulmi prepísané.
Príklad
Príklad organizovania arbitráže
Prvá riadiaca jednotka (NI) stráca rozhodovanie od 3. bitu
Tretia riadiaca jednotka (N III) stráca arbitráž od 7. bitu
Druhá riadiaca jednotka (N II) si zachováva prístup k dátovej zbernici CAN a môže prenášať jej správu
Ak niekoľko riadiacich jednotiek začne súčasne prenášať dáta, konflikt prístupu k spoločnej dátovej zbernici je vyriešený "bitovou arbitrážou žiadostí o zdieľané zdroje" pomocou zodpovedajúcich identifikátorov.
Pri vysielaní poľa identifikátorov jednotka vysielača po každom bite skontroluje, či má ešte vysielacie právo, alebo či už iná riadiaca jednotka po zbernici vysiela správu s vyššou prioritou.
Ak je recesívny bit vysielaný prvým vysielacím blokom prepísaný dominantným bitom iného vysielacieho bloku, potom prvý vysielací blok stratí svoje vysielacie právo (arbitráž) a stane sa blokom prijímača.
Ostatné riadiace jednotky sa pokúsia preniesť svoje správy cez dátovú zbernicu CAN až po jej opätovnom uvoľnení. V tomto prípade bude prenosové právo opäť udelené v súlade s prioritou správy na dátovej zbernici CAN.
Rozpoznanie chyby
Rušenie môže viesť k chybám pri prenose údajov. Takéto chyby prenosu by sa mali rozpoznať a opraviť. Protokol dátovej zbernice CAN rozlišuje dve úrovne detekcie chýb:
- Mechanizmy na úrovni dátového rámca (dátový rámec);
- Mechanizmy na úrovni bitov.
Mechanizmy na úrovni dátového rámca
Cyclic-Redundancy-Check
Vysielacia jednotka na základe správy prenášanej cez dátovú zbernicu CAN vypočíta riadiace bity, ktoré sú prenášané spolu s dátovým paketom v poli "CRC Field" (kontrolné súčty). Prijímacia jednotka prepočítava tieto riadiace bity na základe správy prijatej na dátovej zbernici CAN a porovnáva ich s riadiacimi bitmi prijatými spolu s touto správou.
Frame Check
Tento mechanizmus kontroluje štruktúru prenášaného bloku (rámca), to znamená, že sa znova kontrolujú bitové polia s daným pevným formátom a dĺžkou rámca.
Chyby zistené Frame Check sú označené ako chyby formátu.
Mechanizmy na bitovej úrovni
Monitorovanie
Každý modul pri prenose správy sleduje logickú úroveň dátovej zbernice CAN a zisťuje rozdiely medzi prenášanými a prijímanými bitmi. To zaisťuje spoľahlivé rozpoznanie globálnych a lokálnych bitových chýb vyskytujúcich sa v jednotke vysielača.
Bit Stuffing
V každom dátovom rámci medzi poľami "Start of Frame" a koniec "CRC poľa" nesmie byť viac ako 5 po sebe idúcich bitov rovnakej polarity.
Po každej sekvencii 5 identických bitov pridá blok vysielača k bitovému toku jeden bit s opačnou polaritou.
Prijímacie jednotky vymažú tieto bity po prijatí správy na dátovej zbernici CAN.
Riešenie problémov
Ak niektorý modul dátovej zbernice CAN zistí chybu, preruší aktuálny proces prenosu dát odoslaním chybového hlásenia. Chybové hlásenie pozostáva zo 6 dominantných bitov.
Vďaka chybovému hláseniu sú všetky riadiace jednotky pripojené na dátovú zbernicu CAN upozornené na lokálnu chybu, a preto ignorujú predtým vyslanú správu.
Po krátkej odmlke budú môcť všetky riadiace jednotky opäť posielať správy cez dátovú zbernicu CAN, pričom ako prvá bude opäť odoslaná správa s najvyššou prioritou.
Riadiaca jednotka, ktorej správa na dátovej zbernici CAN spôsobila chybu, tiež začína znova vysielať svoju správu (funkcia automatického opakovania požiadavky).
Typy CAN zbernica
Pre rôzne oblasti riadenia sa používajú rôzne zbernice CAN. Líšia sa od seba rýchlosťou prenosu dát.
Prenosová rýchlosť CAN dátovej zbernice motora a podvozku (CAN-C) je 125 kbit/s, pričom vnútorná CAN dátová zbernica (CAN-B) je dimenzovaná na prenosovú rýchlosť len 83 kbit/s z dôvodu menšieho počtu obzvlášť naliehavých správ /S.
Výmena dát medzi dvoma zbernicovými systémami sa uskutočňuje prostredníctvom takzvaných "brán", t.j. riadiace jednotky pripojené na obe dátové zbernice.
Optická zbernica D2B (Digital Daten-Bus) údaje použité v oblasti "Audio/Komunikácia/Navigácia". Kábel z optických vlákien môže prenášať podstatne viac informácií ako zbernica s medeným káblom.
CAN-C - zbernica "Motor a podvozok"
V terminálovej riadiacej jednotke je na každej strane medzi oboma vodičmi dátovej zbernice zapojený tzv. zakončovací odpor dátovej zbernice s odporom 120 Ohmov.
Dátová zbernica CAN v motorovom priestore sa aktivuje len pri zapnutom zapaľovaní.
Na zbernicu CAN-C je možné pripojiť viac ako 7 riadiacich jednotiek.
CAN-B - autobus "Salón"
Niektoré riadiace jednotky pripojené k vnútornej dátovej zbernici CAN sa aktivujú bez ohľadu na zapnuté zapaľovanie (napríklad: systém s jedným zámkom).
Preto musí byť interiérová dátová zbernica CAN aj pri vypnutom zapaľovaní v režime funkčnej pripravenosti, čiže aj pri vypnutom zapaľovaní musí byť zabezpečená možnosť prenosu dátových paketov.
Aby sa čo najviac znížila spotreba kľudového prúdu, dátová zbernica CAN pri absencii dát potrebných na prenos prejde do pasívneho pohotovostného režimu a opäť sa aktivuje až pri ďalšom prístupe.
Ak je v pasívnom pohotovostnom režime interiérovej dátovej zbernice CAN akákoľvek riadiaca jednotka (napr. modul ovládania jedného zámku) prenáša cez ňu správu, prijíma ju iba hlavný systémový modul (elektronický spínač zapaľovania, EZS/EIS). Modul EZS uloží túto správu do pamäte a vyšle budiaci signál do všetkých riadiacich jednotiek pripojených na zbernicu CAN-B.
Po aktivácii EZS skontroluje prítomnosť všetkých používateľov dátovej zbernice CAN a následne odošle správu, ktorá bola predtým uložená v pamäti.
Na zbernicu CAN-B je možné pripojiť viac ako 20 riadiacich jednotiek.
