Vous êtes sur la page 1sur 12

Réalisation numérique

des correcteurs

par Christian VASSEUR


Professeur d’Automatique et d’Informatique Industrielle à l’Université de Lille I

1. Architecture d’une commande numérique....................................... R 7 417 - 2


1.1 Passage d’une structure analogique à une structure numérique............ — 2
1.2 Architecture matérielle................................................................................ — 2
1.3 Description des flots d’information dans la machine............................... — 2
2. Organisation du logiciel de correction .............................................. — 3
2.1 Présentation ................................................................................................. — 3
2.2 Gestion du temps ........................................................................................ — 4
2.2.1 Mode scrutation.................................................................................. — 4
2.2.2 Mode interruption............................................................................... — 4
2.3 Traitement des données échantillonnées .................................................. — 5
2.3.1 Généralités .......................................................................................... — 5
2.3.2 Formatage des données..................................................................... — 5
2.3.3 Accélération des calculs..................................................................... — 6
2.4 Gestion des données échantillonnées ....................................................... — 6
2.5 Conclusion.................................................................................................... — 6
3. Réalisation des fonctions élémentaires de correction.................. — 6
3.1 Dérivateur filtre ............................................................................................ — 6
3.2 PID................................................................................................................. — 8
3.3 PIR ................................................................................................................. — 8
4. Commande numérique directe............................................................. — 8
4.1 Présentation ................................................................................................. — 8
4.2 Suppression du CNA ................................................................................... — 8
4.2.1 Principe................................................................................................ — 8
4.2.2 Mise en œuvre .................................................................................... — 9
4.3 Suppression du CAN ................................................................................... — 9
4.4 Exemple........................................................................................................ — 9
4.4.1 Présentation générale ........................................................................ — 9
4.4.2 Réalisation de υ(t) ............................................................................... — 10
4.5 Conclusion.................................................................................................... — 10
5. Réalisation des fonctions complexes................................................. — 10
5.1 Tabulation..................................................................................................... — 10
5.2 Interpolation................................................................................................. — 10
5.3 Exemple de commande complexe............................................................. — 11
Références bibliographiques ......................................................................... —
12

ans négliger le rôle des correcteurs analogiques, les constructeurs propo-


S sent en majorité des matériels utilisant des techniques numériques facile-
ment supportées par des micromachines industrielles mettant en œuvre des
microprocesseurs.
De façon générale, ces micromachines, qui sont programmables, offrent une
souplesse d’utilisation particulièrement appréciée, surtout lorsqu’il s’agit
d’effectuer, sur le site, un réglage des paramètres du correcteur numérique.
Dans ce cas, en effet, une action sur le logiciel de la micromachine suffit pour
réaliser les réglages désirés et l’utilisateur se trouve complètement affranchi
d’éventuelles interventions sur le matériel.

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite.
© Techniques de l’Ingénieur, traité Mesures et Contrôle R 7 417 − 1
RÉALISATION NUMÉRIQUE DES CORRECTEURS ______________________________________________________________________________________________

1. Architecture d’une
Perturbations
commande numérique Bloc correcteur

c (t ) + ε (t ) Éléments de u (t ) Processus y (t )
commande à piloter
--
1.1 Passage d’une structure analogique
à une structure numérique z (t ) Éléments de
retour

■ La structure fonctionnelle de pilotage d’un processus analogi-


que peut être décomposée en deux sous-ensembles (figure 1) [1] :
— le processus lui-même ; Figure 1 – Structure fonctionnelle de pilotage
— le bloc correcteur. d’un processus analogique
Ce bloc correcteur met en jeu les signaux suivants :
— le signal de consigne c (t ) ;
— le signal de retour primaire z (t ) élaboré par les éléments de
retour, à partir de la sortie y (t ) ; Bloc correcteur Perturbations
— l’erreur ε (t ) = c (t ) – z (t ) ;
— le signal de commande u (t ) élaboré par les éléments de 5U n 6
commande, à partir de l’erreur ε (t ). 5Cn6 u (t ) Processus y (t )
CNA
à piloter
La fonction de ce second sous-ensemble, le correcteur, est alors Machine
de générer u (t ) à partir de y (t ) et de c (t ), selon une loi dite de cor- numérique 5Yn6
rection qui, dans le cas analogique, se présente le plus souvent sous
CAN
la forme de relations différentielles entre ces trois grandeurs [8] [9]
[10].
■ Lorsque l’on veut effectuer le pilotage du processus à partir d’une
machine numérique (calculateur, automate...), il convient de réali- Horloge temps réel :
ser un double interfaçage permettant de passer de l’univers analogi- période Te
que à l’univers numérique et inversement.
Cn = c (nTe) Un = u (nTe) Yn = y (nTe)
Les éléments d’interfaçage utilisés sont les convertisseurs analo-
gique-numérique (CAN) et numérique-analogique (CNA) qui s’intè- Les flèches simples matérialisent des grandeurs analogiques.
grent dans la structure précédente selon le schéma de la figure 2 Les flèches doubles matérialisent des grandeurs numériques.
(cf. [11] pour la description des convertisseurs).
Dans ce schéma, la fonctionnalité du bloc correcteur est évidem- Figure 2 – Structure numérique de pilotage
ment la même que précédemment. d’un processus analogique
Toutefois, les lois de correction se présentent ici sous la forme de
relations de récurrence traitées par le calculateur. Pour cela, celui-ci
dispose d’un signal d’évaluation du temps (l’horloge temps réel) qui et bus de contrôle (C.bus) ([12] et [13] dans le traité Informatique
permet de cadencer les suites d’échantillons {Un }, {Yn } et {Cn } asso- pour les structures informatiques).
ciées respectivement aux fonctions u (t ), y (t ) et c (t ). Ce cadence-
ment est effectué selon une période Te qui est la période L’horloge temps réel HTR joue le rôle de métronome chargé
d’échantillonnage du bloc correcteur. d’assurer la cadence de travail et la synchronisation de tous les élé-
Dès lors, le rôle du calculateur est d’élaborer, en temps réel, la ments en présence. Elle définit la période d’échantillonnage Te dont
suite {Un }, à partir des suites {Cn } et {Yn }, et de commander les la valeur est à calculer en fonction de la dynamique d’évolution du
convertisseurs de manière à réaliser l’interfaçage avec le processus processus à piloter, conformément au théorème de Shannon. Prati-
à piloter. quement, on peut adopter un coefficient de suréchantillonnage
de 5, ce qui correspond à [2] :

a Les grandeurs mises en jeu u (t ), y (t ) et c (t ) et les suites 1/Te = 10 fmax (1)


