0% ont trouvé ce document utile (0 vote)
137 vues11 pages

Introduction au Bus CAN Automobile

Le document décrit le bus CAN, un moyen de communication série utilisé dans l'automobile et l'industrie. Il contient des informations sur l'historique du bus CAN, ses caractéristiques physiques et son protocole de communication.

Transféré par

Nael Nael
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)
137 vues11 pages

Introduction au Bus CAN Automobile

Le document décrit le bus CAN, un moyen de communication série utilisé dans l'automobile et l'industrie. Il contient des informations sur l'historique du bus CAN, ses caractéristiques physiques et son protocole de communication.

Transféré par

Nael Nael
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

UATL Bus de communication 2020-2021

Le Bus CAN
1- Introduction
Depuis les années 1960 la longueur de câble utilisée dans l'automobile ne cesse de croître
pour dépasser 2000 m en 1995. Le nombre des connexions atteint 1800 à cette même date,la
fiabilité et la sécurité sont menacés.
Les normes en matière de pollution et de consommation d'énergie obligent les constructeurs
à multiplier les capteurs et actionneurs intelligents dans leur véhicules accélérant ce processus
de multiplication des câbles et connexion depuis une vingtaine d 'années.
Le besoin de sécurité accrue (ABS, ESP, AIR-BAG…) et la demande de confort
(mémorisation des réglages de conduite, climatisation régulée par passager, système de
navigation…) ne font que renforcer cette tendance.
La société BOSCH développe dès le début des années 1980 une solution de multiplexage des
informations circulant à bord de la voiture. Le bus CAN apparaîtra et sera normalisé dans les
années qui suivent (dès 1983).
Les composants CAN se démocratisent et investissent d'autres secteurs de l'électronique
embarqué (médical, produits numériques, systèmes électrotechnique…).

2- Le bus CAN
Le bus CAN (Control Area Network) est un moyen de communication série qui supporte des
systèmes temps réel avec un haut niveau de fiabilité. Ses domaines d'application s'étendent

1
UATL Bus de communication 2020-2021

des réseaux moyens débits aux réseaux de multiplexages faibles coûts. Il est avant tout à
classer dans la catégorie des réseaux de terrain utilisé dans l'industrie.
La structure du protocole du bus CAN possède implicitement les principales ropriétés
suivantes :
hiérarchisation des messages.
garantie des temps de latence.
souplesse de configuration.
réception de multiples sources avec synchronisation temporelle.
fonctionnement multimaître.
détections et signalisations d'erreurs.
retransmission automatique des messages altérés dès que le bus est de nouveau au
repos.
distinction d'erreurs : d'ordre temporaire ou de non-fonctionnalité permanente au
niveau d'un nœud, déconnexion automatique des noeuds défectueux.

3- Caractéristiques physiques du bus CAN

3.1) Support de transmission


La transmission des données est effectuée sur une paire filaire différentielle. La ligne est donc
constituée de deux fils :
CAN L (CAN LOW),
CAN H (CAN HIGH).
Le CAN est un bus de terrain, soumis à des parasites importants. La transmission en paire
différentielle permet de s'affranchir de ces problèmes. Les montages différentiels ont en plus
un fort taux de réjection en mode commun CMRR

2
UATL Bus de communication 2020-2021

De part la nature différentielle de la transmission du signal sur le bus CAN, l'immunité


électromagnétique est assurée car les deux lignes du bus sont toutes les deux affectées de la
même manière par un signal perturbateur.
Pour les niveaux physiques sur le bus, il est important de distinguer les deux types de
transmission possibles :
Transmission en bus CAN low speed,
Transmission en bus CAN high speed.

Le tableau ci-dessous résume les principales différences entre les deux types de bus
notamment sur les débits supportés.

Exemple de circuits CAN relié au bus

3
UATL Bus de communication 2020-2021

4) Protocole CAN
Le concept de communication du bus CAN est celui de la diffusion d'information (broadcast)
chaque station connectée au réseau écoute les trames transmises par les stations émettrices.
Ensuite chaque nœud décide quoi faire du message, s'il doit y répondre ou non, s'il doit agir
ou non, etc…
Le protocole CAN autorise différents stations à accéder simultanément au bus. C'est un
procédé rapide et fiable d'arbitrage qui détermine la station qui émet en premier.
L'accès au bus est donc aléatoire car une station peut émettre à n'importe quel moment. Mais

4
UATL Bus de communication 2020-2021

