Brevet FR2845497A1 — publié le 20040409

La présente invention est relative à un dispositif de simulation d'un système embarqué dans un véhicule automobile, ce système comportant un calculateur fonctionnant à une fréquence d'horloge prédéterminée pour traiter des informations échangées avec son environnement. Plus particulièrement l'invention est relative à 5 un tel dispositif de simulation comprenant a) ledit calculateur, b) des moyens de simulation de l'environnement et c) des moyens de supervision de la simulation. On sait que dans un système du type décrit ci-dessus, des capteurs fournissent au calculateur des signaux de mesure de divers paramètres représentatifs de l'état du système. Ces mesures sont utilisées dans des lois de 10 commande d'actionneurs, exécutées par le calculateur. C'est ainsi que le calculateur de gestion d'un moteur à combustion interne propulsant un véhicule automobile reçoit, par exemple, des mesures de la pression d'admission et du régime de ce moteur, de la température du liquide de refroidissement, etc..., utilisées dans des lois de commande exécutées par le calculateur pour déterminer le temps d'ouverture 15 d'injecteurs de carburant dans le moteur. Les études conduites sur de tels systèmes font maintenant souvent appel à des moyens de simulation, logiciels ou matériels, de tout ou partie du système. Pour simuler l'environnement du calculateur du système on a proposé (voir par exemple US-A-5 557 523, US-A-4 325 251, US-A-4 385 278) de recréer par des moyens 20 électroniques les signaux attendus par le calculateur et de mesurer les commandes d'actionneurs établies par le calculateur à l'aide de ces signaux et des lois de commande qu'il exécute, ces mesures étant appliquées à un modèle logiciel des moyens pilotés par le calculateur. Il est alors nécessaire d'établir un modèle capable de fonctionner, comme le 25 calculateur, en temps réel, ce qui impose bien souvent l'utilisation de modèles simplifiés, qui ne conviennent pas pour des études complexes telles que celles portant sur le calibrage de lois de commande d'actionneurs, par exemple. On a aussi proposé de remplacer, dans le dispositif de simulation décrit cidessus, le calculateur du système par un émulateur du logiciel chargé dans le 30 calculateur pour l'exécution des lois de commande évoquées plus haut (voir par exemple US-A-6 058 492, US-A-5 808 921). Un tel dispositif "tout logiciel" permet de s'affranchir de la contrainte que pose autrement l'utilisation du calculateur, conçu pour fonctionner en temps réel. L'émulateur et le modèle peuvent en effet fonctionner tous les deux en temps "dilaté", ce qui permet de concevoir et d'utiliser des modèles complexes, propres à simuler avec précision l'environnement du calculateur. La modélisation fine de certains phénomènes transitoires, intervenant par exemple dans la combustion du mélange air/carburant, n'est cependant pas toujours 5 envisageable. Dans ce cas la solution évoquée ci-dessus est tout simplement inutilisable. La présente invention a donc pour but de fournir un dispositif de simulation d'un système embarqué dans un véhicule automobile, du type décrit en préambule de la présente description, ce dispositif ne présentant pas les inconvénients 10 mentionnés ci-dessus de la technique antérieure. En particulier l'invention a pour but de permettre une simulation mettant en jeu le calculateur même du système embarqué, sans pour autant imposer un compromis entre la précision et la rapidité d'exécution d'un modèle logiciel utilisé pour simuler l'environnement du calculateur. On atteint ce but de l'invention, ainsi que d'autres qui apparaîtront à la lecture 15 de la description qui va suivre, avec un dispositif de simulation d'un système embarqué dans un véhicule automobile, ce système comportant un calculateur fonctionnant à une fréquence d'horloge prédéterminée pour traiter en temps réel des informations échangées avec son environnement, le dispositif de simulation comprenant a) ledit calculateur, b) des moyens de simulation dudit environnement 20 dudit calculateur et c) des moyens de supervision de ladite simulation dudit système. Suivant l'invention ce dispositif est remarquable en ce qu'il comprend des moyens sélectivement activés par les moyens de supervision pour faire fonctionner le calculateur à une fréquence d'horloge différente de ladite fréquence prédéterminée, propre à accorder la vitesse d'exécution de tâches confiées audit calculateur à la 25 vitesse de calcul desdits moyens de simulation. Comme on le verra plus loin en détail, on peut ainsi, par exemple, ralentir l'exécution des tâches du calculateur pour synchroniser des échanges de données entre le calculateur et les moyens de simulation, tout comme ces échanges le sont, en temps réel cette fois, dans le système embarqué. Suivant d'autres caractéristiques, optionnelles, de la présente invention - ladite fréquence d'horloge différente est égale à la fréquence la plus basse compatible avec le plus long des calculs exécutés par les moyens de simulation, - ladite fréquence d'horloge différente est sélectivement modulée par les moyens de supervision en fonction de la longueur des divers calculs successifs exécutés par les moyens de simulation. D'autres caractéristiques et avantages de la présente invention apparaîtront à 5 la lecture de la description qui va suivre et à l'examen du dessin annexé dans lequel: - la figure 1 est un schéma d'organisation du dispositif de simulation suivant la présente invention, et - la figure 2 représente deux diagrammes temporels d'exécution, d'une part de tâches dans le calculateur du dispositif suivant l'invention et, 10 d'autre part, de calculs dans les moyens de simulation, ces diagrammes étant utiles à l'explication du fonctionnement du dispositif. On se réfère à la figure 1 du dessin annexé o il apparaît que le dispositif suivant l'invention comprend essentiellement une unité de commande électronique 1, couramment appelée "calculateur", ce calculateur étant équipé d'au moins un 15 microprocesseur 2 dont le fonctionnement est rythmé par un signal d'horloge de fréquence prédéterminée, délivrée par un générateur 3. Le microprocesseur est dment programmé pour exécuter des lois de commande d'un système embarqué dans un véhicule automobile tel que, par exemple, un moteur à combustion interne propulsant le véhicule, un système de freinage équipé de moyens d'antiblocage ou 20 d'anti-patinage de roues, un système de suspension, etc... Pour ce faire, lorsqu'il est installé dans le véhicule, le calculateur 1 reçoit des données de divers capteurs de grandeurs représentatives de l'état du système commandé, introduit ces données dans les lois de commande dont il tire des données de commande d'actionneurs réagissant sur cet état du système. Ce fonctionnement en boucle du système assure 25 le suivi des lois de commande. Dans le cadre du dispositif de simulation, suivant l'invention, d'un tel système, les données échangées par le calculateur avec son "environnement" sont élaborées par des moyens 4, logiciels et matériels, de simulation dudit système, incorporés, comme représenté au dessin, dans un poste de travail. Ces moyens de simulation modélisent ainsi l'environnement matériel du calculateur dans le système réel, cet environnement étant constitué, par exemple, de capteurs et d'actionneurs, comme on l'a vu plus haut. Les moyens de modélisation peuvent ainsi comprendre des moyens électroniques, donc matériels, pour les modélisations des actionneurs et des capteurs, et des moyens logiciels de modélisation du système piloté. Le dispositif comprend encore des moyens logiciels de supervision 5 de la simulation chargés, comme représenté au dessin, dans un micro-ordinateur 5 personnel, qui pourrait lui aussi être remplacé par un poste de travail. Bien entendu les logiciels des moyens 4 et 5 pourraient être chargés dans un même microordinateur ou un même poste de travail. Outre les données qu'ils échangent avec le calculateur 1, les moyens de simulation 4 échangent également des informations avec les moyens de supervision 10 5. Suivant la présente invention, ces derniers commandent en outre des moyens 6 de génération d'un signal d'horloge, qui remplacent le générateur 3 normalement associé au microprocesseur 2 du calculateur 1. Ces moyens prennent la forme d'un circuit électronique connecté par sa sortie 7 à l'entrée 8 de signal d'horloge du 15 microprocesseur 2, de manière à délivrer sélectivement à cette entrée un signal d'horloge qui se substitue alors à celui normalement délivré par le générateur 3, comme illustré très schématiquement à la figure 1. Les moyens électroniques à prévoir pour assurer cette substitution ne seront pas décrits dans la suite car leur réalisation relève de la simple mise en oeuvre des connaissances normales de 20 l'homme de métier. On se réfère maintenant aux deux diagrammes temporels de la figure 2, pour expliquer la présence des moyens 6 de génération d'un signal d'horloge dans le dispositif représenté à la figure 1. Les diagrammes temporels A et B de la figure 2 illustrent les séquences de calcul exécutés dans le calculateur 1 et dans les moyens 25 de simulation 4, respectivement. Sur le diagramme A il apparaît ainsi que le calculateur 1 procède, dans le système réel embarqué, à l'acquisition de données venues de capteurs, puis à l'exécution de lois de commande faisant intervenir des valeurs courantes de ces données et enfin à l'envoi, aux actionneurs, de signaux de commande. Ce cycle de 30 tâches se répète cycliquement, avec des données actualisées, après écoulement d'un éventuel temps mort. Dans le cas du dispositif de simulation de la figure 1, ces données et ces commandes sont échangées avec les moyens 4 de simulation qui fonctionnent en boucle avec le calculateur 1. C'est ainsi que les commandes d'actionneurs établies par le calculateur 1 sont acquises par les moyens 4, introduites dans le modèle logiciel de l'environnement du calculateur chargé dans ces moyens 4, le modèle générant et fournissant au calculateur 1 des signaux images de ceux délivrés, dans le système réel embarqué, par les capteurs évoqués plus haut. Il convient évidemment que la simulation reproduise avec une bonne précision les conditions de fonctionnement, en temps réel, du système embarqué. Pour ce faire, les signaux reçus des moyens 4 par le calculateur 1 doivent être correctement actualisés. Cela exige que la durée T4 d'un cycle de fonctionnement de ces moyens 4 10 soit inférieure à la durée Tl d'exécution du cycle correspondant des taches confiées au calculateur 1. C'est ainsi qu'à l'instant tA du début d'un cycle d'exécution de tâches par le calculateur 1, on est sr que ce cycle va utiliser les signaux générés à l'instant tB, antérieur à tA, par les moyens de simulation 4, comme illustré sur la figure 2. Si tB était postérieur à tA, du fait de la lourdeur des calculs qui doivent être 15 exécutés par les moyens de simulation, le calculateur 1 serait amené à prendre en compte des signaux calculés par les moyens 4 lors d'un cycle de calcul antérieur à celui en cours, non terminé. Les données exploitées par le calculateur 1 ne seraient alors pas correctement actualisées et le calculateur 1 pourrait se mettre en défaut. Or la modélisation fine d'un système embarqué complexe, tel que le système 20 moteur par exemple, exige des logiciels "lourds", et donc d'exécution relativement lente par les micro-ordinateurs personnels ou les postes de travail actuels. Cette exécution ne peut alors suivre la cadence de fonctionnement du calculateur 1, liée à la fréquence d'horloge délivrée par le générateur 3, fréquence déterminée pour faire fonctionner le calculateur en temps réel. C'est là un état de fait qui, sans contre25 mesure, conduit à l'actualisation défectueuse, évoquée ci-dessus, des données délivrées par les moyens de simulation au calculateur 1. Suivant la présente invention, on résoud ce problème en faisant fonctionner le calculateur 1 à une fréquence d'horloge différente de celle à laquelle il fonctionne normalement, en temps réel dans un système embarqué, de manière à accorder la 30 vitesse à laquelle il exécute les tâches qui lui sont confiées, à la vitesse de calcul des moyens de simulation 4. C'est ainsi qu'en simulation on "freine", en fait, la cadence de fonctionnement du calculateur 1 de manière que le temps alors accordé aux moyens de simulation 4 pour calculer et fournir des données au calculateur 1, soit suffisant pour que ces données soient aussi correctement actualisées que possible. On peut alors modéliser avec une grande finesse l'environnement du calculateur 1 puisque le temps d'exécution du logiciel "lourd" qui en résulte est rendu 5 compatible avec le temps d'exécution des tâches confiées au calculateur 1, ce dernier temps ayant été convenablement allongé par une réduction adaptée de la fréquence d'horloge rythmant le fonctionnement du calculateur 1. La commande de cette fréquence d'horloge est confiée aux moyens de supervision 5. Ces derniers communiquent avec les moyens de simulation 4, comme 10 représenté à la figure 1, de manière à recevoir les données nécessaires au choix de cette fréquence, fonction du temps d'exécution des divers calculs exécutés par les moyens 4. Une première stratégie de commande consiste, pour les moyens de supervision 5, à sélectionner une fréquence fixe, égale à la fréquence la plus basse compatible avec le plus long des calculs exécutés par les moyens de simulation 4. Une deuxième stratégie consiste, pour les moyens de supervision, à moduler sélectivement la fréquence d'horloge en fonction de la longueur des divers calculs successifs exécutés par les moyens 4, ou en prenant en compte les variables d'entrée du modèle et leurs variations. Cette modulation permet de faire fonctionner les moyens 4 et le calculateur 1 à des fréquences plus élevées, ce qui permet 20 d'accélérer la simulation et de l'exécuter dans des conditions plus proches, celles du "temps réel", du système embarqué ainsi simulé. Une solution pratique consiste, pour les moyens de supervision, à démarrer la simulation en alimentant le calculateur 1 avec une fréquence d'horloge initialisée à la plus basse fréquence évoquée ci-dessus, puis à moduler sélectivement la fréquence 25 d'horloge en fonction d'informations reçues des moyens de simulation, relatives aux durées variables des divers calculs successifs exécutés par ces moyens de simulation 4. Il apparaît maintenant que la présente invention permet bien d'atteindre le but fixé, à savoir fournir un dispositif de simulation d'un système embarqué, comportant 30 le calculateur même de ce système et des moyens logiciels de simulation aussi importants que nécessaires, quand bien même l'importance de ceux-ci serait incompatible avec un fonctionnement correctement coordonné de ces moyens et de ce calculateur, à sa fréquence d'horloge nominale, celle de son fonctionnement en temps réel. REVENDICATIONS 1. Dispositif de simulation d'un système embarqué dans un véhicule automobile, ledit système comportant un calculateur (1) fonctionnant à une fréquence d'horloge prédéterminée pour traiter en temps réel des informations échangées avec son environnement, ledit dispositif comprenant: a) ledit calculateur (1), b) des moyens de simulation (4) dudit environnement dudit calculateur (1), et c) des moyens de supervision (5) de ladite simulation dudit système, ce dispositif étant caractérisé en ce qu'il comprend des moyens sélectivement activés 10 par lesdits moyens de supervision (5) pour faire fonctionner ledit calculateur (1) à une fréquence d'horloge différente de ladite fréquence prédéterminée, propre à accorder la vitesse d'exécution de tâches confiées audit calculateur (1) à la vitesse de calcul desdits moyens de simulation (4). 2. Dispositif conforme à la revendication 1, caractérisé en ce que ladite 15 fréquence d'horloge différente est égale à la fréquence la plus basse compatible avec le plus long des calculs exécutés par lesdits moyens de simulation (4). 3. Dispositif conforme à la revendication 1, caractérisé en ce que ladite fréquence d'horloge différente est sélectivement modulée par lesdits moyens de supervision (5) en fonction de la longueur des divers calculs successifs exécutés par 20 lesdits moyens de simulation (4). 4. Dispositif conforme à la revendication 3, caractérisé en ce que, au démarrage d'une simulation, lesdits moyens de supervision (5) initialisent ladite fréquence d'horloge différente à la fréquence la plus basse compatible avec le plus long des calculs exécutés par lesdits moyens de supervision (5).