associées peuvent être scalaires ou vectorielles. Dans ce dernier
cas, le bloc correcteur doit contenir autant de convertisseurs avec fmax fréquence la plus élevée contenue dans les
que de composantes. signaux à traiter.
b La consigne est en général fournie directement au bloc cor-
recteur sous forme numérique (clavier, roues codeuses...).
Aucun convertisseur n’apparaît donc à ce niveau sur la structure
de la figure 2. 1.3 Description des flots d’information
dans la machine

1.2 Architecture matérielle Si l’on fait coïncider les instants d’échantillonnage avec les fronts
montants de HTR, par exemple, on peut suivre le flot des informa-
tions au sein de la machine. Pour cela, en complément de la
La figure 2 est un schéma de principe. La figure 3 fournit la struc- figure 3, qui donne une illustration spatiale des opérations effec-
ture informatique correspondante, articulée autour des trois bus tuées, le chronogramme de la figure 4 fournit une représentation
fondamentaux : bus des adresses (A.bus), bus des données (D.bus) temporelle du cadencement de ces opérations.

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite.
R 7 417 − 2 © Techniques de l’Ingénieur, traité Mesures et Contrôle
______________________________________________________________________________________________ RÉALISATION NUMÉRIQUE DES CORRECTEURS

A. bus

Calculateur u (t ) Processus y (t )
Entrée 2 3 à piloter 1
AC HTR CNA CAN
consignes
2

1
Cn Un Yn
D. bus

C. bus

AC algorithme de commande HTR


information numérique
information analogique Te
Figure 3 – Architecture d’une machine
numérique de contrôle-commande

Ce temps de synchronisation dure : τs .


Envoi de Un
4 Les opérations 1 , 2 et 3 sont répétées aussi longtemps que
sur CNA le correcteur numérique est en fonctionnement. Cela conduit à la
u ( t ) = Un réalisation d’une commande en escalier telle que celle illustrée
figure 5.
Acquisitions u ( t ) = Un + 1

Calcul de Un Calcul de
Un + 1 Le processus précédent induit un retard à la commande
(figure 4) :
Temps τr = τa + τc
nTe 1 2 3
τa τc τs (n + 1) Te (n + 2) Te
qui peut être négligé si le coefficient de suréchantillonnage
τr dépasse la valeur pratique 5.
Te Te Dans le cas contraire, τr n’est plus négligeable vis-à-vis de la
dynamique du système et il faut l’intégrer dans la fonction de
transfert de la chaîne d’action pour le calcul des équations du
correcteur. Enfin, le bon fonctionnement de la machine n’est
Figure 4 – Chronogramme des opérations dans la machine évidemment possible que si :
de contrôle-commande de la figure 3
τr < Te

U0
U1
Un
Un + 1
2. Organisation du logiciel
Un + 2
de correction
Temps
Te
2.1 Présentation

Figure 5 – Allure en escalier du signal de commande u (t )


Si l’on se réfère à la figure 2, il apparaît que, dans le cas général,
le calcul de la commande Un à l’instant nTe utilise, en plus des
valeurs Cn et Yn prélevées à cet instant, trois ensembles de valeurs :

1 À chaque instant d’échantillonnage tel que nTe , la machine U n = { U n – i ; i = 1,I }, 


effectue la lecture du CAN et de la consigne (acquisitions). 
Y n = { Y n – j ; j = 1, J },  (2)
Temps requis τa (temps d’acquisition). 
C n = { C n – k ; k = 1, K }, 
2 À l’issue des acquisitions, la machine dispose des informations
Yn et Cn nécessaires au calcul de la commande Un . Le calcul s’effec-
les constantes I, J et K dépendant de l’ordre des différents éléments
tue selon les relations de récurrence du bloc correcteur (algorithme
(éléments de retour et éléments de commande) constitutifs du bloc
de correction AC de la figure 3). La valeur Un est ensuite envoyée
correcteur (figure 1).
sur le CNA.
Nota : dans la suite de l’article, on notera en gras les vecteurs (ensembles de valeurs).
Temps requis pour l’ensemble de ces opérations : τc (temps de Les ensembles Un , Yn et Cn sont, en fait, des files d’attente de
calcul). longueurs respectives I, J et K dont les contenus sont modifiés à
3 La machine se met en attente du front montant de HTR suivant chaque période d’échantillonnage. Plus précisément, à l’issue du
qui matérialise l’instant d’échantillonnage (n + 1) Te . calcul de Un , les têtes de files Un – I , Yn – J et Cn – K , qui ne seront

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite.
© Techniques de l’Ingénieur, traité Mesures et Contrôle R 7 417 − 3
RÉALISATION NUMÉRIQUE DES CORRECTEURS ______________________________________________________________________________________________

plus utilisées pour les calculs suivants (Un + 1), sont retirées des files
d’attente tandis que les valeurs Un , Yn et Cn y sont introduites, et
ainsi de suite. Cn

