Tartalomjegyzék: Előnyök ↓ Adatcsomag formátum ↓ Prioritások ↓ Példa ↓ Hibafelismerés ↓ Adatkeret szintű mechanizmusok ↓ Bitszintű mechanizmusok ↓ Hibaelhárítás ↓ CAN busz típusok ↓
A jármű több CAN adatcsere hálózati buszt használ (Controller Area Network) különböző rendszerek vezérlőegységei (moduljai) és a jármű működtetőinek vezérlői között.
Az egyes vezérlőegységek egy közös hálózatban kapcsolódnak egymáshoz, és képesek adatcserére.
A busz kétirányú, pl. Bármely hozzá csatlakoztatott eszköz képes üzeneteket fogadni és továbbítani.
Az érzékeny elem (szenzor) jele a legközelebbi vezérlőegységhez kerül, amely feldolgozza és továbbítja a CAN adatbuszra.
Bármely, a CAN adatbuszra csatlakoztatott vezérlőegység képes kiolvasni ezt a jelet, kiszámítani az alapján a vezérlési műveleti értéket és vezérelni a működtető szervót.
Adatcsere CAN buszon keresztül

- B – 1. érzékelő
- CAN – adatbusz
- M - Végrehajtó elemek I-III (szervomechanizmusok)
- N — Vezérlőegységek (vezérlők) I-V
Előnyök
Az elektromos és elektronikus eszközök hagyományos kábeles csatlakoztatásával közvetlen kapcsolat jön létre az egyes vezérlőegységek és minden érzékelő és aktuátor között, amelyektől mérési eredményeket kapnak, vagy amelyeket vezérelnek.
A vezérlőrendszer bonyolultsága a kábelvonalak túlzott hosszúságához vagy számához vezet.
A szabványos kábelezéshez képest az adatbusz:
- A kábelek számának csökkentése. Az érzékelők vezetékei csak a legközelebbi vezérlőegységig vannak meghosszabbítva, amely a mért értékeket adatcsomaggá alakítja és továbbítja a CAN buszra.
- Az aktuátort bármely vezérlőegység vezérelheti, amely a megfelelő adatcsomagot a CAN buszon keresztül kapja, és ennek alapján számítja ki a szervomechanikán a vezérlési művelet értékét.
- Az elektromágneses kompatibilitás javítása.
- A dugaszolható csatlakozások számának csökkentése és a vezérlőegységek érintkezőkapcsai számának csökkentése.
- Fogyás.
- Az érzékelők számának csökkentése, mert jeleket egy érzékelőtől (például a hűtőfolyadék hőmérséklet-érzékelőjétől) különböző rendszerek használhatják.
- Diagnosztikai képességek fejlesztése. Mert jeleket egy érzékelőtől (például sebességjelző) különböző rendszerek használják, akkor ha minden rendszer generál hibaüzenetet, amely ezt a jelet használja, a hibás általában az érzékelő vagy a jelzéseit feldolgozó vezérlőegység. Ha a hibaüzenet csak egy rendszertől érkezik, bár ezt a jelet más rendszerek is használják, akkor a hiba oka leggyakrabban a feldolgozó vezérlőegységben vagy szervo mechanizmusban van.
- Nagy adatátviteli sebesség - akár 1 Mbit/s is lehetséges, maximum 40 m-es vonalhosszal Jelenleg az adatátviteli sebesség egy autón 83 Kbit/s-tól 500 Kbit/s-ig terjed.
- Több üzenet is továbbítható egymás után ugyanazon a vonalon.
A CAN adatbusz egy kéteres, csavart érpárból álló kábelből áll. Minden eszköz ehhez a vonalhoz csatlakozik (készülékvezérlő egységek).
Az adatátvitel mindkét vezetéken duplikálással történik, az adatbusz logikai szintjei pedig tükörképesek (vagyis ha az egyik vezetéken logikai nulla szintet továbbítunk, akkor a másik vezetéken egy logikai egy szintet továbbítunk, és fordítva).
A kétvezetékes átviteli sémát két okból használják: a hibák észlelésére és a megbízhatóság alapjaként.
Ha csak egy vezetéken van feszültségcsúcs (például EMC-problémák miatt (elektromágneses kompatibilitás)), akkor a vevőegységek ezt hibaként azonosíthatják, és figyelmen kívül hagyhatják ezt a feszültségcsúcsot.
Ha rövidzárlat vagy szakadás lép fel a két CAN adatbusz vezeték egyikében, akkor az integrált szoftver- és hardvermegbízhatósági rendszernek köszönhetően egyvezetékes üzemmódra vált át. A sérült távvezetéket nem használják.
A felhasználók által továbbított és fogadott adatok sorrendje és formátuma (előfizetők) üzeneteket az adatcsere protokoll határozza meg.
A CAN adatbusz lényeges megkülönböztető jellemzője a többi előfizetői címzési elven működő buszrendszerhez képest az üzenethez kapcsolódó címzés.
Ez azt jelenti, hogy a CAN adatbuszon minden üzenethez saját állandó cím van hozzárendelve (azonosító), megjelölve ennek az üzenetnek a tartalmát (pl.: hűtőfolyadék hőmérséklet). A CAN adatbusz protokoll akár 2048 különböző üzenet továbbítását teszi lehetővé, a 3-tól 2048-ig terjedő címek állandó hozzárendelésével.
A CAN adatbuszon egy üzenetben lévő adatmennyiség 8 bájt.
A fogadó blokk csak azokat az üzeneteket dolgozza fel (adatcsomagok), amelyeket az adatbuszon keresztül fogadott CAN-üzeneteinek listájában tárol (elfogadhatósági ellenőrzés).
Adatcsomagok csak akkor továbbíthatók, ha a CAN adatbusz szabad (azaz ha az utolsó adatcsomag után 3 bites intervallum volt, és egyik vezérlőegység sem kezd el üzenetet küldeni).
Ebben az esetben az adatbusz logikai szintjének recesszívnek kell lennie (logikai "1").
Ha egyszerre több vezérlőegység kezd üzenetet küldeni, akkor életbe lép a prioritáselv, amely szerint a legmagasabb prioritású CAN adatbusz üzenet kerül először továbbításra idő- és bitveszteség nélkül (a megosztott adatbuszhoz való hozzáférési kérelmek választottbírósága).
Minden vezérlőegység, amely elveszíti döntőbírósági jogát, automatikusan vételre kapcsol, és újra megpróbálja elküldeni az üzenetét, amint a CAN adatbusz ismét szabaddá válik.
Az adatcsomagokon kívül egy kérési csomag is található egy adott üzenethez a CAN adatbuszon.
Ebben az esetben a kért adatcsomagot biztosítani tudó vezérlőegység válaszol erre a kérésre.
Adatcsomag formátum

