Brevet FR2733279A1 — publié le 19961025

Procédé pour contrôler l'angle d'avance d'un moteur La presente invention concerne un procédé pour contrôleur l'angle d'avance d'un moteur, qui convient pour contrôler l'avance à l'allumage d'une bougie d'allumage d'un moteur à conbtion interne, et et l'angle d'avance du signai de commutation pour commuter la puissance électrique fournie à un moteur sans balai, d'apres la vitesse de rotation du moteur et, en particulier, un procedé pour contrôler I'angle d'avance d'un moteur, en déterminant angle d'avance par consult-.ation d'une table. L'avance à Itallumage d'un moteur à combustion interne doit entre modifiée selon l'etat de fonctionnement du moteur, tel que la charge et la vitesse de rotation du moteur et de manière classique, elle a été contrôlée mécaniquement à l'aide d'un régulateur centrifuge ou analogue. i I est connu que, lorsque la vitesse de rotation du moteur diminue, non seulement la période d'avance doit être augmentee, mais une commande progressivement plus fine devient également nécessaire. Récemment, afin d'obtenir une commande d'avance à l'allumage optimale, on utilise de plus en plus des systemes de commande electroniques d'avance a l'allumage qui mesurent la vitesse de rotation du moteur et convertissent la vitesse mesurée en des données numériques. Selon un tel systeme de commande électronique d'avance à l(allumage, apres que la vitesse de rotation du moteur ait été mesurée et convertie en données numériques, une période d'avance correspondant à la vitesse de rotation est déterminée à partir d'une table de consultation. Si la vitesse de rotation ou I a période de rotation est directement associee à la période d'avance correspondante dans une table de consultation, la table devient trop grande. Pour cette raison, il est usuel de convertir chaque valeur de la vitesse de rotation ou de la période de rotation en l'une d'un n nombre de paramètres N, à l'aide d'une première table et de déterminer l'angle d'avance à partir du paramètre N à l'aide d'une deuxième table.Du fait qu'une commande plus fine devient nécessaire au tur et à mesure que la vitesse de rotation augmente, il a été classique de définir la première table de manière que chaque valeur du paramètre N soit associée à un nombre de valeurs de vitesse de rotation et ce nombre est progressivement réduit à un ou, en d'autres termes, la puissance de définition est augmentée, au fur et à mesure que la vitesse de rotation est augmentee. Cependant, deux tables de consultation sont necessaires et c e c i s i g n i t i e q u 'u n e r e l a t i v e m e n t grande capacit d de mémoire est nécessaire, bien qu'elle puisse ëtre intérieure à cel le nécessaire pour associer directement la vitesse de rotation à la période d'avance. Un probleme analogue existe lorsque 1 'o n commande l'angle d'avance du signal de commutation pour commuter la puissance électrique fournie à un moteur sans balai. Au vu de tells problemes de lart anterieur, un but principal de la présente invention est de proposer un système de commande d'angle d'avance, commande électroniquement, qui puisse associer la vitesse de rotation ou la période de rotation à la période d'avance, à l'aide d'une petite table de consultation unique, de maniere simple, et puisse être mis en oeuvre à l'aide d' un dispositif de stockage de capacite relativement petite. Un deuxième but de la présente invention est de proposer un systeme de commande d'angle d'avance, commandé électroniquement, utilisant une table de consultation qui pu1sse obtenir une relation non linéaire souhaitee sans compliquer l'algorithme ni augmenter la capacite de mémoire nécessaire. Selon la présente invention, un tel but peut être atteint en proposant un procedé pour contrôler 1'angle d'avance d'un moteur selon la vitesse de rotation du moteur, comprenant les etapes de: détection d'une période de rotation du moteur sous la forme d'un nombre binaire, consistant en un premier nombre de bits; extraction d'un deuxieme nombre de bits à partir du nombre binaire, le deuxieme nombre etant inferieur au premier nombre ; obtention d'un parametre de période de rotation à partir des bits extraits ou par conversion des bits extraits par une procedure arithmetique b a s e e sur le le premier nombre, le deuxième nombre et une valeur minimale de la période de rotation du moteur; et détermination d 'n n angle d'avance pour chaque vitesse de rotation donnée du moteur, en consultant une table specifiant une relation entre le parametre de période de rotation et l'angle d'avance. Par une extraction d'un nombre prescrit (deuxième nombre) de bits depuis la période de rotation fournie sous la torme d'un nombre binaire et en utilisant ce nombre de bits extraits pour déterminer un parametre associe à un angle d'avance correspondant, la precision des données diminue au fur et à mesure que le nombre de bits augmente. h n d'autres termes, une commande plus fine d'angle d'avance est obtenue lorsque la periode de rotation diminue ou ou lorsque la vitesse de rotation augmente, et une commande d'angle d'avance plus grossière est obtenue lorsque la période de rotation augmente ou lorsque la vitesse de rotation diminue. Ceci corresPond a un modele souhaité de précision de commande de l'angle d'avance. Selon un mode de réal1sation prefére de la présente invention, la valeur minimale de la période de rotation du monteur, tournie sous la forme d'un nombre binaire, consiste en un nombre de bits au moins égal au nombre de bits extraits et l'étape d'obtention dudit paramètre de rotation comprend les etapes de: établissement du parametre de période de rotation sous la forme d'une valeur consistant en le nombre de bits extraits moins 2 - , lorsque la puissance de rotation du moteur, fournie sous la forme d'un nombre binaire, consiste en un nombre de bits égal à la valeur minimale, le deuxième nombre etant i; établissement du parametre de période de rotation sous la forme des bits extraits, lorsque la période de rotation du moteur presente un bit de plus que la valeur minimale: et établ1ssement du paramètre de période de rotation sous la forme d'une valeur consistant en les bits extraits plus plus @@@@, l o r s q u e la periode de rotation du moteur, fournie sous la norme d'un nombre binaire, présente j bits de plus que la valeur minimale j é t a n t egal à deux ou plus. L'angle d'avance d'un moteur consiste en un angle d'avance d'un signal de commutation prévu pour commuter une puissance d'entrée vers un moteur électrique sans balai, un angle d'avance d'une avance à l'allumage d'un moteur à combustion interne, ou toute application qui nécessite de commander une relation d'avance ou de phase d' u n certain evénement par rapport à une référence temporelle cyclique. La présente invention est décrite ci-apres en se refèrant aux dessins annexes, dans lesquels: la figure 1 est un schema à blocs représentant la structure d'un système de commande d'allumage pour un moteur à c o m b u s t i o n interne, auquel s ' a p p I i q u e 1 a présente invention; la figure 2 est url graphique representant la relation entre le parietrz de de période de rotation N et la période d'avance; et la figure 3 est un schema à blocs représentant la structure d'un système de commande d'angle d'avance pour un moteur auquel stappl 1que la presente invention. La figure ï est un schéma à blocs représentant la structure globale d'un mode de réalisation du système de commande d'avance à l'allumage d'un moteur, selon la presente Invention, La période de rotation fournie à un convertisseur analogique/numérique (A/D) 1 est convertie en un nombre binaire de lb bits (premier nombre de bits) qui est fourni a une Unité Centrale à Microprocesseur (MPU) 2. Huit bits signiticatifs supérieurs de ce nombre binaire (deuxième nombre de bits: i ) en sont extraits et convertis en un paramètre de période de rotation N qui est explique ci-apres.Une table de consultation L U 3 d detinissant une relation entre le paramètre N et la période d'avance est consultée à l'aide du parametre N à titre d'1ndex et le signal de sortie. ou la periode d'avance, est fournie à un systeme d'allumage qui n'est pas représenté sur le dessin. Comme représenté sur le Tableau 1, i selon le présent mode de realisation, la valeur minimale de la période de rotation est donnée sous la forme d'un nombre binaire 10UU 0000 000U (211=2048 en décimale) et la valeur maximale de la période de rotation est donnée sous la forme d'un nombre binaire 111 1111 1000 0000 (65280 en decimale). Tableau 1 période de rotation parametre de (16 bits) (valeur opération période de extraite soulignée) arithmétique rotation N(9 bits) 0000 1000 OOOÙ 0000 valeur extraite 0 0000 0000 A t - 1001U UOU 0000 0111 1111 1111 0 0111 1111 0001 0000 0000 0000 valeur extraite 0 1000 0000 B t tel le qu'elle 0001 1111 1111 1111 U 1111 1111 0010 0000 U000 ÚOUO valeur extraite 1 0000 0000 C + ZOUU OUUU l UÚ11 1111 1111 1111 1 0111 1111 UîUU 00UU 0OOU OOU valeur extraite 1 1000 0000 Il + i 0101010 UUU Ulll 1111 1111 1111 l 1111 1111 t I est décrit ci-apres la manière dont huit bits signiticatifs superieurs de la période de rotation, fournie sous la forme d'un nombre binaire de 16 bits, sont extraits et la manière dont ils sont convertis en une valeur correspondante du parametre N en se référant au tableau 1. Avant tOllt, comme indique par les soulignements dans la première colonne du Tableau 1, huit bits significatifs supérieurs du nombre binaire à 16 bits, representant la période de rotation, sont extraits.Si la période de rotation precédant l'étape d'extraction consiste en un nombre de bits égal à la valeur minimale de la période de rotation, le paramètre de période de rotation N est fourni par la soustraction de 2 = 2 (=lÛUU 000U) depuis le nombre binaire extrait de 8 bits, comme dans la ligne indiquée par la lettre A sur le Tableau 1. Si la période de rotation précédant l'étape d'extraction consiste en un nombre binaire qui est plus long que ìa valeur minimale de la période de rotation, de la valeur d'un bit, le paramètre de période de rotation N est tourni tel quel par le nombre binaire de 8 bits extrait, comme represente dans la ligne indiquée par la lettre B sur le Tableau 1.Si la pers ode de rotation précédant l'étape d'extraction consiste en un nombre binaire qui est plus long de j bits que la valeur minimale de la période de rotation, i étant un nombre supérieur ou régal à deux, le paramètre de période de rotation N est fourni en ajoutant 2 au nombre binaire de 8 bits extrait. Par exemple, dans le cas de la partie indiquee par la lettre C sur le Tableau 1, du fait que la période de rotation precedant l'étape d'extraction est plus longue de deux bits que la valeur minimale, le parametre de période de rotation N est tourni en ajoutant 2 = 2' 1 0000 UUU0) au nombre binaire de 8 bits extrait.Dans le cas de la parte indiquee par la lettre D sur le Tableau 1, du fait que la période de rotation procédant l'étape d'extraction est plus longue de trois bits que la valeur minimale, le paramètre de période de rotation N est tournl en aJoutant 2'- = 2 k 10 1000 UUUu) au nombre binaire de 8 bits extrait. Comme representé sur le coté droit du Tableau 1, le paramètre de periode de rotation N est fourni sous la forme d'un nombre binaire de (i + 1) = 9 bits, selectionné dans un groupe de 512 nombres binaires successifs compris dans la plage allant de 0 0Ú00 00001 (0) à 1 1111 1111 (511). Par conséquent, il suffit que la LUT 3 consiste en une table associant 512 valeurs de paramètre de période de rotation N possibles à des périodes d'avance correspondantes qui, par exemple, peuvent être tournies par des nombres binaires de 16 bits (Tableau 1). Ainsi la relation entre le paramètre de période de rotation N et la période d'avance peut être obtenue comme représente de manìère conceptuelle sur le graphique de la figure 2. Plus spécifiquement, une augmentation progressivement plus grande de la période de rotation est nécessaire pour produire chaque increment de la période d'avance. tn d'autres termes, lorsque la periode de rotation diminue, chaque décrément de la période de rotation provoque une augmentat1on proaressivement grande de la periode d'avance. Dans ce mode de réalisation, huit bits significatifs supérieurs ont été extraits des donnees de période de rotation de 16 bits et converties en une valeur correspondante du paramètre de vitesse de rotation N consistant en 9 bits. Cependant, il est également possible d'extraire un nombre différent (deux nombre i), tel que sept et neuf, de bits depuis le paramètre de période de rotation N, qui peut egalement consister en un nombre différent (premier nombre), tel que 15 et li, de bits. Tant que la valeur minimale consiste en une puissance d il est il est possible d' obtenlr un rendement éleve en decalant la valeur minimale vers zéro. Il est également possible d'extraire un deuxième nombre de bits significatits supérieurs depuis une période de rotation exprimée par un premier nombre de bits et d'établir les bits extraits sous la forme du parametre de période de rotation N! en remplissant un nombre nécessaire de zeros dans des emplacements inférieurs, pour obtenir n résultant analogue bien que le nombre total de bits du paramètre de période de rotation N puisse augmenter, et que les valeurs du paramètre puissent ne pas etre entièrement successives. La figure 3 est un s c h é m a 3 blocs du système de commande d'entraìnement pour un moteur sans baìai dtun vehicule electrique auquel s'appli4ue la présente invention. L a période de rotation fournie à un convertisseur A/D est convertie en un nombre binaire de 1 bits (premier nombre de bits) qui est q n e s t f o n r n i à une MPU 12.Huit bits significatifs supérieurs de ce nombre b i n a i r e (deuxième nombre de bi ts: i ) en sont extraits et convertis en un paramètre de période de rotation N qui est expliqué ci -apres . Une LUI j définissant une relation entre le paramètre N et la periode d'avance est consult à à l'aide du parametr N N servant d'index et le signal de sortie ou la période d'avance, est fournie) à un système d'entrainement qui n'est pas représente sur le dessein. Le mode de fonctionnement de ce systeme est analogue a å celui du système de commande d'allumage de moteur et n'y est pas décrit. Comme on peut le voir à partir de la description ci-dessus, selon le procédé de contrôle de 1' ange d'avance d'un m o t e u r s e l o n la présente invention, du tait de l'agencement des etapes de mesure d'une période de rotation du moteur sous la forme d'un nombre binaire consistant en un premier nombre de bits; extraction d'un deuxieme nombre de bits depuis le nombre b i na i re, I e deuxieme nombre etant intérieur au premier nombre; obtention d'un paramètre de periode de rotaton à à partir des bits extraits ou Par une conversion des bits extraits a l'aide d'une procédure a r i t h m e t i q Ir e basée sur I e nombre b - n a i r e, les bits extraits et une valeur minimale de la période de rotation du moteur; et détermination d'une periode d'avance pour chaque vitesse de rotation donne dru moteur, en consultant une table spécifiant une relation entre le paramètre de période de rotation et la période d'avance, il est possible d'associer une vitesse de rotation ou une période de rotation à une période d'avance à l'aide d'une petite table de consultation unique, qui peut être mise en oeuvre a l'aide d'un dispositit de stockage de taible capacité.En particulier, en établissant le parametre de période de rotation s o u s la forme d ' n n e v a I e u r consistant en I e nombre de bits extraits moins 2\-, lorsque la période de rotation du moteur fournie sous la torme d 'n n nombre binaire consiste e n un nombre de bits égal à la valeur minimale, i etant le nombre de bits extraits; en établissant le paramètre de période de rotation sous la forme des bits extraits lorsque la période de rotation du moteur presente un nombre de bits egal à la valeur minimale; et en établissant le parametre de période de rotation sous I a forme d'une valeur consistant en le nombre de bits extraits plus 2@@3@, lorsque la période de rotation du moteur fournie sous la forme d'un nombre binaire présente j bits de plus que la valeur minimale, j etant égal à 2 ou plus, le paramètre de période de rotation peut être fourni par une série de nombres consecutits consistant en le nombre prescrit de bits, et la taille de la table de consuitation peut encore être reduite. REVENDICATIONS 1. - trocède pour contròler l'angle d'avance d'un moteur selon la vitesse de rotation du moteur, caractérisé par le fait qu'il comprend les etapes de: détection d'une période de rotation dudit moteur sous la forme d 'u n nombre binaire, consistant en un premier nombre de bits; extraction d'un deuxième nombre de bits à partir dudit nombre binaire, ledit deuxième nombre étant inférieur audit premier nombre; obtention d'un paramètre de période de rotation à partir des bits extraits ou par conversion des bits extraits par une procedure arithmetlque basee sur ledit premier nombre, ledit deux1eme nombre et une valeur minimale de ladite periode de rotat1on dudit moteur;; et détermination d'un anqle d' avance pour chaque vitesse de rotation dnnnee dlld7t moteur, en consultant une table spécifiant une relation entre ledit paramêtre de période de rotation et ledit anqle d'avance. 2. - Procéde pour contrôler I 'angle d'avance d'un moteu r selon I a revend j catlOn L, , caractérisé par le fait que ladite valeur minimale de ladite période de rotation dudit moteur, fourn1e sous la forme d'un nombre binaire, consiste en un nombre de bits au moins égal audit nombre de bits extraits et que l'étape d'obtention dudit paramètre de rotation comprend les étapes d'établissement dudit paramètre de période de rotation sous la torve d'une valeur consistant en ledit nombre de bits extraits moins 2 , lorsque ladite puissance de rotation d u d i t moteur , tournie sous ) a forme d'un nombre binaire, consiste en un nombre de bits égal à ladite valeur minimale, ledit deuxième nombre étant i;; d'etablissement dudit parametre de période de rotation sous la torme desdits bits extraits, lorsque ladite période de rotation dudit moteur presente un bit de plus que ladite valeur minimale; et d'etablissement dudit paramètre de période de rotation sous la torme d'une valeur consistant en lesdits bits extraits plus 2@@@@@@, lorsque ladite période de rotation dudit moteur, fournie sous la forme d'un nombre binaire, presente j bits de plus que ladite valeur minimale, j entant egal å deux ou plus. 3. - Procéde pour controler l'angle d'avance d'un moteur selon la revendication 1, dans lequel ledit angle d'avance d'un moteur consiste en un angle d'avance d'un signal de commutation, pour commuter une puissance d'entrée vers un moteur électrique sans balai 4. - Procédé pour contrôleur l'angle d'avance diun moteur selon la revendication 1, dans lequel ledit angle d'avance d'un moteur consiste en un angle d'avance a L'allumage d'un moteur à combustion interne.