FR 2750165 A1 19971226 FR 9607885 A 19960625 SYSTEME ELECTRONIQUE DE CONTROLE D'UN MOTEUR THERMIQUE DANS UN VEHICULE AUTOMOBILE L'invention concerne un système de contrôle du moteur thermique d'un véhicule automobile, utilisant un calculateur à microprocesseur. Actuellement, le contrôle du fonctionnement d'un moteur thermique est réalisé par un calculateur électronique comprenant essentiellement un microprocesseur 8 bits avec des mémoires de type à accès en lecture ROM et à accès en lecture et écriture RAM, fonctionnant avec un logiciel codé en langage assembleur. Le calculateur et son logiciel assurent la gestion de l'injection d'essence dans les cylindres, de l'avance à l'allumage des bougies et de l'admission d'air en élaborant des stratégies de commande et de contrôle du temps d'injection, de l'avance à l'allumage et du rapport cyclique d'ouverture de la vanne d'air additionnel, à partir des données du moteur fournies par des capteurs, soit le régime, la pression dans le collecteur d'admission, l'angle du papillon, les températures d'air et d'eau, la vitesse du véhicule, la richesse du mélange air-essence, le cliquetis et la tension de la batterie. Or, les normes anti-pollution deviennent de plus en plus sévères et de nouvelles prestations ou fonctionnalités sont offertes aux véhicules, telles que le diagnostic embarqué sur le véhicule de type O.B.D. ( On Board Diagnostic ) ou le multiplexage, ce qui entraîne d'une part une augmentation de la taille du logiciel de contrôle moteur et du nombre de données à traiter, et d'autre part, une augmentation du besoin en puissance de calcul pour réaliser ainsi plus de fonctionnalités dans le même temps imparti, par exemple dans une récurrence de 5 ms à 6000 tours par minute. Cependant, le microprocesseur actuel à 8 bits ne peut supporter cet accroissement de puissance nécessaire, et le langage de programmation assembleur ne peut supporter ni complexité accrue du logiciel de contrôle embarqué du fonctionnement du moteur ni la réduction des cycles de production-évolution-maintenance de ce logiciel. Le but de l'invention est de résoudre ces problèmes de puissance de calcul et de complexité du logiciel embarqué en remplaçant le microprocesseur à 8 bits par un microprocesseur à 2n bits, avec n nombre entier supérieur ou égal à 4, par exemple 32 bits, beaucoup plus puissant et rapide, tout en assurant une compatibilité totale avec le calculateur actuel tant en ce qui concerne les entrées/sorties et les fonctions réalisées, que le boîtier lui-même de protection du calculateur avec ses composants réalisant lesdites fonctions, placé dans le véhicule. Pour cela, l'objet de l'invention est un système de contrôle du moteur thermique d'un véhicule automobile, à partir de capteurs délivrant des paramètres de fonctionnement du moteur et des fonctionnalités du véhicule, utilisant un calculateur électronique logé dans un boîtier de protection relié aux capteurs par un connecteur extérieur, et constitué par des circuits de mise en forme des signaux délivrés par lesdits capteurs et un circuit de traitement de l'avance à l'allumage montés sur une carte électronique, caractérisé en ce que le calculateur comprend de plus une carte électronique fille logée dans le boîtier de protection et reliée aux circuits de mise en forme et de traitement de signaux par un connecteur multipoints de liaison (P3), sur laquelle sont connectés électriquement - un microprocesseur à 2n bits, n entier supérieur ou égal à 4, placé sur un module, de format carte de crédit, qui s'enfiche sur la carte par l'intermédiaire de deux connecteurs multipoints (P1P2) et qui comporte également une mémoire programmable à accès en lecture PROM; - un circuit convertisseur analogique-digital relié à un des circuits de mise en forme des signaux par le connecteur de liaison (P3) et - une mémoire tampon sauvegardant les valeurs numériques en sortie du convertisseur et relié au microprocesseur par les connecteurs multipoints (P1,P2) - une alimentation stabilisée réalisée par un régulateur de tension fixé sur le boîtier; - une mémoire à accès en lecture et écriture RAM et une mémoire programmable à accès en lecture .PROM, commandées par le microprocesseur à travers un circuit décodeur d'adresses. Selon une autre caractéristique de l'invention, le système de contrôle comprend de plus un circuit d'alimentation d'un outil de diagnostic, intégré sur le module par le connecteur multipoint (P2) et relié à une embase fixée sur le boîtier pour la connexion avec ledit outil. D'autres caractéristiques et avantages de l'invention apparaîtront à la lecture de la description des figures suivantes - la figure 1 est un synoptique du calculateur de contrôle moteur de l'art antérieur; - la figure 2 qui est une vue schématique en perspective du système selon l'invention; - la figure 3 est un synoptique du calculateur de contrôle moteur selon l'invention; - la figure 4 est un schéma de réalisation non limitatif d'un élément constitutif du calculateur selon l'invention. La figure 1 est un synoptique du calculateur de contrôle du moteur de l'art antérieur, qui est réalisé sur une carte électronique, appelée ultérieurement carte mère, protégée par un boîtier placé dans le véhicule. Les informations dont a besoin le calculateur, telles que la pression dans le collecteur d'admission d'air, les températures d'air et d'eau, la tension délivrée par la batterie, la présence de cliquetis, la mise en route de la climatisation ou du système d'assistance au freinage (ABS), proviennent de différents types de capteurs situés en plusieurs endroits du véhicule et parviennent au calculateur par un connecteur 1 externe au boîtier. Le calculateur est constitué d'abord de circuits de mise en forme des signaux délivrés par ces capteurs, avant leur prise en compte par un microprocesseur 8 bits, de type Motorola 68HC11 par exemple. I1 s'agit - d'un circuit 2 de mise en forme des signaux analogiques comme la pression dans le collecteur, les températures d'eau et d'air, la tension de la batterie, le signal délivré par la sonde à oxygène, - d'un circuit 3 de mise en forme des signaux provenant de capteurs statiques qui délivrent une information binaire de fonctionnement du démarreur, de la climatisation, du système de freinage ABS, des positions "Parking" et "Neutre" de la boîte de vitesse automatique par exemple, - d'un circuit 4 de mise en forme des signaux provenant de capteurs dynamiques. Le calculateur comprend également un circuit 5 de traitement de l'avance à l'allumage (T.C.A.M.) à partir des informations délivrées par un capteur de cliquetis et un capteur de signal dent, qui délivre la position des points morts hauts (pmh). I1 comprend aussi un circuit 6 d'alimentation d'un outil de diagnostic qu'un garagiste vient brancher pour contrôler l'état de fonctionnement du moteur. Ces circuits de mise en forme des signaux sont reliés au microprocesseur 7, et les signaux analogiques provenant du circuit 2 sont convertis numériquement par un convertisseur analogique-digital 8 intégré au microprocesseur. Les signaux binaires provenant du circuit 3 sont envoyés directement sur un bus de données 9 qui les envoie au microprocesseur commandant ensuite 1' étage 10 de sortie tout ou rien tel que la climatisation, le relais de protection, la recirculation des gaz d'échappement, la purge canister, la pompe à essence... Les informations dynamiques en provenance du circuit 4 sont envoyées sur le compteur 11 du microprocesseur, ou "timer", qui délivre la vitesse et le régime du moteur. Le circuit 5 TCAM de traitement de l'avance à l'allumage est relié au microprocesseur par une liaison série rapide 12, ou "serial peripheral interface" en vocable anglo-saxon (SPI), pour le calcul du degré d'avance à l'allumage et du signal de commande de l'allumage. Grâce à ces informations ainsi mises en forme, le microprocesseur peut commander les étages électroniques de puissance 100 à 102 qui fournissent respectivement la durée du temps d'injection Ti, le degré d'avance à l'allumage des bougies Av et le rapport cyclique d'ouverture R.C.O. pour contrôler le régime du moteur au ralenti. Le circuit 6 d'alimentation d'un outil de diagnostic est relié par une liaison série lente 13, ou "serial control interface" (SCI), au microprocesseur qui délivre à cet outil les paramètres de fonctionnement du moteur, comme la pression dans le collecteur ou le régime. Un circuit 14 d'alimentation stabilisée du calculateur en 5 volts à partir de la tension 12 volts de la batterie, ainsi qu'une remise à zéro en cas de débranchement du calculateur, sont prévus sur la carte électronique. L'invention consiste à remplacer le microprocesseur 8 bits, par exemple Motorola 68HC11, par un microprocesseur à 2n bits, n étant un nombre entier supérieur ou égal à 4, comme par exemple un microprocesseur 32 bits de type Motorola 68332, branché sur le même connecteur d'entrée du boîtier et disposant d'une capacité mémoire, aussi bien du type à accès en lecture et écriture RAM que du type programmable à accès en lecture PROM, très supérieure à celle adressable par un microprocesseur 8 bits, et permettant de programmer le logiciel de contrôle du moteur en langage évolué C par l'utilisation de techniques de développement logiciel structurées, basées sur une spécification fonctionnelle SART (Structured Analysis Real Time), une conception structurée SD (Structured Design), une bibliothèque de fonctions caractéristiques du contrôle moteur en langage C et une bibliothèque standard pour le système d'exploitation temps réel embarqué. Dans le boîtier 15 de protection du calculateur, le microprocesseur 8 bits est remplacé fonctionnellement par une carte électronique fille 16, venant se connecter à la carte mère du calculateur par un câble 17 relié à l'empreinte du microprocesseur au niveau d'un connecteur de liaison multipoints P3, comme le montre la figure 2 qui est une vue schématique en perspective du système selon l'invention. Le nombre de broches de ce connecteur de liaison P3 est choisi en fonction du nombre de points de connexions nécessaires. Cette carte électronique a une surface de dimensions compatibles avec la taille du boîtier dans lequel elle est logée, au-dessus de la carte mère, ce qui peut nécessiter une légère augmentation de la hauteur du boîtier ou de son couvercle. Cette carte a deux fonctions: une fonction d'émulation des fonctionnalités du microprocesseur 8 bits, comme le compteur ou "timer" et les liaisons série, et une fonction d'extension des possibilités du calculateur de contrôle, dont une extension mémoire. Les éléments référencés sur cette figure sont décrits ultérieurement à propos de la figure 4. La description suivante du calculateur de contrôle moteur selon l'invention est faite à l'aide de la figure 3 qui est un synoptique du calculateur et de la figure 4 qui est un schéma de réalisation de la carte électronique servant au remplacement du microprocesseur 8 bits, dans le boîtier du calculateur. Ce dernier est réalisé dans le même boîtier 15 que le calculateur décrit précédemment et comprend les mêmes circuits 2 à 4 de mise en forme des signaux et le circuit 5 de traitement de l'avance à l'allumage (TCAM). Tous ces circuits sont reliés au connecteur P3 multipoints (50 points) soudé sur la carte 16 et électriquement relié à un microprocesseur à 2n bits, également soudé sur la carte. Ce microprocesseur 18 est par exemple de type 32 bits Motorola 68332 et placé sur un module 19 de format "carte de crédit", ou "business credit card" (BCC), qui comporte également une mémoire programmable PROM 20, dite de démarrage, constituant un moniteur pour la mise au point des programmes téléchargés. Le module 19 BCC vient s'enficher sur la carte par l'intermédiaire de deux connecteurs multipoints, P1 et P2, de 50 points chacun en raison du nombre de broches sur le microprocesseur qui est supérieur à 50. Ce microprocesseur comprend une liaison série rapide (SPI) 21 et une liaison série lente (SCI) 22 qui sont les émulations respectives des liaisons séries du microprocesseur 8 bits remplacé. La fonction de comptage du temps ou "timer" du précédent microprocesseur est émulée par la fonction "timer" (T.P.U.) 23 du microprocesseur 18 par l'intermédiaire du connecteur de liaison P3 relié à des broches du connecteur P1. La carte 16 comporte de plus un circuit 24 convertisseur analogique-digital, extérieur au microprocesseur 18, destiné à relier électriquement le circuit 2 de mise en forme des signaux analogiques au microprocesseur 18. Cette liaison est réalisée d'un côté au niveau de l'empreinte du microprocesseur 8 bits par l'intermédiaire du connecteur de liaison P3 et de l'autre côté par un nombre N de broches des connecteurs P1 et P2 égal au nombre de capteurs analogiques utilisés. Les sorties numériques du convertisseur analogique-digital sont reliées à un circuit de mémoire tampon ou "buffer' 25, de type à accès en lecture et écriture RAM, destinée à sauvegarder les données ainsi numérisées des capteurs analogiques avant qu'elles ne soient lues par le microprocesseur. Cette mémoire tampon est ensuite reliée à une mémoire RAM du microprocesseur par la liaison série 22 SCI. La carte comprend un circuit 28 d'alimentation d'un outil de diagnostic, remplaçant le circuit 6 du calculateur précédent, du type interface RS232 intégré sur le module 19 BCC par l'intermédiaire de plusieurs broches du connecteur P2. Une embase 29 de type DB9 est fixée sur le boîtier permettant la connexion au calculateur hôte de diagnostic. La capacité mémoire du système de contrôle est accrue par l'utilisation d'une mémoire RAM 30 d'au moins 1 mégaoctets. Sur la figure 4, elle comporte deux voies, imp Iémentées chacune avec un boîtier. Une mémoire de type PROM 31, d'une capacité d'au moins 512 kilooctets est ajoutée au système, et organisée en un jeu de quatre composants mémoires par exemple. Ces deux types de mémoire communiquent avec le microprocesseur 18 par le bus de données 9. Le décodage des signaux de sélection de ces mémoires RAM et PROM est réalisé par un circuit 32 de décodage d'adresses, connecté au microprocesseur 18 par un bus d'adresses 90 et fournissant les signaux de sélection, ou "chip select", des différents boîtiers mémoires RAM et PROM. Il est implémenté dans un circuit programmable rapide de type PAL 22V10. L'alimentation stabilisée en 5 volts du calculateur est réalisée par un régulateur de tension 26 de la carte fille, fixé sur le boîtier qui sert de dissipateur. La masse du régulateur est isolée de la masse mécanique et est reliée directement à la masse électrique du boîtier. La tension de 5 volts est dérivée soit de la tension 12 volts permanente disponible dans le calculateur, soit de la tension 12 volts après contact. Un commutateur 27, accessible à l'utilisateur sur la partie extérieure du boîtier, permet la sélection de l'une de ces deux sources, la tension 12 volts après contact servant pour l'utilisation du calculateur avec une application en PROM, c'est-à-dire avec un programme lancé lors de la mise du contact véhicule, alors que la tension 12 volts permanente servant pour une application téléchargée dans la mémoire RAM de la carte électronique 16 qui est toujours alimentée électriquement. La tension +5 volts en provenance du régulateur 26 entre sur la carte électronique 16 par l'intermédiaire d'un filtrage C10. Pour des raisons de place sur la carte fille 16, les fils de l'alimentation et de l'embase 29 peuvent être regroupés sur un même connecteur d'alimentation P4, implanté sur la carte. Un jeu 33 de cavaliers est placé sur la carte électronique pour affecter les numéros d'interruptions du microprocesseur 18 et sélectionner la mémoire PROM de démarrage 20 du module 19 ou la mémoire PROM 31 de la carte fille 16, qui peuvent être configurées par logiciel pour définir l'adressage et la répartition des zones mémoires utilisées Un jeu de 9 capacités C1 à Cg assure le filtrage des parasites de l'alimentation sur les différentes mémoires RAM et PROM du calculateur, ainsi que sur la mémoire tampon, le convertisseur analogique-digital et le décodeur d'adresses, et une capacité C10 assure le filtrage général de l'alimentation 26 de la carte. Deux boutons-poussoirs à action momentanée 34 et 35 sont prévus à l'extérieur du boîtier 15 pour être accessibles à l'utilisateur, l'un 34 permettant le redémarrage du microprocesseur et l'autre 35 permettant son arrêt. Comme le calculateur 8 bits de l'art antérieur, ce calculateur à 2n bits commande les étages de puissance 100 à 102 et 10 contrôlant respectivement le temps d'injection Ti, l'avance à l'allumage Av, le rapport cyclique d'ouverture de la vanne d'air additionnel R.C.O. et les différents fonctionnalités du véhicule. L'invention permet un accroissement de la performance du calculateur car, pour les mêmes conditions de fonctionnement, là où le microprocesseur 8 bits encode des instructions sur un mot d'un octet, le microprocesseur 32 bits encode quatre instructions sur un mot de 32 bits et exécute quatre fois plus d'instructions par cycle d'horloge. Ce gain en puissance de. calcul par un facteur 4 à iso-fréquence d'horloge subsiste si les instructions sont codées sur un mot de deux octets. De plus, il est possible de faire fonctionner le microprocesseur 32 bits à une fréquence double, ou quadruple de celle du microprocesseur 8 bits. Le système de contrôle d'un moteur thermique selon l'invention présente de nombreux avantages déjà décrits par rapport au système de contrôle actuel, comme une puissance de calcul accrue, une totale compatibilité avec le calculateur actuel 8 bits, un espace mémoire adressable RAM et PROM plus grand, un encombrement similaire et un simple branchement sur le même connecteur entre le boîtier et le véhicule, ce qui minimise le coût du système. Il est également possible d'ajouter des fonctionnalités et des entrées/sorties au calculateur à partir des broches du nouveau microprocesseur 32 bits. Concernant le logiciel de programmation en langage évolué, il présente l'avantage d'être modulaire et de pouvoir être téléchargé en mémoire RAM ou claqué en mémoire PROM. Il est possible aussi d'assurer la gestion multi-tâche des fonctionnalités du logiciel par l'intermédiaire de l'exécutif temps réel embarqué, avec des possibilités de récurrence des points morts hauts pour la synchronisation avec la mécanique du moteur et de récurrences temporelles variées en fonction des besoins du moteur et de la rapidité d'évolution des phénomènes physiques contrôlés. Un autre avantage est le prototypage rapide des évolutions du logiciel sur table et dans le véhicule. L'invention permet aussi la consultation en temps réel, en mémoire RAM, de tous les paramètres de fonctionnement du moteur et de toutes les variables et données du logiciel, dont les calibrations qu'il est ainsi possible de modifier quand le moteur tourne soit dans un garage soit sur un prototype,avec un affichage des pannes. REVENDICATIONS 1. Système de contrôle d'un moteur thermique de véhicule automobile, à partir de capteurs délivrant des paramètres de fonctionnement du moteur et des fonctionnalités du véhicule, utilisant un calculateur électronique logé dans un boîtier de protection relié aux capteurs par un connecteur extérieur, et constitué par des circuits de mise en forme des signaux délivrés par lesdits capteurs et un circuit de traitement de l'avance à l'allumage, caractérisé en ce que le calculateur comprend de plus une carte électronique fille (16) logée dans le boîtier (15) de protection et reliée aux circuits de mise en forme (2,3,4) et de traitement (5), montés sur une carte électronique mère, par un connecteur de liaison (P3), sur laquelle sont connectés électriquement - un microprocesseur (18) à 2n bits, avec n nombre entier supérieur ou égal à 4, placé sur un module (19) qui s'enfiche sur la carte par l'intermédiaire de deux connecteurs multipoints (P1,P2) et qui comporte également une mémoire de démarrage programmable à accès en lecture PROM (20); - un circuit (24) convertisseur analogique-digital relié à un des circuits de mise en forme des signaux par le connecteur de liaison (P3); - une mémoire tampon (25) sauvegardant les valeurs numériques en sortie du convertisseur et relié au microprocesseur par les connecteurs multipoints (P1,P2) - une alimentation stabilisée (26) réalisée par un régulateur de tension fixé sur le boîtier; - une mémoire à accès en lecture et écriture RAM (30) et une mémoire programmable à accès en lecture PROM (31), commandées par le microprocesseur (18) à travers un circuit (32) décodeur d'adresses. 2. Système de contrôle selon la revendication 1, caractérisé en ce que le calculateur comprend de plus un circuit (28) d'alimentation d'un outil de diagnostic, intégré sur le module (19) par le connecteur multipoint (P2) et relié à une embase (29) fixée sur le boîtier pour la connexion avec ledit outil. 3. Système de contrôle selon la revendication 1, caractérisé en ce que la tension d'alimentation du calculateur est délivrée par le régulateur de tension (26) à partir de la tension permanente disponible dans le calculateur fournie par la batterie du véhicule ou de la tension après contact, et en ce que le boîtier de protection (15) est doté d'un commutateur (27) accessible à un utilisateur du véhicule et permettant la sélection de la tension d'origine. 4. Système de contrôle selon la revendication 3, caractérisé en ce que la masse du régulateur de tension (26) est isolée de la masse mécanique et reliée directement à la masse électrique du boîtier (15). 5. Système de contrôle selon la revendication 1, caractérisé en ce que le module (19) est au format déterminé "carte de crédit". 6. Système de contrôle selon la revendication 1, caractérisé en ce que le logiciel de programmation du calculateur est écrit en langage C. 7. Système de contrôle selon la revendication 1, caractérisé en ce que deux boutons-poussoirs à action momentanée (34 et 35) sont prévus à l'extérieur du boîtier (15) pour être accessibles à l'utilisateur, l'un (34) permettant le redémarrage du microprocesseur et l'autre (35) permettant son arrêt. 8. Système de contrôle selon la revendication 1, caractérisé en ce qu'un jeu (33) de cavaliers est placé sur la carte électronique fille (16) pour affecter les numéros d'interruptions du microprocesseur (18) et sélectionner la mémoire PROM de démarrage (20) du module (19) ou la mémoire PROM (31) de la carte fille (16), qui peuvent être configurées par logiciel pour définir l'adressage et la répartition des zones mémoires utilisées. 9. Système de contrôle selon la revendication 1, caractérisé en ce qu'un ensemble de 9 capacités (C1 à Cg) assure le filtrage des parasites de l'alimentation sur les différentes mémoires RAM et PROM du calculateur, ainsi que sur la mémoire tampon (25) , le convertisseur analogique-digital (24) et le déçodeur d'adresses (31), et une capacité (C10) assure le filtrage général de l'alimentation (26) de la carte. 10 Système de contrôle selon les revendications 1, 8 ou 9, caractérisé en ce que la mémoire RAM (30) connectée sur la carte électronique (16) comporte deux voies, implémentées chacune avec un boîtier, et en ce que la mémoire PROM (31) également connectée sur la carte (16) est organisée en un jeu de plusieurs composants mémoires.