Le boîtier USB-MUX-DIAG est un produit de la gamme EXXOTEST. Ce boîtier permet de réaliser l’acquisition de données échangées sur des réseaux CAN HS/LS, ISO9141/LIN et/ou Diagnostic On CAN.
Le bus CAN (Controller Area Network) est un bus de terrain très répandu, notamment l'automobile, l'aéronautique et la marine. Il a été normalisé avec la norme ISO 11898. Il couvre les deux couches basses du modèle OSI (Physique et Liaison).
Il dispose notamment des liaisons suivantes :
Fiche : MUXDIAG.pdf
Il faut installer le pilote de périphérique (driver) de l’interface MUX-DIAG.
Remarque : l’installation automatique de périphérique n’est pas réalisée par le système
Exxotest MUX driver kit 2.6.6.exe
:On peut aussi vérifier avec les logiciels fournis :
Remarque : L’installation a été réalisée dans le dossier C:/Program Files/exxotest/USB Mux Driver/
.
Les interfaces MUX-DIAG sont fournies avec une bibliothèque de fonctions logicielles muxdll.dll
qui permet d’exploiter les différents réseaux :
L’interface physique USB-MUX-DIAG est modélisée par une structure CAN possédant notamment les champs suivants :
Le bus CAN n’utilisant pas d’adressage des noeuds, les trames CAN sont transmises en diffusion générale (broadcast) sur le réseau. Elles possèdent néanmoins un identifiant permettant de distinguer le contenu de chaque trame.
Il existe deux formats :
La structure d’une trame CAN est la suivante :
Pour le développeur, la trame sera “gérée” via une bibliothèque logicielle qui implémente un message CAN dont les champs importants sont :
La notion de message a été définie par le constructeur EXXOTEST sous la forme d’une structure tCanMsg
dans le fichier d’entête (header) refmux.h
:
À la connexion du bus CAN, l’application réalise :
Un thread (fil d'exécution) permet de dérouler une suite d'instructions en PARALLELE à l'intérieur d'un même processus. Un thread exécutera donc une fonction ou une méthode d'une classe. Il est considéré comme un "processus léger" car il partage le contexte du processus qui l'exécute et qui lui sera vu comme un "processus lourd". Le thread remplit la notion de tâche au sein d'une application en permettant la parallèlisation des traitements.
Pour respecter la norme NMEA2000 en vigueur sur ce type de système, les paramètres du bus CAN qui seront appliqués dans l’application sont :
Lire Bus CAN/NMEA 2000 avant de poursuivre.
Vous pouvez utiliser le logiciel ICDILight (écrit par la section BTS) pour capturer les messages CAN transitant sur le bus. Exécuter le programme d’installation setup.exe :
Puis effectuer une capture :
En cas de problème de capture ou de détection de l'interface, il vous faut déconnecter successivement les connecteurs SAE J1962 et USB puis les rebrancher. Si le problème persiste, il vous faudra ré-installer le pilote de périphérique (driver).