■ La figure 6 illustre les phases successives du calcul de Un réa- Signal nTe Signal
lisées par le logiciel de la machine, en mode opérationnel. analogique analogique
1 Phase de gestion du temps Yn Un
y (t ) u (t )
CAN Calculs CNA
Cette phase correspond à la recherche d’un instant d’échantillon- 1
nage tel que nTe . À cet instant, les différentes files d’attente se trou-
vent dans les états Un , Yn et Cn indiqués sur la partie gauche de la 2
figure 6.
2 Phase de traitement des données Un -- 1 Yn -- 1 Cn -- 1 Un Yn Cn
Dès que l’instant nTe a été détecté, le logiciel enchaîne les opéra-
tions suivantes :
— a) : • demande de conversion sur le CAN ;
• attente de fin de conversion ;
— b) : • lecture puis mémorisation de Yn et de Cn ;
• calcul puis mémorisation de Un à partir de Yn , Cn et des Un -- I Yn -- J Cn -- K Un -- I + 1 Yn -- J + 1 Cn -- K + 1
éléments contenus dans les files d’attente ;
• envoi de Un sur le CNA.
3 Phase de gestion des données 3
Un Yn Cn Un + 1 Yn + 1 Cn + 1
À l’issue de la phase 2, le logiciel dispose de toutes les informa-
tions nécessaires à la mise à jour des files d’attente pour la période
d’échantillonnage suivante (n + 1)Te . Cette mise à jour correspond à Figure 6 – Phases du logiciel de calcul de la commande Un
la mise aux états Un + 1 , Yn + 1 et Cn + 1 tels qu’indiqués sur la par-
tie droite de la figure 6.
Le cycle 1 - 2 - 3 est répété durant tout le fonctionnement de la
machine. 2.2.2 Mode interruption
■ Au démarrage, le premier cycle est précédé d’une phase d’initia- Dans ce mode, HTR doit être connectée sur la ligne d’interruption
lisation comprenant les opérations suivantes : du processeur, de manière à déclencher une interruption à chaque
— initialisation de la pile du processeur ; instant d’échantillonnage, c’est-à-dire à chaque front montant de
— éventuellement, initialisation des interruptions ; HTR dans l’exemple que nous avons choisi.
— initialisation des ports d’entrée-sortie ; Dans ces conditions, le processeur est complètement déchargé de
— initialisation des convertisseurs ; la détection des instants d’échantillonnage et l’arbre programmati-
— initialisation des files d’attente (mise à zéro) et du mécanisme que complet du correcteur numérique prend la forme indiquée sur
de gestion de ces files. la figure 8. Les interruptions sont inhibées avant la phase d’ini-
tialisation, précisément pour permettre une initialisation non pertur-
La suite du paragraphe 2 fournit les précisions concernant la bée par les interruptions. Ensuite, après validation des
réalisation des fonctions définies dans les phases 1 , 2 et 3 . interruptions, les phases 2 et 3 sont exécutées successivement à
En ce qui concerne la phase d’initialisation, les opérations s’y chaque interruption, c’est-à-dire à chaque instant d’échantillonnage.
rapportant relèvent plus spécifiquement de la programmation Dans ce mode de programmation, la procédure phase 1 a évidem-
générale des microprocesseurs et ne seront donc pas précisées ment disparu.
davantage ici.
■ Le mode interruption est particulièrement avantageux dans
la mesure où il libère le processeur du temps de synchronisa-
2.2 Gestion du temps tion τs (figure 4). Ce temps peut alors être mis à profit pour la
réalisation d’autres fonctions telles que modification des para-
Elle se ramène à la détection des fronts d’horloge matérialisant mètres du correcteur ou des consignes par saisie sur clavier,
les instants d’échantillonnage. Pour cela, deux modes de program- roues codeuses..., l’ensemble de ces fonctions constituant les
mation sont possibles : tâches de fond (figure 8).
— la scrutation logicielle de l’horloge temps réel (HTR) ; ■ Il est possible de libérer le processeur du temps d’acquisition
— l’utilisation de la ligne interruption du calculateur. τa , en plus du temps τs. Pour cela, il suffit de commander la
demande de conversion du CAN à l’aide de HTR (fronts mon-
tants pour l’exemple choisi) et de connecter la sortie « fin de
2.2.1 Mode scrutation conversion » du CAN à la ligne d’interruption du processeur.
Dans ces conditions, le processeur n’est sollicité que lorsque la
Dans ce cas, si l’on considère que les instants d’échantillonnage donnée Yn est valide en sortie du convertisseur. Dès lors,
sont matérialisés par les fronts montants de HTR comme dans déchargé de la demande de conversion et de l’attente de fin de
l’exemple précédent, le logiciel a pour fonction de détecter, sur HTR, conversion, le processeur ne doit exécuter que la partie b de la
le passage de l’état 0 à l’état 1. Cela s’effectue simplement par lec- phase 2 (§ 2.1) et l’arbre programmatique complet est, dans ce
ture du bit d’entrée sur lequel est branchée HTR, selon l’arbre pro- cas, identique à celui de la figure 8, 2 étant remplacé par b
grammatique de la figure 7a qui décrit la phase 1 en mode de 2 .
scrutation.
Dès lors, la figure 7b indique comment, dans ce cas, la procédure ■ La routine d’interruption de la figure 8 intègre évidemment,
phase 1 s’intègre dans l’arbre programmatique complet du correc- comme toute routine d’interruption, une sauvegarde et une res-
teur numérique. titution du contexte de la tâche interrompue.

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite.
R 7 417 − 4 © Techniques de l’Ingénieur, traité Mesures et Contrôle
______________________________________________________________________________________________ RÉALISATION NUMÉRIQUE DES CORRECTEURS

Correcteur
numérique

Séquence

Phase 1 Phase Mode


d'initialisation opérationnel

Séquence
js

Détection Détection
état 0 état 1 Cycle Arrêt

Séquence
js js
js jusqu'à ce que (condition test)
Lire HTR HTR = 0 Lire HTR HTR = 1 procédure 1 2 3
condition test

a scrutation de HTR b arbre complet

Figure 7 – Gestion du temps par scrutation de HTR

Interruption
Correcteur HTR Routine
numérique d'interruption

Séquence Séquence

Inhibition Phase Validation Tâches Sauvegarde Restitution


Phase 2 Phase 3
interruption d'initialisation interruption de fond contexte contexte

Réglages consignes
Réglages paramètres ...

Figure 8 – Gestion du temps par interruptions

2.3 Traitement des données Dès lors, deux types de problèmes doivent être résolus pour l’exé-
cution du calcul de Un :
échantillonnées
— un problème de respect du format des données ;
— un problème de rapidité d’exécution des calculs, notamment
des multiplications de la combinaison linéaire [3].
2.3.1 Généralités
2.3.2 Formatage des données
Dans le cas le plus courant d’un correcteur linéaire, le calcul de Un
se ramène à une combinaison des échantillons contenus dans les Même si toutes les données utilisées sont codées selon le même
files d’attente Un , Yn et Cn , les coefficients de cette combinaison format de N bits, il se produit, au cours des calculs intermédiaires,
étant mémorisés dans une pile dite pile des coefficients. un dépassement de ce format. En effet, chaque produit de la combi-
Dans ces conditions, d’abord par le jeu de changements d’échel- naison linéaire, qui est un produit de deux nombres de N bits, se
les d’amplitude semblables à ceux effectués en calcul analogique, et code sur 2N bits. Par ailleurs, soit S le nombre d’additions de la
ensuite par une normalisation des fonctions de transfert Un /Cn et combinaison et ν l’entier tel que :
Un /Yn conduisant à des gains maximaux de 1, il est possible de
2ν – 1 < S < 2ν
représenter en machine les grandeurs Cn , Yn , Un et les coefficients
de la combinaison linéaire sous forme d’entiers ayant tous le même Alors, le résultat du traitement, noté U n*, apparaît sur 2N + ν bits, ce
format, soit N bits, le plus souvent en code complément à deux ; un qui signifie qu’il faut prévoir un format de 2N + ν bits pour effectuer
cas très courant est le codage sur un octet (N = 8) qui fournit une les calculs intermédiaires de la combinaison linéaire. Pratiquement,
précision de 1/256, soit 0,4 % environ de la pleine échelle. on choisit le plus petit format en mots machine incluant ce format.

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite.
© Techniques de l’Ingénieur, traité Mesures et Contrôle R 7 417 − 5
RÉALISATION NUMÉRIQUE DES CORRECTEURS ______________________________________________________________________________________________

Finalement, Un , qui doit être codé sur N bits afin de conserver la


