Vous êtes sur la page 1sur 9

TP Bus CAN (Controller Area Network)

Le CAN est un réseau de terrain (ou réseau embarqué) qui occupe


aujourd'hui une position de leader sur le marché automobile.

Le protocole CAN (Control Area Network) est un protocole de


communication série qui supporte des systèmes temps réel avec un haut
niveau de fiabilité. Ses domaines d’application s’étendent des réseaux
moyens débits aux réseaux de multiplexages faibles coûts.

Les objectifs de ce TP sont :

- Comprendre l’intérêt et l’organisation d’un bus de terrain.

- Comprendre comment les différents équipements de voiture échangent


des informations via le bus CAN.

- Analyser les données et les formats des données échangées sur le


bus.

- Décoder une trame CAN.

Phase 1 : Présentation de l’environnement de simulation

(1) Lancez le logiciel CANÖE à partir du menu démarrer.

(2) Chargez le fichier de démonstration (easy.cfg) situé dans l’onglet

File → sample configurations → CAN General → Easy

Lorsque vous allez lancer la démonstration, le logiciel va simuler la mise


en route et la commande des feux du véhicule:

La commande du véhicule se fait dans le panneau « Control », vous


pouvez agir sur :

- l’accélérateur (speed).

- les feux de détresse (hazards).

- les feux de croisement (head light).

La vitesse du véhicule et l’état des feux s’affichent automatiquement


dans le panneau «Display ».
Une fois le démarrage de la simulation est réalisé (clic Start), vous
pourrez conduire et commander le véhicule :

Clic sur STAR

Organisation de la fenêtre « Trace »

La fenêtre « Trace » vous permet de connaître :

- le moment (Time) auquel passe la trame par rapport à une date zéro
(début de la simulation),

- le bus CAN (Chn) sur lequel circule la trame (CAN 1, CAN 2),

- l’identificateur du message (ID),

- la direction (Dir) du message (Transmis Tx ou reçu Rx),

- le nombre d’octets de données dans la trame (DLC),

- les données transmises dans la trame (Data).


Phase 2 : Analyse de trames CAN

Avant d’analyser les trames qui « passent » sur le bus, il est nécessaire
d’acquérir des connaissances sur le protocole CAN et notamment sur
l’organisation d’une trame CAN.

Chacune de vos actions dans l’environnement de simulation va se


traduire par la génération d’un message sur le bus CAN.

Commande des feux du véhicule

En agissant sur les boutons poussoirs de la console (Control) l’utilisateur


déclenche, à son insu, une séquence de transmission de données.

Dans ce paragraphe, vous allez établir cette séquence en identifiant les


messages générés et leur contenu.

Appuyez sur les boutons et observez le comportement des feux et le


contenu des messages dans la fenêtre « Trace »

1- Quel est le nom du message associé aux boutons du control des


feux de la voiture ?

Le nom du message associé aux boutons du control des feux de la


voiture c’est lightState.

2- Complétez le tableau ci-dessous :


