0% ont trouvé ce document utile (0 vote)
74 vues24 pages

Bus CAN

Le document retrace l'évolution du protocole CAN depuis ses débuts en 1983 jusqu'à son adoption dans l'industrie automobile, avec des jalons clés tels que la normalisation ISO et l'introduction de différentes versions de CAN. Il décrit également les spécificités techniques du protocole, y compris les types de bus, les normes de codage, et les trames de données. Enfin, il aborde les aspects pratiques de l'implémentation du CAN dans les véhicules modernes, notamment la gestion des communications entre les nœuds.

Transféré par

Zakaria Asraoui
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
74 vues24 pages

Bus CAN

Le document retrace l'évolution du protocole CAN depuis ses débuts en 1983 jusqu'à son adoption dans l'industrie automobile, avec des jalons clés tels que la normalisation ISO et l'introduction de différentes versions de CAN. Il décrit également les spécificités techniques du protocole, y compris les types de bus, les normes de codage, et les trames de données. Enfin, il aborde les aspects pratiques de l'implémentation du CAN dans les véhicules modernes, notamment la gestion des communications entre les nœuds.

Transféré par

Zakaria Asraoui
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

20/02/2020 Souhail Rachid 1

20/02/2020 Souhail Rachid 2


• 1983: Début des développements de CAN chez Robert Bosch

• 1985: Spécification V1.0. Premières relations entre Bosch et les fondeurs de


silicium

• 1986: Démarrage des travaux de normalisation ISO

• 1987: Introduction du premier échantillon de circuit intégré CAN

• 1989: Démarrage des premières applications industrielles

• 1991: Spécifications du protocole étendu CAN 2.0 B

• 1991: Premiers véhicules équipés (500 Kb/s) – Mercedes Classe S

• 1992: Création du groupement utilisateur CiA – CAN in Automation

• 1993: Création du groupe OSEK


20/02/2020 Souhail Rachid 3
• 1993: Parution de la première couche applicative (CAL) du CiA

• 1994: Standardisations ISO terminées

• 1994: PSA (Peugeot - Citroën) et Renault entrent à l’OSEK

• 1995: Task Force aux USA avec le SAE-Society of Automotive Engineers

• 1996: CAN est appliqué à la plupart des « contrôles moteurs » automobiles

• 1997: 300 sociétés adhérentes au CiA

• 1997: Tous les grands fondeurs proposent des composants CAN

• 2000: Forte implantation de CAN dans l'automobile avec la couche OSEK

20/02/2020 Souhail Rachid 4


En 2005 une voiture moyenne comporte une centaine de microcontrôleurs.

Pour éviter les 2 kms de câblage d’une grosse voiture actuelle, soit 100 kg
de cuivre, il fallait définir un bus série simplifiant énormément l’intégration des
fils dans le châssis.

20/02/2020 Souhail Rachid 5


En pratique, il y a trois bus CAN différents dans une voiture, à des débits
différents :

• Un bus très rapide pour gérer la sécurité (freinage, ABS, détection


chocs, airbags...) .

• Un bus à vitesse moyenne pour gérer le moteur (commandes et


capteurs) .

• un bus lent pour gérer tous les accessoires (lampes, moteurs


d’asservissements, boutons…).

Il existe sous deux versions :

• CAN2.0A : trame standard identificateur de 11 bits (CAN standard) ;

• CAN2.0B : trame plus longue avec identificateur sur 29 bits (CAN


étendu).

20/02/2020 Souhail Rachid 6


20/02/2020 Souhail Rachid 7
20/02/2020 Souhail Rachid 8
Il existe deux normes pour la couche physique :

