Vous êtes sur la page 1sur 16

Filière : Génie Mécatronique Elément du module :

Ecole Nationale des Sciences Supervision et communication


Appliquées de Tétouan industrielle

Cours Réseaux Locaux Industriels


- Partie 2-

Année universitaire 2021/2022

P. Y. EL MOURABIT 1
Filière : Génie Mécatronique Elément du module :
Ecole Nationale des Sciences Supervision et communication
Appliquées de Tétouan industrielle

Table des matières


I. Introduction ..................................................................................................................................... 3
II. Le Bus “Control Area Network” CAN ............................................................................................ 3
1. Description générale .................................................................................................................... 3
2. Domaines d'application ............................................................................................................... 4
3. La norme Can Open .................................................................................................................... 5
3.1. Can Open utilise des trames courtes .................................................................................... 5
3.2. Can Open permet une transmission fiable ........................................................................... 5
3.3. Can Open supprime les pertes de temps .............................................................................. 5
3.4. Can Open : Performance et flexibilité ................................................................................. 5
3.5. Can Open autorise une baisse des coûts .............................................................................. 5
4. Présentation du fonctionnement de CAN .................................................................................... 6
4.1. Le bus CAN ........................................................................................................................ 6
4.2. Le protocole CAN et couches OSI...................................................................................... 7
4.3. Support de transmission ...................................................................................................... 7
4.4. Caractéristiques physiques .................................................................................................. 8
5. Codage de l’information et Stuffing ............................................................................................ 9
6. Les informations transmises sur le Bus ....................................................................................... 9
III. Trame de données (Data frame) ................................................................................................ 10
1. Constitution d'une trame de données ......................................................................................... 10
2. Début de trame et champ d'arbitrage ......................................................................................... 11
3. Champ de commande ................................................................................................................ 12
4. Champ de données..................................................................................................................... 12
5. Champ de CRC .......................................................................................................................... 12
6. Champ d'acquitement ................................................................................................................ 14
7. Champ Fin de trame .................................................................................................................. 14
IV. Trame de requête (Remote frame) ............................................................................................. 15
1. Constitution d'une trame de requête .......................................................................................... 15
2. Champ d'arbitrage...................................................................................................................... 15
3. Arbitrage trame de requête et trame de données ....................................................................... 15
V. Bibliographies ............................................................................................................................... 16
LISTE DES FIGURES .......................................................................................................................... 16
LISTE DES TABLEAUX ..................................................................................................................... 16

P. Y. EL MOURABIT 2
Filière : Génie Mécatronique Elément du module :
Ecole Nationale des Sciences Supervision et communication
Appliquées de Tétouan industrielle

I. Introduction
Depuis les années 1960 la longueur de câble utilisée dans une automobile ne cesse de croître
pour dépasser 2000 m à la fin des années 1990. Le nombre des connexions atteint 1800 à cette
même date. La fiabilité et la sécurité sont menacées. Les normes en matière de pollution et de
consommation d’énergie, de sécurité (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…) obligent les constructeurs à multiplier les capteurs et actionneurs intelligents dans
leur véhicules accélérant ce processus de multiplication des câbles et connexions depuis une
vingtaine d’années.
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 (Control Area Network) est alors
développé et sera normalisé dès 1983. En 1985, Mercedes commercialise la première voiture
(classe S) équipée d'un bus CAN et de cinq unités de calcul. Aujourd'hui, beaucoup de véhicules
sont totalement multiplexés. Leurs réseaux permettent de relier entre plus d'une trentaine de
calculateurs.

II. Le Bus “Control Area Network” CAN


1. Description générale
Le bus CAN (Controller Area Network) est un bus système série développé par Bosch pour
l’automobile. La très bonne immunité aux perturbations électromécaniques associée à la
fiabilité de la transmission en temps réel a suscité l’intérêt des industriels. En 1991, naît le
consortium CIA (= CAN in Automation). Son objectif est de promouvoir l’application de CAN
dans l’industrie.
En 1993, le CIA publie les spécifications CAL = CAN Application Layer qui décrivent les
mécanismes de transmission sans préciser quand et comment les utiliser. En 1995, le CiA édite
le profil de communication DS-301 : CANopen.
Plusieurs couches applications de niveau 7 sur la Figure 1 ont été définies sur la norme CAN:
Can Open.
DeviceNet.
CAL.
SDS.
CAN Kingdom.
Enfin en 2001, la publication par le CIA de la DS-304 permis d’intégrer des composants de
sécurité de niveau 4 sur un bus Can Open standard (CANsafe).