cet accès se fait par priorité ; cette méthode est appelée CSMA CD/AMP (Carrier Sense
Multiple Acces with Collision Detection and Arbitration Message Priority).
Comme dans la plupart des protocoles, il est nécessaire d'utiliser un vocabulaire adapté à la
situation. Nous allons donc définir un certain nombre de termes et de règles de
fonctionnement concernant le protocole CAN.
- Noeud :
Sous-ensemble relié à un réseau de communication et capable de communiquer sur le réseau
selon un protocole de communication (ici le protocole CAN).
- Valeurs du bus :
Le bus peut avoir l'une des deux valeurs logiques complémentaires définies, non pas en 0 et 1
comme d'habitude, mais sous les formes dites de dominante et récessive. Dans le cas d'une
transmission simultanée de bits récessifs et dominants, la valeur résultante du bus sera
dominante (équivalence avec un OU câblé).
- Message :
Chaque information est véhiculée sur le bus à l'aide d'un message (trame de bits) de format
défini mais de longueur variable (et limitée). Dès que le bus est libre (bus idle), n'importe
quel noeud relié au réseau peut émettre un nouveau message.
- Routage des informations :
Des noeuds peuvent être ajoutés au réseau sans qu'il n'y ait rien à modifier tant au niveau
logiciel que matériel. Chaque message possède un identificateur (identifier) qui n'indique pas
la destination du message mais la signification des données du message. Ainsi tous les
noeuds reçoivent le message, et chacun est capable de savoir grâce au système de filtrage de
message si ce dernier lui est destiné ou non. Chaque noeud peut également détecter des
erreurs sur un message qui ne lui est pas destiné et en informer les autres nœuds.
- Trame de données, trame de requête :
Une trame de données (data frame) est une trame qui transporte, comme son nom l'indique,
des données. Une trame de requête est émise par un noeud désirant recevoir une trame de
données (l'identificateur est le même pour les deux trames dans ce cas).
- Débit bit :
Le débit bit peut varier entre différents systèmes, mais il doit être fixe et uniforme au sein
d'un même système.
- Priorités :
Les identificateurs de chaque message permettent de définir quel message est prioritaire sur
tel autre
5
UATL Bus de communication 2020-2021

- Demande d'une trame de données :


Un noeud peut demander à un autre nœud d'envoyer une trame de données, et pour cela il
envoie lui-même une trame de requête. La trame de données correspondant à la trame de
requête initiale possède le même identificateur.
- Fonctionnement multimaître :
Lorsque le bus est libre, chaque noeud peut décider d'envoyer un message. Seul le message
de plus haute priorité prend possession du bus.
- Arbitrage :
Le problème de l'arbitrage résulte du fonctionnement multimaître. Si deux noeuds ou plus
tentent d'émettre un message sur un bus libre il faut régler les conflits d'accès. On effectue
alors un arbitrage bit à bit (non destructif) tout au long du contenu de l'identificateur. Ce
mécanisme garantit qu'il n'y aura ni perte de temps, ni perte d'informations. Dans le cas de
deux identificateurs identiques, la trame de données gagne le bus. Lorsqu'un bit récessif est
envoyé et qu'un bit dominant est observé sur le bus, l'unité considérée perd l'arbitrage, doit se
taire et ne plus envoyer aucun bit. L'arbitrage est qualifié de CSMA/CA (Carrier Sense
Multiple Access - Collision Avoidance).
- Sécurité de transmission :
Dans le but d'obtenir la plus grande sécurité lors de transferts sur le bus, des dispositifs de
signalisation, de détection d'erreurs, et d'autotests ont été implémentés sur chaque noeud d'un
réseau CAN. On dispose ainsi d'un monitoring bus (vérification du bit émis sur le bus), d'un
CRC (Cyclic Redundancy Check), d'une procédure de contrôle de l'architecture du message,
d'une méthode de Bit-Stuffing. On détecte alors toutes les erreurs globales, toutes les erreurs
locales au niveau des émetteurs, jusqu'à 5 erreurs aléatoires réparties dans un message. La
probabilité totale résiduelle de messages entachés d'erreurs est inférieure à 4.7*10-11

5) Caractéristiques du Bus CAN

5.1) Le codage NRZ : bits dominants et récessifs


La succession de bits transitant sur le bus est codé avec la méthode du NRZ (Non Return To
Zero).
Pendant la durée totale du bit, le niveau de tension de la ligne est maintenu, c'est à dire que
pendant toute la durée durant laquelle un bit est généré, sa valeur reste constante qu'elle soit
dominante ou récessive.

6
UATL Bus de communication 2020-2021

5.2) Le bit stuffing


Une des caractéristiques du codage NRZ est que le niveau du bit est maintenu pendant toute
sa durée. Cela pose des problèmes de fiabilité si un grand nombre de bits identiques se
succèdent. La technique du Bit Stuffing impose au transmetteur d'ajouter automatiquement
un bit de valeur opposée lorsqu'il détecte 5 bits consécutifs dans les valeurs à transmettre.

5.3) Longueur du bus et débit


La longueur du bus dépend des paramètres suivants :
1. Le délai de propagation sur les lignes physiques du bus.
2. La différence du quantum de temps défini précédemment, du aux différences de
cadencement des oscillations des nœuds.
3. L'amplitude du signal qui varie en fonction de la résistance du câble et de l'impédance
d'entrée des nœuds.
Pour une longueur de bus supérieure à 200 mètres il est nécessaire d'utiliser un optocoupleur,
et pour une longueur de bus supérieure à 1 kilomètre il est nécessaire d'utiliser des systèmes
d'interconnexion tels que des répéteurs ou des ponts.
N'importe quel module connecté sur un bus CAN doit pouvoir supporter un débit d'au moins
20 kbit/s

