CAN komunikacija
B - Senzor 1
CAN - Podatkovna sabirnica
M - Izvršni elementi I-III (servo mehanizmi)
N - Kontrolne jedinice (kontrolori) I-V
Autobus je full duplex (ili samo duplex), tj. bilo koji uređaj spojen na njega može istovremeno primati i slati poruke.
Signal iz osjetljivog elementa odgovarajuće informacije (senzor) ulazi u najbližu upravljačku jedinicu koja ga obrađuje i prenosi na CAN sabirnicu podataka.
Bilo koja kontrolna jedinica spojena na CAN sabirnicu podataka može očitati ovaj signal, izračunati upravljačke parametre na temelju njega i upravljati servo aktuatorom.
Prednosti
Uz uobičajenu kabelsku vezu električnih i elektroničkih uređaja, svaka upravljačka jedinica izravno je povezana sa svim senzorima i aktuatorima od kojih prima mjerenja ili kojima upravlja.
Komplikacija sustava upravljanja dovodi do prekomjerne duljine ili više kabelskih linija.
U usporedbi sa standardnim kablovima, podatkovna sabirnica pruža:
- Smanjenje broja kablova. Žice od senzora povlače se samo do najbliže upravljačke jedinice, koja pretvara izmjerene vrijednosti u paket podataka i prenosi ih na CAN sabirnicu;
- Bilo koja upravljačka jedinica može upravljati aktuatorom koji preko CAN sabirnice prima odgovarajući paket podataka i na temelju toga izračunava vrijednost upravljačkog djelovanja na servomehanizam;
- Poboljšanje elektromagnetske kompatibilnosti;
- Smanjenje broja utičnih spojeva i smanjenje broja kontaktnih izlaza na upravljačkim jedinicama;
- Gubitak težine;
- Smanjenje broja senzora, jer signali jednog senzora (npr. od osjetnika temperature rashladne tekućine) mogu koristiti različiti sustavi;
- Poboljšanje dijagnostičkih mogućnosti. Jer signali jednog senzora (npr. signal za brzinu) koriste različiti sustavi, onda ako poruku o pogrešci izdaju svi sustavi koji koriste ovaj signal, senzor ili upravljačka jedinica koja obrađuje njihove signale obično je neispravna. Ako poruka o pogrešci dolazi samo iz jednog sustava, iako taj signal koriste drugi sustavi, tada je uzrok kvara najčešće u upravljačkoj jedinici obrade ili servomehanizmu;
- Visoka brzina prijenosa podataka - moguće je do 1 Mbit/s uz maksimalnu duljinu linije od 40 m. Trenutno vozila Mercedes-Benz imaju brzine prijenosa podataka od 83 Kbit/s do 500 Kbit/s;
- Nekoliko poruka može se slati naizmjenično na istoj liniji.
CAN sabirnica podataka sastoji se od dvožilne žice izrađene u obliku upletene parice. Svi uređaji spojeni na ovu liniju (upravljačke jedinice uređaja).
Prijenos podataka provodi se dupliciranjem na obje žice, a logičke razine sabirnice podataka se zrcale (odnosno ako se jednom žicom prenosi razina logičke nule (0), zatim na drugoj žici - razina logičke jedinice (1), i obrnuto).
Dvožična shema prijenosa koristi se iz dva razloga: za kontrolu grešaka i kao osnova za pouzdanost.
Ako se vršni napon pojavi samo na jednoj žici, na primjer zbog problema s elektromagnetskom kompatibilnošću (EMC), tada primatelji mogu identificirati ovo kao pogrešku i ignorirati ovaj skok.
U slučaju kratkog spoja ili prekida jedne od dvije žice CAN sabirnice, zahvaljujući integriranom softverskom i hardverskom sustavu pouzdanosti, vrši se prebacivanje u jednožilni način rada. Oštećeni dalekovod se više ne koristi.
Redoslijed i format koji korisnici prenose i primaju (pretplatnika) poruke definiran je u komunikacijskom protokolu.
Bitno razlikovno obilježje CAN podatkovne sabirnice u usporedbi s drugim sustavima sabirnica koji se temelje na principu adresiranja pretplatnika je adresiranje vezano uz poruke.
To znači da se svakoj poruci koja se prenosi sabirnicom dodjeljuje njena stalna adresa (identifikator), označavajući sadržaj ove poruke (npr.: temperatura rashladne tekućine). Protokol sabirnice podataka CAN omogućuje prijenos do 2048 različitih poruka, s adresama 2033 do 2048 koje su trajno dodijeljene.
Količina podataka u jednoj poruci na CAN sabirnici je 8 bajtova.
Prijemna jedinica obrađuje samo one poruke koje su pohranjene u vlastitoj identifikacijskoj listi (prijemna kontrola).
Paketi podataka mogu se prenositi samo ako je sabirnica CAN razmjene slobodna (tj. ako je nakon prijenosa posljednjeg paketa uslijedio interval od 3 bita, a niti jedna kontrolna jedinica ne počne slati sljedeću poruku). U tom slučaju logička razina sabirnice podataka mora biti recesivna (logično «1»).
Ako više upravljačkih jedinica započne slanje poruka u isto vrijeme, tada na snagu stupa princip prioriteta prema kojem će poruka s najvećim prioritetom biti prva poslana bez gubitka vremena ili bitova (arbitraža zahtjeva za pristup zajedničkoj podatkovnoj sabirnici).
Svaka kontrolna jedinica koja izgubi pravo arbitraže automatski će se prebaciti na primanje i ponovno pokušati poslati svoju poruku čim se podatkovna sabirnica ponovno oslobodi.
Osim podatkovnih paketa koriste se i paketi za traženje određene poruke na CAN podatkovnoj sabirnici - na takav zahtjev odgovara upravljačka jedinica koja može dati traženu informaciju.
Format prijenosa podataka
U normalnom načinu prijenosa koriste se paketi sljedećih konfiguracija:
- Data Frame (okvir poruke) za prijenos poruka na CAN sabirnici podataka (npr.: temperatura rashladne tekućine);
- Remote Frame (okvir zahtjeva) zatražiti poruke na CAN podatkovnoj sabirnici od druge upravljačke jedinice;
- Error Frame (okvir pogreške), - sve povezane upravljačke jedinice su obaviještene da je došlo do greške i da je posljednja poruka na CAN sabirnici podataka nevažeća.
Protokol CAN podatkovne sabirnice podržava dva različita formata okvira poruke CAN podatkovne sabirnice koji se razlikuju samo u duljini identifikatora:
- standardni format;
- Prošireni format.
Trenutno komunikacijski sustavi sustava upravljanja vozilima Daimler Chrysler koriste samo standardni format.
Svaki okvir poruke koji se prenosi preko CAN sabirnice sastoji se od sedam uzastopnih polja:
Format okvira
- Start of Frame (početak malo): Označava početak poruke i sinkronizira sve module;
- Arbitration Field (id i zahtjev): Ovo polje se sastoji od identifikatora (adrese) 11 bitova i 1 bit za provjeru (Remote Transmission Request-Bit). Ovaj kontrolni bit označava okvir kao podatkovni okvir (podatkovni okvir) ili kao daljinski okvir (udaljeni okvir zahtjeva) bez podatkovnih bajtova;
- Control Field (kontrolni bitovi): Kontrolno polje (6 bita) sadrži IDE bit (Identifier Extension Bit) za prepoznavanje standardnog i proširenog formata, rezervni bit za naknadna proširenja i - u zadnja 4 bita - broj bajtova podataka ugrađenih u podatkovno polje (podatkovno polje);
- Data Field (podaci): Podatkovno polje može sadržavati 0 do 8 bajtova podataka; poruka na CAN sabirnici podataka duljine 0 bajtova koristi se za sinkronizaciju distribuiranih procesa;
- CRC Field (kontrolno polje): CRC polje (Cyclic-Redundancy-Check Field) sadrži 16 bitova i služi za kontrolno prepoznavanje pogrešaka tijekom prijenosa;
- ACK Field (potvrda primitka): polje ACK (Acknowledgement Field) sadrži signal potvrde za sve prijamne jedinice koje su primile poruku putem CAN sabirnice bez greške;
- End of Frame (kraj okvira): Označava kraj okvira;
- Intermission (interval): Interval između dva podatkovna okvira. Interval mora biti najmanje 3 bita. Nakon toga, bilo koja kontrolna jedinica može početi slati sljedeći paket;
- IDLE (način odmora): Ako nijedna upravljačka jedinica ne odašilje poruke, tada CAN sabirnica ostaje u stanju mirovanja do prijenosa sljedećeg paketa.
Prioriteti
Kako bi se podaci obrađivali u stvarnom vremenu, mora postojati mogućnost njihovog brzog prijenosa.
Ne samo da to zahtijeva vezu visoke fizičke brzine prijenosa podataka, već također zahtijeva da zajednička CAN sabirnica bude brzo dostupna ako više upravljačkih jedinica treba slati poruke u isto vrijeme.
Kako bi se razlikovale poruke koje se prenose CAN sabirnicom podataka prema stupnju hitnosti, predviđeni su različiti prioriteti za pojedine poruke.
Vrijeme paljenja, na primjer, ima najveći prioritet, vrijednosti klizanja imaju srednji, a vanjska temperatura ima najniži prioritet.
Prioritet s kojim se poruka prenosi na CAN sabirnici određen je identifikatorom (adresa) odgovarajuću poruku.
Identifikator koji odgovara manjem binarnom broju ima veći prioritet i obrnuto.
Protokol sabirnice podataka CAN temelji se na dva logička stanja: Bitovi su ili «recesivan» (logično «1»), ili «dominantan» (logično «0»). Ako dominantni bit prenosi barem jedan modul, tada se recesivni bitovi koje prenose drugi moduli prepisuju.
Primjer
Ako više upravljačkih jedinica započne prijenos podataka u isto vrijeme, tada se sukob pristupa zajedničkoj sabirnici podataka rješava pomoću «bitwise arbitraža zahtjeva za zajedničkim resursima» s odgovarajućim identifikatorima.
Prilikom odašiljanja polja identifikatora odašiljač nakon svakog bita provjerava ima li još pravo odašiljanja ili neka druga upravljačka jedinica već odašilje poruku višeg prioriteta na sabirnici.
Ako se recesivni bit koji prenosi prva odašiljačka jedinica prebriše dominantnim bitom druge odašiljačke jedinice, tada prva odašiljačka jedinica gubi pravo na prijenos (arbitraža) i postaje prijemni blok.
Primjer arbitraže
Prva upravljačka jedinica (N I) gubi arbitražu od 3. bita.
Treća upravljačka jedinica (N III) gubi arbitražu od 7. bita.
Druga upravljačka jedinica (N II) zadržava pravo pristupa CAN sabirnici podataka i može prenijeti svoju poruku.
Ostale upravljačke jedinice pokušat će prenijeti svoje poruke na CAN podatkovnu sabirnicu tek kada se ponovno oslobodi. U tom slučaju ponovno će se dodijeliti pravo prijenosa u skladu s prioritetom poruke na CAN sabirnici podataka.
Prepoznavanje grešaka
Smetnje mogu dovesti do pogrešaka u prijenosu podataka. Takve pogreške u prijenosu treba prepoznati i ispraviti. Protokol sabirnice podataka CAN razlikuje dvije razine prepoznavanja pogreške:
- Mehanizmi na razini podatkovnog okvira (podatkovni okvir);
- Mehanizmi razine bitova.
Mehanizmi na razini podatkovnog okvira
Cyclic-Redundancy-Check
Na temelju poruke odaslane putem CAN podatkovne sabirnice, transmiter izračunava kontrolne bitove koji se prenose zajedno s paketom podataka u polje «CRC Field» (kontrolni zbrojevi). Prijemna jedinica ponovno izračunava ove kontrolne bitove na temelju poruke primljene na CAN sabirnici podataka i uspoređuje ih s kontrolnim bitovima primljenim s ovom porukom.
Frame Check
Ovaj mehanizam provjerava strukturu odaslanog bloka (okvir), odnosno ponovno se provjeravaju bitna polja s danim fiksnim formatom i duljinom okvira.
Pogreške otkrivene provjerom okvira označavaju se kao pogreške formata.
Mehanizmi razine bitova
Praćenje
Svaki modul prilikom odašiljanja poruke prati logičku razinu CAN sabirnice podataka i utvrđuje razlike između poslanih i primljenih bitova. Ovo osigurava pouzdano prepoznavanje globalnih i lokalnih pogrešaka u bitovima koje se javljaju u odašiljačkoj jedinici.
Bit Stuffing
U svakom okviru podataka između polja «Start of Frame» i kraj terena «CRC Field» ne smije biti više od 5 uzastopnih bitova s istim polaritetom.
Nakon svakog niza od 5 identičnih bitova, blok odašiljač dodaje jedan bit suprotnog polariteta u tok bitova.
Prijemne jedinice brišu ove bitove nakon primanja poruke na CAN sabirnici podataka.
Rješavanje problema
Ako bilo koji modul CAN podatkovne sabirnice otkrije pogrešku, prekida trenutni proces prijenosa podataka slanjem poruke o pogrešci. Poruka o pogrešci sastoji se od 6 dominantnih bitova.
Zahvaljujući poruci o pogrešci, sve upravljačke jedinice spojene na CAN sabirnicu podataka dobivaju obavijest o lokalnoj pogrešci koja se dogodila i, sukladno tome, ignoriraju prethodno poslanu poruku.
Nakon kratke pauze, sve upravljačke jedinice ponovno će moći slati poruke na CAN podatkovnoj sabirnici, pri čemu će se ponovno prva poslati poruka s najvećim prioritetom.
Upravljačka jedinica čija je poruka na CAN sabirnici podataka uzrokovala pogrešku također počinje ponovno slati svoju poruku (funkcija automatskog zahtjeva za ponavljanjem).
Vrste CAN sabirnice
Za različita kontrolna područja koriste se različite CAN sabirnice. Međusobno se razlikuju po brzini prijenosa podataka.
CAN područje brzine prijenosa podataka «motora i voznog mehanizma» (CAN-C) je 125 Kbps, a CAN sabirnica podataka «Salon» (CAN-B) zbog manjeg broja posebno hitnih poruka predviđen je za brzinu prijenosa podataka od samo 83 Kbps.
Razmjena podataka između dva sabirnička sustava odvija se putem tzv «pristupnici», tj. upravljačke jedinice spojene na obje podatkovne sabirnice.
Svjetlovod D2B (Digital Daten-Bus) podaci primijenjeni na područje «Audio/Komunikacija/Navigacija». Svjetlovodni kabel može prenijeti znatno veću količinu informacija nego sabirnica s bakrenim kabelom.
CAN C sabirnica «Motor i šasija»
Takozvani završni otpornik sabirnice podataka s otporom od 120 Ω ugrađen je sa svake strane upravljačke jedinice terminala i spojen je između obje žice sabirnice podataka.
CAN sabirnica podataka u prostoru motora aktivna je samo kada je paljenje uključeno.
Više od 7 upravljačkih jedinica može se spojiti na CAN-C sabirnicu.
CAN-B autobus «Salon»
Neke upravljačke jedinice spojene na CAN podatkovnu sabirnicu putničkog prostora aktiviraju se bez obzira na uključeno paljenje (npr. sustav s jednom bravom).
Dakle, podatkovna sabirnica CAN putničkog prostora mora biti u funkciji i kada je kontakt isključen, što znači da se mora osigurati mogućnost prijenosa paketa podataka i kada je kontakt isključen.
Kako bi se što više smanjila potrošnja struje mirovanja, CAN podatkovna sabirnica, u nedostatku podataka potrebnih za prijenos, prelazi u pasivno stanje mirovanja, te se ponovno aktivira tek pri sljedećem pristupu.
Ako je u pasivnom stanju pripravnosti CAN podatkovne sabirnice putničkog prostora, bilo koja upravljačka jedinica (npr. modul za upravljanje jednom bravom) prenosi poruku preko njega, tada ju prima samo glavni modul sustava (elektronički prekidač paljenja, EZS/EIS). EZS modul pohranjuje ovu poruku u memoriju i šalje aktivacijski signal (Wake-up) na sve upravljačke jedinice spojene na CAN-B sabirnicu.
Kada je aktiviran, EZS provjerava sve korisnike CAN podatkovne sabirnice i zatim šalje prethodno pohranjenu poruku.
Više od 20 upravljačkih jedinica može se spojiti na CAN-B sabirnicu.