P. Y. EL MOURABIT 3
Filière : Génie Mécatronique Elément du module :
Ecole Nationale des Sciences Supervision et communication
Appliquées de Tétouan industrielle

Figure 1. Les couches du bus CAN

2. Domaines d'application
Le CAN est un réseau de terrain (ou réseau embarqué) qui occupe aujourd'hui une position de
leader sur le marché automobile.
D’autres secteurs utilisent également le bus CAN :
véhicules industriels
matériel agricole
bateaux
avions
production industrielle
automatismes
la domotique …

Figure 2. Le domaine d'applications de bus CAN

P. Y. EL MOURABIT 4
Filière : Génie Mécatronique Elément du module :
Ecole Nationale des Sciences Supervision et communication
Appliquées de Tétouan industrielle

3. La norme Can Open


3.1. Can Open utilise des trames courtes
Grâce à sa grande immunité aux perturbations électromagnétiques (EMI), Can Open, permet à
la machine ou à l’installation d’effectuer un travail précis, même dans un environnement de
fortes interférences. Les trames courtes Can Open et la connexion “CAN ground” fournissant
les mêmes possibilités pour chaque équipement connecté au réseau, protègent contre les
perturbations électromagnétiques (EMI).

3.2. Can Open permet une transmission fiable

Lorsqu’un équipement Can Open transmet ses données, le système génère et prend en compte
automatiquement la priorité du message. La perte d’un télégramme à cause de problèmes de
collision est impossible, et la perte de temps en attendant le prochain état inactif (idle) du réseau
est évité. Can Open permet une transmission de données absolument fiable. Ceci constitue une
des raisons pour lesquelles Can Open est utilisé dans les équipements médicaux nécessitant des
réseaux fiables.

3.3. Can Open supprime les pertes de temps


Les pertes de temps sont toujours consommatrices de temps et d’argent. CANopen est conçue
afin de réduire ces pertes de temps autant que possible. Avec sa distance de “Hamming” de 6,
Can Open possède une très bonne détection d’erreur, et un très bon mécanisme de correction.
Dans le cas où le réseau détecte une condition d’erreur, le chien de garde est la première
possibilité de surveillance de l’état de l’équipement. Chaque message de diagnostic contient la
source et la raison de l’erreur, ce qui permet une réaction rapide et une réduction des pertes de
temps. Un diagnostic supplémentaire est développé pour améliorer le diagnostic des
équipements Can Open complexes, et pour maintenir le réseau. De plus, pour aider à la
détection des erreurs aléatoires, un historique des erreurs est disponible.

3.4. Can Open : Performance et flexibilité

La raison principale pour utiliser un réseau est sa performance et sa flexibilité à s’adapter


exactement aux contraintes de l’application. Can Open fournit un dispositif unique pour
l’adaptation de la transmission de données. Basé sur le modèle producteur/consommateur, Can
Open permet pour la transmission de données, des communications de type diffusion générale,
point à point, changement d’état et cyclique. Ce qui veut dire que les données sont transmises
uniquement si nécessaire, ou suivant une base de temps spécifique. Les objets données process
(PDO) peuvent être configurés individuellement. Les paramètres peuvent être changés à tout
moment.

3.5. Can Open autorise une baisse des coûts

Can Open combine facilité d’installation avec équipements à faible coût. Can Open n’a pas
besoin d’une liaison équipotentielle entre les équipements comme beaucoup de bus de terrain.
Une mauvaise connexion entraîne non seulement des erreurs de communication, mais peut aussi
causer des dommages sur les équipements du bus de terrain. En outre, les composants pour Can
Open sont produits en grande quantité, ce qui diminue leur prix.

P. Y. EL MOURABIT 5
Filière : Génie Mécatronique Elément du module :
Ecole Nationale des Sciences Supervision et communication
Appliquées de Tétouan industrielle

4. Présentation du fonctionnement de CAN


