SAE J1939

Norme ouverte pour la mise en réseau et la communication dans le secteur des véhicules utilitaires

Know-how

La norme SAE J1939 est la norme ouverte relative à la mise en réseau et à la communication dans le secteur des véhicules utilitaires. L'application est principalement axée sur la mise en réseau de la chaîne cinématique.

La norme SAE J1939 se caractérise par l'utilisation de la technologie CAN pour la mise en réseau et la communication, ainsi que par une interopérabilité entre les différents constructeurs. Le protocole J1939 a été développé par la Society of Automotive Engineers (SAE) et fonctionne, au niveau de la couche physique, avec le protocole CAN haute vitesse conforme à la norme ISO 11898.

Cette page présente le protocole J1939 dans son ensemble. Vous trouverez des informations sur le protocole J1939 associé au CAN FD sur une page dédiée .

Caractéristiques

  • Utilise l'identifiant CAN étendu à 29 bits
  • Débits en bauds CAN normalisés de 250 kbits/s et 500 kbits/s.
  • Dispose d’un adressage point à point (adressage des nœuds) et d’un adressage global (adressage des messages)
  • Il est possible de transmettre jusqu’à 1 785 octets avec des messages multipackets
  • Contrôle d'accès au bus via la gestion du réseau propre
  • Messages normalisés pour la communication globale du véhicule
  • Permet la définition de messages spécifiques au constructeur
  • Définit sa propre interface de diagnostic

SAE J1939 et CAN

Le protocole SAE J1939 utilise le réseau CAN (Controller Area Network, normes ISO 11898-1 et ISO 11898-2) comme couche physique. Le protocole CAN joue un rôle majeur dans la mise en réseau des véhicules automobiles et constitue une méthode couramment utilisée pour la communication série binaire entre les unités de commande électroniques (ECU). Parmi les ECU les plus courantes, on peut citer : celles du moteur, de la transmission et des freins, ainsi que celles du tableau de bord et des portières.

Consortium and other Specifications

Il existe un certain nombre de normes dérivées de la norme SAE J1939. Ces normes s'appuient sur la description de base de la norme J1939 et ne diffèrent souvent que par la définition des données et, le cas échéant, par des adaptations de la couche physique.

ISO 11783 – Tracteurs et machines agricoles et forestières – Commande et communication en série

Cette norme définit la communication au sein des véhicules utilisés dans le secteur agricole. Plus précisément, elle porte sur la communication entre le tracteur et les équipements auxiliaires, appelés « outils ». La norme ISO 11783 spécifie des services au niveau de la couche application, par exemple le contrôle des équipements auxiliaires via un terminal virtuel. Les équipements auxiliaires fournissent eux-mêmes tous les éléments graphiques nécessaires à leur contrôle, que le terminal virtuel peut afficher. Les autres composants d'application sont les suivants : l'ECU du tracteur, le contrôleur de tâches, le serveur de fichiers et le contrôle de séquence. La norme ISO 11783 comporte une extension du protocole multipacket défini pour la norme SAE J1939. Le mécanisme « Working Set » est également appliqué.

NMEA 2000® – Mise en réseau par liaison série des appareils électroniques maritimes

Définit la communication entre les calculateurs embarqués (ECU) des véhicules dans le milieu maritime. Une extension du protocole multipacket – appelée « protocole Fast Packet » – est également utilisée dans ce contexte.

ISO 11992 – Échange d'informations numériques entre le véhicule tracteur et le véhicule remorqué

Spécifie l'échange de messages entre le véhicule tracteur et le véhicule remorqué. La norme ISO 11992 repose sur le format de message de la norme J1939, mais utilise une configuration différente de la couche physique, à savoir un débit de seulement 125 kbits/s.

FMS – Système de gestion de flotte

La norme FMS définit une passerelle entre un réseau J1939 et le FMS.

Structure du document J1939

La spécification J1939 complète est subdivisée en divers documents et chapitres. Tous ces documents peuvent être téléchargés individuellement ou sous forme d'ensembles pré-constitués depuis le site web de la SAE : www.sae.org.

Les chapitres individuels de la spécification J1939 sont payants ; en d'autres termes, ils ne sont pas accessibles gratuitement. Ces chapitres sont structurés de manière systématique et s'inspirent librement du modèle de référence ISO/OSI. Ils ne s'en inspirent que librement, car la structure documentaire de la norme J1939 comporte un chapitre 8 qui n'est pas défini dans le modèle OSI.

Le tableau ci-contre répertorie les chapitres et documents actuellement disponibles.

Couche physique

Comparaison des spécifications J1939-11/14/15

Le protocole SAE J1939 utilise le réseau CAN (Controller Area Network, normes ISO 11898-1 et ISO 11898-2) comme couche physique.


