FR 2443716 A1 19800704 FR 7834700 A 19781208 La présente invention concerne un régulateur de grandeur physique ou chimique, notamment de température, engendrée pa une source d'énergie, comprenant un capteur de la grandeur .1 réguler, un ge'nerateur pour délivrer une consigne à la valeur de laquelle celle de la grandeur à réguler doit etre maintenue, des moyens calculateurs, ou calculateur, pour calculer l'erreur représentée par la différence entre la valeur de la grandeur à reculer et celle de la consigne, un organe de réglage agence pour doser l'énergie fournie par la source, et des moyens commandes par le calculateur pour moduler le dosage de l'organe de réglage De nombreux régulateurs du type défini ci-dessus sont déjà connus Il stagit, en l'espèce, de régulateurs industriels analogiques, construits à partir d'amplificateurs opérationnels, de réseaux de résistances et capacités, et d'autres circuits analogiques, qui présentent certains inconvénients. D'abord, ils possedent des inconvénients propres à leurs cicuits analogiques, à savoir un réglage difficile et une stabilisation délicate des dérives thermiques En outre, ils sont très difficilement programmables et uniquement par action directe sur leurs composants. Par ailleurs, il est pratiquement impossible, sans intervention sérieuse, de les changer d'application. Bref,ils sont d'un emploi qui est loin d'être suffisamment souple pour les besoins actuels. Enfin, les régulateurs connus à effet proportionnel dérivé n'offrent une modulation de leur nergie fournie par la source qu'en fonction de la dérivée mathématique instantanée de la grandeur à réguler La présente invention vise donc à pallier ces divers inconvénients.A cet effet, elle concerne un régulateur du type défini cidessus,caractérisé par le fait qu'il comporte des moyens pour échantillonner, à périodes régulières, la grandeur à réguler et délivrer au calculateur, à chaque période d'échantillonnage , une première information représentative de la valeur actuelle de la grandeur au début de la période considérée et une deuxième information représen tative de la valeur précédente de la grandeur au début de la période d'échantillonnage précédente, et le calculateur est programmé pour délivrer, aux moyens de modulation une première information représentative de l'erreur actuelle correspondant à la valeur actuelle de la grandeur et une deuxième information représentative de l'er- reur future correspondant à la valeur future de la grandeur, au bout d'un nombre donné de périodes d'échantillonnage , calculée par extrapolation de la valeur actuelle en fonction de la valeur précé denté Dans une forme de realisation préféré du régulateur de l'in- vention, les moyens de modulation comprennent un modulateur et une mémoire morte programmée pour délivrer des ordres de modulation au modulateur en fonction des deux informations représentatives de l'er- reur actuelle et de l'erreur future, respectivemert, reçues du cal- cul auteur Dans ce cas,les moyens de modulation peuvent comprendre une mémoire de codage, par l'intermédiaire de laquelle la mémoire morte programmée reçoit les deux informations du calculateur, la mémoire de codage pouvant être agencée pour associer à chacune des deux informations du calculateur une zone d'erreur numérotée, sélectionnée sur une celle d'erreur stockée dans elle, et délivrer ainsi à la mémoire morte programmée une adresse formée d'un mot comprenant les deux numéros de zone associés aux deux informations du calculateur. L'invention sera mieux comprise à l'aide de la description suivante d'une forme de réalisation préférée du régulateur de l'in- vention, en référence aux figures annexées. -La figure i représente un bloc-diagramme du régulateur, ou de la bouche de régulation, de l'invention : l'a figure 2 représente un graphique illustrant le principe de fonctionnement du régulateur de: la figure 1 -La figure 3 représente une échelle d'erreur stockée dans la mémoire de codage du régulateur de la figure t, , et -La figure 4 représente une portion du programme d'ordres de la mémoire morte programmée du régulateur de la figure Le régulateur de l'invention, représenté par son bloc-diagram- me sur la figure 1, comporte un capteur @, un convertisseur-analogique- numérique 2, un convertisseur de code 3, une mémoire X, un générateu de consigne 7, un convertisseur de code 8, un calculateur 10, des moyens de modulation constitués d'une mémoire de codage L, d'une mémoire morte programmée 12 et d'un modulateur L3 et un organe de réglage 14. Le capteur 1 est une sonde de mesure d'une grondeur à mesurer, en l'eccurrence une température, délivrant une information analogique. Le convertisseur-analogique numérique 2 convertit l'information analogique délivrée par a sonde t en une informaticn numérique, représentative de la température à régulex. exprimée dans un code déterminé. Le convertisseur decode 3, qui n'est pas toujours néces saire, regoit l'information numérique du convertisseur 2 pour la transformer en une informat on numérique exprimée dans un code compatible avec le traitement que v subir cette information dans les organes disposés en aval du convertisseur 2 dans la chatne de régu- lation.Si l'information numérique délivrée par le convertisseur 2 peut être directement traitée par ces organes, le convertisseur de code 3 n'a- donc pas à autre prévu. La mémoire LL, dans la forme de réalisation considérée du re-, gulateur de l'invention, est un registre à décalage comportant deux étages 5 et 6. La mémoire 4, qui reçoit en permanence l'information délivrée par le convertisseur 3(2), échantillonne cette information, de façon connue en soi, à intervalles réguliers et réglables, de durée déterminée Ainsi, et à chaque période d'échantillonnage, elle délivre, à la sortie de son premier étage 5, une information Va représentative de la "valeur actuelle" de la température à réguler au début de la période d'échantillonnage considérée et, à a sortie de Son deuxième étage 6, une information Vp représentative de la"va- leur précédente" de la température à réguler au début de la période d'échantillonnage précédente. Bien que la période d'échantillonnage soit courte et que la valeur de la grandeur à réguler varie, dans cette période d'échantillonnage, à une faible vitesse, on s'af- franchit néanmoins, pendant chacune de ces périodes, de toute variation de la valeur de la grandeur à réguler. Le générateur de consigne 7 délivre une information Vc représentative de la valeur de consigne à laquelle on veut maintenir, grâce à la channe de régulation de l'invention, les grandeur à réguler. Cette valeur de consigne peut être fixe ou variable et être représentée par une information analogique ou numérique, S'il s'agit d'une information numérique, délivrée par exemple par un programmateur numérique, un convertisseur analogique-numérique @'a pas à autre prévu. Le convertisseur de code 8 est destine n convertir le code de l'information numérique délivrée par le générateur 7 en un code compatible avec le traitement aval de cette information . Le calculateur 10 reçoit les informations Va, Vp, Vc et, sur une ligne 9, par exemple en provenance de la mémoire morte L2, une information K représentative d'un coefficient multiplicateur donné. le calculateur est programme pour effectuer, à choque péiode d'échantillonnage, un ensemble de calculs et délivrer ainsi deux informations. La première, Ea,est l'"erreur actuelle", représentative de la différence entre la valeur actuelle Va et, la valeur de consigne Vc, La deuxième, Ef, est erreur future", représentative de la différence entre la 11valeur future" Vf de la grandeur à réguler et la valeur de consigne Vc. La valeur future Vf est calculée par extra- polation de la valeur actuelle Va en fonction de la valeur précédente Vp de la grandeur à réguler.Autrement dit, la valeur future, ou d anticipation, est la valeur que prendrait la grandeur à réguler au bout d'un nombre K de périodes d'échantillonnage T de la mémoire 4, suivant le début de la période considérée Ta, Si cette grandeur continuait de varier à la même vitesse moyenne que pendant la période Tp précédant la période d'échantillonnage considérée Ta. On a représenté sur la figure 2 les valeurs représentées pour ces diverses informations élaborées par le calculateur 10. Ea = Va - Vc Vf - (Va - Vp)K + Va Ef = (Va - Vp > K + Va - Vc La mémoire de codage il est d'abord destinée à conserver les informations de sortie Ea et Ef du calculateur 10, et ce dernier étant un calculateur numérique, il ne délivre ces informations que de façon séquentielle et fugitive. La mémoire 11 est, par ailleurs, agencée pour pouvoir associer à chacune de ces informations Ea et Ef une zone d'erreur sélectionnée sur une échelle d'erreur stockée dans la mémoire 11. Le long de cette échelle d'erreur sont donc réparties une certaine quantité de zones d'erreur, numérotées, e'étendant les unes derrières les autres, chacune sur une longueur déterminée, entre deux valeurs d'erreur également déterminées. On a représenté sur la figure 3 une échelle d'erreur donnée, mais non limitative de lin- vention,dans laquelle les zones situées au voisinage et de part et d'autre de la valeur 0, valeur également illustrée par une zone d'origine représentant la résolution du convertisseur analogique-numérique 2, s'étendent sur une plage d'erreur beaucoup plus fine que les autres zones, dans un souci de précision. Il faut noter que cette résolution du convertisseur 2 est nettement inférieure à celle du générateur de consigne 7, de préférence 10 fois plus petite. Ainsi, et en référence à la figure 3, la zone O s'étend de - co à - 8, la zone 1 de - 7,9 à - 2, la zone 8 correspond à la seule valeur + O,l,^la zone 9 à la seule valeur + 0,2 et la zone 14 s'étend de +8 à +oc. La mémoire 11 associe donc chaque information délivrée par le calculateur 10 au numéro de l'une des 15 zones de l'échelle d'erreur, de sorte qu'à chaque couple d'informations (Ea, Ef)correspond un mot (, j) formé de deux numéros de zone et représentatif de ces informations dterreur. Ce mot, que la mémoire 11 délivre à sa sortie, est appelé "adresse". Par exemple, l'adresse(1, 3) traduit le fait que l'erreur actuelle est comprise dans la zone 1 et que l'er reu future, définie ci-dessus, est comprise dans la zone 3. Quinze zones étant réparties le long de L'écheLle dterreur, dans l'exemple considéré, la mémoire 11 peut donc délivrer 225 adresses différentes. la mémoire morte programmée 12, qui reçoit les adresses déli virées par la mémoire de codage ils est une mémoire connue du type ROM, PROM, REPROM, EPROM..., ou tout composant équivalent. Elle est agencée pour délivrer au modulateur 13, en fonction des adresses re çues, des ordres de contrôle préenregistrés et non altérables, et au calculateur 10, toujours en fonction des adresses reçues, Stin- formation K représentative du coefficient multiplicateur d'anticipation. En outre, la mémoire morte 12 est agencée pour pouvoir être remplacée par une autre et changer ainsi de programme. Le modulateur 13 est un dispositif destiné à commander l'or- gane de réglage 14 agence pour doser l'énergie fournie par une source 15 et engendrant la grandeur à réguler, le dosage s'effec- tuant suivant une modulation de période et de taux déterminés par le modulateur 13 Dans le cas d'une régulation de température, l'or- gane de réglage L4 module donc l'énergie fournie par une masse chauffante, ou réfrigérante, 15. Le modulateur 13 comprend un premier oscillateur LE à fréquence ajustable f, un multiplicateur de fréquences 7, recevant la fréquence f de l'oscillateur L6 et délivrant un signal de Fréquence nf, n étant fonction de certains ordres provenant de la mémoire 12 et reçus sur des entrées de consignation 18 du multiplicateur 17, un compteur-décompteur 19, de capacité N, recevant sur une entrée 21 la fréquence nf du multiplicateur L7 et organisé en système de compo tage ou de décomptage suivant un autre ordre, provenant de la mémoire 12 et reçu sur une entrée 20, un deuxième oscillateur 22 à fréquence réglable F, très supérieure à la fréquence f du premier oscillateu-- L6, un compteur 23, de même capacité N et de même natu- re quant au code que le compteur-de compteur 19, un comparateur logique 24 recevant les signaux de sortie des compteurs 19 et 23 et un circuit combinatoire 25, recevant, sur une entrée 26, le signal de sortie du comparateur 24 et, sur deux autres entrées 27 et 28, res pectivement deux ordres provenant de la mémoire motte 12, le signal de sortie du circuit 25 étant reçu à l'entrée de l'organe de réglage 14. Considéron8 maintenant les ordres reçus par le modulateur 13 en provenance de la mémoire morte l2, en fonction des adresses délivrées par la mémoire 11. Notons tout d'abord, que : - le taux de modulation est celui qui est fourni par le comparateur 24 à l'entrée 26 du circuit combinatoire 25 ; - la modulation est ce qui est appliqué par le circuit combinatoire 25 à l'entrée 29 de lworgane de réglage 14 - le taux de modulation du modulateur doit pouvoir varier - ce taux doit pouvoir varier dans un sens et dans 1' autre - la variation de ce taux doit pouvoir s'effectuer à une vitesse également variable - la modulation doit pouvoir être égale au taux de modulation;; - la modulation doit pouvoir autre interrompue, tout en maintenant le taux de modulation à sa valeur, éventuellement variable à sa vitesse propre - la modulation doit pouvoir être portée au maximum de lOO %, tout en maintenant le taux de modulation à sa valeur, éventuellement variable à sa vitesse propre. il s'agit en l'occurrence de différents régimes de fonctionnement du modulateur qui doivent titre provoqués par des ordres provenant de la mémoire 12. Le nombre dtordres délivrés par cette mémoire 12 n' étant nullement limité par la présente invention, on peut envisager, en plus des ordres impératifs ci-dessus délivrés au modulateur 13, d'autres ordres auxiliaires, comme par exemple l'ordre de modifier la puissance de crdte commandée par l'organe de réglage 14, dans le cas d'une régulation de température et d'un chauffage par résistances, ou encore l'ordre de délivrer un signal d'alarme dans des conditions déterminées. Dans la forme de réalisation décrite et représentée du régulateur de l'invention, les ordres transmis au modulateur 13 sont transmis sur 7 bits, et chacun des ordres auxiliaires, qu'il soit destiné à modifier les conditions de régulation ou à fournir une information directement à l'utilisateur, sur un seul bit. Ainsi, à chaque adresse reçue par la mémoire morte 12 correspond une série d'ordres programmés et délivrés par cette mémoire 12. On a représenté sur la figure 4, une portion du programme d'ordres de la mémoire 12, Ijuité aux seuls ordres reçus par le mo dulateur 13, à l'exception par conséquent des ordres auxiliaires, chaque série d'ordres étant transmise sur 7 bits, à savoir 4 bits pour la vitesse de variation du taux de modulation, 1 bit pour 1' aug- mentation ou la diminution de ce taux, I bit pour le maintien du taux de modulation pour le modulateur ou son annulation et 1 bit pour la modulation maximale de 100 ?,o. Suivant le code utilisé et le poids affecte à chaque bit, on dispose ainsi d'un certain nombre de vitesses de variation, 15 dans le cas considéré en plus de la vitesse nulle. il faut également remarquer que dès la disparition des ordres provoquant une modulation nulle ou de 100 , le taux de modulation du modulateur a la valeur résultant de l'évolution de cette dernière jusqu'à l'instant considéré. Par exemple, et en référence à la figure 4, à l'adresse (0,1) correspond une vitesse d'augmentation du taux de modulation de 8 jusqu'à 100 % de modulation, à l'adresse (7,6), une vitesse d'augmentation du taux de modulation de 1, à l'adresse (7,7), le maintien du taux de modulation, à l'adresse (13,12), une vitesse de diminution du taux de modulation de 4 jusqu'à l'annulation de la modulation, et à l'adresse (13,11), une vitesse de diminution du taux de modulation de 9 jusqutå l'annulation de la modulation. Les ordres de vitesse de variation du taux de modulation sont transmis au multiplicateur 17 du modulateur 13, qui les reçoit sur ses entrées 18, en nombre égal au nombre de bits utilisés, 4 dans l'exemple considéré ; les ordres d'augmentation et de diminution sont transmis au compteur-déeompteur 19 qui les reçoit sur son entrée 20 ; les ordres de maintien au taux de modulation ou d' annula- tion de la modulation, d'une part, et les ordres pour la modulation maximale de l0O9, d'autre part, sont transmis au circuit combinatoire 25 qui les reçoit respectivement sur ses entrées 27 et 28. Ainsi, les poids des bits reçus par le multiplicateur 17 sur ses entrées 18 étant respectivement de l, 2, 4 et 8 par exemple (figure 4), le facteur multiplicateur n peut prendre seize valeurs différentes égales ou, de préférenceSproportionnelles aux nombres entiers, par exemple 0,1 (correspondant notamment à l'adresse (7,6)X 10 2 , .. 14, 15, si bien que, dans ce cas, le multiplicateur 17 est 10 10 10 en réalité un diviseur de fréquences. La sortie du compteur-décompteur 19, qui reçoit la fréquence nf sur son entrée 21, porte un état numérique 9 qui, suivant la valeur du bit reçu sur l'entrée 20 du compteur-décompteur 19, tend vers N-1 dans le cas (adresse (7,6) par exemple) où il s'agit d'un bit d'augmentation du taux de modulation, qui organise le compteurdécompteur l9 en système de comptage, et vers O dans le cas (adresse (7,8) par exemple) où il s'agit d'un bit de diminution, qui organise le compteur-décompteur 19 en système de décomptage. La variation de l'état J est donc représentative et de la vitesse et du sens de variation du taux de modulation.Il est prévu, dans le compteurdécompteur 19, un dispositif, non représenté, l'empêchant de compter lorsque # = - ~ 1 ou décompter lorsque # = O. La sortie du compteur 23, qui reçoit la fréquence F de l'oscillateur 22, c'est-à-dire F impulsions par seconde, porte un état numérique#qui varie périodiquement de O à N -1, avec une période N, représentant par conséquent la période de modulation du modulatgur. Le comparateur 24, qui reçoit les deux états J et , délivre, à l'entrée 26 du circuit combinatoire 25, un signal ogique # de niveau 1, lorsque est plus petit que # , et de niveau 0, lorsque est égal à ou plus grand que 9 O # variant lentement par rapport à la période de , , est donc un signal logique périodique modulé, de meme période quet et d'un rapport cyclique convertible en taux de modulation = w proportionnel à #. Il faut encore remarquer qutil s'agit, -ci-dessus, d'un taux de modulation non corrigé.En effet, le circuit combinatoire 25, qui reçoit sur son entrée 26 le signal # , reçoit également sur son entrée 27, un ordre l'autorisant ou non à délivrer à sa sortie 29 le signal t et, sur son entrée 28, un ordre de modulation maximale de 100 o/o. Ainsi, si les signaux reçus en 27 et 28 sont à l'état O (par exemple adresses (13,12), (13,13), (13,11) ), correspondant à une interruption de la modulation, le signal # n'est pas transmis ; si le signal en 27 est à l'état 1 et le signal en 28 à l'état O (par exemple adresses (0,2), (7,6), (7,7), (7,8) ), correspondant à une modulation en proportionnelle à 9 t le signal # est transmis par le circuit 25 si le signal en 28 est à l'état 1, indépendamment de l'état du signal en 27 (par exemple adresses (0,0), (0,1) ), correspondant à un taux de modulation de lOO %, le signal en 28 est transmis par le circuit 25 à l'organe de réglage 14 sans tenir compte de Finalement, les ordres reçus par le modulateur 13 sur les entrées 18 du multiplicateur 17 et entrée 20 du compteur 19 permettent une régulation de la grandeur à réguler selon un effet semblable à un effet proportionnel, connu des spécialistes, et les ordres reçus par le modulateur 13 sur les entrées 27 et 28 du circuit combinatoire- 25 permettent une régulation de la grandeur à réguler selon un effet semblable à un effet dérivé. En outre les corrections du taux de modulation tendant à disparaître lorsque le mot d'adresses se compose de deux termes voisins de l'erreur nulle, la régulation s'opère selon un effet semblable à un effet intégral. En résumé, le régulateur décrit ci-dessus fonctionne de la manière suivante. La sonde 1 fournit une information qui, après conversion dans les convertisseurs 2 et 3, est délivrée à la mémoire 4. La mémoire 4 délivre au calculateur la valeur actuelle et la valeur précédente de la grandeur à réguler. Le calculateur, qui reçoit également la valeur de consigne et un coefficient multiplicateur, élabore l'erreur actuelle et l'erreur future. Ces deux erreurs sont ensuite converties en numéros de zone d'erreur dans la mémoire de codage 11. En fonction de ces numéros de zone, reçus sous forme d'adresses, la mémoire morte programmée 12 délivre des ordres programmés au modulateur 13, qui module ainsi l'énergie dosée par l'organe de réglage 14 et fournie par la source 15, de manière que l'erreur actuelle et terreur future tendent vers 0. On a décrit une forme de réalisation préférée du régulateur de l'invention, en se référant au cas d'une régulation de tempéra- ture, par exemple d'un four. Il va de soi que l'invention n'est pas limitée à la régulation d'une telle grandeur et qu'elle s'applique tout aussi bien à la régulation dune pression, d'une tension électrique, du pH, ou de toute autre grandeur physique ou chimique. - E V E N D I C A T I O N S 1g- Régulateur de grandeur physique ou chimique, notamment de température, engendrée par une source d'énergie, comprenant un capteur de la grandeur à réguler,un générateur pour délivrer une consigne à la valeur de laquelle celle de la grandeur à réguler doit autre maintenue, des moyens calculateurs, ou calculateur, pour calculer l'erreur représentée par la différence entre la valeur de la grandeur à réguler et celle de la consigne,un organe de réglage agencé pour doser l'énergie fournie par la source et des moyens commandés par le calculateur pour moduler le dosage de l'organe de réglage, caractérisé par le fait qu'il comporte des moyens pour échantillonner, à des périodes régulières, ia grandeur à réguler et délivrer au calculateur, à chaque période d'échantillonnage, une première information représentative de la valeur actuelle de la grandeur au début de la période considérée et unedeuxième information représentative de la valeur précédente de la grandeur au début de la période d'échantillonnage précédente, et le calculateur est programmé pour délivrer, aux moyens de modulation,une premiere information représentative de l'erreur actuelle correspondant à la valeur actuelle de la grandeur et une deuxième information représentative de lter- reur future correspondant à la valeur future de la grandeur, au bout d'un nombre donné de périodes d'échantillonnage, calculée parextrapolation de la valeur actuelle en fonction de la valeur précédente. moyens de modulation comprennent un modulateur et une mémoire morte programmée pour délivrer des ordres - su modulateur en fonction des deux informations représentatives de l'erreur actuelle et de l'erreur future, respectivement reçues du calculateur.. 3. Régulateur selon la revendication 2, dans lequel les moyens de modulation comprennent une mémoire de codage, par l'intermédiaire de laquelle la mémoire morte programmée reçoit les deux informations du calculateur. 4.- Régulateur selon la revendication 3, dans lequel la mémoire re de codage est agencée pour associer à chacune des deux informations du calculateur une zone d'erreur numérotée, sélectionnée sur une échelle d'erreur stockée dans elle, et délivrer ainsi à la mémoire morte programmée une adresse formée dtun mot comprenant les deux numéros de zone associés aux deux informations dii calculateur. 5.- Régulateur selon l'une des revendications 1 à 4, dans lequel les moyens de modulation sont agencés pour faire varier la vitesse de variation du taux de modulation, interrompre la modulation, ou la porter à 100 . 6.- Régulateur selon l'une des revendications 2 à 5, dans lequel la mémoire morte programmée est agencée pour pouvoir être remplacée par une autre mémoire morte programmée, et changer ainsi de programme. 7.- Régulateur selon l'une des revendications 2 à 6, dans lequel la mémoire morte est programmée pour délivrer au calculateur une information représentative dudit nombre donné de périodes d'échantillonnage. 8.- Régulateur selon l'une des revendications 1 à 7, dans lequel les dits moyens d'échantillonnage comprennent un registre à décalage à deux étages.