compatibilité avec le format de la file d’attente, se déduit de U n* par
troncature des N + ν bits « de droite » (les moins significatifs). PF1 Yn -- α + 1 PF1 Yn -- α + 1

La valeur Un envoyée sur le CNA est une valeur normalisée


résultant des changements d’échelles d’amplitude indiqués Yn -- 2 Yn -- 2
paragraphe 2.3.1. C’est la raison pour laquelle un gain doit être Yn -- 1 Yn -- 1
prévu derrière le CNA afin de rétablir l’échelle d’amplitude
réelle de u (t ). Pointeur Yn -- J Yn
PFn Pointeur
Yn -- J + 1 Yn -- J + 1
PFn + 1
Yn -- J + 2 Yn -- J + 2
2.3.3 Accélération des calculs
PFJ Yn -- α PFJ Yn -- α
Celle-ci se situe essentiellement au niveau des multiplications. Si
le processeur utilisé ne possède pas la multiplication dans son jeu État à nTe État à (n + 1)Te
d’instructions, il faut définir des routines de multiplication aussi
rapides que possible. Deux solutions sont envisageables : Yn Yn + 1

— les tables de multiplication sont mémorisées en machine et les


résultats sont obtenus par de simples accès mémoire : c’est la solu- Figure 9 – Gestion de la file tournante
tion tabulée qui a l’inconvénient d’être consommatrice de mémoire
(durée : de l’ordre de quelques microsecondes) ;
— les coefficients de la combinaison linéaire sont choisis comme
Exemple : à titre indicatif, supposons que J = 512. Sachant qu’une
des arrangements simples de puissances de 2 ; cela permet d’écrire
instruction de lecture/écriture dure en moyenne 1 µs, on économise
des routines spécifiques et rapides utilisant la multiplication par
environ 1 ms à chaque période d’échantillonnage, par la méthode pré-
décalage ; cette solution, plus lente que la précédente (ici de l’ordre
sentée. Si l’on considère que les calculs algébriques durent, quant à
de quelques dizaines de microsecondes), mais moins consomma-
eux, en moyenne 1ms, l’économie précédente prend un caractère
trice de mémoire, suppose que le bloc correcteur soit peu sensible à
spectaculaire !
ces coefficients.
À l’initialisation, PF est chargé à la valeur PF1 et toutes les cases
de la file d’attente sont mises à zéro.
2.4 Gestion des données échantillonnées
2.5 Conclusion
Elle repose essentiellement sur la gestion de la structure de don-
nées particulière qu’est la file d’attente.
Les fonctions que l’on vient de définir peuvent être réalisées aussi
Le schéma d’évolution des files d’attente illustré sur la figure 6 est bien en langage évolué (PASCAL, C, FORTRAN, etc.) qu’en assem-
un schéma fonctionnel. Pratiquement, la fonction d’évolution est bleur. Toutefois, à chaque fois que les contraintes de temps de calcul
réalisée selon le principe de la file tournante utilisant un pointeur liées à la période d’échantillonnage ne seront pas très sévères, les
mobile. À titre d’exemple, la figure 9 illustre le mécanisme de ges- langages évolués seront utilisés de préférence à l’assembleur. Dans
tion pour l’une des files d’attente du correcteur (file Yn ). ce cas, tous les mécanismes liés aux structures de données et aux
Cette file, qui a une longueur fixe J, est délimitée par les adresses opérations algébriques (multiplication) sont transparents et n’appa-
PF 1 et PFJ. On définit ensuite un pointeur PF dont la valeur à l’ins- raissent pas à l’utilisateur, ce qui simplifie la programmation au
tant nTe est PFn . Ce pointeur pointe, à chaque instant, la tête de file. détriment du temps de calcul. En assembleur, l’utilisateur doit réali-
Toutes les autres données de la file, rangées comme l’illustre la ser tous les mécanismes décrits ci-dessus, ce qui, à titre indicatif,
figure 9, sont alors adressées relativement à ce pointeur, pour les permet de travailler avec une période d’échantillonnage Te de
calculs s’effectuant entre nTe et (n + 1)Te. À l’issue de ces calculs, la l’ordre de 0,5 ms, alors qu’en langage évolué, Te est de l’ordre de
remise à jour de la file d’attente (passage à l’état Yn + 1 ) s’effectue 25 ms si le langage est compilé et de 0,5 s si le langage est inter-
simplement par les deux opérations suivantes : prété.
— remplacer Yn – J , qui n’est plus utile, par Yn qui a été acquis à Ainsi, la régulation d’un processus thermique peut très bien se
nTe ; cela se traduit par l’instruction : faire en BASIC. Par contre, un asservissement électrique d’axe de
robot nécessite l’écriture des algorithmes de commande en assem-
ranger Yn dans la case mémoire pointée par PF = PFn ; bleur.
— incrémenter PF, ce qui traduit l’expression : PFn + 1 = PFn + 1 ;
cette incrémentation s’effectue modulo J (file tournante ) ce qui
donne, en langage structuré :
PF : = PF + 1
3. Réalisation des fonctions
si PF = PFJ + 1, alors PF : = PF1 élémentaires de correction
À l’issue de ces opérations, PF pointe la nouvelle tête de file
Yn – J + 1 et la machine se trouve en état de traiter l’instant
d’échantillonnage suivant (n + 1)Te . 3.1 Dérivateur filtre
Par cette méthode de gestion, les données restent fixes dans la
file d’attente. Seul le pointeur se déplace par rapport aux données. Parmi les grandeurs utilisées dans les correcteurs, la dérivée
Ainsi on économise les 2J instructions de lecture/écriture en (terme D de PID correcteur à action proportionnelle, intégrale et
mémoire qui seraient nécessaires si l’on déplaçait les données d’un dérivée ) constitue, par excellence, l’outil de prédiction permettant
rang dans la file, à chaque période d’échantillonnage. d’améliorer les temps de réponse du système commandé. Toute-

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite.
R 7 417 − 6 © Techniques de l’Ingénieur, traité Mesures et Contrôle
______________________________________________________________________________________________ RÉALISATION NUMÉRIQUE DES CORRECTEURS

fois, cette grandeur doit être manipulée avec précaution, dans la


mesure où tout bruit sur le signal incident peut entraîner une éva-
luation complètement erronée de la dérivée utile. y (t )
y (t )
La figure 10, qui illustre ce phénomène, fait apparaître : dy /dt
— le signal réel bruité y (t ) (sortie du capteur) ;
— le signal filtré ŷ ( t ) ;
dy /dt y (t )
— les dérivées en un point de ces deux signaux.
y (t )
Il est clair que seul dŷ ( t ) ⁄ d t permet de réaliser un PID correct et
nous donnons ci-après une méthode de réalisation numérique
de ŷ ( t ) et dŷ ( t ) ⁄ d t . On trouvera, dans l’article Réalisation élec-
tronique des correcteurs [10], une réalisation analogique de ces t
mêmes grandeurs.
Le principe de la méthode est illustré figure 11 [4] et [5]. À chaque
Figure 10 – Signal filtré et sa dérivée
échantillon incident Yn on associe les q échantillons suivants et les
q échantillons précédents. On obtient ainsi une file d’attente longue
de 2q + 1 échantillons :
Yn = {Yn + i , i = – q, + q }.
On définit ensuite, par régression linéaire sur ces 2q + 1 échan-

