Brevet FR3114465A1 — publié le 20220325

L’invention concerne un procédé de gestion de l'émission de messages par des équipements (E1,E2,E3) connectés en parallèle à un bus multiplexé (B) d'un réseau de communication d’un véhicule caractérisé en ce qu’il comporte une étape de : - Emission d’un message périodique comprenant un premier identifiant de message, associé à une première priorité et des données de description d’un signal, Et en ce qu’il comprend en outre, en réponse, à un événement prédéfini correspondant à une modification dudit signal, une étape de : - Emission d’un message dit événementiel, comprenant un deuxième identifiant de message associé à une deuxième priorité et des données de mises à jour dudit signal, ladite deuxième priorité étant supérieure à ladite première priorité. Figure pour l’abrégé : Figure 1 Procédé et dispositif de gestion de l'émission de messages L'invention concerne les réseaux de communication, par exemple de type CAN (« Controller Area Network »), dans lesquels les messages sont transmis au moyen de bus multiplexés, et plus particulièrement la gestion de l'émission de tels messages par des équipements qui sont connectés en parallèle à de tels bus multiplexés. Arrière-plan technologique Les réseaux multiplexés sont des réseaux de communication numérique permettant à des équipements électriques ou des sous-ensembles d'équipement électriques de communiquer entre eux avec un nombre de fils réduit. Ces réseaux trouvent de nombreuses applications notamment dans le domaine automobile, ferroviaire, industriel, etc. L'invention s'adresse en particulier aux réseaux de type CAN (acronyme anglais de Controller Area Network), et concerne aussi bien les réseaux CAN HS (High Speed — Haute Vitesse) que CAN LS (Low Speed Fault Tolerant — à faible vitesse et tolérant les fautes). L’invention concerne également la version CAN FD et les futures versions dont CAN XL. Le protocole CAN est un protocole de communication série (c'est-à-dire qui transmet des informations après les avoir découpées en plusieurs morceaux de taille fixe) qui supporte des fonctions en temps réel. Le protocole CAN est utilisé par les différents nœuds d'un réseau pour communiquer. Une des caractéristiques des réseaux de type CAN est la possibilité offerte à tous les nœuds du réseau d'émettre des messages (ou trames) sur le réseau indépendamment des autres nœuds. Le protocole CAN ne présente pas de configuration maître-esclave permettant de synchroniser automatiquement les différents nœuds comme c'est le cas par exemple pour un protocole LIN (Local lnterconnect Network). Dans un réseau à bus multiplexé(s), par exemple de véhicule automobile, plusieurs équipements connectés en parallèle peuvent vouloir émettre sensiblement en même temps. Dans la situation précitée et en l'absence de règles d'émission les messages les moins prioritaires doivent attendre que les messages plus prioritaires qu'eux aient été transmis avant de pouvoir être transmis à leur tour. Il en résulte qu'il est impossible de définir (ou prévoir) la valeur maximale du temps de latence (ou temps d'attente) des messages au sein d'un équipement. On rappelle au besoin, que le temps de latence correspond au temps écoulé entre le moment où une application qui s'exécute dans un nœud demande l'émission d'une trame et le moment où cette trame est disponible sur le réseau. Pour améliorer la situation, il a été proposé dans le document FR2977106, de faire usage de trames périodiques et de trames événementielles. On rappelle qu'on entend par trame périodique, les informations envoyées périodiquement, à intervalles réguliers, sur le bus. Un exemple de trame périodique dans une application automobile peut être une information concernant la vitesse du véhicule. L'exécution d’un programme horaire permet d'échelonner les émissions de trames et d'éviter les collisions ce qui permet de garantir des temps de latence constants. On rappelle qu'on entend par trame événementielle une information envoyée à chaque fois que surgit un événement. Un exemple de trame événementielle dans une application automobile peut être la demande de mise en route de la climatisation. Cette solution ne donne pas entière satisfaction car elle n’est pas adaptée à la transmission de signaux critiques pour le fonctionnement du véhicule. Un objet de la présente invention est de proposer une solution pour améliorer l’émission des messages depuis un calculateur en permettant la prise en compte d’événements critiques sans surcharger le réseau de communication. A cet effet, l’invention a pour objet un procédé de gestion de l'émission de messages par des équipements connectés en parallèle à un bus multiplexé d'un réseau de communication d’un véhicule caractérisé en ce qu’il comporte une étape : - Emission d’un message périodique comprenant un premier identifiant de message, associé à une première priorité et des données de description d’un signal, Et en ce qu’il comprend en outre, en réponse, à un événement prédéfini correspondant à une modification dudit signal, une étape de : - Emission d’un message dit événementiel, comprenant un deuxième identifiant de message associé à une deuxième priorité et des données de mises à jour dudit signal, ladite deuxième priorité étant supérieure à ladite première priorité. L'invention propose un message d'événement multiplexé accéléré qui a une priorité relative élevée sur le réseau. L’invention est particulièrement adaptée pour transmettre des valeurs mises à jour de signaux déclenchés par des événements critiques. Les signaux assignés au message d'événement multiplexé accéléré peuvent provenir de différents messages mixtes d'origine. Cette solution permet : - d'améliorer le délai de transmission des valeurs de signal critiques grâce à une priorité CAN relativement élevée, - de réduire la charge de bus du réseau CAN en évitant de transmettre des signaux inchangés, - une flexibilité de multiplexage de signaux différents dans le même message d'événement. La solution proposée offre une garantie de qualité accrue des transmissions de signaux critiques en termes de délai et de flexibilité, en particulier pour les futurs réseaux CAN fortement chargés (avec des fonctions ADAS par exemple). L’invention permet une mise en œuvre légère : aucune modification matérielle et une modification logicielle partielle. L’invention permet aussi une configuration flexible de la criticité du flux en fonction des besoins fonctionnels et applicatifs. Avantageusement, le message évènementiel, succédant à un message périodique, est envoyé après la réception d’une confirmation de réception dudit message périodique. Avantageusement, le message évènementiel est multiplexé, de sorte qu’il comprend une pluralité de données de mise à jour de signaux différents. Avantageusement, le message événementiel comporte un index indiquant à quelle partie du signal décrit dans le message périodique s’applique les données de mise à jour dudit signal. L’invention concerne aussi un dispositif de gestion de l'émission de messages, comprenant une mémoire associée à au moins un processeur configuré pour la mise en œuvre des étapes du procédé selon l’invention. L’invention concerne aussi un véhicule comprenant le dispositif selon l’invention. Brève description des figures D’autres caractéristiques et avantages de l’invention ressortiront de la description des modes de réalisation non limitatifs de l’invention ci-après, en référence aux figures annexées, sur lesquelles : illustre schématiquement et fonctionnellement une partie d'un bus multiplexé auquel sont connectés en parallèle trois équipements munis chacun d'un dispositif de gestion selon l'invention, ; illustre schématiquement un premier exemple d’émission de messages selon un exemple de réalisation particulier de la présente invention ; illustre schématiquement un deuxième exemple d’émission de messages selon un exemple de réalisation particulier de la présente invention ; illustre schématiquement un troisième exemple d’émission de messages selon un exemple de réalisation particulier de la présente invention ; illustre schématiquement un premier exemple de message événementiel selon l’invention ; illustre schématiquement un deuxième exemple de message événementiel selon l’invention. On a schématiquement représenté sur la figure 1 un exemple de bus multiplexé B d'un réseau de communication auquel sont connectés en parallèle trois équipements Ei (i = 1 à 3) propres à transmettre des messages périodiques de niveaux de priorité différents ainsi qu'éventuellement des messages événementiels. Dans ce qui suit, on considère à titre d'exemple non limitatif que le réseau de communication est un réseau de type CAN d'un véhicule automobile, et que les équipements Ei sont des calculateurs équipés d'un contrôleur CRi. Mais, l'invention n'est limitée ni à ce type de réseau, ni à ce type d'équipement. Elle concerne en effet tout type de réseau de communication comprenant au moins un bus multiplexé, et tout type d'équipement capable de transmettre des messages de niveaux de priorité différents sur un bus multiplexé. L'invention propose de mettre en œuvre au sein du réseau de communication un procédé dédié à la gestion de l'émission de messages. Ce procédé vise à mieux répondre au besoin de transmission d’une valeur actualisée d’un signal, déclenchée par un événement critique. L’invention apporte une solution basée sur un message événementiel dit « accéléré ». Ce message événementiel accéléré a un identifiant (abrégé par ID) de message associé à une priorité élevée relative à des signaux associés à des événements critiques. Une fois qu'un événement critique est déclenché, la valeur mise à jour du signal associé sera envoyée dans ce message d'événement accéléré au lieu d'être envoyée par un message dont la priorité est faible et qui peut nécessiter l’attente d’un temps d'exclusion ou la périodicité suivante. Il permet d'économiser le temps de retard ou de retard d'exclusion généré par d'autres messages de priorité moyenne. De plus, au lieu d'envoyer le message entier avec plusieurs signaux inchangés, le message d'événement accéléré n'envoie que des données de mise à jour du signal. Dans la suite de la description, on décrit une convention pour les priorités dans laquelle : les valeur 1 et 2 sont qualifiées de priorités hautes, les valeurs 3 et 4 de priorités moyennes et la valeur 5 de priorité basse. L’invention peut évidemment fonctionner avec d’autres conventions comportant par plus ou moins de valeurs de priorité. Le procédé de gestion de l'émission de messages par des équipements Ei connectés en parallèle à un bus multiplexé B d'un réseau de communication d’un véhicule comporte une étape de : - Emission d’un message périodique comprenant un premier identifiant de message, associé à une première priorité et des données de description d’un signal, Et, en réponse, à un événement prédéfini correspondant à une modification dudit signal, une étape de : - Emission d’un message dit événementiel, comprenant un deuxième identifiant de message associé à une deuxième priorité et des données de mises à jour dudit signal, ladite deuxième priorité étant supérieure à ladite première priorité. Avantageusement, le message évènementiel, succédant à un message périodique, est envoyé après la réception d’une confirmation de réception dudit message périodique. Avantageusement, le message évènementiel est multiplexé, de sorte qu’il comprend une pluralité de données de mise à jour de signaux différents. Avantageusement, le message événementiel comporte un index indiquant à quelle partie du signal décrit dans le message périodique s’applique les données de mise à jour dudit signal. La figure 2 montre un premier exemple d’émission de messages. L’exemple comprend l’émission de messages périodiques (messages 5) transportant des données relatives à un signal A. On suppose que le signal A a une longueur (ou taille) de 4 bits. Son bit de début est situé au quatrième bit du troisième octet dans le message périodique 5 (5 est l'ID du message). Le message 5 a une charge utile de 8 octets. Dans cet exemple, on suppose que : juste après une demande de transmission d'une trame périodique de message 5, un événement critique déclenche une valeur actualisée du signal A. Le message événementiel accéléré est appelé et affecté d'un ID de message 2. Le message d'événementiel accéléré 2 portant la valeur actualisée du signal A demande à être transmis immédiatement. Afin d’éviter une inversion de l'ordre des différentes valeurs du signal A, le message 2 attend la confirmation de la transmission de la trame précédente du message 5. On peut noter que le message 2 n'a pas besoin d'attendre un temps d'exclusion (généralement nécessaire entre l’émission de deux messages de même priorité) puisqu'il a un autre ID de message. De plus, si des messages de priorité moyenne (par exemple 3 ou 4) doivent être transmis en même temps, le message 2 est transmis avant eux grâce à sa priorité supérieure. De plus, au lieu d'envoyer un message événementiel 5 avec une charge utile de 8 octets dans lesquels plus de 7 octets sont inchangés, le message 2 est envoyé uniquement avec des données de mise à jour du signal A. La figure 3 montre un deuxième exemple similaire au premier mais dans lequel l'événement critique n'est pas déclenché juste après une demande de transmission d'une trame périodique. Le message événementiel accéléré permet d’éviter le délai introduit par les messages de priorité moyenne (ici les messages 3 et 4), qui nécessitent une transmission en même temps, et évite d'envoyer l'ensemble du message périodique. Le message événementiel accéléré est un message événementiel multiplexé, ce qui signifie qu'il a un ID de message mais qu'il peut transporter des mises à jour de signaux de différents messages avec des ID de messages différents. La figure 4 montre un troisième exemple dans lequel, le message 6 est transmis périodiquement. Après une demande de transmission périodique, un événement critique déclenche une valeur actualisée du signal B. Cette valeur actualisée du signal B peut également être transmise dans le message 2 sans être retardée, ni par le temps d'exclusion, ni par d'autres messages de priorité moyenne. Le message multiplexé offre une flexibilité du système et évite l'attribution d'un ID de message pour chaque événement critique (ce qui permet d’éviter un problème de pénurie de l'ID de message). Selon une caractéristique de l’invention, le message est multiplexé. Selon un mode de réalisation, le message comprend un sous-champ dans la charge utile, utilisé pour indiquer l'ID du message d'origine ainsi que la position du signal concerné (l'index de Byte et l'index de bit) dans le message d'origine. Un exemple de ce sous-champ pour le réseau CAN 2.0 est illustré figure 5. Dans cet exemple, les données de mise à jour du signal A sont codées sur 4 bits et son premier bit est situé au 4ème bit du 3ème octet dans le message d'origine. Le sous-champ a besoin de 17 bits, qui peuvent être organisés en 4 octets comme dans cet exemple : - deux octets sont utilisés pour indiquer l'ID du message d'origine (Message 5), codé sur onze bits 501 et cinq bits réservés 502, - un octet est utilisé pour coder la position du signal dans le message, un index d’octet dans le message codé sur trois bits 503 et un index de bit dans l’octet codé sur trois bits 504 et deux bits réservés 505, - un octet est utilisé pour coder la valeur de mise à jour du signal, la valeur étant codée sur quatre bits 506, plus quatre bits réservés 507. La figure 6 montre un autre exemple de message (par exemple sur un réseau CAN FD) qui a un index de position d’octet plus long pouvant aller jusqu'à 64. Dans ce deuxième exemple, le message comporte cinq octets : - deux octets sont utilisés pour indiquer l'ID du message d'origine (Message 5), codé sur onze bits 601 et 5 bits réservés 602, - un octet est utilisé pour coder la position du signal dans le message, un index d’octet dans le message codé sur six bits 603 et deux bits réservés 604, - un octet est utilisé pour coder la position du signal dans l’octet, un index de bit dans l’octet codé sur trois bits 605 et cinq bits réservés 606, - un octet est utilisé pour coder la valeur de mise à jour du signal, la valeur étant codée sur quatre bits 607, plus quatre bits réservés 608. Pour un ECU de réception qui doit consommer les signaux transmis par un message d'événement multiplexé accéléré, deux points sont traités: - Réception du message multiplexé accéléré: Afin de comprendre le signal transmis, l'ECU de réception doit mettre en œuvre les mêmes sous-champs de l'ID de message original et de la position de signal concernée que l'ECU de transmission défini dans le catalogue de messagerie. - Garantie de l’ordre de réception et de la fraîcheur des valeurs de signal: Lorsque le message périodique et le message d'événement accéléré portent le même signal avec des valeurs différentes, il est important pour l'ECU de réception de savoir quelle est la valeur la plus fraîche du signal (la dernière valeur de signal reçue). L'ECU de réception peut utiliser une méthode d'interruption ou une méthode d'interrogation pour récupérer les messages reçus. Si l'ECU utilise une méthode d'interruption, le niveau applicatif reçoit une interruption lorsque l'ECU reçoit un nouveau message. Par conséquent, l'ordre de réception des valeurs de signal est naturellement garanti par l'ordre d'interruption et la valeur évidemment la plus fraîche est la dernière valeur reçue. Si l'ECU utilise une méthode d'interrogation, le niveau d'application vérifie les messages reçus dans le gestionnaire de protocole en fonction d'une tâche périodique interne. Au cours d'une période de tâche, il peut alors trouver deux messages, l'un périodique et l'autre événementiel, prenant le même signal avec deux valeurs différentes. L'ECU tient alors compte de la valeur du signal portée par le message événementiel accéléré. Considérons les deux cas suivants : - Si le message périodique est reçu avant le message d'événement accéléré, le message d'événement accéléré porte la valeur de signal la plus récente; - Si le message périodique est reçu après le message d'événement accéléré, il doit avoir la même valeur de signal que le message d'événement accéléré car c'est le message d'événement accéléré qui prend la valeur de signal mise à jour et le message périodique qui prend la copie de la valeur de signal mise à jour. Par conséquent, le niveau d'application doit tenir compte de la valeur du signal du message d'événement accéléré. L’invention propose un message d'événement multiplexé accéléré qui permet d'améliorer la transmission des valeurs de signal mises à jour déclenchées par des événements critiques en termes de délai et de flexibilité. Il pourrait être particulièrement attrayant pour garantir un délai de transmission court des signaux critiques liés à un événement dans un réseau CAN fortement chargé, voire surchargé (par exemple avec des fonctions ADAS accrues). Cette solution permet également de réduire la charge inutile de bus. Aucune modification matérielle n'est nécessaire Procédé de gestion de l'émission de messages par des équipements (Ei) connectés en parallèle à un bus multiplexé (B) d'un réseau de communication d’un véhicule caractérisé en ce qu’il comporte une étape de : - Emission d’un message périodique comprenant un premier identifiant de message, associé à une première priorité et des données de description d’un signal, Et en ce qu’il comprend en outre, en réponse, à un événement prédéfini correspondant à une modification dudit signal, une étape de : - Emission d’un message dit événementiel, comprenant un deuxième identifiant de message associé à une deuxième priorité et des données de mises à jour dudit signal, ladite deuxième priorité étant supérieure à ladite première priorité. Procédé de gestion de l'émission de messages selon la revendication précédente, caractérisé en ce que le message évènementiel, succédant à un message périodique, est envoyé après la réception d’une confirmation de réception dudit message périodique. Procédé de gestion de l'émission de messages selon l’une des revendications précédentes, caractérisé en ce que le message évènementiel est multiplexé, de sorte qu’il comprend une pluralité de données de mise à jour de signaux différents. Procédé de gestion de l'émission de messages selon la revendication précédente, caractérisé en ce que le message événementiel comporte un index indiquant à quelle partie du signal décrit dans le message périodique s’applique les données de mise à jour dudit signal. Dispositif de gestion de l'émission de messages, comprenant une mémoire associée à au moins un processeur configuré pour la mise en œuvre des étapes du procédé selon l’une quelconque des revendications 1 à 4. Véhicule comprenant le dispositif selon la revendication précédente.