ParamètreJ1939-11J1939-15J1939-14
Câble à paires torsadéesBlindéNon blindéBlindé ou non blindé
Débit binaire250 kbit/s250 kbit/s500 kbit/s
Nombre d'ECU301030
Longueur du busMax. : 40 mMax. : 40 mMax. : 40,0 m – 56,4 m
Distance entre les unités de contrôle électronique (ECU)Min. : 0,1 m | Max. : 40 mMin. : 0,1 m | Max. : 40 mMin. : 0,3 m | Max. : 40,0 m – 56,4 m
Longueur du tronçonMax. : 1 mMax. : 3 mMax. : 1,67 m

Longueur du raccord de diagnostic

Max. : 0,66 m + 5 mMax. : 2,66 m + 5 mMax. : 1,67 m + 5 m

Groupe de paramètres

Le document J1939-21 définit le schéma selon lequel l'identifiant CAN de 29 bits doit être interprété. À l'instar du champ de données de 8 octets d'un message CAN, dans lequel différents signaux sont définis par un bit de départ et une longueur, l'identifiant CAN est subdivisé en différents segments pour un groupe de paramètres. De ce fait, seule une partie de l’identificateur représente le PGN lui-même, le reste étant interprété comme l’adresse source, l’adresse de destination, la priorité et la page de données (DP).

Sections PGN

Les deux bits « Page de données » (DP) et « Page de données étendue » (EDP) font également partie du PGN et sont pris en compte en tant que deux bits les plus significatifs. Par conséquent, la plage numérique est répartie sur quatre pages PGN, mais seules trois d’entre elles sont utilisées pour la norme J1939.

Les définitions de pages de données suivantes sont disponibles :

Page de données étendue (EDP)Page de données (DP)Description
00SAE J1939 et ISO 11783
01SAE J1939 NMEA 2000®
10SAE J1939 – réservé –
11ISO 11992 Diagnostics (Important : pas de configuration J1939 !)

Transport Protocol

Les messages dont la longueur dépasse 8 octets sont trop volumineux pour tenir dans une seule trame de données CAN. Ils doivent donc être divisés par l'émetteur en paquets individuels, qui peuvent ensuite être envoyés chacun dans un message CAN distinct. Le récepteur doit réassembler les fragments individuels dans leur ordre d'origine. Un ensemble de règles est défini à cet effet dans la norme J1939 : ce que l'on appelle un protocole de transport.

Deux protocoles de transport sont définis en fonction des types de communication.

Communication spécifique à la diffusion de pair à pair – Transfert de données en mode connecté (RTS/CTS)

Avec ce protocole, l'expéditeur établit une connexion avec le destinataire. Le destinataire a la possibilité de contrôler et d'influencer la gestion du flux des paquets de données individuels. Tant le destinataire que l'expéditeur peuvent interrompre la connexion (par exemple en cas d'erreurs).

Le protocole de transfert de données en mode connexion n’est soumis à aucune limitation de temps. Tous les nœuds échangent potentiellement leurs données entre eux à leur vitesse maximale possible.

Communication globale – Message d'annonce diffusé (BAM)

Seul l'expéditeur gère le contrôle de flux. Le message est toujours envoyé à tous les nœuds. Un destinataire ne peut pas intervenir dans la communication. Si le destinataire ne reçoit pas un message, il ne peut pas le signaler. Le destinataire doit attendre un nouveau message, si nécessaire.

Étant donné que le destinataire n’est pas en mesure d’influencer le contrôle de flux dans le protocole BAM, l’expéditeur doit respecter un intervalle minimal entre les différents paquets. Celui-ci est compris entre 10 et 200 ms. Cela permet aux nœuds du réseau éventuellement lents de suivre la communication.

Diagnostics

L'interface de diagnostic J1939 définit un connecteur de diagnostic standard ainsi qu'un ensemble de PGN destinés à la gestion de différents services de diagnostic. Les PGN désignés comme « messages de diagnostic » (DM) couvrent en grande partie le Scope des fonctions du système de diagnostic UDS (Unified Diagnostic Service). Ils sont également conformes aux directives de l’UE et au « California Code of Regulation » relatif aux systèmes de diagnostic embarqués (OBD II), ainsi qu’aux normes HD OBD (Heavy Duty OBD) et WWH (World Wide Harmonized) OBD (ISO 27145).

Contrairement au diagnostic UDS, dans lequel les services doivent être lancés activement via un outil logiciel, les calculateurs J1939 envoient également des messages de diagnostic de manière autonome pendant le fonctionnement normal. Les erreurs qui surviennent sont évaluées directement au sein du réseau et affichées visuellement, si nécessaire. Parallèlement, les erreurs peuvent être lues à l’aide d’un outil via le connecteur de diagnostic. Des codes d’erreur uniformes – appelés « Diagnostic Trouble Codes » (DTC) – contiennent le SPN défectueux, le profil de l’erreur et la fréquence d’apparition de celle-ci.

