Vous êtes sur la page 1sur 43

Plan du cours (5)

Chapitre V: Bus CAN

1. Premiers besoins, évolution et applications.


2. Caractéristiques du bus CAN.
3. Composants présents sur un bus CAN.
4. Différents types de trames et description.
5. Mécanismes de protection du protocole.
6. Exercices.
103
Chapitre V: Bus CAN

Premiers besoins pour le bus CAN


(Controller Area Network)
• Dans les années 80, les systèmes électroniques au niveau de l’industrie

automobile font leur prolifération (anti-patinage, contrôle moteur,

climatisation, fermeture centralisée des portes, etc..)

• Ces systèmes nécessitent un échange important d’information, impliquant

un nombre très élevé de câbles.

• Le nombre de connexions devenait trop élevé et posait de sérieux

problèmes de fiabilité, rendant le câblage classique extrêmement complexe.

104
Chapitre V: Bus CAN

Câblage traditionnel Versus bus CAN

Longueur de câble > 2 km


Nombre de connexions > 1800
100 kg de cuivre

Problèmes de fiabilité
et de sécurité

105
Chapitre V: Bus CAN

Bus CAN automobile

Bus CAN High speed Bus CAN low speed


106
Chapitre V: Bus CAN

Evolution chronologique
1993: Publication des spécifications CAN Application Layer (CAL)
précisant les mécanismes de transmission.

1991: Création du « CAN in Automation » pour promouvoir les


applications industrielles du bus CAN.

80-83: Le bus CAN est créé par Robert Bosch Corp. D’autres
constructeurs ont commencé à développer des
composants compatibles CAN à des prix très attractifs.
107
Chapitre V: Bus CAN

Applications du bus CAN

Industrie automobile Industrie maritime

Equipements médicaux

Commande des machines Engins de levage


Imprimante 108
Chapitre V: Bus CAN

Principaux constructeurs

Plus de 90% des cartes CAN disponibles


sur le marché, prix élevé

Solutions CAN « bon marché »


109
Chapitre V: Bus CAN

Caractéristiques (1): Support physique


• Paire torsadée (blindée ou pas) 2 fils de cuivre isolés de section 0.6 mm2.

• Les deux extrémités du bus doivent être rebouclées par des résistances de
120 Ω (tolérance entre 108 Ω et 132 Ω). Cette résistance permet
l’adaptation de l’impédance de la ligne (pour éviter les réflexions).

110
Chapitre V: Bus CAN

Caractéristiques (2): Topologie


• La topologie CAN est de type « bus » série, multi-maître et half-
duplex. Chaque équipement connecté, appelé « nœud », peut
communiquer avec tous les autres.

Micro- Micro-
contrôleur Module E/S
contrôleur
avec
et
gestionnaire
Gestionnaire gestionnaire
de protocole
de protocole de protocole
Rx Tx Rx Tx Rx Tx

Interface Interface Interface

CAN - H

120 Ω Bus physique 120 Ω


CAN - L
111
Chapitre V: Bus CAN

Caractéristiques (3): Méthode d’accès


• Le bus CAN utilise la méthode d’accès CSMA/CR (accès libre avec
résolution de collisions). Le procédé d'attribution du bus est basé sur le
principe de "l'arbitrage bit à bit", selon lequel les nœuds émettant
simultanément sur le bus, comparent bit à bit l'identificateur de leur message
avec celui des messages concurrents. Dans cette comparaison, la valeur 0
écrase la valeur 1. Les stations de priorité moins élevée perdront
l’émission.

112
Chapitre V: Bus CAN

Caractéristiques (4): Encodage des bits

• L'encodage utilisé est de type NRZ (non retour à 0): l’état


récessif correspond à un niveau logique 1 et l’état dominant
correspond à un niveau logique 0.

113
Chapitre V: Bus CAN

Caractéristiques (5): Normes


• Couche physique :

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

• ISO 11898-3 (2006): CAN « low-speed, fault tolerant » (jusqu'à


125kbits/s).

• 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).
114
Chapitre V: Bus CAN

Norme CAN High Speed


Niveau CANH <> masse CANL <> masse CANH <> CANL
Récessif ou « 1 » 2,5 V 2,5 V de 0 à 0,5 V
Dominant ou « 0 » 3,5 V 1,5 V de 0,9 à 2 V

Tension
(V)
CAN - H
3,5
La différence de tension
2,5 Dominant Récessif 2,0V entre les deux lignes H et L
est faible.
1,5 CAN - L

Temps 115
Chapitre V: Bus CAN