4.1. Le bus CAN
Le bus CAN est un bus série de terrain car il doit fonctionner dans un environnement limité
et sévère (milieu industriel, atelier, voiture…) permettant la transmission asynchrone de
données numériques.
Les particularités de ce bus sont :
Bus multi maîtres où tous les participants ont les mêmes droits.
Les nœuds (hôtes) de ce bus ne sont pas adressés seuls les messages transmis
possèdent un identificateur. Chaque nœud scrute en permanence le bus et décide
selon l’identificateur si le message lui est destiné ou pas.
Fiabilité élevée des mécanismes de protection du protocole.
Il existe 2 protocoles CAN :
Le protocole CAN 2.0A dit CAN standard qui possède un identificateur de 11 bits
ce qui permet de délivrer 2048 messages différents.
Le protocole CAN 2.0B ou CAN étendu qui possède un identificateur 29 bits soit
plus de 536 millions de messages différents.

Figure 3. Exemple de l'architecture CAN

Pour chacun des 2 protocoles il existe 2 types d'interfaces (normes de transmission) :


Le CAN LowSpeed ou CAN-LS (norme ISO 11519). Ce bus présente un débit max
de 125 kbits/s et peut raccorder jusqu’à 20 nœuds. Dans l'automobile, il est appelé
bus confort et utilisé pour la climatisation, la radio, le tableau de bord …
Le CAN Highspeed ou CAN-HS. Ce bus présente un débit max de 1 Mbits/s et peut
raccorder jusqu’à 30 nœuds. Dans l'automobile, il est utilisé pour les équipements
de sécurité (freinage, moteur …).

P. Y. EL MOURABIT 6
Filière : Génie Mécatronique Elément du module :
Ecole Nationale des Sciences Supervision et communication
Appliquées de Tétouan industrielle

4.2. Le protocole CAN et couches OSI


Le protocole CAN ne couvre que 3 des 7 couches du modèle OSI : les couches PHYSIQUE et
LIAISON et éventuellement la couche APPLICATION.
Le protocole est basé sur le principe de diffusion générale : lors de transmission, aucune
station n'est adressée en particulier, mais le contenu de chaque message est explicité par une
identification reçue par tous les abonnés. Grâce à cet identificateur, les nœuds, qui sont en
permanence à l'écoute du réseau, reconnaissent et traitent les messages qui les concernent.
Elles ignorent simplement les autres.
La sous-couche MAC représente le noyau du protocole CAN. Elle a pour fonction de présenter
les messages reçus en provenance de la sous couche LLC et d’accepter les messages devant être
transmis vers la sous-couche LLC. Elle est responsable des fonctions suivantes :
la mise en trame du message.
l’arbitrage.
l’acquittement.
la détection des erreurs.
la signalisation des erreurs.
La sous-couche LLC s’occupe quant à elle :
du filtrage des messages.
de la notification de surcharge (overload).
de la procédure de recouvrement des erreurs.
Remarque : la couche 7 (APPLICATION) peut être implémentée sous forme d'un protocole
supplémentaire (CANopen par exemple).

4.3. Support de transmission


La transmission des données est effectuée sur une paire filaire différentielle torsadée. La
ligne est donc constituée de deux fils : CAN L (CAN Low) et CAN H (CAN High). Le Signal
CAN transmis est donc obtenu par la différence de tension entre les deux lignes. La ligne du
bus doit se terminer par des résistances de terminaison.

Figure 4. Architecture lignes de bus CAN

P. Y. EL MOURABIT 7
Filière : Génie Mécatronique Elément du module :
Ecole Nationale des Sciences Supervision et communication
Appliquées de Tétouan industrielle

Un nœud du bus CAN requiert pour son fonctionnement au sein du réseau, un


microcontrôleur, un gestionnaire de protocole CAN (ou contrôleur CAN) et une interface
de ligne CAN (ou Emetteur / Récepteur CAN).
Tableau 1. Paramètres des bus CAN-LS et CAN-HS

Les nœuds sont câblés sur le bus de telle manière qu'en cas d'émission simultanée de deux
nœuds, le NL0 s'impose par rapport au NL1 : Le NL0 est donc appelé état dominant et le
NL1, état récessif.

Figure 5. Les niveaux de tension des bits dominants et récessifs

4.4. Caractéristiques physiques


La transmission différentielle du signal sur le bus CAN assure l’immunité
électromagnétique car les deux lignes du bus sont affectées de la même manière par un signal
perturbateur.

P. Y. EL MOURABIT 8
Filière : Génie Mécatronique Elément du module :
Ecole Nationale des Sciences Supervision et communication
Appliquées de Tétouan industrielle

La longueur du bus et le débit maximum sont liés par le tableau suivant:


Tableau 2. Concordance Débit/Longueur d'un support de bus CAN

5. Codage de l’information et Stuffing