Signal échantillonné Yn+i


tillons, un segment de droite Sn associé à Yn . Ce segment a pour
pente an et pour ordonnée bn en nTe .
De cette manière, en faisant glisser Sn , on fait correspondre à la
suite d’échantillons {Yn } trois suites {Sn }, {an } et {bn }. La courbe
engendrée par bn est l’enveloppe géométrique de {Sn }, c’est-à-dire
une estimation du signal filtré ŷ ( t ) soit :

Ŷ n = b n

De plus, an est la dérivée exacte de ŷ ( t ) en nTe soit : (n -- q)Te nTe (n + q)Te Temps

Ŷ n′ = a n
Figure 11 – Principe de la segmentation
Cette procédure permet donc d’évaluer simultanément les suites
{Ŷ n } et {Ŷ n′ } à partir de { Yn } .
Les coefficients an et bn sont calculés en minimisant l’écart qua-
dratique moyen entre {Yn + i , i = – q, + q } et le segment Sn . Si nTe est
l’origine des temps, cette erreur s’exprime par : nTe
+q
=  ---------------- ∑ ( Y n + i – a n i T e)
2 1 2
En  2 q + 1 Signal Yn + q + 1
i = –q CAN Σn q qΣn + Yn -- q

2
En minimisant E n par rapport à an et bn il vient :
Yn + q
+q
3 dŶ

Yn + q -- 1 An
a n = -------------------------------------------------- iY n + i = ---------n-
q ( q + 1 ) ( 2 q + 1 ) Te i = –q
dt Bn

+q Yn -- q ∆n
b n =  ---------------- ∑ Y n + i = Ŷ n
1 Bn + 1 An + 1
2 q + 1 i = –q
addition soustraction
Par ailleurs, en effectuant les changements d’échelles d’ampli-
tude suivants :
Figure 12 – Calcul en temps réel de An + 1 et Bn + 1
q ( q + 1 ) ( 2 q + 1 ) Te
A n = -------------------------------------------------- a n
3

Bn = (2q + 1)bn L’ensemble des relations (3) ne nécessite que six additions-sous-
tractions et une multiplication par q. Ces opérations peuvent être
on peut définir des relations de récurrence simples liant An + 1 et effectuées en moins de 300 µs sur un microcontrôleur 8 bits utilisant
Bn + 1 à An et Bn . Il vient : la double précision, conformément aux mécanismes décrits au
paragraphe 2.
A n + 1 = A n – B n + qΣ n + Y n – q 
 (3) La figure 12 illustre le schéma de calcul de An + 1 et Bn + 1, c’est-à-
Bn + 1 = Bn + ∆n  dire Ŷ n + 1 et Ŷ n′ + 1 , en temps réel.
Ce dispositif, qui réalise un filtre dérivateur à moyenne glissante,
avec : Σn = Y n + q + 1 + Y n – q , constitue un outil simple et très efficace pour déterminer les
∆n = Y n + q + 1 – Yn – q . termes P (soit Ŷ n ) et D (soit Ŷ n′ ) d’un PID (P = proportionnel,

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite.
© Techniques de l’Ingénieur, traité Mesures et Contrôle R 7 417 − 7
RÉALISATION NUMÉRIQUE DES CORRECTEURS ______________________________________________________________________________________________

D = dérivée). La valeur de q est à régler en fonction du filtrage Cela revient à dire que le processus à piloter se comporte comme
recherché. un filtre passe-bas, vis-à-vis de la commande en escalier u (t )
(figure 5).
Exemple : à titre indicatif, si fe désigne la fréquence d’échantillon-
nage, la fréquence de coupure du filtre vaut 0,18 fe /q à – 2dB [5]. La Dans cette hypothèse, si on considère, sur une période d’échan-
valeur q = 3 est pratiquement acceptable si le coefficient de suréchan- tillonnage, une commande υ (t ) de la forme indiquée sur la
tillonnage vaut 5. figure 13, pour laquelle :
Toutefois, il est prudent d’effectuer des essais pour fixer à q une — la constante positive M désigne l’amplitude de la commande ;
valeur correcte. — ε ∈ {– 1 ; + 1} désigne le signe de la commande ;
— α ∈ [0, + 1] désigne la fraction de Te pour laquelle υ (t ) ≠ 0 ;
cette commande peut être assimilée à sa valeur moyenne (valeur fil-
En temps réel, le dispositif précédent induit un retard pur de q trée), sur chaque période d’échantillonnage.
périodes d’échantillonnage, inhérent à la méthode. Si ce retard
est trop important vis-à-vis de la dynamique du système, il faut L’expression de cette valeur moyenne sur la période d’échan-
l’intégrer dans le calcul du correcteur. tillonnage numéro n est alors tout simplement :
<Un > = ε α M (4)
On peut en déduire les expressions de ε et α, en fonction de la
3.2 PID commande échantillonnée Un calculée par l’algorithme de correc-
tion AC de la figure 3, en imposant <Un > = Un :
Le PID est simplement réalisé en effectuant d’abord une combi-
naison linéaire des termes Ŷ n et Ŷ n′ définis au paragraphe 3.1 (ter- ε = signe (Un)
mes P et D). On ajoute ensuite à cette combinaison le terme I α = |Un |/M
(intégral). Celui-ci est obtenu en calculant la somme cumulée des
échantillons Ŷ n , ce qui pratiquement constitue une approximation Cette commande à trois valeurs {–M ; 0 ; +M } est appelée
suffisante de l’intégrale par la méthode des rectangles. commande par modulation de largeur d’impulsion (MLI) (Pulse
Les combinaisons linéaires, qui mettent en jeu les coefficients du Wide Modulation (PWM) en anglais) [6].
PID, sont effectuées selon les mécanismes décrits au paragraphe 2, La figure 14 illustre la correspondance entre la commande en
avec, éventuellement, changements d’échelles d’amplitude pour escalier u (t ) et la commande MLI υ (t ).
simplifier les calculs.

Les calculs précédents supposent, évidemment, que


