Brevet FR2834360A1 — publié le 20030704

barrette de maintien (3). PROCEDE ET INSTALLATION DE MISE A JOUR D' UN LOG1CIEL DE CALCULATEUR EMBARQUE DANS UN VEHICULE AUTOMOBILE. L' invention est relative à un procédé de mise à jour du logiciel d'au moins un calculateur embarqué dans un véhicule automobile. Les véhicules automobiles, aussi bien véhicules légers que véhicules lourds, sont équipés de plus en plus de calculateurs, avec logiciels, dédiés à la gestion d'une partie ou d'une fonction du véhicule telle que freinage, direction assistée, moteur, climatisation, etc Les calculateurs sont généralement équipés d'une mémoire de telle sorte que le logiciel d' exploitation stocké dans cette mémoire puisse être modifié, ou amélioré. Les véhicules comportent un ordinateur qui, notamment, échange des informations avec le ou les calculateurs pour assurer le bon fonctionnement de l' ensemble. Les véhicules sont en outre équipés fréquemment de divers récepteurs d'ondes radio, par exemple un récepteur radio FM prévu pour recevoir une sous-porteuse selon le protocole RDS permettant la diffusion de données en plus des émissions radio habituelles, et/ou un téléphone cellulaire qui peut être branché sur la même antenne que celle du 2Q récepteur radio. I1 existe également des récepteurs pour l' aide à la navigation (GPS), et des récepteurs pour des informations, transmises par radio, sur la pression et/ou l'usure des pneurnatiques du véhicule. Lorsque le constructeur du véhicule souhaite remplacer dans la mémoire d'un calculateur une version de logiciel par une version nouvelle améliorce, il lui faut rappeler tous les véhicules concernés dans des centres techniques o sera effectué la mise à jour du logiciel. Un tel rappel de véhicules entraîne des frais élevés et prend du temps. L' invention a pour but, surtout, de fournir un procèdé de mise à jour de logiciel qui permet de réduire considérablement les frais entraînés par le chargement d'une nouvelle version, et d'effectuer rapidement ces opérations. L' invention vise en outre à assurer des conditions optimales quant au fonctionnement du véhicule. Selon l'invention, le procédé de mise à jour du logiciel d'au moins un calculateur embarqué dans un véhicule automobile, dédié à la gestion d'une partie ou d'une fonction du véhicule et équipé d'une mémoire de telle sorte qu'un logiciel stocké dans cette mémoire puisse être modifié, le véhicule comportant en outre un ordinateur et au moins un récepteur d'ondes radio, est caractérisé par le fait que la mise à jour du logiciel est transmise par ondes radio sur une fréquence captée par un récepteur du véhicule, et que l'ordinateur est programmé pour vérifier l'intégrité de la mise à jour de logiciel recue et pour assurer, lorsque le véhicule est à l'arrét, le remplacement de l'ancienne version du logiciel par la nouvelle version et la vérification du bon fonctionnement, l'ancienne version étant réinstallée si le fonctionnement avec la nouvelle version n'apparaît pas satisfaisant. Avantageusement, un programme est installé dans l'ordinateur pour qu'il fonctionne en superviseur, au moins une entrée de l'ordinateur est reliée au récepteur d'ondes radio qui capte la mise à jour de logiciel, cette mise à jour est stockée dans une mémoire tampon de l'ordinateur superviseur qui vérifie l'intégrité des informations recues et, lorsque l'intégrité est confirmoe, l'ordinateur superviseur, lors du prochain arrét du véhicule, récupère 1'ancienne version de logiciel du calculateur concerné et la stocke en mémoire, et transfère la nouvelle version de mise à our vers le calculateur qui se réinitialise, le superviseur vérifie le bon fonctionnement du calculateur et, si tout va bien, supprime l'ancienne version du logiciel tandis que si le fonctionnement ne paraît pas correct, le superviseur récupère la nouvelle version, la stocke en mémoire, et recharge le calculateur avec l'ancienne version de logiciel. On peut prévoir un récepteur radio "Station Garage" embarqué dans le véhicule et dédié à la réception de la mise à jour de logiciel. En variante, l'émission radio de la mise à jour de logiciel est effectuée sur une sous-porteuse de radio FM et est captée par le récepteur radio FM du véhicule. De prétérence, on fait émettre par le système embarqué dans le véhicule un accusé de réception de la mise à jour de logiciel permettant d' identifier le véhicule concerné. L'invention est également relative à une installation pour 3s effectuer une mise à jour du logiciel d'au moins un calculateur embarqué dans un véhicule automobile, dédié à la gestion d'une partie ou d'une fonction du véhicule et équipé d'une mémoire de telle sorte qu'un logiciel stocké dans cette mémoire puisse être modifé, le véhicule comportant en outre un ordinateur et au moins un récepteur d'ondes radio, cette installation étant caractérisée par le fait qu'elle comprend, à poste fixe, un émetteur radio "Station Garage" pour la transmission par radio de la s nouvelle version de logiciel, et que l'ordinateur est programmé pour vérifier l'intégrité de la mise à jour de logiciel recue et pour assurer, lorsque le véhicule est à l'arrêt, le remplacement de l'ancienne version du logiciel par la nouvelle version et la vérification du bon fonctionnement, ]'ancienne version étant réinstallée si le fonctionnement avec la nouvelle version n'apparaît pas satisfaisant. L'émetteur radio "Station Garage" peut comprendre un serveur et une passerelle de connexion servant d'encodeur et de décodeur. L' installation peut comporter, embarqué dans le véhicule, un récepteur radio "Station Garage" dédié à l'émetteur radio "Station Garage". L'émetteur radio "Station Garage" à poste fixe peut être également récepteur et l' installation comporte, embarqué dans le véhicule, un émetteur radio pour formuler une demande à l'émetteur / récepteur de mise à jour de logiciel. L' installation est prévue pour émettre un accusé de réception de la mise à jour permettant d' identifier le véhicule concerné. Grâce à l'invention, le constructeur du véhicule peut effectuer une mise à jour de logiciel sans avoir à rappeler les véhicules à un centre technique de traitement. Il en résulte une souplesse et une économie considérables. 2s L' invention consiste, mises à part les dispositions exposées ci dessus, en un certain nombre d i autres dispositions dont il sera plus explicitement question ci-après à propos d'exemples de réalisation décrits avec référence aux dessins annexés, mais qui ne sont nullement limitatifs. Sur ces dessins: Fig. 1 est un schéma illustrant le procédé et l' installation de mise à jour de logiciel selon l'invention. Fig. 2 est un autre schéma illustrant le procédé. Fig. 3 est un organigramme résumant le fonctionnement. Fig. 4, enfin, est un schéma illustrant la mise à jour de logiciel. 3s En se reportant à Fig.1 on peut voir le schéma d'un système S de mise à jour du logiciel d'au moins un calculateur embarqué dans un véhicule automobile (non montré). Sur le schéma plusieurs calculateurs embarqués ECU1, ECU2, ECU3, ECU4... sont représentés. Les initiales ECU correspondent à l' expression "Unité de Commande Electronique" (Electronic Control Unit). s Chaque calculateur est dédié à la gestion d'une partie ou d'une fonction du véhicule. Par exemple: ECU1 est dédié à la gestion du freinage du véhicule, ECU2 à la gestion de la direction assistée, ECU3 au fonctionnement du moteur en particulier à la commande de l'injection d'essence, ECU4 est dédié à la climatisation, etc 0 Chaque calculateur exécute ses tâches grâce à un logiciel enregistré dans une mémoire par exemple EEPROM ou mémoire flash. Les calculateurs sont reliés par des faisceaux de lignes bus B1, B2, B3, B4, sommairement représentés, à un ordinateur central C 1 également embarqué dans le véhicule. L'ordinateur C1 fonctionne en superviseur grâce à un programme résidant en permanence dans la mémoire centrale de l'ordinateur. Ce dernier peut ainsi contrôler l'enchaînement et la gestion des processus auxquels sont dédiés les calculateurs ECU1...ECU4.... Le véhicule est en outre équipé d7au moins un récepteur radio. Dans l'exemple de Fig. 1 l'équipement comporte plusieurs récepteurs radio dédiés à différentes fonctions. Un récepteur R1 radio numérique est prévu pour capter les émissions radio FM ainsi que des émissions numériques sur une sous- porteuse selon le protocole RDS qui permet la diffusion de données, 2s s'affichant par exemple sur un écran sous forme alphanumérique, en plus des émissions habituelles sur un canal radio FM. Un récepteur / émetteur radio numérique R2 est embarqué dans le véhicule pour assurer la fonction de téléphone cellulaire. Les deux dispositifs R1, R2 sont reliés par un coupleur 1 à une même antenne A1. Un autre récepteur radio numérique R3, relié à une antenne A3, est prévu pour l' aide à la navigation communément désignée par GPS (Global Positioning System / Système de Positionnement Global). Un quatrième récepteur R4, associé à une antenne A4 est dédié à la détection de la pression des pneu$ dont la valeur est transmise par radio. Le cas échéant le récepteur R4 peut également servir à la détection de signaux d'usure des pneumatiques transmis par radio. s Les différents récepteurs sont reliés à l'ordinateur superviseur C1 qui contrôle leur bon fonctionnement. Un cinquième récepteur radio numérique R5, de préférence avec émetteur, associé à une antenne A5 est prévu pour assurer une fonction "Station Garage" permettant la mise à jour des programmes informatiques des différents calculateurs ECU1...ECU4. Le récepteur / émetteur R5 est relié au superviseur C1. Les différents récepteurs, et émetteurs correspondants, travaillent sur des fréquences différentes permettant d'éviter des interférences. L'émission des informations numériques destinées au récepteur R5 "Station Garage" est assurée par un ensemble émetteur / récepteur "Station Garage" E5 en liaison avec une antenne A, de préférence une antenne déjà installée pour d'autres émissions radio FM. L' ensemble E5 peut comporter une autre antenne AE pour la réception d'informations provenant de l'émetteur de R5 et correspondant, par exemple, à une demande du conducteur du véhicule, ou client. Pour effectuer une mise à jour de logiciel, le fournisseur de la voiture émet un code de mise à jour à partir de l'ensemble E5. Le logiciel de mise à jour recueilli par le récepteur R5 est chargé dans une mémoire tampon du superviseur C1, avec un code de redondance cyclique. Le programme informatique du superviseur C1 assure la vérification de l'intégrité des informations reçues avant de transférer le logiciel de mise à jour au calculateur concerné. 2s Lorsque l'intégrité des informations reçues a été vérifice, le superviseur C1, au prochain arrêt du véhicule, récupère le logiciel du calculateur concerné, par- exemple le calculateur ECU1 dédié au freinage, et stocke cette ancienne version de logiciel dans sa mémoire. Le superviseur C1 transfère ensuite la nouvelle version de logiciel, qui était stockée en mémoire tampon, dans la mémoire du calculateur ECU1. Le calculateur se réinitialise; si le superviseur C1 détermine que tout fonctionne correctement, l'ancienne version de logiciel est supprimée. Par contre, si le superviseur C 1 détecte un détaut de fonctionnement, il extrait la nouvelle version de logiciel du calculateur et recharge, dans le calculateur, l'ancienne version de logiciel. Le programme de validation du superviseur C1 est protégé pour ne pas étre lisible. En réponse à la réception d'une mise à jour de logiciel, le système peut adresser un accusé de réception, par exemple par l'intermédiaire du téléphone cellulaire R2, à destination de l'émetteur/récepteur E5 "Station Garage". L'accusé de réception est prévu pour permettre d' identifier le véhicule, par exemple par le numéro série du constructeur. Fig.2 est un schéma illustrant un dialogue possible entre le système S embarqué dans le véhicule et la "Station Garage" ES. Le système embarqué S du client émet, sur initiative du client / conducteur, une demande encodée transmise par l'émetteur de R5. Cette demande est recueillie par l'antenne AE de la "Station Garage" E5 et est envoyée à un circuit 2 encodeur décodeur puis transmise, après décodage, à un serveur 3. Ce dernier envoie une réponse qui transite par le circuit encodeur décodeur 2 pour être codée et qui est ensuite transmise par l'antenne A au système embarqué S du véhicule du client. En variante, la mise à jour du logiciel pourrait étre transmise sur une sous-porteuse d'une radio FM et étre recucillie, par exemple, par le récepteur R1. Dans ce cas il ne serait plus nécessaire de prévoir un récepteur R5 spécialement dédié aux mises à jour. Fig.3 est un organigramme résumant les opérations de mise à jour du logiciel d'un calculateur. L'étape 4 correspond à une interrogation pour savoir si une réception est en cours. Si la réponse est négative N. le système reste en attente de réception. Si la réponse est positive O. les informations recues par le récepteur R5 sont transmises au superviseur C 1 pour l' étape d 'identification. Si le superviseur C1 établit que la mise à jour n'est pas destinée au véhicule considéré, ou si le superviseur C1 établit un défaut d'intégrité des informations recues, une réponse négative N est fournie à cette étape et le système retourne en attente de réception. Si par contre l'intégrité de la mise à jour est établie ainsi que la bonne destination, la réponse est positive O. A l'étape 6, dès que le véhicule est arrêté, le superviseur C1 procède à la récupération de l'ancienne version du logiciel du calculateur ECU concerné et au chargement de la nouvelle version. Le calculateur se réinitialise. A l'étape 7 le superviseur vérifie le bon fonctionnement avec la nouvelle version. Si le bon fonctionnement n'est pas confirmé, ce qui correspond à une réponse N. la nouvelle version de logiciel est déchargée du calculateur concerné et l'ancienne version est rechargée; le système se remet en attente de réception. Par contre si le superviseur constate le bon fonctionnement, la réponse positive O conduit à l'étape 8 de validation de la nouvelle version et à la suppression de l'ancienne version. Le système retourne ensuite en attente de réception. Fig.4 est un schéma illustrant la réception des informations par le superviseur C1 et le chargement de la nouvelle version de logiciel dans le calculateur par exemple ECU1. Le superviseur comporte une mémoire tampon 9 ( par exemple EEPROM) par laquelle transite la nouvelle version de logiciel avant d'étre transférée à une mémoire 10 (par exemple EEPROM) du calculateur ECU1. La mémoire morte 11 du calculateur est reliée à la mémoire 10 ainsi qu'au superviseur C1. REVENDICATIONS 1. Procédé de mise à jour du logiciel d'au moins un calculateur (ECU1 - ÉCU4) embarqué dans un véhicule automobile, dédié à la gestion d'une s partie ou d'une fonction du véhicule et équipé d'une mémoire (10) de telle sorte qu'un logiciel stocké dans cette mémoire puisse être modifié, le véhicule comportant en outre un ordinateur (C1) et au moins un récepteur d'ondes radio (R1-RS), caractérisé par le fait que la mise à jour du logiciel est transmise par ondes radio sur une fréquence captée par un récepteur (R5, R1) du véhicule, et que l'ordinateur (C1) est programmé pour vérifier l'intégrité de la mise à jour de logiciel reçue et pour assurer, lorsque le véhicule est à l'arrêt, le remplacement de l'ancienne version du logiciel par la nouvelle version et la vérification du bon fonctionnement, l'ancienne version étant réinstallée si le fonctionnement avec la nouvelle version n'apparaît pas satisfaisant. 2. Procédé de mise à j our de logiciel selon la revendication 1, caractérisé par le fait qu'un programme est installé dans l' ordinateur (C 1) pour qu'il fonctionne en superviseur, qu'au moins une entrée de l'ordinateur (C1) est reliée au récepteur d'ondes radio (R5,R1) qui capte la mise à jour de logiciel, que cette mise à jour est stockée dans une mémoire tampon (9) de l'ordinateur superviseur qui vérifie l'intégrité des informations reçues, et que, lorsque l'intégrité est confirmée, l'ordinateur superviseur, lors du prochain arrêt du véhicule, récupère l'ancienne version de logiciel du calculateur concerné et la stocke en mémoire, et transfère la nouvelle version de mise à jour vers le calculateur qui -se réinitialise, que le superviseur (C1) vérifie le bon fonctionnement du calculateur et, si tout va bien, supprime l'ancienne version du logiciel tandis que si le fonctionnement ne paraît pas correct, le superviseur (C1) récupère la nouvelle version, la stocke en mémoire, et recharge le calculateur avec l'ancienne version de logiciel. 3. Procédé de mise à jour de logiciel selon la revendication 1 ou 2, caractérisé par le fait que l'on prévoit un récepteur radio "Station Garage" 3s (R5) embarqué dans le véhicule et dédié à la réception de la mise à jour de logiciel. 4. Procédé de mise à jour de logiciel selon la revendication 1 ou 2, caractérisé par le fait que l'émission radio de la mise à jour de logiciel est effectuée sur une sous-porteuse de radio FM et est captée par le récepteur radio FM (R1) du véhicule. s 5. Procédé de mise à jour de logiciel selon l'une des revendications précédentes, caractérisé par le fait que l'on fait émettre, par le système embarqué dans le véhicule, un accusé de réception de la mise à j our de logiciel permettant d' identifier le véhicule concerné. 6. Installation pour effectuer une mise à jour du logiciel d'au moins un calculateur (ECU1 - ECU4) embarqué dans un véhicule automobile, dédié à la gestion d'une partie ou d'une fonction du véhicule et équipé d'une mémoire de telle sorte qu'un logiciel stocké dans cette mémoire puisse être modifié, le véhicule comportant en outre un ordinateur (C1) et au moins un récepteur d'ondes radio (Rl-RS), caractérisée par le fait qu'elle comprend, à poste fixe, un émetteur radio " Station Garage " (ES) pour la transmission par radio de la nouvelle version de logiciel, et que l' ordinateur (C 1) est programmé pour vérifier l'intégrité de la mise à jour de logiciel recue et pour assurer, lorsque le véhicule est à l'arrét, le remplacement de l'ancienne version du logiciel par la nouvelle version et la vérification du bon fonctionnement, liancienne version étant réinstallée si le fonctionnement avec la nouvelle version n'apparat pas satisfaisant. 2s 7. Installation selon la revendication 6, caractérisée par le fait que l'émetteur radio "Station Garage" (ES) comprend un serveur (3) et une passerelle de connexion (2) servant d'encodeur et de décodeur. 8. Installation selon la revendication 6 ou 7, caractérisée par le fait qu'elle comporte, embarqué dans le véhicule, un récepteur radio (RS) dédié à l'émetteur radio "Station Garage" (ES). 9. Installation selon la revendication 8, caractérisce par le fait que 3s l'émetteur radio "Station Garage" (ES) est également récepteur et qu'elle comporte, embarqué dans le véhicule, un émetteur radio (RS, R2) pour formuler une demande à l'émetteur / récepteur (ES) de mise à jour de logiciel. 10. Installation selon l'une des revendications 6 à 9, caractérisce par le fait qu'elle est prévue pour émettre un accusé de réception de la mise à