Norme CAN Low Speed


CANH <>
Niveau CANH <> masse CANL <> masse
CANL
Récessif ou « 1 » 1,75 V 3,25 V -1,5 V
Dominant ou « 0 » 4V 1V 3V

Tension
(V)
5,0 CAN - H

3,6 CAN - L La différence de tension


2,5 2,2V Dominant Récessif 5,0V entre les deux lignes H et L
1,4 est grande.

0,0
Temps
116
Chapitre V: Bus CAN

Caractéristiques (6): Longueur et débit

Débit (kbit/s) Longueur (m)


1000 + 30 -
800 50
High Speed
500 100
250 250
125 500
62,5 1000
Low Speed
20 2500
10 5000

117
Chapitre V: Bus CAN

Caractéristiques (7): Connecteurs

DB-9 RJ 45

Free style M12 (5 broches)


118
Chapitre V: Bus CAN

Caractéristiques (8): Nombre d’équipements


raccordables

/20

CAN HIGH SPEED  30 équipements


CAN LOW SPEED  20 équipements 119
Chapitre V: Bus CAN

Composants présents sur un bus CAN:


Classes
• On peut subdiviser les composants CAN selon 4
grandes classes de fonctionnalités:
1. Les gestionnaires de protocole,

2. Les microcontrôleurs munis de gestionnaires de


protocoles,

3. Les interfaces de commande de ligne (pilotes),

4. Les modules d’E/S de type SLIO (Serial Linked I/O).


120
Chapitre V: Bus CAN

Composants présents sur un bus CAN (1):


Gestionnaire/contrôleur de protocole CAN

• Le contrôleur de protocole CAN est responsable de la


gestion de tous les messages transférés sur le
médium. Ceci englobe les tâches suivantes:

• La synchronisation,
• Le traitement des erreurs,
• L’arbitrage,
• Les conversions parallèle/série et série/parallèle.
121
Chapitre V: Bus CAN

Contrôleur de protocole CAN:


Exemples

Siemens Intel
SAE 81C90/91 82526/27

Philips
SJA1000
122
Chapitre V: Bus CAN

Composants présents sur un bus CAN (2):


Microcontrôleur à contrôleur CAN intégré

• Un microcontrôleur est un circuit intégré qui rassemble les

éléments d'un ordinateur: processeur, mémoires, unités

périphériques et interfaces d'entrées-sorties.

• Par rapport aux systèmes électroniques à base de

microprocesseurs, les microcontrôleurs permettent de diminuer

la taille, la consommation électrique et les coûts des produits.


123
Chapitre V: Bus CAN

Microcontrôleur avec gestionnaire CAN intégré:


Exemples

Motorola
68HC Microship
PIC18F « K80"

Siemens
SAB 80C

124
Chapitre V: Bus CAN

Composants présents sur un bus CAN (3):


Modules d’E/S de type SLIO

• Un équipement SLIO (Serial Linked Input Output), permettent

la conception de nœuds d’entrées/sorties « low cost » dans un

bus CAN. Ces modules incluent un contrôleur de bus CAN

intégré « on-chip ».

• Ces modules permettent l’interfaçage entre le bus et un certain

nombre d’entrées/sorties numériques ou analogiques.


125
Chapitre V: Bus CAN

Modules d’E/S SLIO:


Exemples

Philips
P82C150
126
Chapitre V: Bus CAN

Composants présents sur un bus CAN (4):


Drivers de ligne
• Un driver de ligne est un circuit électronique à base d’amplificateur

opérationnel, conçu pour commander la ligne de transmission. Le signal

digital transmis dans la ligne est transformé en un signal basse-tension,

faible-impédance afin de rendre une transmission efficace sur de plus

longues distances.

127
Chapitre V: Bus CAN

Drivers de ligne:
Exemples

Philips
82C250

CANH

Tx
Rx

CANL

Amplificateur

128
Chapitre V: Bus CAN

Trames
• Il existe 5 types de trames différentes:

 Trame de données: envoi d’information aux autres noeuds.

 Trame de requête: demande d’information à un autre noeud.

 Trame d’erreur: signaler un erreur de transmission.

 Trame de “surcharge”: demander un délai avant la réception


d’une nouvelle trame ou pour signaler un bit dominant durant
une période d’intertrame.

 Intertrame: 3 bits récessifs entre les trames.


129
Chapitre V: Bus CAN

Trames de données
• La trame de données sert à envoyer des informations
par un nœud du bus vers les autres nœuds. Elle se
compose de 7 champs différents. Chacun est
matérialisé par un certain nombre de bits.