|U n | < M .
3.3 PIR Dans le cas contraire, la commande fonctionne en saturation
et : α = 1.
Ce correcteur met en jeu le terme R de retard qui nécessite la
mémorisation de l’échantillon Yn – Q , si QTe est le retard adopté. Dès
lors, la file d’attente Yn devra contenir au moins Yn – Q pour la réali-
sation de ce type de correcteur. Le traitement des termes P et I
s’effectue, quant à lui, comme pour le PID (§ 3.1 et 3.2). εM

4. Commande numérique
directe αTe
Temps

4.1 Présentation Te

Le schéma de la figure 2 fait apparaître deux éléments d’interfa-


çage : le convertisseur numérique-analogique (CNA), pour élaborer
la commande u (t ), et le convertisseur analogique-numérique (CAN), Figure 13 – Commande y (t )
pour lire la sortie y (t ) du système. Ces éléments nécessitent des
mises en œuvre matérielle et logicielle spécifiques.
Nous allons examiner comment il est possible de s’en affranchir
dans de nombreux cas, afin de simplifier et donc de fiabiliser les dis- υ (t )
positifs et de réduire les coûts de réalisation.

4.2 Suppression du CNA u (t )

Temps
4.2.1 Principe
On sait que pour obtenir un bon fonctionnement du système
échantillonné, il importe de respecter la contrainte pratique
[relation (1)] :
Te < 1/10 fmax Figure 14 – Correspondance entre y (t ) et u (t)

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite.
R 7 417 − 8 © Techniques de l’Ingénieur, traité Mesures et Contrôle
______________________________________________________________________________________________ RÉALISATION NUMÉRIQUE DES CORRECTEURS

4.2.2 Mise en œuvre — le refroidissement s’effectue par MLI sur la variable logique
V2 :
La commande MLI s’obtient simplement en réalisant une commu- V2 = 1 ⇒ refroidissement,
tation sur des actionneurs tout ou rien (vanne tout ou rien, commu-
soit :
tation de tension sur un moteur électrique ou sur une résistance de
chauffage, etc.). Cette commutation est commandée par des υ (t ) = – M ;
signaux logiques délivrés par le calculateur, à partir de timers
— V1 = V2 = 0 correspond à une commande nulle,
(cf. exemple § 4.4.2).
Il est à noter que, dans la majorité des cas, les actionneurs tout ou soit :
rien sont moins onéreux et plus fiables que les actionneurs à action υ (t ) = 0 ;
progressive. C’est, par exemple, le cas de la vanne tout ou rien par — on considère, pour simplifier, que la pompe P est constam-
rapport à la vanne proportionnelle ou de la commutation électrique ment activée,
de puissance par rapport à l’amplification analogique.
soit :
P = + 1, ∀ t ;

4.3 Suppression du CAN — la mesure de la température θ se fait par sonde analogique.


Dans ces conditions, la figure 17 donne un exemple de réponse,
pour un profil de consigne en trapèze (cas très fréquent en teinture).
La suppression du CAN nécessite l’utilisation de capteurs déli- La période d’échantillonnage adoptée est de 10 s et le mode de cor-
vrant directement des informations numériques. Par exemple, les rection utilise le principe de la commande prédictive. Par ailleurs,
codeurs optiques absolus ou incrémentaux permettent de mesu- pour des raisons de clarté, la figure 17 fait apparaître directement la
rer directement la position ou la vitesse de rotation d’un axe : valeur moyenne de la commande <Un > et non υ (t ).
— dans le fonctionnement absolu, le codeur délivre des motifs Pour tous les aspects concernant le choix du correcteur et de
binaires spécifiques de la position de l’axe (par exemple code l’algorithme de commande, le lecteur pourra utilement se reporter
Gray) ; aux articles et ouvrages indiqués en bibliographie [14] et [15].
— dans le fonctionnement incrémental, les informations déli-
vrées sont constituées d’un train d’impulsions dont le nombre et la
fréquence renseignent sur l’état de l’organe en rotation.
Dans les deux cas, des lignes binaires supplémentaires, directe-
ment connectées sur les entrées/sorties du calculateur, peuvent ren-
seigner, soit sur le sens de rotation de l’organe, soit sur sa position
initiale (codeur incrémental). Cuve de
Autoclave préparation
La mesure de débit par impulsions constitue un autre exemple du bain
de capteur délivrant directement une information binaire. Dans ce
cas, le courant fluide entraîne en rotation une ailette, dont la vitesse
de rotation est mesurée à partir d’un train d’impulsions binaires.
D’une façon plus générale, les convertisseurs tension-fréquence
permettent de transformer une information analogique en un train
d’impulsions, dont la fréquence est proportionnelle à la valeur ana-
logique à traiter. Température (θ)

Échangeur
4.4 Exemple thermique (E) Vanne
d'alimentation
Vapeur
Pompe (P )
4.4.1 Présentation générale V1

La figure 15 schématise le dispositif de régulation en température Eau froide V2


d’un autoclave de teinture [7]. Ce dispositif comporte :
— une cuve contenant le bain de teinture ;
— une pompe P assurant la circulation du bain dans l’échangeur
Figure 15 – Schéma d’un procédé de teinture par autoclave
thermique E ;
— un échangeur thermique E intégrant deux circuits :
• un circuit de chauffage alimenté en vapeur, par l’intermédiaire
de la vanne tout ou rien V1,
• un circuit de refroidissement alimenté en eau froide, par
l’intermédiaire de la vanne tout ou rien V2.
Quel que soit le mode de régulation envisagé (PID, PIR, ...), le dis- V1
positif de commande numérique prend la forme indiquée figure 16, V2
pour laquelle : Calculateur P Autoclave
— le chauffage s’effectue par MLI sur la variable binaire V1 : θ
V1 = 1 ⇒ chauffage,
soit, selon la notation du § 4.2.1 :
υ (t ) = + M ; Figure 16 – Commande numérique de l’autoclave

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite.
© Techniques de l’Ingénieur, traité Mesures et Contrôle R 7 417 − 9
RÉALISATION NUMÉRIQUE DES CORRECTEURS ______________________________________________________________________________________________

4.5 Conclusion

Température θ (°C)
34
33 La MLI constitue un moyen simple et efficace de réalisation de
32 commandes numériques. Outre qu’elle permet de s’affranchir de
31 dispositifs de conversion parfois coûteux, elle conduit à des mises
30 u (t ) en œuvre fiables utilisant des actionneurs fonctionnant uniquement
29 en commutation. Toutefois, la durée de vie de tels dispositifs est
28 essentiellement liée au nombre (ou plus exactement à la densité) de
27 commutations imposées à ces actionneurs. Dans ce sens, il peut
26 s’avérer utile et rentable de développer des algorithmes de
25 commande minimisant le nombre de commutations.
24
23
22
21
0 20 40 60 80 100 120 140
5. Réalisation des fonctions
Temps (min) complexes
consigne
température du bain
axe de la commande
Il n’est pas toujours possible de ramener le calcul de la
commande commande Un à une combinaison d’éléments de files d’attente.
Cela se produit notamment lorsque la correction est non linéaire.
Dans ce cas, les calculs mettent en jeu des fonctions complexes
Figure 17 – Réponse en température (sinus, exponentielles, intégrales, etc.) et les contraintes temps réel
nécessitent alors l’utilisation de techniques spécifiques.
Parmi ces techniques, les plus répandues sont la tabulation et
4.4.2 Réalisation de y (t ) l’interpolation.