Action Données transmises sur le bus (en binaire
Activez le bouton feux « HeadLight » 00000001

Désactivez le bouton feux « HeadLight » 00000000

Désactivez le bouton feux «HeadLight » ET 00000100


Activez le bouton feux détresse « Hazard »

Activez le bouton feux« HeadLight» ET 00000101


Activez le bouton feux détresse « Hazard »

2-1- Quel bit du champ data contient l’état du bouton poussoir feux
de croisement « HeadLight » ?
On a :
b7 b6 b5 b4 b3 b2 b1 b0

Le bit du champ data contient l’état du bouton poussoir feux de


croisement « HeadLight » est le b0.
Activation du bouton feux « HeadLight »

Désactivation du bouton feux « HeadLight »


2-2- Quel bit du champ data contient l’état du bouton poussoir feux
de détresse « Hazard » ?
Le bit du champ data contient l’état du bouton poussoir feux de
détresse
« Hazard » et le bit b2.
Désactivez le bouton feux « HeadLight » ET Activez le bouton feux
détresse « Hazard ».

Activation du bouton feux « HeadLight » ET Activation du bouton


feux détresse « Hazard ».
Commande moteur du véhicule
En agissant sur le bouton poussoir « egnition » de la console
(Control) l’utilisateur démarre ou arrête le moteur du véhicule.
L’accélérateur
« barre speed » permet à l’utilisateur de contrôler la vitesse, cela
déclenche une séquence de transmission de données sur le bus
CAN.
3- Quel est le nom du message associé aux boutons
démarrage/arrêt du moteur et accélérateur ?
Le nom du message associé aux boutons démarrage/arrêt du
moteur et accélérateur est EngineState.

4- Complétez le tableau ci-dessous :


Action Données transmises sur le bus (en
binaire)

Désactivez le bouton de démarrage 00000000 00000000


« egnition»
Activez le bouton de démarrage 00000001 00000000
« egnition» ET
Désactivez l’accélérateur « Speed=0 tr/mn
»
Activez le bouton de démarrage 11101001 00000011
« egnition» ET
Activez l’accélérateur « Speed=500 tr/mn »
Activez le bouton de démarrage 10111001 00001011
« egnition» ET
Activez l’accélérateur « Speed=1500 tr/mn
»
4-1- Quel bit du champ data contient l’état du bouton poussoir de
démarrage moteur « egnition» ?
Le bit du champ data contient l’état du bouton poussoir de
démarrage moteur « egnition» est A0.
Désactivez le bouton de démarrage « egnition».

Activation du bouton de démarrage « egnition» ET Désactivation


l’accélérateur « Speed=0 tr/mn ».

4-2- Quels sont les bits du champ data qui contiennent la vitesse du
moteur (tr/mn)?
Les bits des champs data qui contiennent la vitesse du moteur sont
B7 B6 B5 B4 B3 B2 B1 B0 A7 A6 A5 A4 A3 A2 A1.
Activation du bouton de démarrage « egnition» ET Activation
l’accélérateur « Speed=500 tr/mn ».

Activation le bouton de démarrage « egnition» ET Activation


l’accélérateur « Speed=1500 tr/mn ».

Phase 3 : Arbitrage sur le bus CAN


1- Rappeler le principe de la technique d’accès du bus CAN ?
Le principe de la technique d’accès du bus CAN c’est CSMA/CA.
2- Quels sont les identificateurs des messages qui circulent sur le
bus CAN ? Pourquoi les concepteurs des réseaux CAN du
véhicule ont-ils rendu le message «StateEngine » plus prioritaire
que le message «LightState »?
Les identificateurs des messages qui circulent sur le bus CAN
sont EngineState et LightState.
Les concepteurs des réseaux CAN du véhicule ont rendu le
message «StateEngine » plus prioritaire que le message
«LightState » car il est lié au contrôle et la sécurité du moteur.

Phase 4 : Capture et décodage d’une trame CAN


1- Décoder cette trame ?
0000111110010000011110000010000010000010110100
111110111110011000001000001000001000001011111
001001111000101111111.
2- Donner la trame CAN sans bits de stuffing (le bus CAN utilise la
méthode de « Bit-stuffing »)?
0000111110100000111000000000000000011010011111
1111101100000000000000000000011111010011110001
01111111.
Et on a :
SOF (1 bit dominant)=0
CHA MP D’ARBITRAGE (11bit)=00011111010
RTR (1 bit)=0
CHAMP DE COMMANDE (6 bits)=000111
Avec : pour les données

7 octets= 56 bits
DONNEES (56
bits)=00000000000000001101001111111111011
000000000000000000000.
CRC (16 bits)=1111101001111000.
EOF (7bits)=1111111.
3- Quelles sont les données transportées par cette trame ?
Les données transportées par cette trame sont
000000000000000011010011111111110110000000000000000
00000.

Réalisé par HANANE ARRAD

Vous aimerez peut-être aussi