Normál átviteli módban az adatcsomagok a következő blokkkonfigurációkkal (keretekkel) rendelkeznek:
- Data Frame (üzenet keret) üzenetek továbbítására a CAN adatbuszon keresztül (pl.: hűtőfolyadék hőmérséklet).
- Remote Frame (kérés keret) üzeneteket kérni a CAN adatbuszon keresztül egy másik vezérlőegységtől.
- Error Frame (hiba keret) minden csatlakoztatott vezérlőegység értesítést kap, ha hiba történt, és a CAN adatbuszon az utolsó üzenet érvénytelen.
A CAN adatbusz protokoll két különböző CAN adatbusz üzenet keretformátumot támogat, amelyek csak az azonosító hosszában térnek el egymástól:
- szabványos formátum;
- kiterjesztett formátum.
Jelenleg a szabványos formátum használatos.
A CAN adatbuszon keresztüli üzenetek továbbítására szolgáló adatcsomag hét egymást követő mezőből áll:
- Start of Frame (start bit): Megjelöli az üzenet kezdetét, és szinkronizálja az összes modult.
- Arbitration Field (azonosító és kérés): Ez a mező egy 11 bites azonosítóból (címből) és 1 vezérlőbitből áll (Remote Transmission Request-Bit). Ez a vezérlőbit adatkeretként jelöli meg a csomagot (üzenet keret) vagy távoli keretként (kérés keret) adatbájtok nélkül.
- Control Field (vezérlő bitek): A vezérlőmező (6 bit) tartalmazza az IDE bitet (Identifier Extension Bit) a szabványos és kiterjesztett formátum felismerésére, egy tartalék bit a későbbi kiterjesztések számára és - az utolsó 4 bitben - az adatmezőben lévő adatbájtok száma (adatmező).
- Data Field (adat): Az adatmező 0-8 bájtnyi adatot tartalmazhat. Egy 0 bájtos CAN adatbusz üzenetet használnak az elosztott folyamatok szinkronizálására.
- CRC Field (vezérlő mező): CRC mező (Cyclic-Redundancy-Check Field) 16 bitet tartalmaz, és az átvitel során előforduló hibák vezérlésére szolgál.
- ACK Field (elfogadás megerősítése): ACK mező (Acknowledgement Field) tartalmaz egy jelet, amely megerősíti az összes vevőegység fogadását, amely hiba nélkül fogadta az üzenetet a CAN buszon keresztül.
- End of Frame (keret vége): Az adatcsomag végét jelöli.
- Intermission (intervallum): Két adatcsomag közötti intervallum. Az intervallumnak legalább 3 bitesnek kell lennie. Ezt követően bármelyik vezérlőegység továbbíthatja a következő adatcsomagot.
- IDLE (pihenő mód): Ha egyetlen vezérlőegység sem küld üzenetet, a CAN-busz készenléti üzemmódban marad a következő adatcsomag továbbításáig.
Prioritások
Az adatok valós idejű feldolgozásához lehetővé kell tenni azok gyors továbbítását.
Ez nemcsak nagy fizikai adatsebességű vonalat igényel, hanem gyors hozzáférést is igényel a közös CAN-buszhoz, ha több vezérlőegységnek kell egyidejűleg üzeneteket továbbítania.
A CAN-adatbuszon keresztül továbbított üzenetek sürgősségi fokuk szerinti megkülönböztetése érdekében az egyes üzeneteknek eltérő prioritásokat biztosítanak.
A gyújtás időzítése például a legmagasabb prioritású, a csúszási értékek az átlagos prioritásúak, és a külső levegő hőmérséklete a legalacsonyabb.
Az üzenet továbbításának prioritását a CAN buszon a megfelelő üzenet azonosítója (címe) határozza meg.
A kisebb bináris számnak megfelelő azonosító magasabb prioritású, és fordítva.
A CAN adatbusz protokoll két logikai állapoton alapul: A bitek vagy "recesszívek" (logikai "1") vagy "dominánsak" (logikai "0"). Ha egy domináns bitet legalább egy modul továbbít, akkor a többi modul által továbbított recesszív bitek felülíródnak.
Példa

