source originale: Christian Couderc, voilelec.com
Bus automobile CAN
Standard NMEA 2000
source originale: Christian Couderc, voilelec.com
Résumé
: |
Cette
page va évoquer deux bus majeurs. Le premier est le bus CAN, bus industriel
adopté par toute l'industrie automobile et qui va s'imposer sur tous les nouveaux
véhicules en plusieurs exemplaires. Il a toutes les qualités de robustesse
et de conception. Toutes les applications à microcontrôleurs récentes l'incorporent.
Le deuxième est le nouveau bus (plus exactement protocole) marine universel
NMEA 2000 qui a eu l'intelligence de s'appuyer sur le précédent. Il s'imposera
aussi par ces qualités. Le NMEA 2000 est simplement une extension logicielle
du CAN.
Cette page couvre les parties "électronique" et "voile", ce qui explique le
changement du séparateur.
Cette
petite page ne va pas développer en profondeur le bus CAN (Controler Area Network) car ce sujet est bien trop vaste,
mais simplement jeter quelques bases pour les débutants et donner envie d'approfondir.
Les sources d'informations sur ce bus majeur sont riches, il sera très facile
de les trouver par les liens.
Le CAN a été lancé en 1990 pour répondre aux besoins de l'industrie automobile devant la montée de l'électronique embarquée. En 2005 une voiture moyenne comportera une centaine de microcontrôleurs. Pour éviter les 2 km de câblage d'une grosse voiture actuelle, soit 100 kg de cuivre, il fallait définir un bus série simplifiant énormément l'intégration des fils dans le châssis.
En pratique, il y a trois bus CAN différents dans une voiture, à des débits différents :
° Un bus très rapide pour gérer la sécurité (freinage, ABS, détection chocs, airbags...).
° Un bus à vitesse moyenne pour gérer le moteur (commandes et capteurs).
° Un bus lent pour gérer tous les accessoires (lampes, moteurs d' asservissements, boutons...).
L'énorme
avantage est que la puissance de l'industrie automobile a permis de définir
un excellent bus. Le défaut est que chaque constructeur voulant imposer sa
version, la normalisation a été laborieuse. A ce jour le protocole se stabilise
et se répand dans toute l'industrie. Iil existe sous deux versions, 2.0A,
trame standard identificateur de 11 bits et 2.0B avec 29 bits.
Les Can Low Speed et High Speed décrits respectivement dans les documents
ISO 11519-1 (et 2) et ISO 11898.
Les composants CAN, périphériques et contrôleurs intégrant le protocole deviennent très nombreux à des prix bas. Dans les projets, le bus CAN 2.0B sera toujours utilisé.
Quelques composants CAN
Pour
relier les composants, le réseau CAN est vraiment le produit industriel idéal
actuellement et pour les dix ans à venir, mais l'USB 2 sera le leader des
liaisons entre périphériques PC. La différence vient de la sécurisation du
bus et de l'immunisation aux parasites.
Sur du CAN le blindage contre les agressions d'un environnement hostile est
maximum, pour ne pas planter l'ensemble des périphériques en cas de défaillance
d'une zone.
Un seul câble à 4 fils, commun comportant la paire des données et la paire
des alimentations relie tous les multiples matériels point à point en constituant
une boucle pour le bus accessoires.
En cas d'accident supposons par exemple qu'un feu arrière soit écrasé. Un
fil ou les deux du bus données peut être alors coupé, ou en court circuit
ou en contact avec la masse ou le positif. Il faut tolérer cette anomalie
majeure qui ne doit pas planter le reste de la voiture, tous les autres équipements
doivent continuer à fonctionner sans problème. Des dispositifs de délestage
et de rebouclage prennent ces incidents en compte.
Il est évident q'un bus USB ou Ethernet ne prend absolument pas ces anomalies
en compte, il ne peut donc être comparé.
Pour
résumer très brièvement les caractéristiques majeures :
Paire torsadée, signal différentiel à fronts cassés, très faible rayonnement
et insensibilité aux parasites.
Choix du débit suivant l'application et la distance, 5 kbps, 125 kbps et 1
Mbps et toute valeur intermédiaire à la demande. Pour les applications à bord
d'un véhicule même sur équipé, ce bus répond largement à toutes les exigences.
L'exploitation du CAN est extrêmement facilitée par des boites à outils logicielles
qui évitent de travailler au niveau du bit bas niveau. Divers contrôleurs
intègrent une gestion CAN en dur, ce qui facilite encore le développement,
le bus devient transparent pour le programme. Le NMEA 2000, traité chapitre
suivant, est basé sur un bus CAN.
Je ne rentrerai pas plus en détail dans ce bus complexe, je décrirai ultérieurement
diverses applications de périphériques dans les projets.
L'implantation sur une carte est relativement simple, en utilisant les bibliothèques de fonctions pour gérer une patte de port en entrée, l'autre en sortie, l'interface CAN adaptant les niveaux vers la paire différentielle. Une fois la couche bas niveau implantée, cela est ensuite totalement transparent pour le logiciel.
Le NMEA 2000 qui est un protocole plutôt qu'un standard ce n'est pas un bus. Il comble toutes les limitations de la norme NMEA 183 qui est vraiment à bout de souffle. La couche physique est tout simplement l'excellent bus CAN, avec tous les avantages cités au-dessus, adapté aux échanges des équipements nautiques. Il bénéficie du travail énorme fait pour l'industrie automobile et des composants déjà largement diffusés à bas prix.
Nous adopterons toutefois sans complexe la terminologie "bus NMEA 2000", cela englobant aussi le support physique, il n'est pas utile de faire ressortir ces détails subtils pour l'utilisateur.
En NMEA 183 le débit était de 4800 bauds, en CAN il est question de Méga baud, soit un facteur d'accélération de 200 à la vitesse maximale. En marine, il n'est pas utile d'exploiter la vitesse maximale.
Ce
bus a de multiples autres avantages. Des champs d'identification et de données
étant prévus dans le protocole CAN part B, l'adaptation à la marine n'a été
qu'un problème de définitions de formats d'adresses et de données, le transport
et toutes les couches matérielles et logicielles étant déjà parfaitement gérés.
Il est P&P, Plug & Play signifiant que les périphériques peuvent être
branchés ou débranchés au vol en étant identifiés par le système.
Il accepte 50 périphériques comportant chacun 254 adresses ce qui est énorme.
Il utilise la paire différentielle CAN, choisie pour son insensibilité aux
parasites, permettant de longs câblages en milieux perturbés.
Il
est maintenant impératif de n'investir que dans de nouveaux matériels compatibles
2000 pour préserver l'avenir, quitte à rajouter un pont pour rétablir la communication
avec les vieux matériels en 183.
Les matériels incompatibles NMEA 2000 doivent être oubliés maintenant.
Je consacrerai ultérieurement des pages sur des applications à microcontrôleurs
qui exploiteront une petite partie des possibilités considérables de ce bus.
L'exploitation du bus par le plaisancier
Cela ne peut pas être plus simple, il y a deux paires, une pour les données, une pour l'alimentation. Chaque appareil se relie en guirlande au plus proche par une bretelle à 4 fils, dans un ordre quelconque et c'est fini pour vous. Les prises évitent de se tromper dans le sens. Le logiciel fait tout le travail et un nouvel appareil est immédiatement vu et exploité par tous les autres.
Appareils à forte consommation
La liaison assure aussi l'alimentation, mais évidemment pour les consommateurs importants comme le moteur et l'embrayage du pilote automatique, ou pire, guindeau et propulseur d'étrave, une ligne de puissance classique sera indispensable. La ligne d'alimentation CAN en fil fin ne peut pas véhiculer de la très grosse puissance.
Comment se présente le bus NMEA 2000
Les instruments basiques vont se retrouver en guirlande comme avec le vieux 183.
Les habituels
° Speedomètre, girouette, sondeur.
° Le pilote automatique et en particulier le compas du pilote.
°
Le traceur GPS et à l’avenir plusieurs GPS, car la position décalée
des antennes et l’augmentation de la précision donnera un bon vecteur
vitesse temps réel.
Pour le moment, le calcul de la direction ne peut être fait que d’après
la position dans le passé, c’est impossible par le GPSsi le bateau ne
se déplace pas, mais il y a toujours le fluxgate et pour les gros bateaux,
le gyrocompas. Le radar a besoin de toutes ces informations car les modèles
récents ont un affichage multiple, toutes les sources pouvant être incrustées.
Dans le cas d’un radar avec un deuxième affichage déporté, un câble
spécifique sera nécessaire, il ne serait pas astucieux de faire passer le
flux vidéo par le bus bien que ce soit possible, mais ce serait le charger
inutilement.
Les nouveaux
De nouveaux venus vont se raccrocher sur le bus, par exemple :
° Le guindeau qui sera commandé aussi du cockpit et de la télécommande radio avec l’affichage de la longueur de chaîne.
° Le propulseur d'étrave.
° Tous les enrouleurs et winches électriques.
°
Le moteur diesel, et c’est une vraie nouveauté ! Les constructeurs proposent
un boîtier qui sera relié au bus (voir liens. Il devient alors possible de
rajouter une quantité de fonctions. Sur un instrument moteur unique, tout
peut être affiché. Par défaut, ce sera évidement le compte-tours, ce qui est
suffisant si tout va bien. Il est possible d’afficher sur demande tous
les paramètres subtils pour les curieux et prévenir les pannes. Je ne donnerai
que quelques exemples, il y en a d’autres :
Consommation gazole, moyenne, instantanée. Pressions et températures en tous
les points du moteur, sur l’huile, l’eau (douce et salée), l’échappement,
l’injection… Il y aura de quoi jouer au clavier pendant les longues
heures au moteur dans la calmasse.
Évidemment, toutes les commandes peuvent être motorisées, dont l’inverseur,
et tout peut être commandé au joystick ou avec un boîtier portable.
Cela est extrêmement pratique sur les gros bateaux à moteur et catamarans,
car le skipper peut se déplacer pour mieux voir en particulier lors des accostages
délicats, et la commande des deux moteurs et des propulseurs annexes peut
être groupée permettant au bateau de tourner sur place ou de se déplacer vectoriellement
dans une direction quelconque ou rester en position fixe avec vent et courant,
grâce au GPS couplé à l’ordinateur de pilotage.
° Les accessoires : Tout le tableau électrique peut-être renvoyé sur un instrument multifonctions, permettant à la table à carte et au cockpit de tout commander comme les feux de navigation et de voir tous les courants des consommateurs et des éléments de charge, les énergies des batteries…
Par implantation d'un bus, il faut comprendre deux choses.
L'implantation physique
L'implantation physique qui est très simple, il suffit de câbler un composant d'interface ou le bon microcontrôleur et relier les quatre fils (en incluant les alimentations). Ces produits adaptés au marché automobile sont courants et très économiques. Mais la situation se complique beaucoup quand il faut passer à la couche logicielle.
Le très bon Philips P8xC592
Autant l'exploitation du NMEA 183, constitué de messages texte en série et très lents était enfantine, autant l'implantation d'un noyau CAN/NMEA 2000 sera complexe. Les possibilités étonnantes de ce bus obligent à gérer des quantités de registres aux paramètres subtils pour implanter des protocoles puissants et complexes. Un développement sur ce bus est hors de portée du débutant mais se révèle passionnant pour les familiers des microcontrôleurs. Des bibliothèques et boîtes à outils de composants logiciels permettent de simplifier le développement.
Pour l'utilisateur lambda, il est inutile de rentrer dans les considérations pointues sur ces bus complexes, cette page donnera un vernis suffisant pour avoir la culture générale nécessaire et comprendre les principes de bases. Il suffit d'avoir une vue générale, comprendre le pourquoi des deux paires et savoir que le choix se son NMEA 2000 pour le bateau ou du CAN pour la voiture a été le meilleur possible.
Les
constructeurs réagissent très lentement, l’implantation du NMEA 2000
est très laborieuse, mais c’est la voie incontournable pour l’équipement
des bateaux modernes.
Il ne faudra donc plus investir dans du matériel électronique incompatible
qui serait vite frappé d’obsolescence.
Ce
chapitre est commun aux pages NMEA 2000 et NMEA 183.
Le problème est que nous sommes dans une phase pénible de transition, en l’an
2002 le NMEA 183 est terminé mais la relève n’est pas encore assurée
par le NMEA 2000, les constructeurs jouant sur la frilosité des clients. La
situation s’améliorera peu a peu, mais, en attendant, il est donc très
difficile aujourd’hui de choisir un matériel qui sera valable demain.
Il
existe un problème spécifique pour les GPS. Tous les anciens modèles étaient
compatibles NMEA 138 et RS 232, le passage de l’un à l’autre étant
simple par logiciel car les deux sont très proches. Ils pouvaient donc être
exploités sur un bus NMEA 183, et sur un PC portable sans problème.
Aujourd’hui, ces deux standards ont disparu. Les fabricants sont dans
une situation difficile. Il faut impérativement une prise USB 1 pour les portables
et les palms, mais cela est rigoureusement incompatible avec le bus NMEA 2000
! Implanter les deux sorties coûte cher. Les modèles vendus en 2002 sont donc
totalement bâtards et provisoires.
Il n’existe pas encore de pont USB <>NMEA 2000. Ce problème sera
résolu sur la prochaine génération de GPS, le constructeur proposera alors
un câble de transition USB et un autre NMEA 2000, en gérant les deux standards.
** Pour toute demande de renseignement, merci de remplir le champ "Objet" de votre courriel. Tout courriel qui m' arrive "sans objet" est systématiquement détruit (nombre de spams trop important) **
Supportez ce site en effectuant un don avec paypal.Merci beaucoup pour votre don, et votre aide.