Code d'anomalie (DTC)

Un code d'anomalie (DTC, Diagnostic Trouble Code) signale une anomalie au sein du système. Il correspond principalement à un point de surveillance (SPN) dont l'état actuel est anormal. Cela peut avoir différentes causes. Un indicateur précisant la raison de cet état permet d'essayer de cerner la cause réelle de l'erreur. Un code d'anomalie présente une structure uniforme et se compose des éléments suivants :

  • Numéro de paramètre suspect (SPN)
    Représente le SPN présentant une erreur. Chaque SPN défini peut être utilisé dans un code DTC.
  • Identifiant du mode de défaillance (FMI)
    Désigne la nature et le type d’erreur survenue, par exemple : dépassement de la plage de valeurs (trop haute ou trop basse), courts-circuits au niveau des capteurs, fréquence de mise à jour incorrecte, erreur d’étalonnage.
  • Compteur d'occurrences (OC)
    Compteur qui comptabilise le nombre d’occurrences de la condition d’erreur pour chaque SPN et conserve cette information même lorsque l’erreur n’est plus active.
  • Méthode de conversion SPN (CM)
    Définit l’alignement des octets au sein du DTC. La valeur « 0 » correspond à la méthode illustrée dans le graphique « Structure d’un DTC ». Si CM prend la valeur « 1 », il convient de distinguer trois méthodes précédemment valides ; cette distinction doit être connue du système.

sûreté de fonctionnement

La norme SAE J1939 prévoit deux approches différentes pour le transfert de données critiques pour la sécurité. L'une d'elles est la norme SAE J1939-76, qui décrit un processus général permettant de protéger un groupe de paramètres donné. L'autre repose sur des groupes de paramètres normalisés définis par la norme SAE J1939, dotés d'une somme de contrôle et d'un compteur intégrés.

SAE J1939-76 – Message d'en-tête dédié à la sécurité avec somme de contrôle et compteur de séquence

La norme SAE J1939-76 (Protocole de communication pour la sûreté de fonctionnement SAE J1939) décrit une extension de la norme J1939 destinée au transfert de données critiques pour la sûreté de fonctionnement. Cela s’effectue grâce à l’envoi d’un message supplémentaire (message d’en-tête de sécurité, ou SHM) précédant le message contenant les données critiques (message de données de sécurité, ou SDM), le SHM et le SDM formant ensemble un groupe de données de sécurité (SDG).

  • Le SHM contient les informations suivantes :
  • un compteur de séquence (de 5 bits pour chaque SDG)
  • l’identifiant CAN inversé du SDM (sans priorité, 26 bits)
  • le CRC des données du SDM (32 bits)

Calendrier

L'expéditeur (producteur) génère les fichiers SHM et SDM et les envoie dans l'ordre approprié et dans le respect des délais. Le destinataire (consommateur) est chargé de vérifier l'ordre, le respect des délais ainsi que l'intégrité des données transférées.

Les délais suivants doivent être respectés pour le transfert du SDG :

  • SRVT : délai de validation lié à la sécurité (intervalle entre un SHM et un SDM)

  • SCT : temps de cycle de sécurité (intervalle entre deux instances successives de SDM)

La base temporelle permettant de déterminer les valeurs maximales admissibles de SRVT et de SCT est dérivée de la durée du cycle (débit de transmission) du PG SAE J1939 correspondant, qui doit être transféré en tant que SDM.

La détermination des valeurs maximales de SCT et de SRVT est définie comme suit :

Base de synchronisation SDGSCT maximalSRVTmaximal
≤ 200 ms150 % de la base de temps50 % de la base de temps
> 200 msBase de temps plus 100 ms100 ms

Limites

Un SDM ne doit pas dépasser 8 octets. Cela évite d'avoir recours à un protocole de transport pour transmettre le message. De plus, le SDM doit être envoyé soit à une fréquence fixe, soit à une fréquence variable. Un exemple de fréquence variable serait toutes les 100 ms et à chaque fois qu'une modification est effectuée, sans toutefois dépasser 20 ms.

Annexe numérique de la norme SAE J1939 – Messages avec somme de contrôle et compteur intégrés

