Exemple de l`automobile
Transcription
Exemple de l`automobile
L'embarqué dans l'automobile Exemple de l'automobile www.sherryglobman.com/rbtech/pages/sld_porshe_tamar2.html http://omahahistory.org/photo_archives_Billboards.htm http://vindtjewebloghier.web-log.nl/ [email protected] 1 Electronique embarquée dans l'automobile Evolution % du coût de l’électronique dans le véhicule Électricité de base Genèse de Prolifération Intégration et maturité des systèmes électriques & l’électronique de électroniques automobile l’électronique 35 Multimédia, Soupapes électromagnétiques Télématique, alternodémarreur Gestion d’énergie 30 25 Multiplexage, ABS 20 Injection électronique 15 Régulateur de vitesse 10 5 0 GMP Allumage électronique Alternateur Lampes, radio, démarreur, dynamo 1920 1940 1960 1980 2000 2010 Extrait de la présentation de Joseph Beretta / PSA - 16 et 17 Juin 2003 – http://www.systemes-critiques.org/SECC/ [email protected] 2 Exemple de l'automobile Evolution des architectures Augmentation de la quantité d'électronique embarquée pour : • amélioration du confort • amélioration de la sécurité • répondre aux normes (ex: pollution) Complexité fonctionnelle (modes de fonctionnement, intéractions, fonctions critiques..) Complexité architecturale (augmentation du nb de calculateurs, capteurs, infos, câblage, communications) ⇒ Architecture répartie, bus de communication [email protected] 3 Exemple de l'automobile Architectures réparties Matériel : coût, place, poids Qualité : diagnostique globale Evolutivité Normalisation [email protected] 4 Exemple de l'automobile L'électronique embarquée : applications Exemples d'applications : ABS, BVA, gestion moteur, Airbag, climatisation, régulation de vitesse avec radar anti-collision, allumage automatique des feux de détresse en cas de forte décélération ou de choc (1ère mondiale Peugeot 607), etc.. Plusieurs domaines : Moteur : applications de contrôle-commande Habitacle : confort Châssis et X-by-wire Télématique : multimédia [email protected] 5 Exemple de l'automobile Les systèmes X-by-wire Systèmes embarqués spécifiques : applications critiques ⇒ Sûreté de fonctionnement, fiabilité, contraintes temporelles strictes. Exemples : brake-by-wire, steer-by-wire Automobile, Avionique, Ferroviaire, Spatiale .. Carnegie Mellon: The Rare Glitch Project, E. Clarke and D. Kroenig [email protected] http://www.vmars.tuwien.ac.at/projects/xbywire/index.html 6 Exemple de l'automobile Quelques chiffres illustratifs Réduction de câblage • 40% poids pour une portière Mercedes • 41% de longueur de câble entre les Peugeot 306 et 307 " Complexité architecturale • Nombre de réseaux (3 → 10 (VW Phaeton)) • Nombre de calculateurs (30 → 70 (BMW Séries 7)) • Nombre d’informations échangées au sein du véhicule (~2500 (VW Phaeton)) [email protected] 7 Les réseaux des systèmes embarqués Les réseaux embarqués Les systèmes embarqués ont des caractéristiques très spécifiques => Besoin de réseaux spécifiques : les réseaux embarqués. Type de réseaux pour les systèmes embarqués : basés sur la technologie EVENT_TRIGGERED basés sur la technologie TIME-TRIGGERED [email protected] 8 La technologie Event-Triggered Définition Event-Triggered : asynchrone; transactions déclenchées par des événements • les destinataires connaissent l’état du système par l’intermédiaire des événements Avantages / Inconvénients • bonne gestion de la bande passante en régime apériodique, utilisée seulement si nécessaire • flexibilité • possibilité de surcharge en cas de rafales d’événements Exemple [email protected] le protocole CAN 9 le protocole CAN [email protected] 10 CAN - Controller Area Network Historique – Industrie automobile 1980 : émergence de nombreux systèmes électroniques au sein des véhicules ⇒ Encombrement et complexité (câblage) 1983 : création du bus CAN par la société Robert Bosch Gmbh 1985 : convention avec Intel 1986 : standardisation ISO 1995 : 1ère voiture à utiliser le bus CAN 2000 : environ 600 millions de circuits CAN vendus [email protected] 11 CAN - Controller Area Network Caractéristiques www.can-cia.org/ [email protected] 12 CAN - Controller Area Network Types de trames • Trame de données (diffusion, adressage par id. des données => modèle producteur/consommateur) • Trame de requête : pour récupérer des infos sur l'objet d'identifiant spécifié dans la trame (permet le modèle client/serveur). • Trame d'erreur : • Champ erreur : erreur "active" ou "passive" • Délimiteur • Trame de surcharge : pour retarder l'envoi d'une trame Exemple : si un récepteur est saturé. • Overload flag • Délimiteur [email protected] 13 CAN - Controller Area Network Format d'une trame de données • SOF : Start Of Frame, 1 bit dominant (pour synchronisation) • Champ d'arbitrage : • Identificateur (11 bits en format standard, 29 en étendu) • RTR : nature de la trame : données (dominant) ou requête (récessif) Intertrame = 3 bits obligatoires • Champ de contrôle : Possibilité d'avoir 8 bits supp (ex : trames overload) • 2 bits "en réserve" (r0 dominant) • 4 bits pour taille des données (Data Length Code) • Champ de données (< 8 octets) • Champ de CRC : 15 bits + 1 délimiteur (récessif) • Champ ack : 1 bit ack et 1 bit délimiteur (récessif) • Fin de trame : 7 bits récessifs sans bit stuffing • Intertrame : 3 bits récessifs [email protected] bit stuffing sur tous les champs du SOF au CRC (attention, délimiteur exclu) 14 CAN - Controller Area Network Architecture Couche application : • modèle producteur / consommateur • modèle client / serveur Application LLC MAC Physique Couche liaison : • arbitrage bit à bit • gestion erreur réseau [email protected] Couche physique : • notion de bits dominant et récessif 15 CAN - Controller Area Network Fonctionnement : accès au médium CSMA / BA (Bitwise Arbitration) Emetteur : Pour émettre : • Ecoute du bus • Si libre, début d'émission (SOF + identifiant du message + RTR) Continu d'écouter, et compare bit à bit la valeur du bus avec ce qu'il émet. • Si différent : il a perdu l'arbitrage car moins prioritaire => réémission + tard. • Si OK : émission finie, attente de l'ack dans le msg suivant. • Gestion des erreurs Récepteur : Réception et vérification que l'identifiant émis est celui d'1 msg qui leur est destiné. A la réception : vérification que le message reçu est bon Gestion des erreurs.. [email protected] 16 CAN - Controller Area Network Arbitrage - Exemple Nœud 1 perd l'arbitrage Nœud 3 perd l'arbitrage [email protected] 17 CAN - Controller Area Network Contraintes temporelles Le mécanisme d'accès au bus par forçage des messages prioritaires offre une garantie du respect des contraintes temporelles pour les messages prioritaires. Retard : Si une information circule déjà sur le bus, le temps de propagation de cette dernière constitue le retard maximal avant émission d'une nouvelle information prioritaire (temps de latence maximum). Début émission d'une trame Arrivée d'une trame prioritaire Le bus est pris => attente Fin d'émission Bus libre => tentative émission Gain de l'arbitrage si prioritaire Inter trame Retard maximal avant émission Informations non prioritaires : En cas de forte charge du bus, les informations moins prioritaires risquent de ne jamais pouvoir accéder au bus (babbling idiot). [email protected] 18 CAN - Controller Area Network Coopération Client / Serveur Cette coopération est possible en utilisant les trames de requête Ces trames sont des trames "normale", sauf que le bit RTR est récessif ⇒ Elles sont moins prioritaires que les trames normales de données ⇒ Aucune garantie sur le temps de réponse Rmq : ces trames sont de l'overhead pur. [email protected] 19 CAN - Controller Area Network Détection d'erreurs Le protocole CAN implémente des mécanismes de détection d'erreurs : • Écoute permanente du bus • Bit stuffing : (6ième bit complémentaire) • CRC (Cyclic Redundancy Check) • Acquittement [email protected] 20 CAN - Controller Area Network Détection d'erreurs : Bit stuffing Ajout d'un bit complémentaire pour "casser" une suite trop longue de bits de même valeur. (6ième bit supp) Permet d'éviter les erreurs dues à une désynchronisation des nœuds [email protected] 21 CAN - Controller Area Network Bit stuffing : pire cas Appliqué sur certains champs de la trame : du SOF au CRC Le bit stuffing introduit un overhead Pire cas : alternance de 5 puis 4 bits complémentaire => le bit de stuffing sera le 5ième bit à chaque fois. Pire cas : accroissement max de [email protected] bits 22 CAN - Controller Area Network Acquittement L' "ACK slot" est émis avec une valeur récessive. Lorsqu'une station reçoit cette trame de façon correcte, elle met ce champ à une valeur dominante. ⇒ l'acquittement signifie qu'au moins une station à reçue la trame, mais pas forcément le destinataire des données applicatives !!! ⇒ Acquittement pas totalement fiable [email protected] 23 CAN - Controller Area Network Type d'erreurs Bit error : la valeur sur le bus ≠ valeur émise Stuff error : 6 bits consécutifs de valeur identique CRC error : CRC calculé ≠ CRC reçu Form error : bit illégal dans un champ Ack error : aucun récepteur n'a acquitté l'émission [email protected] 24 CAN - Controller Area Network Erreur de transmission Pas de correction, seulement détection (et retransmission). Principe : une station qui détecte une erreur le signale aux autres par une trame d'erreur (6 bits dominants) Probabilité d'erreur résiduelle très faible (10-12) Détection de l'erreur × [email protected] 25 CAN - Controller Area Network Signalisation d'erreurs - détails 1) Une station qui détecte une erreur transmet une trame d'erreur. 2) Elle commence à émettre cette trame : le champ error flag - 6 bits dominants si en mode "erreur active", 6 bits récessifs si en mode "erreur passive". 3) Les autres stations détectent également une erreur (soit l'erreur initiale, soit une erreur provoquée par l'error flag), elles transmettent alors également des error flag. => Le champ total error flag sur le bus est compris entre 6 et 12 bits. 4) Fin de l'émission du champ error flag. (pour le mode erreur passive, détection de 6 bits consécutifs de même polarité). 5) Les stations tentent ensuite d'émettre le champ error delimiter : elles émettent 1 bit récessif, puis 7 autres bits récessifs une fois le bus détecté en état récessif. [email protected] 26 CAN - Controller Area Network Scénarios : détection et signalisation d'une erreur Cas simple : une seule station "error active" Bus x D D D D D D R R R R R R R R S1 x D D D D D D R R R R R R R R Détection de l'erreur par la station S1 Emission de l'error flag : 6 bits dominants Emission du reste de l'error delimiter Début d'émission de l'error delimiter : 1 bit récessif. Cas simple : une seule station "error passive" Bus x R R R R R R R R R R R R R R S1 x R R R R R R R R R R R R R R Détection de l'erreur par la station S1 Emission de l'error flag : 6 bits récessifs [email protected] Début d'émission de l'error delimiter : 1 bit récessif. Emission du reste de l'error delimiter 27 CAN - Controller Area Network Scénarios : détection et signalisation d'une erreur Cas avec plusieurs stations Début d'émission de l'error flag par S1 S1, S2 en mode active error, S3 en passive error Error flag de S1 complet POUR LES 3 STATIONS : détection du bus récessif Début d'émission de l'error delimiter par S1 : 1 bit récessif. Détection de l'erreur par la station S1 => émission du reste de l'error delimiter Bus x D D D D D D D D R R R R R R R R S1 x D D D D D D R - - R R R R R R R S2 x x - - D R D - D - D - D - D - R R R R R R R R R R R R R R R R S3 Détection de l'erreur par les autres stations Début d'émission de l'error flag par S2 Error flag de S2 complet Détection par S3 de 6 bits consécutifs Début d'émission de l'error flag par S3 [email protected] Début d'émission de l'error delimiter par S2 et S3 : 1 bit récessif. 28 CAN - Controller Area Network Pire cas : détection et signalisation d'une erreur Pire cas : une station détecte l'erreur à la fin de la transmission de l'error flag de la 1ière station. Max : 12 bits Bus x D D D D D D D D D D D D R R R R R R R R S1 x D D D D D D R - - - - - - R R R R R R R S2 x - - - - - - D D D D D D R R R R R R R R error flag de S1 Détection de l'erreur par la station S2 : stuff error error flag de S2 Emission du reste de l'error delimiter • Meilleur cas : retransmission après 17bits (14 + 3 intertrame) • Pire cas : retransmission après 23 bits (20 + 3 intertrame) [email protected] 29 CAN - Controller Area Network Le confinement d'erreur Un exemple de problème : dans CAN, une station défectueuse peut perturber les communication. Exemple : émission continue de trames d'erreur. Une solution : les stations défectueuses se déconnectent automatiquement, ou se mettent dans un état "non nocif". Dans CAN : 2 compteurs d'erreurs • TEC : sur les trames émises (Transmit error counter) • REC : sur les trames reçues (Receive error counter) Dans CAN : 3 états de stations • Erreur-active : fonctionnement normal • Erreur-passive : émission possible, plus de détection d'erreur • Bus-off : déconnexion [email protected] La gestion de ces 3 modes s'effectue par l'intermédiaire des 2 compteurs d'erreurs. 30 CAN - Controller Area Network Le confinement d'erreur Evolution du compteur TEC : • Emission d'une trame ko : +8 (si <256) Evolution du compteur REC : • Réception d'une trame ok : -1 (si >0) • Emission d'une trame ok : -1 (si >0) • Réception d'une trame ko : +1 (si < 128) Reset, configuration et startup (128*11bits récessifs) REC et TEC < 128 REC ou TEC > 127 TEC > 255 [email protected] 31 CAN - Controller Area Network Le confinement d'erreur : conclusion Un point fort pour la sûreté de fonctionnement Mais prévoir des solutions si bus-off de stations importantes du point de vue appli. Et aussi : des recherches on montré que ce mécanisme n'est pas parfait.. • de fortes EMI peuvent mener à un bus-off • si la station émet, le REC ne sert à rien • … [email protected] 32 CAN - Controller Area Network Tolérance aux fautes - limitations Fautes byzantines : si certaines stations ont reçues une trame ok mais que les autres, dont l'émetteur, détecte une faute (sur le champ EOF), la trame sera retransmise => certaines stations vont recevoir ce msg 2 fois. ⇒ Gestion au niveau applicatif : sur CAN, pas de msg on/off, pas d'incrémentation relative (+20°) Babbling Idiot : si une station prioritaire accapare le medium Validation formelle ??? [email protected] 33 CAN - Controller Area Network * Avantages Flexibilité : pas de phase de configuration, .. Fiabilité de la couche physique support : paire différentielle; codage NRZ.. Gestions des erreurs : (couche MAC) • Détection • Signalisation • Autotest des nœuds Taux d'erreur : < 4,7.10-11 Supervision et recouvrement des erreurs (couche LLC) • Distinction entre erreurs permanentes ou transitoires • Modes d'erreurs (error active, error passive, bus-off) • Gestion de la surcharge. • Réémission. [email protected] * www.corante.com/ 34 CAN - Controller Area Network ** Inconvénients Efficacité temps-réel : compromis • de la durée des messages de la durée d’inversion des priorités • de la durée des messages (taille) de la largeur de bande utile • trame "classique" : 66 bits d’entête 64 bits de données faible charge utile ⇒ efficace en faible charge, sinon problème Limitation de l'arbitrage • émission d'un seul bit par intervalle de temps (qui dépend du TA/R) ⇒ Débit limité (1Mb/s max) ⇒ Longueur (50m si 1Mb/s) [email protected] ** gamerzone.over-blog.com/ 35 CAN - Controller Area Network Utilisation industrielle CAN : contraintes TR OK, simple et peu cher => très attirant pour le milieu industriel L'automobile : conçu initialement pour ce domaine aussi : autobus, camion, train, avion, .. http://www.alabordache.com/ Marine : protocole standard de la marine NMEA 2000 Machinisme agricole (ISO 11783) http://www.linternaute.com/humour/ Milieu médicale : ex : poste de radiographie Autres : Automatismes industriels, machines outils, machines textiles, bâtiments, distribution automatique, domotique (ex : rideau de théâtre), etc. [email protected] Site CAN, 1999 36 Couches haut niveau pour CAN CANopen [email protected] 37 CAN - Controller Area Network CANopen http://www.can-cia.de/index.php?id=canopen Standard : EN 50325-4 CAN Open est un protocole haut niveau dédié au système de contrôe embarqué, basé sur le réseau CAN Domaines d’application : machine control, medical devices, off-road and rail vehicles, maritime electronics, building automation as well as power generation. [email protected] * www.corante.com/ 38 " FIN ( ) la vraie [email protected] 39 Exemple de l'automobile Steer-by-wire Impossibl e d'afficher l'image. Votre ordinateu r manque Impossibl e d'afficher l'image. Votre ordinateu r manque [email protected] Impossibl e d'afficher l'image. Votre ordinateu r manque Impossibl e d'afficher l'image. Votre ordinateu r manque 40 Les systèmes "by-wire" Les systèmes "by-wire" dans l'avionique A320 : son système de commandes électriques de type "fly-by-wire" et une avionique entièrement numérique permettent à l'A320 d'améliorer ses performances et sa fiabilité tout en consommant moins et en se contentant d'une maintenance simplifiée A380 : système TT - Le système de réglage de pression de la cabine du futur gros porteur Airbus A380 prévu pour 2005. Il sera contrôlé par la technologie Time Triggered.” Airbus Industries has adopted TTP for cabin-pressure control in its model A380 airliner; Honeywell is using the protocol for jet-engine control in the F-16 fighter and has a fly-by-wire cockpit project under way. Other nonautomotive applications include Alcatel’s railway-signalling systems, which are operating in Austria, Hungary, and Switzerland. TTP’s automotive customers include Audi, PSA Peugeot-Citroen, and Renault, with Tier One suppliers Delphi, Denso, and Visteon. As proof of concept, the protocol has appeared in by-wire prototype cars from companies such as Audi, Bertone, Daimler, General Motors, and SKF [email protected] 41 Exemple de l'automobile Caractéristiques Complexité fonctionnelle • Lois de contrôle multi-variables • Modes de fonctionnement • Interactions entre les fonctions • Fonctions critiques : sécurité – fiabilité – disponibilité (performances vs. contraintes de temps) Complexité architecturale • Nombre de réseaux (3 → 10 (VW Phaeton)) • Nombre de calculateurs (30 → 70 (BMW Séries 7)) • Nombre d’informations échangées au sein du véhicule (~2500 (VW Phaeton)) [email protected] 42 Exemple de l'automobile Émergence des réseaux et instruments de terrain Réduction de câblage • 40% poids pour une portière Mercedes • 41% de longueur de câble entre les Peugeot 306 et 307 Partage des capteurs Amélioration des fonctions • disponibilités d’informations sur l’état des autres systèmes embarqués • évolutivité des systèmes embarqués (« plug and play ») [email protected] 43 La technologie Time-Triggered Problèmes du event-triggered Problèmes de CAN : • les mécanismes d'erreurs de CAN sont efficaces mais pas sans bugs (ex : babbling idiot) CAR LE MAUVAIS FONCTIONNEMENT D'UN FLUX PEU S'ETENDRE AUX AUTRES FLUX • pas de gestion des modes de fonctionnement ou autres services "perfectionnés" de SdF • messages peu prioritaires peuvent ne pas être émis. • retransmission, msg d'erreur : pas forcément très efficace • débit limité par la technique d'accès au bus (traitement TR des données => 1Mbps max) • NON DETERMINISTE EN PRESENCE DE FAUTES. Problèmes identiques pour tous les ET ?? [email protected] 44 Références Cette initiation aux RLI a été réalisée à l'aide des sources (livres, sites) ici référencées. Adresses de sites Orientés Réseaux et Télécommunications • http://www.urec.cnrs.fr/cours/ • http://www.renater.fr/ Orientés Bus de terrain (sites d'associations d'utilisateurs et de constructeurs) • http://www.can-cia.de (Bus CAN), http://www.worldfip.org (Bus WORLDFIP), Articles • Les réseaux VAN-CAN, Rapport de projet, Ecole Ingénieur 2000, Guerrin Guers & Guinchard, 2005 • Techniques de l'ingénieur Thèse • Validation temporelle de réseaux critiques et fiables pour l'automobile, PhD thesis, INSA Lyon, K. Godary, 2004 • Intégration de mécanismes d ’ordonnancement et de communication dans la sous-couche MAC de réseaux locaux tempsréel, F. Vasques de Carvalho, Thèse UPS, LAAS Toulouse, 1996. Ouvrages • « Réseaux : architectures, protocoles, applications », Andrew Tanenbaum, InterEditions, Collection IIA , Paris 1991. • « Réseaux Locaux Industriels » Jean-Pierre Thomesse, Techniques de l ’Ingénieur R7574, R7575, R7576. • « Réseaux Locaux Industriels : FIP et MAP dans les systèmes automatisés » Zoubir Mammeri, Jean-Pierre Thomesse, Editions EYROLLES. Ces références vous permettront d'approfondir vos connaissances sur les concepts et technologies évoquées. [email protected] 45