La commande MLI est réalisée à partir d’un timer directement


commandé par le calculateur. Afin de travailler à la pleine échelle de
temps du timer, on procède de la manière suivante. Soit N la valeur 5.1 Tabulation
maximale du timer et T sa période de comptage. Dans ces condi-
tions, la pleine échelle de temps est définie par rapport à la période
d’échantillonnage Te par la relation : Supposons, à titre d’exemple, que Un s‘exprime par la fonction :


Te = NT yn
f ( Yn ) = Un = exp ( sin u ) cos u du
Ainsi, la valeur ν d’initialisation du timer correspondant à la durée 0
αTe (durée de l’impulsion) est définie, en valeurs entières, par la
relation : Le calcul de Un nécessite beaucoup de temps, car il intègre l’éva-
ν T = α Te luation d’une intégrale à partir de fonctions trigonométriques.
L’opération ne peut donc pas être réalisée en temps réel. Dès lors,
Donc :
pour satisfaire les contraintes de vitesse de calcul, on consigne,
ν = entier(α N + 0,5) dans un tableau, N valeurs de f (x ) prédéterminées :
ce qui représente la valeur entière la plus proche de α N.
f (xi ) (i = 1,N)
Dans ces conditions, l’algorithme de commande par MLI prend la
forme : Ces valeurs, qui doivent être équiréparties sur tout le champ de
N : valeur maximale du timer variation de Yn , sont calculées hors ligne. Ainsi, à la lecture de Yn , il
Te : période d’échantillonnage suffit de consulter le tableau et d’affecter à Un la valeur f (xj ) corres-
M : valeur maximale de la commande pondant au xj le plus proche de Yn .
faire V1 = 0 et V2 = 0 En général, cette procédure simple de lecture de table permet
tant_que fonctionnement d’obtenir très rapidement une bonne approximation du Un cherché.
faire L’évaluation est évidemment d’autant plus fine que N est grand.
attendre instant d’échantillonnage
lire Yn et Cn
calculer Un selon AC (algorithme de commande) 5.2 Interpolation
calculer ε = signe (Un)
calculer α = |Un|/M.
calculer ν = entier(α N + 0,5 ) Lorsque les valeurs tabulées sont peu nombreuses, la méthode
si ε = 1, faire V1 = 1 et V2 = 0 précédente peut se révéler imprécise. Dès lors, pour améliorer la
précision, on peut compléter la tabulation par une interpolation réa-
sinon faire V1 = 0 et V2 = 1
lisée selon les mécanismes suivants :
initialiser timer à ν
— après lecture de Yn , chercher dans la table les deux valeurs
attendre que timer = 0
f (xj ) et f (xk ) telles que :
faire V1 = 0 et V2 = 0
xj < Y n < x k
fin_faire
fin_tant_que xj et xk étant les plus proches possible de Yn ;

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite.
R 7 417 − 10 © Techniques de l’Ingénieur, traité Mesures et Contrôle
______________________________________________________________________________________________ RÉALISATION NUMÉRIQUE DES CORRECTEURS

— affecter à Un la valeur f (Yn ) définie par interpolation linéaire à Soit, par ailleurs, IXM la valeur maximale de IX ; c’est le nombre
partir de f (xj ) et f (xk ), soit : de lignes du tableau :
IXM = 13
Un = f (Yn) = f (xj ) + [(Yn – xj )/(xk – xj )] [f (xk ) – f (xj )]
Dans ces conditions, la relation liant IX à D s’écrit :
Cette opération se ramène donc à quatre additions-soustractions
et deux multiplications-divisions, quelle que soit la complexité de la D = Dm + (IX – 1) [(DM – Dm)/(IXM – 1)] (4)
fonction f (x ). La méthode est donc particulièrement bien adaptée à
expression dans laquelle (DM – Dm)/(IXM – 1) représente le pas de
une mise en œuvre en temps réel.
variation de la grandeur d’entrée D du tableau 1. Ce pas est donc
supposé constant.
■ De même, pour JX et la variable θ, on a :
5.3 Exemple de commande complexe
θ = θm + (JX – 1) [(θM – θm)/(JXM – 1)] (5)

■ Les relations (4) et (5) ne sont vraies que pour les valeurs de D et
Soit un système dont la commande Un est réalisée à partir de
θ appartenant au tableau. Pour les valeurs n’appartenant pas au
1 2
deux grandeurs de sortie Y n et Y n (par exemple, une température : tableau, on cherche des valeurs d’encadrement, en procédant par
1 2 approximation en valeurs entières.
Yn = θn et un débit : Yn
= Dn ). On suppose, par ailleurs, que la loi
de commande n’a pas d’expression algébrique et que l’on dispose Calculons, à titre d’exemple, la valeur de Un correspondant au
seulement d’une représentation tabulée de cette loi, telle que celle couple :
fournie par le tableau 1. θn = 28 et Dn = 1 471
La réalisation numérique d’une telle commande fait appel à une Les valeurs d’index correspondantes sont définies, à partir des
technique de recherche tabulée, complétée d’une double interpola- relations (4) et (5), par :
tion linéaire.
( I XM – 1 ) 
La recherche tabulée est effectuée en utilisant deux index IX et JX I X n = ENTIER 1 + ( D n – D m ) ------------------------ 
DM – Dm 
qui réalisent l’adressage des données dans le tableau, à partir des  (6)
variables D et θ. ( JX M – 1 ) 
JX n = ENTIER 1 + ( θ n – θ m ) ------------------------- 
θM – θm 
■ Considérons, à titre d’exemple, l’index IX de repérage des lignes
du tableau 1. La correspondance entre IX et la variable associée D
est établie, selon une loi linéaire, de la manière suivante : où ENTIER [ ] représente la partie entière de la quantité entre cro-
chets.
Soit DM et Dm les valeurs maximale et minimale prises par D ;
dans l’exemple considéré : Dans le tableau 1, on trouve, pour θn = 28 et Dn = 1471 :
DM = 1560 et Dm = 1320 IXn = 8 et JXn = 6

Tableau 1 – Accès tabulé

JX =

