CAN
Controller Area Network
Istoric. CAN-ul n industria de automobile
- lungime cabluri utilizate n automobil 1960 - numrul de conexiuni utilizate n automobil 1960 - normele de poluare, consumul de energie, securitatea, cererea de confort 1995 1995
2000 m
1800
senzori i actuatori inteligeni BOSCH 1980
cabluri + conexiuni costuri + spaiu limitat
multiplexarea informaiilor care circul la bordul automobilului
CAN BUS
Istoric. CAN-ul n industria de automobile
CANBUS or CAN bus Controller Area Network bus Sistem complex de cabluri n domeniul auto dezvoltat s satisfac urmtoarele cerine:
conexiuni ale microcontrolerelor de reea cu doar 1 pereche de cabluri. permite comunicarea ntre microcontrolere (ECU). vitez mrit a datelor, comunicare n timp real. furnizeaz imunitate la zgomot ntr-un mediu electric zgomotos costuri reduse
CAN-ul i domeniile de aplicabilitate
CANBUS distribuie pe pia
100% 90% 80% 70% 60% 50% 40% 30% 20% 10% 0% Automotive Medical / Industrial
Piee
Referine ISO ale CAN-ului n industria de automobile
ISO 11519-1 Generaliti i definiii: vehicule rutiere, comunicare n serie de date de joas vitez.
ISO 11519-2 Reea local de comand de joas vitez (CAN): vehicule rutiere, comunicare n serie de date de joas vitez
ISO 11898 Vehicule rutiere Schimb de informaie numeric: Gestionare reea de comunicare de vitez ridicat (CAN).
Istoric
1983 : primul proiect CANBUS @ Bosch 1986 : introducere protocol CAN 1987 : primul controler CAN vndut 1991 : publicare specificaie CAN 2.0A 1992 : Mercedes-Benz utilizeaz reeaua CAN 1993 : standardul ISO 11898 1995 : amendamentul ISO 11898 Prezent : majoritatea vehiculelor utilizeaz CAN bus.
CAN-ul n industria de automobile
Cablaj tradiional
CAN elementele de control, senzorii i actuatorii comunic prin
dou cabluri la o vitez ce poate ajunge pn la
1 Mbit/s
CAN-ul n industria de automobile
Autovehicul cu 3 calculatoare si Bus-System Autovehicul cu 3 calculatoare
Elementele CAN
Aplicaii constructori
definire limbaj dintre componentele CAN
Norm CAN ISO 11898
Vitez nalt
Codare mesaje, gestionare defecte
protocol de transmitere
ISO 11519
Vitez joas
Codarea informatiei amplitudine, timing, sincronizare
nivel semnale
Suport de transmitere
cabluri i fibre electrice, legturi infraroii, etc.
Reea convenional vs. reea CAN
mediu fizic dou cabluri ce au la capete rezistori. semnalul este diferenial imunitate la zgomot mai bun Avantaje: mas redus, costuri reduse cabluri mai puine = fiabilitate crescut
Reea conventional (razboi de esut)
Reea CAN bus
vs.
[Link]
Reea convenional vs. reea CAN
nainte de CAN
nainte de CAN
Engine control
ABS
Iluminare
AC Inchidere centralizata Airbag
Tablou de bord
Transmission control
Active suspension
Scaune electrice
Geamuri electrice
CAN
Protocolul de transmitere al mesajelor fiecare nod emitor i transmitor un transmitor de informaie trimite informaia la toate conexiunile bus-ului nodurile citesc mesajul, apoi decid dac este relevant pentru acestea toate nodurile verific recepia fr eroare toate nodurile recunosc recepia
CAN bus
Formatul mesajelui transmis prin CAN Fiecare mesaj are un nume si date specifice (8 bytes maximum) CRC (Cyclic Redundancy Checking), ACK (acknowledgment code)
1 byte este un multiplu de 8 biti 1 kilo byte = 1024 bytes adica 1024 *8 biti 1 mega = 1024 bytes adica 1024*1024*8 biti 1 giga = 1024 mega 1 tera = 1024 giga 1 peta = 1024 tera
1 bit poate avea 2 valori 0 sau 1
Exemplu de tranzacie de mesaj transmis prin CAN
Tabloul de bord
poate cineva s mi spun care este temperatura blocului motor
ID 400
Data ?
ECU vede ntrebarea i transmite mesajul
temperatura blocului motor este de 76 grd Celsius
400
076
Tabloul de bord vede mesajul legat de temperatur i l afieaz
Cum se face arbitrarea n reeaua CAN
arbitrarea devine necesar cnd mai multe noduri vor s transmit informaii n acelai timp doar un nod va transmite, nu mai multe n acelai timp nodurile cu cele mai importante mesaje vor continua s transmit
CAN bus
Cum se face arbitrarea n reeaua CAN
importana mesajului este codat n ID-ul acestuia (cea mai mic valoare = mai important) un bus 0 (voltaj sczut) ctig n faa unui bus 1 (voltaj ridicat).
CAN (SAE J1939) Example: Caterpillar 797
Vocabular
ACK: suma de verificare, confirmarea receptionarii corecte are loc prin primirea unui bit dominant de la toti participantii Bus. Arbitrare: mecanism pentru evitarea coliziunilor atunci cand mai multe calculatoare vor s emita simultan. arbitrarea stabileste clar ca mesajele sunt trimise in ordinea importantei lor. Cablaj BUS: legatura electrica de cupru, realizata din doua fire rasucite; conecteaza calculatoarele intre ele CAN: Controller-Area-Network, sistem Bus pentru legarea calculatoarelor in retea. CRC: Cyclic-Redundancy-Check, suma de verificare (16 bit) pt recunoastere erori.
1. De ce au fost introduse sistemele Bus la autovehicule ? A complexitate marita a electronicii autovehiculului B este posibila cu usurinta adptarea sistemului pt mai multe dotari C obligativitate legiferata 2. Care mesaje sunt receptionate si verificate de calculatoare ? A doar anumite mesaje pentru calculatoarele respective B toate mesajele emise C mesajele cu prioritate ridicata 3. Trei calculatoare asteapta pana ce se elibereaza reteaua Bus si vor sa trimita mesaje ... A ... toate pot trimite mesaje imediat B ... se ajunge la o "coliziune" a datelor C ... arbitrarea stabileste ordinea in care sunt expediate mesajele 4. Identificatorul unui mesaj CAN ... A ... descrie numele si prioritatea unui mesaj B ... indica destinatia C ... serveste la acordarea dreptului de acces 5. Protocolul serveste la ... A ... siguranta datelor B ... recunoasterea erorilor C ... acordarea dreptului de acces