7
UATL Bus de communication 2020-2021

6) Les informations sur le bus

6.1) Trame de données (data frame)


Constitution de la trame de données de type standard CAN 2.0A, la plus utilisée.
Cette trame se décompose en sept parties principales que l'on appelle des champs :
 début de trame (1 bit) start off frame (SOF)
 champ d'arbitrage (12 bits) arbitration field
 champ de commande (6 bits) control field
 champ de données (0 à 64 bits) data field
 champ de CRC (16 bits) CRC sequence
 champ d'acquittement (2 bits) ACKnowledgement field
 fin de trame (7 bits) end of frame (EOF)
puis, une 8emme zone dite d'espace interframe (intertrame) qui fait partie intégrante de la
trame.

6.2) Les champs de la trame de données.

8
UATL Bus de communication 2020-2021

6.3) La méthode d'arbitrage


Le champ pendant lequel s'effectue l'arbitrage est constitué des bits de l'identifier ainsi que du
bit immédiatement suivant dit RTR (Remote Transmission Request).

6.4) Rôle des bits dans le champ d'arbitrage:


Le bit SOF (début de trame de données)
C' est dominant il signale à toutes les stations le début d'un échange. Cet échange ne peut
démarrer que si le bus était précédemment au repos.
Toutes les stations doivent se synchroniser sur le front avant la transition du bit de départ.
Identificateur :
La longueur de l'identificateur est de 11 bits, les bits sont transmis dans l'ordre de ID_10 à
ID_0 (le moins significatif est ID_0). Par ailleurs les 7 bits les plus significatifs (de ID_10 à
ID_4) ne doivent pas être tous récessifs.
ID = 1111111XXXX (X valeur indéterminée), c'est-à-dire un nombre maximal
d'identificateurs de : (211 - 24) = 2048 - 16 = 2032 combinaisons.
Le bit RTR :
Lors d'une dataframe, le bit de remote transmission request (RTR) doit être dominant

6.5) Champ de commande


Il est constitué de 6 bits

9
UATL Bus de communication 2020-2021

6.6) Champ de données


Le champ de données est l'endroit où se trouvent les données utiles transmises. Il peut être
composé de 0 octet minimum à 8 octets maximum transmis avec le MSB (Most Significant
Bit) en tête.
Remarque : De 0 à 8 inclus, cela fait neuf valeurs donc 4 bits du DLC pour définir le nombre
de données contenues.

6.7) Le champs CRC


Il est composé de la séquence de CRC sur 15 bits suivi du CRC Delimiter (1 bit récessif).
La séquence de CRC (Cyclic Redundancy Code) permet de vérifier l'intégrité des données
transmises. Les bits utilisés dans le calcul du CRC sont ceux du SOF, du champs
d'Arbitration, du champ de Control et du champ Data Field.
Le CRC est un polynôme calculé de la même manière par l'émetteur et par le récepteur de la
trame : le message est vu par l'algorithme comme un polynôme qui est divisé
par X15+X14+X10+X8+X7+X4+X3+1 et le reste de cette division est la séquence CRC
transmise avec le message.

6.8) Le champ ACK


Il est composé de 2 bits, l'ACK Slot et le ACK Delimiter (1 bit récessif).
un nœud en train de transmettre envoie un bit récessif pour le ACK Slot.

10
UATL Bus de communication 2020-2021

un nœud ayant reçu correctement un message en informe le transmetteur en envoyant un bit


dominant pendant le ACK Slot : il acquitte le message.

6.9) Fin de trame de donnée


La trame de donnée se termine par un drapeau formé par une séquence de 7 bits récessifs, ce
qui, dépasse de deux bits la largeur de la norme de bit stuffing.
Ce champ a une structure fixe et les logiques de codage (à l'émission) et de décodage (aux
réceptions) de bit stuffing sont désactivées pendant la séquence du champ de fin de trame

6.10) Trame de requête ( remote frame)


Chacun émet sans savoir si l'information envoyée à servi à l'un des participants.
Il se peut aussi qu'un nœud ait besoin d'information d'un certain type dont il ne dispose pas
pour assurer la mission qui lui est dévolue. Dans ce cas, une station nécessitant des données
peut initialiser la demande d'une transmission des données considérées par un autre nœud en
envoyant une remote frame.
Cette trame ne se compose que de six parties au lieu des sept précédentes :
- le début de trame,
- le champ d'arbitrage,
- le champ de commande,
- le champ de CRC
- le champ d'acquittement,
- la fin de trame,
puis une 7e zone dite d'espace interframe.

11

Vous aimerez peut-être aussi