32 bits  CAN format étendu 12 bits  CAN format standard 130


Chapitre V: Bus CAN

Description des différents champs (1)

• Le début de trame ou SOF (Start Of Frame) est marqué par 1 bit dominant,

• Le champ d'arbitrage contient l’identificateur du nœud. Plus l’identifiant est

petit, plus l’équipement est prioritaire. Le bit RTR est dominant s’il s’agit

d’une trame de donnée. Il est récessif s’il s’agit d’une trame de requête.

• Le champ de commande (ou de contrôle) donne le nombre d’octets

constituant la donnée transmise,

• Le champ de données contient la donnée transmise composée de 0 à 64

bits (de 0 à 8 octets). Ce champ est vide s’il s’agit d’une trame de requête.

131
Chapitre V: Bus CAN

Description des différents champs (2)

• Le champ de CRC est un champ de contrôle des erreurs,

• Le champ d'acquittement marque la bonne réception de la

donnée par un récepteur en émettant un zéro sur le bit «ACK».

• La fin de trame ou EOF (End of Frame) matérialisée par 7 bits

récessifs.

132
Chapitre V: Bus CAN

Mécanismes de protection du protocole (1):


Contrôle de Redondance Cyclique (CRC)

• Grâce à ce système de détection, le taux d’erreur


enregistré est très faible (inférieur à 5.10-11). De plus,
le réseau est capable de différencier les erreurs
ponctuelles des erreurs redondantes. Ainsi, tout
périphérique défaillant peut être déconnecté du
réseau afin de limiter les perturbations. Le réseau
entre alors en mode « dégradé ».
133
Chapitre V: Bus CAN

Mécanismes de protection du protocole (2):


Contrôle de la trame de donnée

• Le récepteur vérifie la consistance de la trame.

Début Niveau
de trame récessif Champs de commande Champs de CRC Fin de trame
1 11 111 4 0 - 64 15 111 7 ≥3
Champs d ’arbitrage Champs de données Niveau dominant

Bit dominant ? Valeur Bit récessif? Espace


0 – 8? Intertrame
?
134
Chapitre V: Bus CAN

Mécanismes de protection du protocole (3):


Stuffing bit/bit de bourrage

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24

Données
à
transmettre
5 bits dominants 5 bits récessifs
Données successifs successifs
transmise
sur le bus

Bit de bourrage

135
Chapitre V: Bus CAN

Mécanismes de protection du protocole (4):


Emission d’une trame d’erreur

Toute erreur détectée par le récepteur provoque l’émission


d’une trame d’erreur constituée de 2 champs (drapeau d’erreur
6 bits + délimiteur 8 bits récessifs).

Nœud émetteur Nœud récepteur


Trame d ’erreur
6 bits 8 bits

136
Chapitre V: Bus CAN

Mécanismes de protection du protocole (5):


Acquittement

Tous les récepteurs qui ont bien reçu le message doivent l'acquitter en
émettant un bit dominant pendant la durée du bit ACK, ce qui permet au
nœud émetteur de savoir qu'au moins un des nœuds récepteurs a reçu le
message.

Champ d’acquittement

1 bit 1 bit
ACK = 0  bonne réception
ACK delimiter = 1  toujours
137
Chapitre V: Bus CAN

EXERCICES

138
Chapitre V: Bus CAN

Exercice1

• Q.1): Donner la forme de la trame envoyée réellement sur le


bus dans l’exemple suivant:

139
Chapitre V: Bus CAN

Exercice 2

• Q.2): Déterminer pour les formats standard et étendu le


nombre minimal et maximal de bits dans une trame de donnée
circulant sur le bus.

140
Chapitre V: Bus CAN

Exercice 3

• Q.3): Déterminer le nombre de capteurs/actionneurs ToR qu’un


nœud peut gérer dans une seule trame de données. En déduire
le nombre total de capteurs/actionneurs pouvant être gérés par
un bus CAN respectivement high ou low speed.

141
Chapitre V: Bus CAN

Exercice 4
• Q.4): Compléter le 3ème chronogramme (trame transmise sur le
bus) et préciser le nœud qui a réussi à émettre.

142
Chapitre V: Bus CAN

Exercice 5

• Q.5): Compléter la trame suivante (sans champ CRC) si le


nœud émet la donnée 0xB6.

143
Chapitre V: Bus CAN

Exercice 6

• Q.6): compléter le tableau suivant:

144
Chapitre V: Bus CAN

Exercice 7

• Q.7): Quel est le type du bus suivant (high ou low speed?).

145