FR 3097343 A1 20201218 FR 1906332 A 20190613 Description Titre de l'invention : Procédé de diagnostic d'une sortie d'un calculateur esclave avec l'autorisation d'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 Arca Network » en hIngue 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 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] En effet de tels calculateurs génériques diagnostiquent de façon systématique l'état 2 de 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 comportant une pluralité dc sortie dont au moins une est commandée par un calculateur maître, lesdits calculateurs étant embarqués dans un véhicule, ledit procédé comportant des étapes de : [0016] - Réception d'au moins une donnée, provenant du calculateur maître, indiquant si le diagnostic d'une sortie est autorisé, [0017] - Mémorisation de la donnée reçue, [0018] - Diagnostic périodique de ladite sortie uniquement si la donnée mémorisée indique que le diagnostic est autorisé pour ladite sortie, [0019] - si le diagnostic de la sortie détecte un défaut de ladite sortie alors l'émission, à des- tination du calculateur maître d'un code défaut. [0020] Avec l'invention le calculateur esclave détecte et signale uniquement les sorties qui ont reçues une autorisation de diagnostic par le calculateur maître. Les sorties non 3 commandées ne sont donc pas diagnostiquées. 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 du calculateur maître avec des codes défauts inutiles. [0021] 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'inhibition de ladite sortie. [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 concerne aussi 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 concerne aussi un véhicule caractérisé en ce qu'il comporte un cal- culateur selon l'invention. [0031] L'invention concerne aussi 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] [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 [fig.21 illustre schématiquement un calculateur,selon un exemple de réalisation par- ticulier de la présente invention ; [0035] [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 tnultiplexé 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. Le calculateur esclave 102 comporte une pluralité de sorties pouvant être commandées par le calculateur maître. [0041] [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 odomé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 ((le 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é 6 pour transmettre et recevoir des informations et/ou des données via le canal de communication 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] [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 esclave 102. [0053] Dans une première étape 301, le calculateur esclave 102 réceptionne au moins une donnée indiquant si le diagnostic d'une sortie est autorisé. Cette commande provient du calculateur maître 101. Il s'agit par exemple d'un bit (valant 0 ou 1) envoyé dans une trame dédiée ou inséré dans une trame contenant d'autres données. En pratique le calculateur maître envoie au calculateur esclave une autorisation pour chacune des sorties devant faire l'objet d'un diagnostic. [0054] Dans une deuxième étape 302, le calculateur esclave 102 mémorise la donnée reçue. [0055] Dans une troisième étape 303, le calculateur esclave diagnostique périodiquement la ou des sorties pour lesquels une donnée mémorisée indique que la sortie est autorisée à être diagnostiquée. Au lieu d'effectuer un diagnostic systématique de toutes ces sorties, le calculateur esclave ne diagnostic que les sorties pour lesquelles il a reçu une commande, autrement dit, celles qui sont associées à une fonction du véhicule. [0056] Dans une quatrième étape 304 si le diagnostic de la sortie détecte un défaut de ladite sortie alors le calculateur esclave 102 émet, à destination du calculateur maitre 101 un code défaut. 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. [0057] De cette façon, le calculateur esclave 102 n'émet plus de faux code défaut pour des sorties n'étant raccordés à des équipements du véhicule. [0058] Dans une cinquième étape 305, optionnelle, le calculateur esclave 102 inhibe la sortie pour laquelle un défaut a été détectée. 7 8 REVENDICATIONS[Revendication 1] Procédé de diagnostic d'un calculateur esclave (102,103) comportant une pluralité de sortie dont au moins unc est commandée par un calculateur maître (101), lesdits calculateurs étant embarqués dans un véhicule, ledit procédé comportant des étapes de : - Réception (301) d'au moins une donnée, provenant du calculateur maître (101), indiquant si le diagnostic d'une sortie est autorisé, - Mémorisation (302) dc la donnée reçue, - Diagnostic (303) périodique de ladite sortie uniquement si la donnée mémorisée indique que le diagnostic est autorisé pour ladite sortie, - si le diagnostic de la sortie détecte un défaut de ladite sortie alors l'émission (304), à destination du calculateur maitre (101) d'un code défaut. [Revendication 2] 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'inhibition (305) de ladite sortie. [Revendication 3] 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. [Revendication 4] 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. [Revendication 5] Calculateur (101) destiné à être embarqué dans un véhicule et à com- muniquer avec un calculateur esclave (102,103) caractérisé en ce qu'il est confieuré pour mettre en oeuvre le procédé selon l'une des revendications précédentes. [Revendication 6] Véhicule caractérisé en ce qu'il comporte un calculateur (101) selon la revendication précédente. [Revendication 7] Produit programme d'ordinateur comportant des instructions adaptées pour l'exécution des étapes du procédé selon l'une des revendications 1 à 4, lorsque le programme d'ordinateur est exécuté par au moins un processeur.