Les bits transitant sur le bus sont codés avec la méthode NRZ (Non Return to Zero). Pendant
la durée totale du bit, le niveau de tension de la ligne est maintenu, c’est à dire sa valeur
reste constante qu’elle soit dominante ou récessive.
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 identiques dans les valeurs à
transmettre.

Figure 6. Principe de bit Stuffing dans une trame CAN

6. Les informations transmises sur le Bus


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. Chaque nœud décide quoi faire du message, s’il doit y répondre ou non,
s’il doit agir ou non.

P. Y. EL MOURABIT 9
Filière : Génie Mécatronique Elément du module :
Ecole Nationale des Sciences Supervision et communication
Appliquées de Tétouan industrielle

Le protocole CAN autorise différents nœuds à accéder simultanément au


bus. Un procédé rapide et fiable d’arbitrage détermine le nœud qui émet en premier.
Il existe 4 types de trames circulant sur le bus CAN :
Trame de données (data frame) : trame qui transporte des données.
Trame de requête (remote frame) : trame émise par un nœud désirant recevoir une
trame de données (l’identificateur est le même pour les deux trames dans ce cas).
Trame de surcharge (overload frame) : trame qui indique qu'une station est
surchargée pendant un certain laps de temps. Elle permet d’introduire un délai entre 2
trames (elle ne contient pas d’information).
Trame d'erreur (error frame) : trame transmise lors de la détection d'une erreur. Elle
indique la nature des erreurs (de bit, de stuffing, de CRC, d'acquittement…) et permet
la correction en demandant de renvoyer à nouveau la donnée.
Remarque: Les trames de données et trames de requêtes sont séparées des trames précédentes
par un champ de bits appelé espace intertrame (interframe space). Il s’agit d’une suite de
plusieurs bits récessifs (NL1).

III. Trame de données (Data frame)


1. Constitution d'une trame de données
La trame de données standard CAN 2.0A (la plus utilisée) se décompose en 7 parties champs:
début de trame (1 bit dominant) : Start Of 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).
On trouve ensuite une 8ème zone dite espace intertrame (interframe) qui appartient à la trame.

Figure 7. Champs constituants une trame de données

P. Y. EL MOURABIT 10
Filière : Génie Mécatronique Elément du module :
Ecole Nationale des Sciences Supervision et communication
Appliquées de Tétouan industrielle

2. Début de trame et champ d'arbitrage


Le début de trame SOF (Start Of Frame) 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.
Le champ d'arbitrage est constitué des 11 bits de l'identificateur ainsi que du bit RTR (Remote
Transmission Request).
Les 11 premiers indiquent l’identité du contenu du message, et servent également à
l’arbitrage (gestion des priorités).
Bit RTR: détermine s'il s'agit d'une trame de données (ex : régime moteur) ou 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.
Remarque: Le nombre maximal d'identificateurs est donc de 2032.

Figure 8. Champ d'arbitrage pour une trame CAN

Exemple d'arbitrage entre 3 stations:


La trame du message décrite sur la figure suivante est une trame de base :

Figure 9. Trame de base de message sous CAN

P. Y. EL MOURABIT 11
Filière : Génie Mécatronique Elément du module :
Ecole Nationale des Sciences Supervision et communication
Appliquées de Tétouan industrielle

3. Champ de commande
Le champ de commande est constitué de 6 bits.

Figure 10. Champ de commande pour une trame CAN

Les bits R0 et R1 sont les bits de réserves (dominants en trame CAN 2.0A). Ils sont en réserve
pour des usages ultérieurs et permettent d'assurer des compatibilités avec de futures évolutions.
Les 4 derniers bits du champ de commande sont les bits DLC (Data Length Code) indiquent le
nombre d'octets qui seront contenus dans le champ de données. Le tableau suivant montre les
combinaisons possibles des DLC.
Tableau 3. Nombre d'octets dans la trame CAN à base des DLC

4. Champ de données
Le champ de données contient les données utiles transmises. Il peut être composé de 0 à 8
octets (64 bits maxi). Dans chaque octet, le MSB est transmis en premier.

Figure 11. Champ de données pour une trame CAN

5. Champ de CRC
Le champ de CRC est composé d'une séquence de 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. IL s'agit d'un polynôme calculé de la même manière par l’émetteur et le récepteur

P. Y. EL MOURABIT 12
Filière : Génie Mécatronique Elément du module :
Ecole Nationale des Sciences Supervision et communication
Appliquées de Tétouan industrielle