• ISO 11898-2 (2003) : CAN « high-speed » (jusqu'à 1Mbits/s).

• ISO 11898-3 (2006) : CAN « low-speed » (jusqu'à 125kbits/s).

a. Topologie

CAN est un bus de données série bidirectionnel half-duplex dans le


domaine automobile, mais est utilisée en unidirectionnel -simplex- dans
l'aéronautique, pour obtenir un comportement déterministe.

Chaque équipement connecté, appelé « nœud », peut communiquer avec


tous les autres.

20/02/2020 Souhail Rachid 9


Pour un bus de données CAN
« basse vitesse », le nombre de nœuds
est limité à 20. Pour un bus de données
CAN « haute vitesse », il est limité à
30.

b. Support

Chaque nœud est connecté au bus par


l'intermédiaire d'une paire torsadée (blindée
ou non).
Les deux extrémités du bus doivent être
rebouclées par des résistances de 120 Ω
(tolérance entre 108 Ω et 132 Ω).

20/02/2020 Souhail Rachid 10


L'accès au bus de données CAN suit la
technique CSMA/CR (Carrier Sense Multiple Access With Collision Resolution).

La longueur maximale du bus est déterminée par la vitesse utilisée :

Vitesse (Kbits/s) Longeur(m)


1000 30
800 50
500 100
250 250
125 500
62,5 1000
20 2500
10 5000

20/02/2020 Souhail Rachid 11


c. Codage bit - principes

Comment transporter l’horloge et les données sur le même support ?

Horloge

Données
Signal horloge + données

Les 2 grands principes de codage, NRZ et Manchester, permettent de


transporter l’horloge avec les données

NRZ
NRZ : Non Return to Zero
NRZI
NRZI : Non Return to Zero Inverted

Manchester

20/02/2020 Souhail Rachid 12


d. Contraintes du codage

Le codage Manchester transmet l’horloge en permanence mais nécessite une


bande passante double.

C’est le codage NRZ qui est choisi pour CAN.

Le codage NRZ / NRZI est simple, mais attention, il n’y a pas de front de
synchronisation si le code reste constamment à 0 ou à 1.

La station émettrice impose La station réceptrice doit se


l’horloge du signal cale sur l’horloge de l’émetteur

20/02/2020 Souhail Rachid 13


e. Codage bit - Bit Stuffing

20/02/2020 Souhail Rachid 14


f. Principe de l’arbitrage

Le procédé d’attribution du bus est basé sur le principe de "l’arbitrage bit


à bit", selon lequel les nœuds en compétition, émettant simultanément sur le
bus, comparent bit à bit l’identificateur de leur message avec celui des
messages concurrents. Les stations de priorité moins élevée perdront la
compétition face à celle qui a la priorité la plus élevée.

Les stations sont câblées sur le bus par le principe du "ET câblé". En cas de
conflit c’est à dire émission simultanée, la valeur 0 écrase la valeur 1.

20/02/2020 Souhail Rachid 15


Exemple

• La station 2 perd la compétition puis la station 1 ;

• seule la station 3 pourra transmettre.

On appelle donc "état dominant" l’état logique 0, et "état récessif" l’état


logique 1. Lors de l’arbitrage bit à bit, dès qu’une station émettrice se trouve en
état récessif et détecte un état dominant, elle perd la compétition et arrête
d’émettre. Tous les perdants deviennent automatiquement des récepteurs du
message, et ne tentent à nouveau d’émettre que lorsque le bus se libère.

20/02/2020 Souhail Rachid 16


g. Les signaux du bus CAN

Les états logiques et les niveaux électriques utilisés entre les deux lignes de
la paire différentielle pour le CAN L (Low-speed) et le CAN H (High-speed) sont
les suivants :

Etat Etat VCANH- VCANL- VCANH-


VCANH-GND VCANL-GND VCANH-CANL
logique logique GND GND CANL
Récessif ou Récessif ou
1,75 V 3,25 V -1,5 V 2,5 V 2,5 V de 0 à 0,5 V
«1» «1»
Dominant Dominant
4V 1V 3V 3,5 V 1,5 V de 0,9 à 2 V
ou « 0 » ou « 0 »
20/02/2020 Souhail Rachid 17
h. Connecteur

Le brochage sur le bus de données CAN est normalisé et utilise un


connecteur DB-9:

Broche Description
1 (Réservé)
2 CANL
3 Masse
4 (Réservé)
5 Blindage (optionnel)
6 Masse
7 CANH
8 (Réservé)
Alimentation externe
9
(optionnel)
20/02/2020 Souhail Rachid 18
Il existe également 2 standards pour la couche de liaison de données :

• ISO 11898 part A → CAN 2.0A « standard frame format » (identification sur
11bits),

• ISO 11898 part B → CAN 2.0B « extended frame format » (identification sur
29bits).

Il existe plusieurs types de trame :

• Trame de données( data)

• Trame de requête( Remote)

• Trame d'erreur( Error)

• Trame de surcharge( Overload)

20/02/2020 Souhail Rachid 19


a. Trame de données

20/02/2020 Souhail Rachid 20


20/02/2020 Souhail Rachid 21
• Le début de trame SOF (Start Of Frame), 1 bit dominant ; la ligne étant
précédemment au repos.

L’identificateur Composée de 12 bits (zone d’identification de la trame


(11 bits + RTR) :

• Les 11 premiers indiquent l’identité du contenu du message, et servent


également à l’arbitrage (gestion des priorités)

• Bit RTR (Remote Transmission Request) : détermine s’il s’agit d’une trame
de données (ex : régime moteur) ou d’une d’une trame de demande de
message (ex : demande de T° eau). Le bit à 0 (dominant) pour une trame de
données et le bit à 1 (récessif) pour une trame de demande.

Champ de commande constitué de 6 bits :

• Les 2 premiers serviront pour une éventuelle évolution du protocole (bits


de réserve) ;
20/02/2020 Souhail Rachid 22
• Les 4 derniers permettent de coder le nombre d’octets du champ de données .

Les données contient de 0 à 8 octets de données (64 bits maxi)

Zone CRC (Cyclic Redundancy Code) de 15 bits : Ces bits sont recalculés à
la réception et comparés aux bits reçus. S’il y a une différence, une erreur
CRC est déclarée.

Zone d’acquittement (Acknowledge) composé d’un bit à l’état récessif ainsi


qu’un bit séparateur ACK. Le premier bit doit être forcé à l’état dominant par
les stations ayant bien reçu cette trame.

Zone de fin de trame EOF (End Of Frame), 7 bits récessifs (à l’état 1).

Remarque : 3 bits à l’état 1 séparent obligatoirement 2 trames consécutives


20/02/2020 Souhail Rachid 23
b. Trame de requête

• Identique Trame de données sauf RTR

• RTR mis à Récessif

• Longueur données à 0

• DLC ajusté sur le nombre d’octets de données à retourner

• La trame de donnée est prioritaire sur la trame de requête de même identificateur

20/02/2020 Souhail Rachid 24

Vous aimerez peut-être aussi