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

Plan du cours (5)

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

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

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.

Chapitre V: Bus CAN

104

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é

Chapitre V: Bus CAN

105

Bus CAN automobile

Bus CAN High speed Bus CAN low speed

Chapitre V: Bus CAN

106

Evolution chronologique

107

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.

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

applications industrielles du bus CAN.

1993: Publication des spécifications CAN Application Layer (CAL)

précisant les mécanismes de transmission.

Chapitre V: Bus CAN

Applications du bus CAN

Commande des machines

Industrie automobile Industrie maritime

Equipements médicaux

Engins de levage

Chapitre V: Bus CAN

Imprimante 108

Principaux constructeurs

109

Plus de 90% des cartes CAN disponibles

sur le marché, prix élevé

Solutions CAN « bon marché »

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.

110

• 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).

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.

111

Micro-

contrôleur

Gestionnaire

de protocole

Micro-

contrôleur

et

gestionnaire

de protocole

Module E/S

avec

gestionnaire

de protocole

Bus physique120 Ω 120 Ω

CAN - H

CAN - L

TxRx Rx RxTx Tx

Interface Interface Interface

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

• 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.

Caractéristiques (4): Encodage des bits

Chapitre V: Bus CAN

113

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).

Chapitre V: Bus CAN

114

Norme CAN High Speed

115

Dominant Récessif

CAN - H

CAN - L

Temps

Tension

(V)

3,5

2,5

1,5

2,0V

La différence de tension

entre les deux lignes H et L

est faible.

Chapitre V: Bus CAN

de 0,9 à 2 V1,5 V3,5 VDominant ou « 0 »

de 0 à 0,5 V2,5 V2,5 VRécessif ou « 1 »

CANH <> CANLCANL <> masseCANH <> masseNiveau

Norme CAN Low Speed

116

La différence de tension

entre les deux lignes H et L

est grande.Dominant Récessif

CAN - H

CAN - L

Temps

Tension

(V)

5,0

3,6

2,5

1,4

0,0

2,2V 5,0V

Chapitre V: Bus CAN

3 V1 V4 VDominant ou « 0 »

-1,5 V3,25 V1,75 VRécessif ou « 1 »

CANH <> CANL

CANL <> masseCANH <> masseNiveau

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

117

500010

250020

100062,5

500125

250250

100500

50800

301000

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

Low Speed

High Speed

Chapitre V: Bus CAN

+ -

Caractéristiques (7): Connecteurs

DB-9 RJ 45

Free style M12 (5 broches)

Chapitre V: Bus CAN

118

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

raccordables

CAN HIGH SPEED 30 équipements

CAN LOW SPEED 20 équipements

/20

Chapitre V: Bus CAN

119

• 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).

Composants présents sur un bus CAN: Classes

Chapitre V: Bus CAN

120

• 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.

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

Gestionnaire/contrôleur de protocole CAN

Chapitre V: Bus CAN

121

Contrôleur de protocole CAN:

Exemples

Siemens SAE 81C90/91

Intel82526/27

PhilipsSJA1000

Chapitre V: Bus CAN

122

• 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.

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

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

Chapitre V: Bus CAN

123

Microcontrôleur avec gestionnaire CAN intégré:

Exemples

Motorola68HC Microship

PIC18F « K80"

Chapitre V: Bus CAN

SiemensSAB 80C

124

• 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.

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

Modules d’E/S de type SLIO

Chapitre V: Bus CAN

125

Modules d’E/S SLIO:

Exemples

Chapitre V: Bus CAN

PhilipsP82C150

126

• 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.

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

Drivers de ligne

Chapitre V: Bus CAN

127

Drivers de ligne:

Exemples

Chapitre V: Bus CAN

Philips82C250

CANL

CANH

Tx

Rx

Amplificateur

128

Trames

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.

• Il existe 5 types de trames différentes:

Chapitre V: Bus CAN

129

• 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.

Trames de données

32 bits CAN format étendu 12 bits CAN format standard

Chapitre V: Bus CAN

130

• 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.

Description des différents champs (1)

Chapitre V: Bus CAN

131

• 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.

Description des différents champs (2)

Chapitre V: Bus CAN

132

• 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é ».

Mécanismes de protection du protocole (1):

Contrôle de Redondance Cyclique (CRC)

Chapitre V: Bus CAN

133

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

Mécanismes de protection du protocole (2):

Contrôle de la trame de donnée

11 11

Début

de trame

Champs d ’arbitrage

0 - 64 11115 7 ≥ 3

Champs de commande Champs de CRC Fin de trame

Champs de données

Espace

Intertrame

?

Niveau

récessif

Niveau dominant

Bit dominant ? Bit récessif?

411

Valeur

0 – 8?

Chapitre V: Bus CAN

134

Mécanismes de protection du protocole (3):

Stuffing bit/bit de bourrage

Données

à

transmettre

Données

transmise

sur le bus

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

Bit de bourrage

5 bits dominants successifs

5 bits récessifs successifs

Chapitre V: Bus CAN

135

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).

8 bits6 bits

Nœud émetteur Nœud récepteur

Trame d ’erreur

Chapitre V: Bus CAN

136

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.

1 bit1 bit

Champ d’acquittement

ACK = 0 bonne réception

ACK delimiter = 1 toujours

Chapitre V: Bus CAN

137

EXERCICES

Chapitre V: Bus CAN

138

Exercice1

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

bus dans l’exemple suivant:

Chapitre V: Bus CAN

139

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.

Chapitre V: Bus CAN

140

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.

Chapitre V: Bus CAN

141

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.

Chapitre V: Bus CAN

142

Exercice 5

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

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

Chapitre V: Bus CAN

143

Exercice 6

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

Chapitre V: Bus CAN

144

Exercice 7

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

Chapitre V: Bus CAN

145