Ha több vezérlőegység egyidejűleg kezdi meg az adatátvitelt, a közös adatbuszhoz való hozzáférési konfliktust a "közös erőforrás-kérelmek bitenkénti arbitrációja" oldja fel a megfelelő azonosítók használatával.
Az azonosító mező továbbításakor az adóegység minden bit után ellenőrzi, hogy van-e még adási joga, vagy a CAN adatbuszon keresztül más vezérlőegység már továbbít magasabb prioritású üzenetet.
Ha az első adóblokk által továbbított recesszív bitet felülírja egy másik adóblokk domináns bitje, akkor az első adóblokk elveszti adási jogát (arbitráció), és vevőblokk lesz.
Az első vezérlőblokk (NI) elveszti az arbitrációt a 3. bittől.
A harmadik vezérlőblokk (N III) a 7. bittől elveszti az arbitrációt.
A második vezérlőegység (N II) fenntartja a hozzáférési jogokat a CAN adatbuszhoz, és képes továbbítani az üzenetét.
Más vezérlőegységek csak akkor kísérlik meg üzeneteiket a CAN adatbuszon keresztül továbbítani, ha az ismét szabaddá válik. Ebben az esetben az átviteli jog ismét a CAN adatbuszon lévő üzenet prioritása szerint kerül megadásra.
Hibafelismerés
Az interferencia hibákat okozhat az adatátvitelben. Az átvitel során előforduló ilyen hibákat fel kell ismerni és ki kell javítani. A CAN adatbusz protokoll két hibafelismerési szintet különböztet meg:
- adatkeret szintű mechanizmusok (üzenet keret);
- bitszintű mechanizmusok.
Adatkeret szintű mechanizmusok
Cyclic-Redundancy-Check:
A CAN adatbuszon keresztül továbbított üzenet alapján az adóegység vezérlőbiteket számít ki, amelyeket az adatcsomaggal együtt továbbít a "CRC Field" mezőben (ellenőrző összegeket). A vevő egység újraszámítja ezeket a vezérlőbiteket a CAN adatbuszon keresztül kapott üzenet alapján, és összehasonlítja az ezzel az üzenettel kapott vezérlőbitekkel.
Frame Check:
Ez a mechanizmus ellenőrzi az átvitt blokk (frame) szerkezetét, vagyis az adott fix formátumú bitmezőket és a kerethosszúságot újraellenőrzi.
A Frame Check funkció által észlelt hibák formátumhibának vannak jelölve.
Bitszintű mechanizmusok
Monitoring:
Mindegyik modul figyeli a CAN adatbusz logikai szintjét üzenet továbbításakor, és meghatározza az elküldött és a vett bitek közötti különbségeket. Ez biztosítja az adóegységben előforduló globális és lokális bithibák megbízható felismerését.
Bit Stuffing:
Minden adatcsomagban a mező között "Start of Frame" és a "CRC Field" mező vége nem lehet több, mint 5 egymást követő, azonos polaritású bit.
Minden 5 azonos bitből álló sorozat után a blokkadó hozzáad egy ellentétes polaritású bitet a bitfolyamhoz.
A vevőegységek törlik ezeket a biteket, miután üzenetet kaptak a CAN adatbuszon.
Hibaelhárítás
Ha bármelyik CAN adatbusz-modul hibát észlel, hibaüzenet küldésével megszakítja az aktuális adatátviteli folyamatot. A hibaüzenet 6 domináns bitből áll.
A hibaüzenetnek köszönhetően a CAN adatbuszra csatlakoztatott összes vezérlőegység értesítést kap a fellépő helyi hibáról, és ennek megfelelően figyelmen kívül hagyja a korábban továbbított üzenetet.
Rövid szünet után az összes vezérlőegység ismét képes üzeneteket küldeni a CAN adatbuszon keresztül, először ismét a legmagasabb prioritású üzenetet küldve.
Az a vezérlőegység, amelynek CAN adatbusz-üzenete a hibát okozta, szintén megkezdi üzenetének újraküldését (automatikus ismétlési kérés funkció).
CAN busz típusok
A különböző vezérlési területekhez különböző CAN buszokat használnak. Adatátviteli sebességben különböznek egymástól.
A CAN adatbusz átviteli sebessége a "motor és alváz" területen (CAN-C) 125 kbit/s, míg az "Interior" (CAN-B) CAN adatbusz a különösen sürgős üzenetek kisebb száma miatt mindössze 83 kbit/s adatátviteli sebességre készült.
A két buszrendszer közötti adatcsere úgynevezett "internetes átjárókon" keresztül történik, azaz az úgynevezett "internetes átjárókon" keresztül. mindkét adatbuszra csatlakoztatott vezérlőegységek.
D2B optikai busz (Digital Daten-Bus) az "Audio/Kommunikáció/Navigáció" területre alkalmazott adatok. Az optikai kábel lényegesen több információt képes továbbítani, mint a rézkábeles busz.
[Tartalom forrása: a megadott weboldal: audimanual.ru]