L'annexe numérique J1939 définit des sommes de contrôle pour plus de 200 messages ainsi que des compteurs de messages permettant de détecter les conditions de défaillance des calculateurs concernés. Le compteur de messages et la somme de contrôle font partie des données utiles d'un paquet de données (PG). Le compteur de messages est incrémenté d’une unité à chaque transfert de message. La somme de contrôle étant calculée à partir des données utiles, elle varie également à la suite de chaque transfert correct, que d’autres signaux aient changé ou non. Toutefois, si le compteur de messages n’est pas incrémenté lors d’un transfert suivant ou si la somme de contrôle ne correspond pas aux données utiles, le destinataire peut en déduire que l’expéditeur se trouve dans un état d’erreur.

  • Sommes de contrôle
    L’annexe numérique décrit cinq règles de calcul différentes pour les sommes de contrôle, dont deux reposent sur un calcul CRC (Cyclic Redundancy Check) classique d’une longueur de 8 bits. Les trois autres calculs utilisent de simples additions, des décalages de bits et des masques de bits.
  • Compteur de messages
    L’annexe numérique spécifie six positions possibles au sein du message pour le compteur de messages.

Le graphique suivant présente, à titre d’exemple, les combinaisons et emplacements courants des sommes de contrôle et des compteurs de messages, ainsi que les noms des messages qui utilisent cette combinaison. Pour faciliter la compréhension, les cinq règles de calcul sont identifiées par une lettre majuscule (de A à E).

Règles de calcul définies

Non seulement la position dans le message varie considérablement dans certains cas, mais la formule de calcul des sommes de contrôle varie également. En substance, cinq règles sont utilisées.

1) Les deux premières règles utilisent un CRC d'une longueur de 8 bits.

2) Les trois autres reposent sur des opérations de décalage de bits et des masques de bits. Ces règles sont en vigueur depuis un certain temps déjà et s'appliquent, par exemple, aux groupes de paramètres TSC1 (PGN 0) et XBR (PGN 1024).

Affiche J1939

Le savoir-faire en un coup d'œil

N'hésitez pas à commander gratuitement l'une ou les deux affiches de référence sur le protocole J1939. Elles vous offrent toutes deux un aperçu rapide des principes fondamentaux les plus importants du protocole J1939. Deux fiches de référence au format DIN A1 (841 mm x 594 mm) à votre disposition.

L'affiche n° 1 contient :

  • Présentation générale
  • Documents de spécification
  • Couche physique
  • Identifiant CAN et structure PGN
  • Structure des trames CAN
  • Protocoles de transport

L'affiche n° 2 traite de :

  • Gestion du réseau
  • Diagnostics
  • sûreté de fonctionnement
  • Requête/Réponse
  • Groupes de paramètres propriétaires
  • Plages de signaux (J1939-71)

Vector - Le spécialiste du J1939

Vector est membre des comités SAE J1939 et participe régulièrement aux ateliers. Grâce à l'expertise de Vector et à ses nombreuses années d'expérience dans l'environnement J1939, vous bénéficiez de produits et de services hautement performants qui vous permettent de résoudre vos problèmes complexes de manière plus efficace, plus rapide et plus économique.

Grâce à une chaîne d'outils complète pour tous les projets J1939, Vector dispose de la solution qui vous convient :

  • des outils logiciels parfaitement adaptés
  • des composants logiciels embarqués sur mesure
  • des services et des formations personnalisés, spécialement conçus pour répondre à vos besoins

Outils vectoriels

Les produits Vector suivants vous accompagnent dans vos projets J1939 :

Outils

Simulation, test et développement de systèmes J1939 :

  • Création d’environnements de simulation (simulation du reste du bus) pour les systèmes J1939
  • Environnement d'exécution pour la simulation
  • Tests de fin de bande

CANoe.J1939

Analyse des systèmes J1939 :

  • Analyse et logging du trafic de données sur les réseaux J1939
  • Simulation de séquences de messages
  • Lecture des séquences de messages enregistrées (replay)

CANalyzer.J1939

Logiciel embarqué basé sur la plateforme AUTOSAR Classic avec support étendu de la norme J1939

MICROSAR Classic

Conception de systèmes E/E basée sur des modèles, conforme aux normes SAE J1939 et ISOBUS 11783 :

  • Importation et exportation de conceptions J1939 via DBC et AUTOSAR
  • Multiplexage étendu pour CAN
  • Modélisation des applications de contrôleur
  • Conception de réseaux logiciels et matériels conformes à la norme AUTOSAR
PREEvision

Interface de programmation permettant d’accéder aux réseaux CAN, J1939, ISO 15765 et J1708/J1587

RP1210 API

Logiciel pilote pour DIAdem: soutient le protocole J1939 ainsi que les normes NMEA2000 et ISOBUS (ISO 11783)

Option vMeasure pour DIAdem

Outil de diagnostic — rapide et particulièrement simple d’utilisation — pour des calculateurs individuels ou l’ensemble du véhicule

Indigo

Formations SAE J1939 dispensées par Vector Academy

Cours J1939

Formation en ligne J1939