FR 2767426 A1 19990219 FR 9809663 A 19980728 "Contrôleur pour moteur à vitesse variable" DESCRIPTION La présente invention concerne des contrôleurs pour des moteurs à vitesse variable et plus particulièrement des contrôleurs pour contrôler la vitesse de fonctionnement de moteurs à vitesse variable du type fonctionnant à une vitesse liée au rapport cyclique d'une tension de commande modulée en largeur d'impulsions (MLI) ("Pulse Width Modulation": PWM) qui lui est appliquée et à la charge appliquée. Les moteurs à vitesse variable qui fonctionnent à une vitesse liée au rapport cyclique d'une tension de commande MLI sont typiquement utilisés dans des outils de puissance portatifs. Ces moteurs sont généralement peu coûteux de sorte que le coût global des outils peut être compétitif. Par conséquent, ces moteurs présentent une réponse en couple médiocre, spécialement à basse vitesse. Bien qu'il soit connu d'utiliser un circuit de contre- réaction tachymétrique pour obtenir de ces moteurs la performance souhaitée, ce procédé n'est pas utilisable parce qu'il nécessiterait d'encourir un coût supplémentaire qui se répercuterait dans le coût des outils. On connaît des contrôleurs ne nécessitant pas un circuit de contre-réaction tachymétrique qui sont utilisés essentiellement pour le contrôle de gros moteurs industriels qui présentent des caractéristiques de fonctionnement linéaires. Cependant, ces contrôleurs ne sont pas adaptés pour contrôler des moteurs ayant des caractéristiques de fonctionnement non linéaires que présentent les moteurs dans les outils de puissance. Par conséquent, un objet principal de la présente invention est de fournir un contrôleur de moteur amélioré pour obtenir des moteurs à vitesse variable une réponse en couple accrue. - 2- Un autre objet est de fournir un contrôleur de moteur amélioré qui soit non coûteux à produire. Encore un autre objet est de fournir un contrôleur de moteur amélioré qui soit adapté pour effectivement contrôler des moteurs qui sont placés dans des conditions de charge variant rapidement. D'autres objets et avantages apparaîtront à la lecture de la description détaillée qui suit, tout en se référant aux dessins annexé, dans lesquels: La figure 1 est un schéma-bloc illustrant d'une manière générale une forme de réalisation de la présente invention; La figure 2 est un schéma électrique illustrant une forme de réalisation de la présente invention; et Les figures 3 à 10 comportent des organigrammes décrivant le fonctionnement de la présente invention. La présente invention concerne un contrôleur pour contrôler la vitesse de fonctionnement d'un moteur du type utilisé généralement dans les outils de puissance. Le contrôleur comporte, entre autres choses, un processeur qui détermine à partir d'un stockage de données et dans un intervalle de temps prédéterminé, des rapports cycliques appropriés en modulation de largeur d'impulsions (MLI) pour contrôler la vitesse de fonctionnement du moteur. Les signaux correspondant aux rapports cycliques MLI sont appliqués en entrée d'un circuit qui produit une tension modulée en largeur d'impulsions qui est appliquée au moteur pour obtenir et maintenir la vitesse du moteur souhaitée. D'une manière générale, la présente invention concerne un contrôleur pour contrôler la vitesse de fonctionnement d'un moteur à vitesse variable du type fonctionnant à une vitesse liée au rapport cyclique d'une tension de commande modulée en largeur d'impulsions qui lui est appliquée et à la charge appliquée. Le contrôleur -3- comporte un commutateur de réglage pour régler la vitesse de fonctionnement du moteur et un dispositif pour mesurer la courant appliqué au moteur. Il comporte également un dispositif de stockage de données pour stocker des données représentant une pluralité de différents rapports cycliques en modulation de largeur d'impulsions pour commander le moteur à diverses vitesses de fonctionnement du moteur souhaitées et avec diverses charges appliquée au moteur. Un processeur est connecté fonctionnellement au commutateur de réglage, au dispositif de mesure de courant et au dispositif de stockage de données pour générer des signaux représentant un rapport cyclique particulier correspondant à un réglage de vitesse de fonctionnement souhaité et à une charge appliquée pour conduire à la vitesse souhaitée du moteur. Le processeur génère ces signaux à un intervalle de temps prédéterminé pour atteindre et maintenir la vitesse souhaitée du moteur. Un dispositif d'application de tension est fourni pour appliquer au moteur la tension modulée en largeur d'impulsions possédant le. rapport cyclique particulier. Une caractéristique nouvelle de la présente invention est que les données représentant les rapports cycliques MLI nécessaires pour faire fonctionner le moteur aux vitesses de fonctionnement souhaitées et avec les charges appliquées sont stockées dans le dispositif de stockage de données. Ainsi, les rapports cycliques MLI sont immédiatement accessibles sans nécessiter d'effectuer d'importants calculs algébriques. Ceci permet au processeur d'obtenir les rapports cycliques MLI très rapidement, et permet ainsi de fournir une compensation plus réactive et plus stable de la tension du moteur nécessaire pour maintenir un contrôle de vitesse dans des situations de grande et rapide variation de charge. En référence maintenant aux dessins, et en particulier à la figure 1, on a représenté un schéma-bloc -4- d'une forme de réalisation d'un contrôleur de moteur, indiqué en général en 20, selon la présente invention. La configuration de base de ce système comporte un redresseur 22 qui convertit une tension d'entrée5 alternative 21 en une tension continue de système ou de fonctionnement. La tension redressée est délivrée à un filtre 24 qui élimine toute les impulsions à haute fréquence. Un circuit limiteur de courant 26 est connecté en aval du filtre 24 pour limiter le courant élevé provenant de la source de tension d'entrée, la sortie de ce circuit limiteur étant ensuite délivrée à un régulateur de tension 28 pour réguler des tensions délivrées à un processeur 30 et à un circuit de commande de signal 32. Le circuit de commande de signal 32, connecté fonctionnellement au processeur 30, reçoit des signaux de modulation de largeur d'impulsions générés par le processeur 30, et conduit ces signaux vers un dispositif d'application de tension 34. Une tension modulée en largeur d'impulsions correspondant aux signaux reçus du circuit de commande de signal 32 est ensuite appliquée à un moteur 36 par le dispositif d'application 34. Un commutateur de commande marche/arrêt 38 pour mettre le processeur en marche ou à l'arrêt, et un commutateur de réglage 40 pour entrer la vitesse souhaitée du moteur 36 sont également connectés au processeur 30. Le processeur 30 est en outre pourvu d'un dispositif d'affichage 42 qui lui est connecté pour afficher des messages à un opérateur. En outre, un circuit de réinitialisation 44 est connecté entre le régulateur de tension 28 et le processeur 30 pour réinitialiser le système. Un circuit de mise en court- circuit de puissance est prévu et connecté entre un point en amont du circuit limiteur de courant 26 et le processeur 30, et court-circuite le contrôleur 20 lorsqu'un dispositif de - 5- surveillance de tension 46 indique l'apparition d'une situation de survitesse du moteur. Un élément caractéristique important de la présente invention, qui est connecté au processeur 30, est un dispositif de stockage de données 47 qui contient des données qui définissent une table de consultation. Le dispositif de stockage de données 47 stocke des rapports cycliques en modulation de largeur d'impulsions correspondant à des vitesses de fonctionnement du moteur réglées par le commutateur de réglage 40 pour une gamme de charges données placées sur le moteur 36. En se référant maintenant à la figure 2, le contrôleur 20 du moteur est représenté sous la forme d'un diagramme schématique électrique. Le redresseur 22, connecté électriquement à la jonction d'entrée 48, comporte 4 diodes 49 qui réalisent un redressement pleine- onde ou demi-onde d'une tension d'entrée alternative. On notera que le redressement alternatif/continu peut être effectué de n'importe quelle façon connue de l'homme du métier, pourvu qu'un redressement pleine-onde soit réalisé. En aval du redresseur 22, la tension continue redressée est filtrée par un filtre 24 pour supprimer toute impulsion à haute fréquence qui pourrait provoquer une surtension sur le dispositif d'application de tension 34. Bien que des condensateurs 50 soient employés comme éléments de filtrage dans la présente invention, l'homme du métier comprendra que d'autres agencements de filtrage peuvent être utilisés pour réaliser la même fonction. Le courant filtré est alors délivré au moteur 36 via les dispositifs d'application de tension 34 et au circuit limiteur de courant 26 qui comporte cinq résistances 52 reliées en série. Le circuit limiteur de courant 26 limite le courant provenant de la tension d'entrée redressée à un niveau suffisamment bas pour être délivré au régulateur de tension 28. Deux diodes zener 54, 56 incluses dans le - 6- régulateur 28 délivrent approximativement respectivement V nécessaires pour faire fonctionner le dispositif d'application de tension 34 et 5 V requis pour faire fonctionner le processeur 30. En se référant maintenant au circuit de commande de signal 32, celui- ci comporte un transistor 58, de préférence un transistor 2N3906, couplé en alternatif via des résistances 60, 61 et un condensateur 62 à une sortie de signal 5 V issu de la broche 24 du processeur 30. Des transistors 64, 66, connectés à la sortie du transistor 58, forment un amplificateur 68 qui amplifie le niveau de courant délivré par le transistor 58 de sorte que le dispositif d'application de tension 34, qui est connecté à la sortie de l'amplificateur 68, puisse être commandé correctement. Le dispositif de couplage alternatif est adapté pour empêcher le moteur de fonctionner hors contrôle en coupant automatiquement le moteur 36 dans le cas o le processeur aurait une défaillance avec pour conséquence de laisser le dispositif d'application de tension 34 en position de marche. Dans une telle situation, le dispositif d'application de tension 34 resterait en marche pendant approximativement 3 à 5 millisecondes avant que le courant à travers le condensateur 62 ne chute à un niveau trop bas pour commander le dispositif d'application de tension 34. En fonctionnement normal, le processeur 30 délivre une impulsion pour réinitialiser le condensateur 62 de sorte que le moteur 36 ne soit pas coupé non intentionnellement. En référence maintenant au dispositif d'application de tension 34, celui-ci comporte un transistor à effet de champ (FET) 70 connecté à la sortie de l'amplificateur 68. Une diode 72 est connectée entre le FET 70 et la sortie du filtre 24, et délivre un verrouillage continu pour le FET lorsque le FET est commuté en mode bloqué par le circuit de commande de signal 32. La diode 72 procure --7- aussi un chemin pour permettre la continuité de circulation du courant du moteur après blocage du FET 70. En fonctionnement, le FET 70 est commuté en mode passant pour appliquer une tension au moteur 36, ce qui augmente le courant dans le moteur. Le FET 70 est ensuite commuté en mode bloqué avec pour effet de faire passer le courant du moteur à travers la diode 72, ce qui diminue le courant dans le moteur. Le FET 70 est commuté en mode passant et en mode bloqué à une fréquence d'environ 2000 fois par seconde avec un rapport cyclique prédéterminé tel que déterminé par le processeur 30. Ce rapport cyclique multiplié par la tension d'entrée détermine la tension moyenne appliquée au moteur 36. Lorsque la tension moyenne appliquée au moteur 36 augmente, la vitesse du moteur augmente également pour toute charge donnée. Dans une forme de réalisation préférée, le processeur est un microprocesseur Motorola 68HC05P9. Un homme du métier comprendra que d'autres microprocesseurs réalisant des fonctions similaires peuvent être employés. Le commutateur de réglage de vitesse 40, connecté respectivement aux broches 22 et 19 du processeur 30, comporte un commutateur d'incrémentation 73 et un commutateur de décrémentation 74. Le circuit de réinitialisation 44 comporte une résistance 76 et un condensateur 78 et applique une tension de réinitialisation à la broche 1 du processeur 30 à chaque fois que le processeur est mis sous tension. Le commutateur de commande Marche/Arrêt 38 est connecté à la broche 20 du processeur 30 et également à l'entrée du circuit de réinitialisation 44, en broche 1. Avantageusement, cet agencement permet au processeur de distinguer entre une séquence Marche/Arrêt initiée par un opérateur via l'activation du commutateur de commande Marche/Arrêt 38 et des réinitialisations qui surviennent lors d'une mise sous tension ou après un dysfonctionnement 8- dans le processeur 30. Pour déterminer si le commutateur de commande Marche/Arrêt 38 était activé, le processeur 30 vérifie si l'état du port PC2 ou de la broche 20 est un état logique 0 comme il résulte d'une situation de réinitialisation après mise à l'arrêt. Si PC2 est au niveau bas, alors la réinitialisation a été provoquée par l'opérateur et le processeur 30 effectue sa séquence Marche/Arrêt, à savoir, commuter soit en mode passant soit en mode bloqué en fonction de l'état du commutateur de commande 38. Si, cependant, le PC2 est à un niveau logique 1 ou à un état haut, alors cette réinitialisation n'a pas été provoquée par l'activation du commutateur de commande Marche/Arrêt 38 et le processeur 30 se place dans une situation d'Arrêt jusqu'à ce qu'une réinitialisation soit entreprise par le commutateur de commande Marche/Arrêt. La broche 21 du processeur 30 est connectée au circuit de mise en courtcircuit de puissance 45,qui est de préférence un redresseur semiconducteur commandé (SCR), et la broche 18 est connectée au dispositif de surveillance de tension 46, qui est une résistance. Le circuit de mise en court-circuit 45 protège contre un emballement du moteur, à savoir, lorsque le moteur 36 ne peut pas être coupé du fait, par exemple, de la mise en court-circuit à l'état passant du FET 70. En fonctionnement, le processeur 30 lit la tension aux bornes du dispositif de surveillance de tension 46 pour déterminer la tension aux bornes du FET 70 après blocage du FET 70 pour un temps prédéterminé d'environ 500 à 600 millisecondes avant d'entrer dans un mode ARRET ou de faible puissance. Si pendant ce temps, la tension aux bornes du FET est relativement basse, indiquant ainsi que le FET ne s'est pas bloqué, le processeur 30 délivre sur la broche 21 une impulsion qui commute en mode passant le SCR dans le circuit de mise en court-circuit 45, ce qui -9- court-circuite la source de tension continue redressée, arrêtant ainsi le moteur 36. Le dispositif d'affichage 42 est un affichage LCD dans la forme de réalisation préférée, mais d'autres dispositifs d'affichage peuvent être utilisés. Le dispositif d'affichage 42, connecté aux broches 3-10, 11- 13 et 23 du processeur 30, reçoit en provenance du processeur 30 des signaux indiquant la vitesse du moteur 36, et affiche le réglage de vitesse du moteur en nombre de tours par minute (RPM). Selon l'une caractéristiques principales de l'invention, le dispositif de stockage de données 47 stocke des rapports cycliques MLI nécessaires pour faire fonctionner le moteur 36 à une vitesse et des conditions de charge données. Le dispositif de stockage de données est fourni au sein du processeur 30 (non représenté) et représenté de façon basique par une table de consultation tridimensionnelle correspondant à une tension nominale particulière du moteur 36. La table de consultation fournit le rapport cyclique MLI via une forme simple de logique floue basée sur la vitesse demandée par l'opérateur et la charge du moteur telle qu'indiquée par le courant dans le moteur. Le courant dans le moteur est mesuré aux bornes d'une résistance 82 et appliqué en entrée de la broche 16 du processeur 30. Selon un autre aspect de l'invention, le processeur conserve aussi le dernier réglage de vitesse du moteur 36 pendant un temps prédéterminé lorsque la puissance d'entrée alternative est déconnectée. La puissance nécessaire pour maintenir le réglage de vitesse est fournie par un condensateur 83 qui est connecté à la diode zener 54 et donc, le temps prédéterminé dépend du condensateur et est d'environ 15 minutes dans la présente invention. - 10- Dans un autre aspect de la présente invention, le processeur 30 inclut une caractéristique pour protéger le moteur contre une surchauffe. Le processeur 30 estime la température du moteur en utilisant le courant dans le moteur mesuré aux bornes de la résistance 82 et la vitesse de fonctionnement (RPM) et réduit les tensions de modulation de largeur d'impulsions appliquées a7u moteur 36 avant que le moteur ne surchauffe. Dans le cas o le moteur 36 atteint effectivement la température de surchauffe, le processeur 30 coupe automatiquement le moteur. En référence maintenant aux figures 3 à 10, une description détaillée du fonctionnement de l'invention, et en particulier du processeur 30, va être faite en se référant aux organigrammes représentés dans ces figures. En référence d'abord à la figure 3, lorsque le contrôleur est connecté à l'entrée alternative 21, le processeur est placé dans une phase de démarrage (bloc 84). Le processeur 30 est aussi placé dans cette phase de démarrage après que le processeur 30 connaisse un dysfonctionnement dans son système, ce qui est indiqué sous l'expression de réinitialisation opérationnelle de calculateur (COP). La capacité à détecter un dysfonctionnement et à effectuer la réinitialisation COP est une caractéristique inhérente des processeurs tels que le microprocesseur Motorola 68HC05P9, qui est préféré dans la présente invention. Indépendamment de la façon dont le processeur 30 est placé dans la phase de démarrage (bloc 84), le pointeur de pile dans la RAM, qui contient des sous-programmes, des interruptions et leurs adresses et données de retour, est réinitialisé et le dispositif d'affichage 42 est effacé (bloc 86). Le processeur 30 détermine ensuite si les mots de test de la RAM sont intacts (bloc 88). Le processeur 30 est connecté au condensateur 83, qui garde une charge - 11- pendant un temps prédéterminé après suppression de la tension d'entrée alternative pour conserver le dernier réglage de vitesse du moteur 36. L'état des mots de test indique par correspondance l'état du dernier réglage de5 vitesse enregistré dans la mémoire du processeur. Si le processeur 30 détermine que les mots de test se sont dégradés jusqu'à un niveau inacceptable, 1a RAM est effacée et les mots de test sont réinitialisés (bloc 90). A l'inverse, si les mots de test ont été conservés, la10 procédure du bloc 90 est sautée. On détermine ensuite si le commutateur Marche/Arrêt 38 a été activé (bloc 92). S'il ne l'a pas été, on sait que le processeur 30 a été réinitialisé du fait du processus de mise sous tension ou du fait du processus COP, et le processeur se coupe lui-même jusqu'à ce que le commutateur de commande Marche/Arrêt 38 réinitialise le processeur (bloc 94). Le processeur 30 peut aussi être réinitialisé par mise sous tension et procédure COP telle décrite ci-dessus. S'il est déterminé que le commutateur de commande Marche/Arrêt 38 a été activé, on sait que la réinitialisation a été entreprise par l'opérateur pour commencer la séquence Marche/Arrêt. A cet instant, le processeur 30 est basculé en situation de fonctionnement (bloc 96), et une détermination est effectuée pour savoir si le commutateur Marche/Arrêt 38 a été placé en position de marche (bloc 98). S'il ne l'a pas été, alors le processeur 30 se coupe lui-même et attend une autre réinitialisation (bloc 94). Si le commutateur 38 est placé en placé en position de marche, le processeur 30 entreprend une série de processus d'initialisation qui comporte le réglage des ports, l'autorisation d'une conversion Analogique/Numérique, le réglage du temps de rampe MLI, l'effacement des interruptions de compteur, le chargement des comptages de compteur et l'autorisation des - 12interruptions (bloc 100). La rampe MLI est la période de temps pour augmenter graduellement la vitesse du moteur jusqu'au réglage de vitesse souhaité afin d'éviter un fonctionnement brutal à vitesse élevée du moteur 36. En référence maintenant à la figure 4, à la fin des processus d'initialisation décrits dans le bloc 100, le processeur 30 entre dans le programme principal (bloc 102), et attend approximativement 512 microsecondes pour une impulsion (bloc 104), auquel instant la prochaine largeur d'impulsion est calculée et le registre COP est réinitialisé (bloc 106). La réinitialisation du registre COP empêche la survenue de la réinitialisation COP décrite dans les blocs 84-90. Ces étapes sont répétées pendant 8.2 msec (bloc 108). Après écoulement des 8.2 msec, une fonction d'affichage LCD positif est réalisée sur le dispositif d'affichage 42 pour rendre l'affichage noir, à savoir, une écriture positive de l'affichage est. commandée (bloc 110). Ensuite, on détermine si le temps de rampe MLI est à son maximum (bloc 112). Si ce n'est pas le cas, le temps de rampe est augmenté (bloc 114), et ensuite une vérification est faite pour voir si. le temps de rampe a dépassé le maximum (bloc 116). Si ce n'est pas le cas, le temps de rampe est sauvegardé (bloc 120), mais si c'est le cas, le temps de rampe est réglé pour être égal au maximum (bloc 118) et est ensuite sauvegardé (bloc 120). Si au bloc 112, la rampe MLI est initialement à son maximum, elle est sauvegardée (bloc 120) sans ajustement. L'accroissement de la vitesse de fonctionnement du moteur 36 est limité au taux de croissance imposé par la rampe MLI de sorte que le moteur 36 ait un "démarrage doux". Une fois que le temps de rampe MLI atteint le maximum, le taux de croissance et de décroissance de la vitesse de fonctionnement du moteur n'est pas limité par la rampe MLI. - 13- En référence à la figure 5, à la fin du processus dans le bloc 120, les processus décrits dans les blocs 104-108 sont répétés (blocs 122- 126, respectivement) après quoi une fonction d'affichage LCD négatif est effectuée sur le dispositif d'affichage 42 (bloc 128) pour maintenir opérationnel le dispositif d'affichage. Ensuite les mots de test de la RAM sont rafraîchis dans le cas -o du bruit dans le système aurait altéré les mots de test (bloc 130). Ensuite, les processus des blocs 104-108 sont à nouveau répétés (blocs 132-136, respectivement) et une autre fonction d'affichage LCD positif est effectuée sur le dispositif d'affichage 42 (bloc 138). En référence maintenant à la figure 6, les processus décrits dans les blocs 104-1.08 sont répétés (blocs 140- 144, respectivement), et une autre fonction de LCD négatif est effectuée (bloc 146). A ce point, on effectue une vérification de l'état opérationnel du processeur 30 (bloc 148). Si le processeur 30 est en. état de fonctionnement, on détermine ensuite si le commutateur d'incrémentation 73 est activé (bloc 150). S'il est activé, alors après un retard de commutation pour empêcher tout rebond (bloc 152), la vitesse de consigne est incrémentée (bloc 154) et une vérification est faite pour savoir si la vitesse de consigne est plus grande que la vitesse maximale à laquelle le moteur 36. est capable de fonctionner (bloc 156). Si elle est plus. grande, la vitesse de consigne est réduite et réglée à la vitesse maximale (bloc 158). Autrement, la vitesse est laissée à la vitesse de consigne incrémentée. En référence maintenant à la figure 7, si le commutateur d'incrémentation 73 n'est pas activé, on vérifie ensuite. si le commutateur de décrémentation 74 est activé (bloc 160). Si c'est le cas, alors après un retard de commutation (bloc 162), la vitesse de consigne est 35. décrémentée (bloc 164) Si après détermination que la - 14- vitesse de consigne décrémentée est inférieure à la vitesse minimale le moteur 36 est capable de fonctionner sans blocage (bloc 166), la vitesse de consigne décrémentée est réinitialisée à la vitesse minimale (bloc 168). En référence à nouveau au bloc 160, si le commutateur de décrémentation 74 n'est pas activé, le retard de commutation est réinitialisé (bloc 172), ce qui nécessite de prérégler le compteur de retard lié au rebond. Dans tous les processus décrits ci-dessus dans les blocs 148- 172, que ce soit directement ou indirectement, leurs tâches respectives sont terminées au bloc 174 o la vitesse de consigne est obtenue, mise à l'échelle et affichée sur le dispositif d'affichage 42 correspondant au motif d'affichage représentant la vitesse de consigne. En référence notamment aux figures 8 et 9, le sous- programme nécessaire dans les blocs 106, 124, 134 et 142 pour calculer la MLI est décrit. Comme représenté en figure 8, le sous-programme commence par lire le courant de fonctionnement traversant le moteur 36 à l'instant o l'impulsion est délivrée par le FET 70 et par verrouiller ce courant au niveau maximum (bloc 174). Le courant est aussi filtré par un filtre de retard temporel à cet instant pour supprimer tous pics ou bruit (bloc 174). Une vérification est faite pour déterminer si le système est en situation de fonctionnement (bloc 176). Si c'est le cas, la vitesse de consigne et le courant de fonctionnement sont obtenus, et en fonction de ces variables, la MLI est déterminée à partir de la table de consultation tridimensionnelle (bloc 178). Une fois que la MLI est établie, elle est réglée pour empêcher le moteur de surchauffer. Pour cela, le niveau de courant de fonctionnement est vérifié pour déterminer s'il est plus élevé que le niveau de surcharge (bloc 180). S'il est plus élevé, un comptage de charge est incrémenté (bloc - 15- 182), et dans la prochaine étape, une vérification est effectuée pour voir si le comptage de charge a dépassé le comptage maximum (bloc 184). Si c'est le cas, le comptage de charge est réglé pour le rendre égal au comptage maximum (bloc 186), la MLI est réglée à zéro (bloc 188) et le sous-programme retourne au programme principal (bloc 212). Si, cependant, le courant de fonctionnement n'a pas dépassé la condition de surcharge, une vérification est effectuée pour voir si le comptage de charge est égal à zéro (bloc 190). Si ce n'est pas le cas, le comptage de charge est décrémenté (bloc 192), et si on détermine dans la suite que le comptage de charge est inférieur à zéro (bloc 194), le comptage de charge est réinitialisé pour être égal à zéro (bloc 196). Dans les processus qui viennent d'être décrits, si le résultat des déterminations effectuées dans les processus des blocs 184, 190 et 194 sont contraires au résultat fourni ci-dessus, le sous-programme va directement au bloc 198 après chaque détermination. Au bloc 198, qui est représenté en figure 9, le comptage de surcharge obtenu comme résultat des procédés dans les blocs 180-196 est soustrait du comptage MLI obtenu à partir de la table de consultation 47. Le comptage MLI résultant estensuite vérifié pour déterminer s'il est plus élevé que la MLI minimum (bloc 200). Si le comptage MLI n'est pas plus élevé, le comptage MLI est alors réglé à la MLI minimum (bloc 202). S'il est plus élevé, ce processus est sauté. De cette façon, le moteur 36 est empêché de caler du fait du comptage MLI trop faible. On détermine ensuite si le comptage MLI est inférieur ou égal à RAMP (bloc 204). Si le comptage MLI n'est pas inférieur ou égal, alors la MLI est réglée pour être égale à RAMP. Si ce n'est pas le cas, ce processus est sauté. On détermine ensuite si la MLI est égale au maximum (bloc - 16208). Si ce n'est pas le cas, le sous-programme retourne au programme principal (bloc 212), mais si c'est le cas, un drapeau MLI maximum est positionné (bloc 210) avant que le programme ne retourne dans le programme principal (bloc 212). En référence maintenant à la figure 10, un organigramme illustre les sous-programmes d'interruption qui sont utilisés dans la génération de la sortie MLI pour commander le moteur 36, lesquelles sous-programmes d'interruption sont une fonction du processeur 30. Dans le mode préféré de réalisation, l'interruption survient approximativement 2000 fois par seconde ou toutes les 512 microsecondes. Après chaque interruption, on détermine si le moteur 36 tourne (bloc 214). S'il ne tourne pas, alors15 le compteur interne du processeur 30 (non représenté) est réinitialisé de sorte que les 512 microsecondes peuvent être comptées par le compteur pour achever la période d'interruption (bloc 216). Après réinitialisation du compteur, la tension, si tant est, est lue aux bornes du20 FET 70, via la résistance 46, et sa valeur est sauvegardée (bloc 218). Le FET 70 est connecté au moteur 36, et une circulation de courant. dans le moteur existera si la tension du FET 70 est basse et une condition d'emballement du moteur décrite ci-dessus est survenue. La sortie du processeur 30 est réglée pour commuter au niveau bas (bloc 220) à l'interruption suivante et le sous-programme revient de l'interruption (bloc 222). Si au bloc 214, on détermine que le moteur 36 fonctionne, il est alors nécessaire de savoir si la sortie a été commutée au niveau bas ou au niveau haut pendant la dernière interruption (bloc 224). Si la sortie a été réglée pour commuter au niveau bas, le compteur du processeur est réinitialisé (bloc 226) et la sortie est réglée pour commuter au niveau haut (bloc 228) à la prochaine interruption et le sous- programme revient de - 1? - l'interruption (bloc 230). Après écoulement des 512 microsecondes à partir de la réinitialisation du compteur dans le bloc 226, une autre interruption survient avec commutation de la sortie au niveau bas. S Si au bloc 224, on détermine que la sortie a été réglée pour commuter au niveau haut dans l'interruption précédente, une vérification est alors faite pbur voir si la sortie MLI est à sa maximum (bloc 232). Si ce n'est pas le cas, le courant circulant dans le moteur est mesuré et sa valeur est sauvegardée (bloc 234). Ensuite le compteur est réinitialisé et le comptage MLI correspondant au courant mesuré du moteur et au réglage de vitesse souhaitée est obtenu à partir de la table de consultation (bloc 236). Ensuite, la sortie est réglée pour commuter au niveau bas lorsque le comptage MLI obtenu expire (bloc 238). Le sous-programme revient alors de l'interruption (bloc 240). Si la sortie MLI est à son maximum au bloc 232, l'impulsion de sortie doit rester au niveau haut aussi longtemps que possible pour commander le moteur 36 à la vitesse maximum souhaitée. Cependant, l'impulsion ne peut pas rester de façon continue parce qu'elle deviendrait effectivement un signal de tension continue, et elle serait donc bloquée par le condensateur 62 dans le circuit de commande de signal 32. Ainsi, après lecture et sauvegarde (bloc 242) du courant dans le moteur, le compteur du processeur est réglé pour commuter l'impulsion de sortie au niveau bas (bloc 244) et le sous-programme attend dans cet état jusqu'à ce que le temps soit écoulé et que la sortie commute effectivement au niveau bas (également bloc 244). L'impulsion de sortie est réglée pour commuter au niveau haut à nouveau après qu'un temps minimal suffisant pour permettre à l'impulsion de passer à travers le circuit de commande de signal 32 se soit écoulé (bloc 246). Le programme reste dans cet état jusqu'à ce - 18 - que la sortie commute effectivement en position haute (également bloc 246). Après commutation de la sortie en position haute, le compteur est réinitialisé de façon à ce que le processeur 30 attende la fin de l'écoulement de l'équilibre des 512 microsecondes (bloc 248) avant de délivrer une autre interruption, et le programme revient de l'interruption (bloc 250). De cette façon, la sortie impulsionnelle reste au niveau haut lorsque l'interruption suivante survient. A partir de la description détaillée qui précède, on comprendra qu'on a représenté un contrôleur pour contrôler la vitesse de fonctionnement d'un moteur à vitesse variable qui présente de nombreux avantages et attributs souhaitables. Un avantage particulier réside dans le fait que le contrôleur comporte une table de consultation qui contient les rapports cycliques de modulation de largeur d'impulsions (MLI) nécessaires pour faire fonctionner le moteur dans une large gamme de vitesses de consigne et pour une large gamme de charges de moteur. Les rapports cycliques MLI sont adaptés pour être obtenus simplement en accédant à la table de consultation, et pas conséquent, il n'est pas nécessaire d'effectuer d'importants calculs algébriques à chaque fois qu'un rapport cyclique MLI est requis. Il en résulte que les rapports cycliques MLI peuvent être obtenus à intervalles plus rapides, ce qui permet au processeur de mieux réagir à des conditions de charge de moteur variant rapidement. Bien que divers modes de réalisation de la présente invention aient été présentés et décrits, on comprendra aisément que d'autres modifications, substitutions ou alternatives seront évidentes pour un homme du métier. Ces modifications, substitutions et alternatives peuvent être effectuées sans se départir de l'esprit et de l'objet de l'invention, qui devraient être déterminés à partir des revendications annexées. - 19- Différentes caractéristiques de l'invention sont exposées dans les revendications annexées. - 20- REVENDICATIONS 1. Contrôleur pour contrôler la vitesse de fonctionnement d'un moteur à vitesse variable du type fonctionnant à une vitesse liée au rapport cyclique d'une tension de commande modulée en.largeur d'impulsions qui lui est appliquée et à charge appliquée, ledit contrôleur comprenant: des moyens pour régler une vitesse de fonctionnement du moteur; des moyens pour mesurer une charge appliquée au moteur; des moyens de stockage pour stocker des données représentant une pluralité de différents rapports cycliques en modulation de largeur d'impulsions pour commander le moteur à diverses vitesses souhaitées de fonctionnement du moteur et avec diverses charges appliquées au moteur; des moyens de traitement connectés fonctionnellement auxdits moyens de mesure de réglage, auxdits moyens de mesure de charge et auxdits moyens de stockage pour générer des signaux représentant un rapport cyclique particulier correspondant à un réglage de vitesse de fonctionnement souhaitée et à une charge appliquée pour conduire à la vitesse souhaitée du moteur, lesdits moyens de traitement générant lesdits signaux à un intervalle de temps prédéterminé pour atteindre et maintenir ladite vitesse souhaitée du moteur; et des moyens pour appliquer au moteur ladite tension modulée en largeur d'impulsions ayant ledit rapport cyclique particulier. 2. Contrôleur selon la revendication 1, dans lequel lesdites données de rapport cyclique sont sous la forme d'une table de consultation qui inclut un signal de sortie - 21- unique pour chaque combinaison d'une pluralité de combinaisons de charge appliquée et de réglages de vitesse de fonctionnement. 3. Contrôleur selon la revendication 1, dans lequel lesdits moyens de réglage comportent au moins un commutateur qui est activé par un opérateur. - 4. Contrôleur selon la revendication 1, dans lequel lesdits moyens de mesure mesurent un courant de fonctionnement du moteur pour déterminer ladite charge appliquée au moteur. 5. Contrôleur selon la revendication 1, dans lequel lesdits moyens de traitement sont un microprocesseur. 6. Contrôleur selon la revendication 1, dans lequel lesdits moyens de traitement conservent ladite vitesse souhaitée du moteur pendant un temps prédéterminé après arrêt d'une puissance d'entrée au contrôleur, et réinitialisent ladite vitesse souhaitée du moteur lorsque ladite puissance d'entrée est appliquée à nouveau au contrôleur. 7. Contrôleur selon la revendication 1, dans lequel lesdits moyens de traitement réduisent ladite tension appliquée au moteur par lesdits moyens d'application lorsque le moteur approche une situation de surcharge et arrêtent ladite tension lorsque le moteur atteint ladite situation de surcharge. 8. Contrôleur selon la revendication 1, dans lequel lesdits moyens d'application comprennent un FET et une diode. - 22- 9. Contrôleur selon la revendication 1, comprenant en outre des moyens de commande de signal, connectés fonctionnellement entre lesdits moyens de traitement et lesdits moyens d'application, pour délivrer lesdits signaux générés par lesdits moyens de traitement auxdits moyens d'application. 10. Contrôleur selon la revendication 9, dans lequel lesdits moyens de commande de signal comportent des moyens amplificateurs pour amplifier lesdits signaux délivrés auxdits moyens d'application. 11. Contrôleur selon la revendication 9, dans lequel lesdits moyens de commande de signal comportent des moyens pour arrêter lesdits signaux provenant desdits moyens de traitement vers lesdits moyens d'application dans le cas d'une défaillance des moyens de traitement. 12. Contrôleur selon la revendication 11, dans lequel lesdits moyens d'arrêt de signal comprennent un transistor, un condensateur et une résistance pour coupler en alternatif lesdits signaux. 13. Contrôleur selon la revendication 1, comportant en outre des moyens pour redresser une tension d'entrée externe alternative en une tension de fonctionnement continue. 14. Contrôleur selon la revendication 13, comportant en outre des moyens de filtrage, connectés auxdits moyens redresseurs, pour supprimer des impulsions à haute fréquence non souhaitées. - 23- 15. Contrôleur selon la revendication 13 comportant en outre des moyens de régulation pour réguler et diviser ladite tension de fonctionnement afin de délivrer une première tension auxdits moyens d'application et une seconde tension auxdits moyens de traitement. 16. Contrôleur selon la revendication 15, dans lequel lesdits moyens de régulation comprennent au moins une résistance pour limiter le courant de ladite tension d'entrée externe redressée, et une première diode zener pour réguler ladite première tension et une seconde diode zener pour réguler ladite seconde tension. 17. Contrôleur selon la revendication 1 comprenant en outre des moyens d'affichage, connectés fonctionnellement auxdits moyens de traitement, pour afficher des messages générés par lesdits moyens de traitement. 18. Contrôleur selon la revendication 17, dans lequel lesdits moyens d'affichage sont un affichage LCD. 19. Contrôleur selon la revendication 18, dans lequel lesdits moyens d'affichage affichent une vitesse du moteur. 20. Contrôleur selon la revendication 1, comportant en outre des moyens de mise en court- circuit de puissance, connectés fonctionnellement auxdits moyens de traitement, pour court-circuiter la tension de fonctionnement du contrôleur lorsque lesdits moyens d'application sont en panne. 21. Contrôleur selon la revendication 20, dans lequel lesdits moyens de mise en court-circuit de puissance - 24- comprennent un redresseur commandé à semi-conducteur (SCR).