Bus CAN - Comprendre le réseau de communication véhicule
À propos de ce cours
Table des matières
- Le bus CAN
- Introduction
- Protocole CAN, Applications
- Modèle OSI, Définitions
- Couche 2 – Niveau Trame
- Trame de données
- Champ de contrôle.
- Trame de requêtes
- Champ CRC, Champ d'acquittement
- Champ de fin de trame
- Traitement des erreurs
- Différents types d'erreur
- Trame d'erreur (Error Frame)
- Le confinement d'erreurs
- Trame de surcharge
- Couche 1 – Niveau Bit
- Codage, Longueur et débit
- Caractéristiques électriques
- Bibliographie
- Exercices
Programme du cours
Objectifs d'apprentissage
- Comprendre les principes fondamentaux du bus CAN et son architecture.
- Maîtriser le protocole CAN, ses applications et son modèle OSI.
- Analyser la structure des trames CAN (données, requêtes, erreurs).
- Apprendre les mécanismes de détection et de gestion des erreurs.
- Connaître les caractéristiques électriques et les contraintes de transmission.
Public cible
Ce cours s'adresse aux ingénieurs en automatisation, aux techniciens en électronique automobile, aux développeurs embarqués et aux étudiants en génie électrique ou informatique industrielle. Une connaissance de base des réseaux de communication et de l'électronique est recommandée.
Le bus CAN
Le bus CAN (Controller Area Network) est un protocole de communication série robuste, conçu pour les environnements industriels et automobiles. Il permet une transmission fiable entre microcontrôleurs et capteurs avec une tolérance aux pannes élevée.
Introduction
Développé par Bosch dans les années 1980, le CAN est devenu une norme internationale (ISO 11898). Son adoption massive dans l'automobile (pour les systèmes ABS, airbags, etc.) s'étend désormais à l'industrie (automation, IoT).
Protocole CAN, Applications
Le CAN utilise un accès multiple avec détection de collision et arbitrage (CSMA/CA). Applications typiques : véhicules (OBD-II), machines industrielles, aéronautique, et dispositifs médicaux.
Modèle OSI, Définitions
Le CAN couvre principalement les couches 1 (physique) et 2 (liaison de données) du modèle OSI. La couche physique gère le support, tandis que la couche liaison gère les trames et le contrôle d'erreurs.
Couche 2 – Niveau Trame
La couche liaison définit plusieurs types de trames : données, requêtes, erreurs, et surcharge. Chaque trame suit une structure précise avec des champs de contrôle.
Trame de données
Composée d'un identifiant (11 ou 29 bits), de données (0-8 octets), et de champs de contrôle (CRC, ACK). L'identifiant détermine la priorité lors de l'arbitrage.
Champ de contrôle
Inclut un CRC (Cyclic Redundancy Check) pour détecter les erreurs de transmission, et un bit d'acquittement (ACK) confirmant la réception.
Trame de requêtes
Utilisée par un nœud pour demander la transmission de données spécifiques. Similaire à une trame de données mais sans champ de données.
Traitement des erreurs
Le CAN détecte les erreurs via : CRC, monitoring bit à bit, et vérification de format. Les erreurs déclenchent une trame d'erreur pour notifier le réseau.
Différents types d'erreur
Erreurs bit, stuff, CRC, ACK, ou format. Chaque type active un mécanisme de reprise automatique ou d'isolation du nœud défaillant.
Couche 1 – Niveau Bit
La couche physique utilise un différentiel à deux fils (CAN_H/CAN_L) pour une immunité au bruit. Le débit varie de 10 kbit/s à 1 Mbit/s selon la longueur du bus.
Caractéristiques électriques
Niveaux logiques : dominant (2V diff.) et récessif (0V). Impédance caractéristique de 120 Ω avec terminaisons obligatoires.
Bibliographie
Références : ISO 11898, "CAN System Engineering" par Wolfhard Lawrenz, et documentation Bosch.
Exercices
Pratique avec analyse de trames CAN via un analyseur logique, calcul de CRC, et simulation de scénarios d'erreur.