à partir des bits du SOF, du champ d'arbitrage, du champ de contrôle et du champ


de donnée.
N.B: le polynôme générateur est : g(x) = x15 + x14 + x10 + x8 + x7 + x4 + x3 + x0.

Figure 12. Champ de CRC pour une trame CAN

Exemple de calcul du CRC sur une trame de données:


Extraits du livres : « Réseaux multiplexés pour systèmes embarqués » D. Paret Ed. Dunod

P. Y. EL MOURABIT 13
Filière : Génie Mécatronique Elément du module :
Ecole Nationale des Sciences Supervision et communication
Appliquées de Tétouan industrielle

6. Champ d'acquitement
Le champ d'acquitement est composé de 2 bits, l'ACK Slot et le ACK Delimiter (1 bit
récessif):
Lors de la transmission d'un message par un nœud, le bit ACK Slot est un bit récessif.
Lors de l'acquittement, par un nœud, de la réception correcte d'un message, le bit ACK
Slot est un bit dominant.

Figure 13. Champ d'acquitement pour une trame CAN

7. Champ Fin de trame


La trame de donnée se termine par une séquence de 7 bits récessifs. Ce champ possède une
structure fixe. 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.

P. Y. EL MOURABIT 14
Filière : Génie Mécatronique Elément du module :
Ecole Nationale des Sciences Supervision et communication
Appliquées de Tétouan industrielle

IV. Trame de requête (Remote frame)


1. Constitution d'une trame de requête
Une station nécessitant des données particulières peut initialiser la demande d'une
transmission en envoyant une trame de requête (remote frame). La structure d'une trame de
requête est identique à celle de donnée hormis le champ de données qui est optionnel dans ce
type de trame.

2. Champ d'arbitrage
Contrairement à la trame de données le bit RTR du champ d'arbitrage d'une trame de requête
est un bit récessif. C'est donc ce bit qui différencie une trame de données d’une trame de
requête.

Figure 14. Champ d'arbitrage d'une trame de requête

3. Arbitrage trame de requête et trame de données


Arbitrage entre une trame de données et une trame de requête portant le même identificateur:
la trame de donnée est prioritaire sur la trame de requête.

Figure 15. Arbitrage entre trame de données et trame de requête

P. Y. EL MOURABIT 15
Filière : Génie Mécatronique Elément du module :
Ecole Nationale des Sciences Supervision et communication
Appliquées de Tétouan industrielle

V. Bibliographies
Réseaux industriels, Cahier Technique du catalogue ‘Schneider Electric’.
Les réseaux locaux industriels, F. LEPLACE et al. Editions Hermes, 1991.
« Réseaux multiplexés pour systèmes embarqués » D. Paret Ed. Dunod
Introduction aux Réseaux Locaux Industriels, P. Hoppenot, Université d'Evry Val
d'Essonne 1999.
LISTE DES FIGURES

Figure 1. Les couches du bus CAN ......................................................................................................... 4


Figure 2. Le domaine d'applications de bus CAN ................................................................................... 4
Figure 3. Exemple de l'architecture CAN................................................................................................ 6
Figure 4. Architecture lignes de bus CAN .............................................................................................. 7
Figure 5. Les niveaux de tension des bits dominants et récessifs............................................................ 8
Figure 6. Principe de bit Stuffing dans une trame CAN.......................................................................... 9
Figure 7. Champs constituants une trame de données ........................................................................... 10
Figure 8. Champ d'arbitrage pour une trame CAN................................................................................ 11
Figure 9. Trame de base de message sous CAN ................................................................................... 11
Figure 10. Champ de commande pour une trame CAN ........................................................................ 12
Figure 11. Champ de données pour une trame CAN............................................................................. 12
Figure 12. Champ de CRC pour une trame CAN .................................................................................. 13
Figure 13. Champ d'acquitement pour une trame CAN ........................................................................ 14
Figure 14. Champ d'arbitrage d'une trame de requête ........................................................................... 15
Figure 15. Arbitrage entre trame de données et trame de requête ......................................................... 15

LISTE DES TABLEAUX

Tableau 1. Paramètres des bus CAN-LS et CAN-HS ______________________________________ 8


Tableau 2. Concordance Débit/Longueur d'un support de bus CAN __________________________ 9
Tableau 3. Nombre d'octets dans la trame CAN à base des DLC ____________________________ 12

P. Y. EL MOURABIT 16

Vous aimerez peut-être aussi