Brevet FR3097344A1 — publié le 20201218

Description Titre de l'invention : Procédé de diagnostic d'un calculateur esclave communiquant avec un calculateur maître Domaine technique [0001] L'invention concerne le diagnostic d'un calculateur en particulier d'un calculateur esclave communiquant avec un calculateur maître Arrière-plan technologique [0002] Les véhicules contemporains embarquent nombre de calculateurs assurant chacun une ou plusieurs fonctions, telles que par exemple la gestion de l'aide à la conduite, de l'antipatinage, de la répartition électronique du freinage ou encore la commande d'actionneurs pour assurer le fonctionnement optimal d'un moteur à combustion. Ces calculateurs sont aussi appelés UCE (« Unité de Commande Electronique » ou en anglais ECU « Electronic Control Unit »). [0003] Certaines architectures électriques, embarquant ces calculateurs, comportent des cal- culateurs esclaves déportés d'un calculateur maitre. Un calculateur désigné « calculateur maître » est configuré pour commander au moins un calculateur embarqué désigné « calculateur esclave ». Pour ce faire, le calculateur maître communique avec le calculateur esclave via un réseau de communication locale désigné réseau multiplexé, par exemple un réseau de type CAN, signifiant « Controller Area Network » en langue anglaise et décrivant une voie de communication unique reliée en série à une pluralité d'unités de communication. [0004] On comprend que la complexité croissante des fonctions électroniques embarquées entraîne une multiplication des boîtiers électroniques (ou calculateurs) montés sur les véhicules automobiles Afin de limiter la diversité qui en résulte, il a été décidé d'utiliser des calculateurs esclaves dits génériques. Ces calculateurs esclaves génériques sont identiques (du point du matériel mais également du point du point du logiciel) quel que soit le nombre de fonction dont ils ont la charge. [0005] Pour faciliter la maintenance et le diagnostic des véhicules, chacun de ces cal- culateurs comporte généralement un autodiagnostic (capacité du système à surveiller et détecter ses propres défaillances). [0006] Pour cela, chaque calculateur enregistre au moment de la détection d'une anomalie, un code de défaut. [0007] En réponse à une requête de diagnostic, le calculateur retourne une réponse indiquant le ou les codes défauts enregistré(s). [0008] Un problème se pose lors du diagnostic des calculateurs esclaves dits génériques. [0009] Ainsi de tels calculateurs génériques diagnostiquent de façon systématique l'état de 2 l'ensemble de leur sortie de pilotages. Ces calculateurs génériques ne sont pas spécialisés pour une fonction. Ainsi, pour activer une sortie donnée, ces calculateurs esclaves traitent à travers un réseau de communication une information liée à une requête spécifique ordonnant le pilotage d'un signal électrique donné. [0010] Les calculateurs esclaves génériques ne connaissent pas la configuration fonc- tionnelle du véhicule sur lesquels ils sont déployés. Le calculateur esclave renvoi systématiquement l'état diagnostiqué de ses sorties au calculateur maitre, y compris si ces sorties ne sont connectées à aucune fonction du véhicule. [0011] De ce fait, si une fonction n'est pas connectée à un boitier esclave sur un véhicule donné, le l'altier esclave transmet quand même des défaillances qui provoque la génération de faux codes défauts. [0012] Ainsi, l'absence de fonction sur un véhicule donné entraine la réalisation d'un diagnostic de défaillance par le calculateur esclave générique. Ce diagnostic génère la création de code défaut dit de « faux défaut » car le véhicule donné ne présente pas de défaillance, il n'est simplement pas équipé de certaines fonctions. [0013] On connait par le document .11) un système dans lequel, un calculateur maître qui reçoit de calculateurs esclaves des codes défauts (anomalies détectées par les EC esclaves et codifiées) et qui stocke de manière horodaté ces codes défauts. Cependant rien n'est prévu pour gérer les faux défauts provenant du calculateur esclave. Résumé de l'invention [0014] Un objet de la présente invention est de proposer une solution pour améliorer la situation et en particulier éviter des diagnostics erronés liés à l'apparition de faux défaut dans une architecture comportant un calculateur maître et un calculateur esclave générique. [0015] Selon un premier aspect, l'invention concerne un procédé de diagnostic d'un cal- culateur esclave communiquant avec un calculateur maître, lesdits calculateur étant embarqués dans un véhicule, ledit procédé comportant des étapes de : [0016] - Réception d'un code défaut provenant du calculateur esclave, [0017] - Détermination si le code défaut reçu est associé à une fonction du véhicule, [0018] - Enregistrement en mémoire du code défaut seulement si le code défaut est associé à une fonction du véhicule. [0019] Avec l'invention les faux défauts signalés par un calculateur esclave sont détecté et ignoré par le calculateur maître. Ceci permet de ne pas réaliser de diagnostic erroné basé sur ces faux défauts. Ceci permet aussi de ne pas encombrer la mémoire avec des codes défauts inutiles. Cette solution a aussi pour avantage de ne pas nécessiter de modifier le fonctionnement du calculateur esclave. [0020] Avantageusement, le calculateur maître comporte en mémoire une table indiquant 3 des codes défauts à mémoriser ou à filtrer, ladite table étant utilisée lors de l'étape de détermination si la code défaut reçu est associé à une fonction du véhicule. [0021] Avantageusement, le code défaut indiquant un défaut d'une sortie pilotée du cal- culateur esclave, le procédé de diagnostic d'un calculateur esclave communiquant avec un calculateur maître selon l'invention comporte en outre une étape d'émission d'une commande, à destination du calculateur esclave, d'inhibition de ladite sortie pilotée. [0022] Avantageusement, le procédé de diagnostic d'un calculateur esclave communiquant avec un calculateur maître selon l'invention comporte en outre une étape d'émission d'une alerte à destination du conducteur pour lui signaler la détection du défaut. [0023] Avantageusement, le code défaut correspond à l'un des défauts suivants : [0024] - Défaut de court-circuit à la masse, [0025] - Défaut de court-circuit à l'alimentation, [0026] - Défaut de circuit ouvert, [0027] - Défaut de sur échauffement en température, [0028] - Défaut de surtension. [0029] L'invention porte aussi sur un calculateur destiné à être embarqué dans un véhicule et à communiquer avec un calculateur esclave caractérisé en ce qu'il est configure pour mettre en oeuvre le procédé selon l'invention. [0030] L'invention porte aussi sur un véhicule caractérisé en ce qu'il comporte un cal- culateur selon l'invention. [0031] L'invention porte aussi sur un produit programme d'ordinateur comportant des ins- tructions adaptées pour l'exécution des étapes du procédé selon l'invention, lorsque le programme d'ordinateur est exécuté par au moins un processeur. Brève description des figures [0032] 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 : [0033] La fig. 1 illustre de façon schématique un réseau embarqué, selon un exemple de réa- lisation particulier de la présente invention ; [00341 La fig.2 illustre schématiquement un calculateur, selon un exemple de réalisation par- ticulier de la présente invention ; [0035] La fig. 3 illustre schématiquement un organigramme des différentes étapes d'un procédé de diagnostic d'un calculateur esclave communiquant avec un calculateur maître, selon un exemple de réalisation particulier de la présente invention. Description des modes de réalisation 100361 On a représenté sur la figure 1, un système électronique embarqué à bord d'un véhicule automobile, ce système étant désigné par la référence générale 1 sur ces figures. Un tel système comporte plusieurs calculateurs, également appelés ECU, désignés par les références générales 101 102, 103, et qui sont raccordés les uns aux autres par l'intermédiaire d'un réseau de transmission d'informations multiplexé, constitué par exemple par un bus multiplexé de transmission de données, désigné par la référence générale 104 sur cette figure. [0037] Dans un tel système, l'un des calculateurs est un calculateur maître, tandis que les autres calculateurs sont des calculateurs esclaves. C'est ainsi par exemple que dans le cas représenté sur la figure 1, le calculateur maître est le calculateur désigné par la référence générale 101, tandis que les autres calculateurs à savoir les calculateurs ECU 2 et 3, désignés par les références générales 2 et 3 respectivement, sont des calculateurs esclaves. [0038] A titre d'exemple, le calculateur maître 101 peut être une passerelle. Une passerelle est un module électronique organisé autour d'un microprocesseur, qui gère un certain nombre d'équipements électriques du véhicule automobile. Ce module, commande, par exemple, l'éclairage intérieur du véhicule, le verrouillage/déverrouillage des portes et du coffre, le fonctionnement des vitres et, le cas échéant, du toit ouvrant électrique, le cadencement des essuie-glace, les temporisations de certains équipements tel que, par exemple, le système d'alarme. Cc module gère éventuellement le dialogue entre le système anti-démarrage et le calculateur moteur du véhicule. [0039] Ce module assure aussi une fonction de passerelle entre une pluralité de réseau CAN, autrement dit, elle relie différents réseaux et permet de faire circuler des données entre ces réseaux. [0040] Toujours à titre d'exemple, le calculateur esclave 102 peut être un module élec- tronique IDB. Un module électronique IDB comporte une pluralité de moyens de commutation et de distribution électrique destinés commander des calculateurs supplémentaires assurant des prestations supplémentaires. Le module électronique IDB peut par exemple être utilisé pour ajouter une prise 12V ou une prise USB supplémentaires ou pour ajouter un éclairage d'ambiance ou encore pour alimenter en électricité et commander un système de chauffage de siège. [0041] La fig. 2 illustre schématiquement un calculateur 2, selon un exemple de réalisation particulier et non limitatif de la présente invention. Des exemples d'un tel calculateurs 2 comprennent, sans y être limités, un équipement électronique embarqué tel qu'un ordinateur de bord d'un véhicule, un calculateur électronique tel qu'une UCE. [0042] Les éléments du calculateur 2, individuellement ou en combinaison, peuvent être intégrés dans un unique circuit intégré, dans plusieurs circuits intégrés, et/ou dans des composants discrets. Le calculateur 2 peut être réalisé sous la forme de circuits électroniques ou de modules logiciels (ou informatiques) ou encore d'une combinaison de circuits électroniques et de modules logiciels. Selon différents modes de réalisation particuliers, le calculateur 2 est couplé en communication avec d'autres dispositifs ou systèmes similaires, par exemple par l'intermédiaire d'un bus de communication ou au travers de ports d'entrée! sortie dédiés. [0043] Le calculateur 2 comprend un (ou plusieurs) processeur(s) 20 configurés pour l'exécution des instructions du ou des logiciels embarqués dans le calculateur 2. Le processeur 20 peut inclure de la mémoire intégrée, une interface d'entrée/sortie, et différents circuits connus de l'homme du métier. Le calculateur 2 comprend en outre au moins une mémoire 21, correspondant par exemple à une mémoire volatile et/ou non volatile. [0044] La mémoire 21 comprend par exemple des paramètres associés à l'exécution du ou des logiciels embarqués. La mémoire 21 comprend en outre l'information représentative du résultat du test de conformité du calculateur, par exemple dans un registre déterminé. Selon une variante, le calculateur comprend une mémoire additionnelle pour le stockage de l'information représentative du résultat du test de conformité du calculateur. Le code informatique du ou des logiciels embarqués comprenant les instructions à charger et exécuter par le processeur est par exemple stocké sur la mémoire 21. [0045] Selon un mode de réalisation particulier et non limitatif, le calculateur 2 comprend un bloc 22 d'éléments d'interface pour communiquer avec des dispositifs externes, par exemple un outil de diagnostic, un serveur distant ou le « cloud », des capteurs odamétriques, un capteur GPS. Les éléments d'interface du bloc 22 comprennent une ou plusieurs des interfaces suivantes : [0046] - interface radiofréquence RF, par exemple de type Bluetooth® ou LTE ((le l'anglais « Long-Term Evolution » ou en français « Evolution à long terme »), LTEAdvanced (ou en français LTE-avancé) ; [0047] - interface USB (de l'anglais « Universal Serial Bus » ou « Bus Universel en Série » en français) ; [0048] - interface HDMI (de l'anglais « High Definition Multimedia Interface », ou Interface Multimedia Haute Definition » en français). [0049] Des données, par exemple l'information représentative du résultat du test de conformité, sont par exemples chargées vers le calculateur 2 via l'interface du bloc 22 en utilisant un réseau Wi-Fi® tel que selon IEEE 802.11 ou un réseau mobile tel qu'un réseau 4G (ou LTE Advanced selon 3GPP release 10- version 10) ou 5G. [0050] Selon un autre mode de réalisation particulier, le calculateur 2 comprend une interface de communication 23 qui permet d'établir une communication avec d'autres dispositifs (tels que d'autres calculateurs) via un canal de communication 230. L'interface de communication 23 correspond par exemple à un transmetteur configuré pour transmettre et recevoir des informations et/ou des données via le canal de commu- 6 nication 230. Le canal de communication 230 correspond par exemple à un réseau filaire de type CAN (de « Controller Arca Network » ou en français « Réseau de contrôleurs »). [0051] Selon une variante de réalisation particulière non représentée sur la figure 2, le cal- culateur 2 peut fournir des signaux de sortie à un ou plusieurs dispositifs externes, tels qu'un écran d'affichage, un ou des haut-parleurs et/ou d'autres périphériques (lecteur de DVD, un système de projection) via respectivement des interfaces de sortie adaptées. Il est ainsi possible selon cette variante de réalisation particulière d'interroger la mémoire du calculateur (par exemple via une interface homme-machine (IHM) pour déterminer la conformité ou non-conformité du calculateur en fonction de l'information représentative du résultat du test de conformité du calculateur). Selon une variante, l'un ou l'autre des dispositifs externes est intégré au calculateur 2. [0052] La fig. 3 illustre un organigramme des différentes étapes d'un procédé de diagnostic d'un calculateur esclave 102,103 communiquant avec un calculateur maître 101, selon un exemple de réalisation particulier et non limitatif de la présente invention. Le procédé est par exemple mis en oeuvre par le calculateur maître 101. [0053] Dans une première étape 301, le calculateur maitre 101 réceptionne un code défaut provenant du calculateur esclave. Il s'agit par exemple d'un code défaut correspondant à l'un des défauts suivants : défaut de court-circuit à la masse, défaut de court-circuit à l'alimentation, défaut de circuit ouvert, défaut de sur échauffement en température ou défaut de surtension. [0054] Dans une deuxième étape 302, le calculateur maitre 101 détermine si le code défaut reçu est associé à une fonction du véhicule. Pour ce faire, dans lequel, le calculateur maître 101 comporte par exemple une mémoire dans laquelle est stockée une table prédéterminée indiquant des codes défauts à mémoriser ou à filtrer. [0055] Dans une troisième étape 303, le calculateur maître enregistre en mémoire le code défaut seulement si le code défaut est associé à une fonction du véhicule. Si le code n'est pas associé à une fonction du véhicule, alors il est ignoré. Ainsi la mémoire n'est pas surchargée par des codes défauts non pertinents. [0056] Dans une quatrième étape 304, optionnelle, le calculateur maitre 101 commande l'émission d'une alerte à destination du conducteur pour lui signaler la détection du défaut. 7 [Revendication 1] [Revendication 2] [Revendication 3] [Revendication 4] [Revendication 5] [Revendication 6] REVENDICATIONSProcédé de diagnostic d'un calculateur esclave (102,103) communiquant avec un calculateur maître (101), lesdits calculateur étant embarqués dans un véhicule, ledit procédé comportant des étapes de : - Réception (301) d'un code défaut provenant du calculateur esclave, - Détermination (302) si le code défaut reçu est associé à une fonction du véhicule, - Enregistrement (303) en mémoire du code défaut seulement si le code défaut est associé à une fonction du véhicule. Procédé de diagnostic d'un calculateur esclave (102,103) communiquant avec un calculateur maître (101) selon la revendication 1, dans lequel, le calculateur maître (101) comporte en mémoire une table indiquant des codes défauts à mémoriser ou à filtrer, ladite table étant utilisée lors de l'étape de détermination (302) si la code défaut reçu est associé à une fonction du véhicule. Procédé de diagnostic d'un calculateur esclave (102,103) communiquant avec un calculateur maître (101) selon l'une des revendications précédentes, le code défaut indiquant un défaut d'une sortie pilotée du calculateur esclave, comportant en outre une étape d'émission (304) d'une commande, à destination du calculateur esclave, d'inhibition de ladite sortie pilotée. Procédé de diagnostic d'un calculateur esclave (102,103) communiquant avec un calculateur maître (101) selon l'une des revendications précédentes, comportant en outre une étape d'émission (304) d'une alerte à destination du conducteur pour lui signaler la détection du défaut. Procédé de diagnostic d'un calculateur esclave (102,103) communiquant avec un calculateur maître (101) selon l'une des revendications précédentes, dans lequel, le code défaut correspond à l'un des défauts suivants : - Défaut de court-circuit. à la masse, - Défaut de court-circuit. à l'alimentation, - Défaut de circuit. ouvert, - Défaut de sur échauffement en température, - Défaut de surtension. Calculateur (101) destiné à être embarqué dans un véhicule et à communiquer avec un calculateur esclave (102,103) caractérisé en ce qu'il est configuré pour mettre en oeuvre le procédé selon l'une des reven- 8 [Revendication 7] [Revendication 8] dications précédentes. Véhicule caractérisé en ce qu'il comporte un calculateur (101) selon la revendication précédente. Produit programme d'ordinateur comportant des instructions adaptées pour l'exécution des étapes du procédé selon rune des revendications 1 à 5, lorsque le programme d'ordinateur est exécuté par au moins un processeur.