1 2 3 4 5 6 7 8 9 10 11
Index
et variable
u = 0 oC u = 5 oC u = 10 oC u = 15 oC u = 20 oC u = 25 oC u = 30 oC u = 35 oC u = 40 oC u = 45 oC u = 50 oC

1 D = 1 320 L/s 42 58,0 57,4 58,7


2 D = 1 340 L/s 45 58,5 58,7 59,4 60,8
3 D = 1 360 L/s 48 58,4 58,5 58,7 60,0 61,5 63,0
4 D = 1 380 L/s 51 58,1 58,0 58,1 59,4 60,7 62,2 63,8 65,4
5 D = 1 400 L/s 53 57,9 58,3 58,7 60,0 61,4 62,8 64,4 66,1 67,9
6 D = 1 420 L/s 55 57,6 58,2 59,4 60,6 62,0 63,5 65,0 66,7 68,5 70,5
IX = 7 D = 1 440 L/s 57,3 58,8 60,0 61,3 62,6 64,1 65,7 67,4 69,0 71,0 73,2
IX n = 8 8 D = 1 460 L/s 59,5 60,6 61,9 63,3 64,7 66,3 68,0 69,8 71,7 73,7
Dn = 1 471 L/s 9 D = 1 480 L/s 61,3 62,5 63,9 65,3 66,9 68,6 70,4 72,3
10 D = 1 500 L/s 63,2 64,4 65,9 67,5 69,2 71 72,9
11 D = 1 520 L/s 65,2 66,5 68,1 69,8 71,6 73,5
12 D = 1 540 L/s 67,2 68,6 70,4 72,2
13 D = 1 560 L/s 69,4 70,9 72,7
JXn = 6
θn = 28 oC

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite.
© Techniques de l’Ingénieur, traité Mesures et Contrôle R 7 417 − 11
RÉALISATION NUMÉRIQUE DES CORRECTEURS ______________________________________________________________________________________________

Dès lors, et dans le cas général, Un peut être encadré par les qua-
tre valeurs suivantes du tableau :
θn
U 0 = U ( I X n , JX n )  θ JXn JXn + 1
 D
U 1 = U ( I X n , JX n + 1 ) 
 (7)
U 2 = U ( I X n + 1 , JX n )  U0 U1
U'
 IX n
U 3 = U ( I X n + 1 , JX n + 1 ) 

■ Le calcul de Un s’effectue alors par double interpolation linéaire, Un


Dn
à partir de ces valeurs d’encadrement, selon le mécanisme illustré
figure 18 : IXn + 1
U2 U '' U3
— calcul de U ’ et de U ” qui sont respectivement les interpola-
tions entre (U0 , U1) et (U2 , U3) pour la valeur θ = θn , soit :
Figure 18 – Double interpolation linéaire
[ θ n – θ ( JX n ) ] 
U ′ = U 0 + ( U 1 – U 0 ) ---------------------------------------------------- 
θ ( JX n + 1 ) – θ ( JX n ) 
 (8) — on acquiert les valeurs θn et Dn ;
[ θ n – θ ( JX n ) ] 
U ’’ = U 2 + ( U 3 – U 2 ) ----------------------------------------------------  — on calcule les valeurs d’index IXn et JXn , à partir de θn et Dn ,
θ ( JX n + 1 ) – θ ( JX n )  en utilisant les équations (6) ;
— on extrait du tableau 1 connaissant IXn et JXn , les valeurs U0 ,
— calcul de Un qui est l’interpolation entre (U ’, U ”) pour la valeur U1, U2 et U3 définies par les relations (7) ;
D = Dn , soit : — on calcule U ’ et U ”, à partir des valeurs précédentes, en utili-
sant les équations (8) ;
Dn – D ( I Xn ) — on calcule, finalement Un , à partir de U ’ et U ”, en utilisant
U n = U ′ + ( U ’’ – U ′ ) ------------------------------------------------------ (9)
D ( I Xn + 1 ) – D ( I Xn ) l’équation (9).
Il apparaît que, par cette méthode, les seules opérations utilisées
Le résumé de la procédure de calcul de Un est donc le suivant : sont l’addition-soustraction et la multiplication-division. Cette
— on détecte l’instant d’échantillonnage nTe selon l’une des approche est donc particulièrement bien adaptée au traitement
méthodes de gestion du temps définies au paragraphe 2.2 ; temps réel.

Références bibliographiques

[1] DI STEFANO (J.J.), STUBBERUD (A.R.) et tale. Thèse de Docteur-Ingénieur, Université [9] NOUGARET (M.). – Correction fréquentielle
WILLIAMS (I.J.). – Systèmes Asservis 1. Série de Lille I, 27 mars 1979. analogique, R 7 410, 1984.
Schaum, 1983. [6] CARON (J.P.) et HAUTIER (J.P.). – Modélisa- [10] NOUGARET (M.). – Réalisation électronique
[2] MIQUEL (R.). – Le filtrage numérique par tion et commande de la machine asynchrone. des correcteurs, R 7 415, 1984.
microprocesseurs. Editests, PSI diffusion, Technip, collection Méthodes pratiques de
1985. l’ingénieur, 1995. [11] BEGU (R.) et LANGARD (Y.). – Conversions
[3] FONDANÈCHE (P.) et GILBERTAS (P.). – Filtres [7] KOUBAA (M.). – Contribution à la commande analogique-numérique et numérique-analogi-
numériques : principes et réalisations. Mas- prédictive : mise en œuvre pour le pilotage que. Traité Électronique, E 3 650, 1994.
son, collection Technologies, 1981. d’un autoclave de teinture. Thèse de Doctorat, [12] ETIEMBLE (D.). – Structure interne des ordina-
[4] VASSEUR (C.) et coll. – A Microprocessor Université de Lille I, 29 janv. 1997. teurs. Traité Informatique, H 705, 1993.
oriented segmentation technique : an effi-
cient tool for electrophysiological signal ana- [13] CHEVANCE (J.). – Microprocesseurs, E 3 550,
lysis. IEEE Transactions on Instrumentation 1998.
and Measurement, vol. IM 28, no 4, déc. 1979. Techniques de l’Ingénieur
[14] FOULARD (Cl.). – Algorithmique de la
[5] RAJAGOPALAN (C.). – Segmentation des sui- commande par calculateur, R 7 562, 1989.
tes temporelles : application à l’extraction [8] NOUGARET (M.). – Principes généraux de
heuristique des paramètres fondamentaux du correction. Traité Mesures et Contrôle, [15] ALENGRIN (G.). – Méthodes de synthèse des
cardiorespirogramme en pathologie néona- R 7 405, 1984. correcteurs numériques, R 7 420, 1996.

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie est strictement interdite.
R 7 417 − 12 © Techniques de l’Ingénieur, traité Mesures et Contrôle

Vous aimerez peut-être aussi