PREVENTION DU WINDUP SOUS CONTRAINTES D’AMPLITUDES ET VITESSES PETER HIPPE Lehrstuhl für Regelungstechnik Universität Erlangen-Nürnberg, Cauerstr. 7, D-91058 Erlangen, Allemagne [email protected] http://www.rt.e-technik.uni-erlangen.de/ Résumé— Les méthodes pour tenir compte des limitations d’amplitude du signal de commande sont bien connues. Mais aussi des limitations de vitesse peuvent causer des effets divers dans le système en boucle fermée. Les méthodes existantes pour éviter les phénomènes de windup en présence des contraintes d’amplitudes et vitesses sont beaucoup plus compliquées que les méthodes classiques anti windup , développée pour des contraintes d’amplitude seulement. Ceci est dû au fait qu’il existe un deuxième élément non linéaire pour la vitesse, qui complique le test de stabilité. Dans cet article, nous présentons une solution pour le problème considéré qui est très simple parce que le modèle utilisé pour une limitation conjointe d’amplitude et de vitesse ne contient qu’un seul élément non linéaire. Mots clés— Systèmes non linéaires, windup, contrôle multivariable, contraintes de vitesse. I. INTRODUCTION Les systèmes et les régulateurs considérés sont linéaires, avec les limitations du signal de commande en vue d’amplitude et vitesse comme seuls éléments non linéaires dans la boucle de régulation. Si on ne tient pas compte de ces deux contraintes, cela peut causer des effets divers, voire un comportement instable de la boucle fermée. La littérature existante offre un grand spectre d’approches pour résoudre les problèmes causés par l’amplitude limitée du signal de commande. On peut distinguer deux phénomènes différentes, le windup du régulateur et le windup du système. Le plus connu, le windup du régulateur, est causé par la dynamique du régulateur (par exemple de composante intégrale). On peut éviter le windup du régulateur par une stabilisation du régulateur pendant la période de saturation du signal de commande. Les approches les plus connues sont « Conditioning Technique » [7], « Generalized Anti Windup Control » [1] et « Observer Technique » [8]. En [15] une approche est présentée qui généralise les diverses méthodes existantes. Même sans éléments dynamiques dans le régulateur, comme par exemple dans le cas d’un régulateur d’état, les limitations d’amplitude peuvent provoquer un mauvais amortissement des phénomènes transitoires, voire même produire des cycles limites : on parle dans ce cas du phénomène de windup du système. L’intensité de ce windup du système dépend de la dynamique du système contrôlé [8], [13]. Pour éviter le windup du système, la partie linéaire du système en boucle fermée doit être modifiée d’une manière appropriée. Ceci est possible par la méthode du « Filtered Set Point » [16] ou par un élément dynamique additionnel (EDA) [8]. Ainsi on e-STA copyright © 2007 by see Volume 4 (2007), N°1 pp 7-12 peut utiliser une méthode « deux stages ». On commence par la prévention du windup du régulateur par des méthodes structurelles (sans dynamique additionnelle) et si la partie linéaire du système en boucle fermée indique le danger d’un windup du système, on utilise un EDA ou le « filtered set point ». Une approche qui résout les deux problèmes par un schéma universel est présentée en [17]. Les méthodes discutées ci-dessus s’appliquent seulement pour les systèmes stables, car, en présence d’un système instable, la partie linéaire de la boucle ne peut pas être modifiée pour satisfaire, par exemple, le critère du cercle. Une méthode pour la prévention du windup en systèmes instables est présentée en [9]. Cette méthode consiste d’un filtre non linéaire des signaux de consigne qui utilise un modèle du système et un contrôle en cascades contenant des éléments saturants. Ce filtre produit un signal de commande qui ne dépasse pas les limites existantes, et qui, si on le désire, reste dans une sous-région prédéfinie des entrées limitées. Ainsi, les saturations à l’entrée du système sont toujours inopérantes pour toutes les consignes, et par conséquent, les propriétés du réglage linéaire sont toujours conservées. En réservant une partie du signal de commande pour la suppression des perturbations et en n’utilisant que la partie restante pour appliquer la consigne, on arrive à une boucle fermée non linéaire avec stabilité garantie. Aussi le cas d’une commande avec amplitude et vitesse limitées à trouvé beaucoup d’intérêt (voir par exemple les citations en [5], [3] ou [2] et les discussions des approches existantes dans ces références). Cependant les méthodes existantes utilisent des modèles des actionneurs qui contiennent deux éléments non linéaires (pour la saturation d’amplitude et de vitesse). Par conséquent les investigations de stabilité deviennent beaucoup plus compliquées en comparaison des résultats obtenus en cas de limites d’amplitudes seulement. Cet article démontre qu’on peut utiliser presque toutes les résultats anti-windup connus aussi en présence d’une limitation conjointe d’amplitude et de vitesse, lorsqu’on utilise un modèle « ersatz » pour un tel organe de la commande qui ne contient qu’un seul élément non linéaire. Ce modèle consiste d’une seule saturation et d’un système de premier ordre dont la constante de temps est telle que la commande ne dépasse jamais les limites de la vitesse. Ajoutant le système de premier ordre au système à régler, le problème d’une limitation conjointe d’amplitude et de vitesse se réduit au problème windup bien connue pour le système augmenté. Deux exemples, un système stable et un système instable, illustrent l’approche proposée. II. GENERALITES Considérons un système multivariable, strictement propre, invariant dans le temps et complètement commandable et observable En simulations numériques ce modèle provoque des problèmes lorsque l’entrée à la fonction sgn(⋅) disparaît et lorsque u& i ( t ) < u Vi . Un modèle plus approprié pour un élément non linéaire u si ( t ) = sat uu [u i ( t )] avec saturation d’amplitude et Vi 0i x& ( t ) = Ax( t ) + Bu s ( t ) + B d d( t ) vitesse est montré en Fig. 1. y( t ) = Cx ( t ) + D d d ( t ) (1) y m ( t ) = C m x ( t ) + D md d( t ) sat u 0 i où x ∈ ℜn est l’état, us ∈ ℜm la commande, d ∈ ℜq la perturbation, y ∈ ℜm le vecteur à contrôler et ym ∈ ℜp sont les mesures, avec p ≥ m. En vue de la poursuite de signaux de référence constants, la matrice de transfert G (s) = C(sI − A) −1 B = N(s)D −1 (s) (2) du système est tel que det N(s) n’a pas de zéros à s = 0. La sortie u(t) du régulateur est limitée par un élément non linéaire u s ( t ) = sat u (u ( t )) , dont les composants sont défini par 0 ⎧ ⎪ sat u (u i ) = ⎨ ⎪ ⎩ 0i u 0i si u i > u 0i u si ui Ri wi sat u Vi wsi 1 s usi Fig. 1. Représentation schématique d’un élément avec saturation d’amplitude et de vitesse Le coefficient R i , i = 1,2,..., m est tel que la constante de temps qui résulte n’a pas d’influence perceptible au comportement de la boucle fermée. Les éléments non linéaires en Fig. 1 sont de type saturation u si = sat u (u i ) = sign (u i ) 0i u i si − u 0i ≤ u i ≤ u 0i (3) − u 0i si u i < −u 0i u 0i > 0 ∀ i = 1,2, L , m min{u 0i , u i } u 0i > 0 et w si =sat u ( w i ) = sign ( w i ) min{u Vi , w i } Vi u Vi > 0 , i =1,2, K , m . S’il existe une limite d’amplitude seulement, un modèle u s ( t ) = sat u (u ( t )) à la sortie du régulateur assure, que la 0 Supposons que les sorties à régler sont restreintes à évoluer dans les régions symétriques − y 0i ≤ y i ( t ) ≤ y 0i , i = 1,2, K, m (4) dont les amplitudes y0i dépendent des limites u0i. Dans la plupart des cas, on n’utilise qu’une partie de ces régions pour l’opération du système. Cette partie est définie par −r0i ≤ y i ( t ) ≤ r 0i , i = 1,2, K, m saturation à l’entrée du système n’est jamais activé. Par conséquent seulement ce modèle entre dans les discussions concernant le windup. Si on a une saturation de vitesse en plus, on peut utiliser m modèles « ersatz » aux m sorties u i ( t ) du régulateur comme montré en Fig. 2. sat u 0 i (5) ui où les r0i sont les amplitudes maximales désirées et (6) r0i < y 0i , i = 1,2,..., m Une discussion détaillée de ces régions d’amplitudes se trouve en [10]. Pour les systèmes stables, les amplitudes y 0i sont les limites d’opération. Pour les systèmes instables, ces amplitudes sont les limites à éviter, car un comportement instable de la boucle fermée pourrait se produire lorsqu’une sortie y i ( t ) atteint l’amplitude y 0i . Par conséquent on doit assurer que (5) et (6) sont satisfait. Maintenant supposons que le signal u si ( t ) diffère de u i ( t ) , i = 1,2,..., m non seulement par u i ( t ) ≥ u 0i > 0 (saturation d’amplitude) mais aussi par u& i ( t ) ≥ u Vi > 0 (saturation de vitesse), c’est-à-dire on a un actionneur avec saturation d’amplitude et vitesse définie par [ ] u& si ( t ) = u Vi sgn sat u {u i ( t )} − u si ( t ) , i = 1,2,..., m (7) 0i où sat u {⋅} est la saturation définie en (3) et sgn(⋅) est la 0i fonction standard de signe [2]. e-STA copyright © 2007 by see Volume 4 (2007), N°1 pp 7-12 u si 1 TVi s + 1 usi Fig. 2. Modèle ersatz d’une saturation d’amplitude et de vitesse A cause de l’élément u si ( t ) = sat u (u i ( t )) , l’amplitude du 0i signal u si ( t ) ne dépasse jamais la limite u 0i . Et si on choisit la constante de temps TVi comme TVi = 2u 0 i , i = 1,2, K , m u Vi (8) la restriction u& si ( t ) ≤ u Vi est satisfaite aussi. Il est évident que la vitesse maximale se produit quand le signal u si ( t ) change subitement d’une limite à l’autre, et avec TVi définie par (8) cette vitesse maximale est u Vi . Lorsqu’on insert ces modèles ersatz aux sorties du régulateur, ni la saturation d’amplitude ni la saturation de vitesse à l’entrée du système devient actif et par conséquent, ces éléments non linéaires n’ont plus d’influence au comportement de la boucle fermée. Si on ajoute les m systèmes de premier ordre La partie linéaire de la boucle est alors caractérisée par le retour d’état statique x& V ( t ) = A V x V ( t ) + BV u s ( t ) (9) u s (t ) = x V (t ) u ( t ) = − Kx ( t ) + Lr( t ) (11) seulement [8], où r ∈ ℜm est le vecteur des signaux de référence. Dans la boucle ouverte le comportement de transfert entre u s et u est donné par u (s) = −G L (s)u s (s) où avec x TV = [x n +1 , L , x n + m ] , u sT = [u s1 , L , u sm ] , G L (s) = K (sI − A) −1 B ⎡ 1 1 ⎤ t TV =⎢ ,L, ⎥ , A V = diag − t V , BV = diag(t V ) T T Vm ⎦ ⎣ V1 ( ) au système à régler, on obtient la description du système augmenté Si le régulateur contient des modèles de signaux comme introduit par Davison [6], le même G L (s) est obtenu en utilisant les résultats présentés en [12]. La matrice [ L = C(−A + BK ) −1 B x& ( t ) = Ax ( t ) + Bu s ( t ) + Bd d ( t ) y( t ) = C x ( t ) + D d d ( t ) (10) y m ( t ) = Cm x ( t ) + D md d( t ) avec ⎡C Cm = ⎢ m ⎣0 0⎤ ⎡D , Dmd = ⎢ md ⎥ I⎦ ⎣ 0 0⎤ 0⎥⎦ ] −1 (13) assure une erreur entre r(t) et y(t) nulle en régime permanent. Après une application de la technique « Observer Technique » le problème du windup du régulateur n’existe plus et les phénomènes windup dépendent seulement de la matrice K, c’est-à-dire du retour d’état choisi. Nous appelons ces problèmes le « windup du système » ⎡x⎤ ⎡y ⎤ x = ⎢ ⎥ , y m = ⎢ m ⎥ (parce que le vecteur u s = x V peut être ⎣x V ⎦ ⎣ us ⎦ mesuré) et les paramètres ⎡A B ⎤ ⎡0⎤ ⎡B ⎤ A=⎢ , B = ⎢ ⎥ , Bd = ⎢ d ⎥ , C = [C 0] , ⎥ ⎣0⎦ ⎣ 0 AV ⎦ ⎣BV ⎦ (12) IV. PREVENTION DU WINDUP DU SYSTEME (SYSTEMES STABLES) La boucle en Fig. 3 est asymptotiquement stable si la matrice de transfert (12) satisfait l’un des critères de stabilité pour des boucles fermées comportant des non linéarités de secteur, par exemple, le critère du cercle [18]. y A l’entrée de ce système augmenté il y a des éléments de saturation u si ( t ) = sat u (u i ( t )) , i = 1,2,..., m . Pour cette raison G(s) 0i r la solution du problème d’un système avec saturation d’amplitude et vitesse est aussi simple que la solution pour un système avec saturation d’amplitude seulement, pourvu qu’on utilise les modèles de Fig. 2 et conçoit le régulateur pour le système augmenté. Remarque 1. Les discussions ci-dessous sont également valable en cas de saturation d’amplitude seulement et en cas de limitation conjointe d’amplitude et vitesse. Si seulement l’amplitude est limitée, les équations d’état (1), et si en plus la vitesse est aussi limitée, les équations d’état (10) constituent la description du système à régler. Pour obtenir une nomenclature simple, dans ce qui suit nous supposons qu’il existe seulement une saturation d’amplitude, parce qu’il est évident maintenant, comment une saturation supplémentaire de vitesse peut être traitée. III. PREVENTION DU WINDUP DU REGULATEUR Les techniques présentées par la suite s’appliquent aussi aux régulateurs PI ou PID, parce qu’on peut interpréter chaque régulateur linéaire comme régulateur d’état qui contient un observateur [8], [13]. Si le régulateur contient des observateurs d’état et de perturbations comme introduit par Johnson [14], le windup du régulateur est évité lorsqu’on introduit le signal de commande limité dans l’observateur (ce qui s’appelle « Observer Technique »). e-STA copyright © 2007 by see Volume 4 (2007), N°1 pp 7-12 u GL(s) L us uC Fig. 3. Représentation schématique du comportement de référence du système réglé après avoir appliqué la technique « Observer Technique » Si la matrice (12) viole le critère du cercle le danger de « windup du système » existe dans la boucle fermée en Fig. 3. On peut éviter ce windup du système par un élément dynamique additionnel (EDA), c’est-à-dire on remplace u ( t ) = − u C ( t ) + Lr( t ) dans le schéma dans Fig. 3 par u ( t ) = − u C ( t ) + Lr( t ) − η( t ) (14) où ξ& ( t ) = (A − BK S )ξ ( t ) + B[u ( t ) − u s ( t )] η( t ) = (K − K S )ξ ( t ) (15) Le windup du système est évité, quand la matrice K S en (15) est telle que G LS (s) = K S (sI − A) −1 B satisfait le critère du cercle [12]. V. PREVENTION DU WINDUP DU SYSTEME (SYSTEMES INSTABLES) En utilisant le schéma qui a été introduit pour les systèmes monovariables dans [9], on peut réaliser une boucle fermée avec une dynamique adaptée au rejet des perturbations et, en même temps, avoir un comportement vis-à-vis de la consigne qui ne soit pas détérioré par les limitations. Cette approche peut être appliquée aussi bien sur les systèmes stables qu’instables. Fig. 4 montre la version qui utilise un régulateur retour d’état pour la stabilisation du système et le rejet des perturbations. Mais il est démontré dans [13] comment on peut traiter des régulateurs qui contiennent des observateurs et des modèles de signaux de la même manière (c’est-à-dire prévention du windup du régulateur par la « Observer Technique »). uCr u us Système linéaire y Filtre non yM linéaire x K xM Fig. 4. Schéma anti-windup utilisable pour systèmes stables et instables Pour la synthèse du filtre, on utilise un modèle x& M ( t ) = A M x M ( t ) + B M u a ( t ) (16) y M (t ) = C M (t )x M (t) (17) 0 La quantité G (s) 1 de l’expression (17) est la norme L1 de G(s) [4]. VI. DEUX EXEMPLES Exemple 1. Le système stable est défini par ⎡− 2 − 1 1⎤ C = [− 2 − 1 1] , C m = ⎢ 0 0⎥⎦ ⎣1 uCd r ∞ y lim ≤ u lim ∫ h ( τ) dτ = u lim G (s) 1 1 0⎤ ⎡0 ⎡0 ⎤ ⎢ ⎥ A = ⎢− 1 − 2 − 1⎥ , B = ⎢⎢1⎥⎥ , Bd = 0 , ⎢⎣ 0 ⎢⎣1⎥⎦ 0 − 1⎥⎦ d sat u 0 Soient un système monovariable de fonction de transfert G(s) et une fonction correspondante h(t). Un signal d’entrée u(t), d’une amplitude maximale ulim, produit une amplitude maximale ylim de la sortie y(t) limitée par et D d ≡ 0 , D md ≡ 0 . La saturation a l’amplitude u 0 = 1 et la sortie y( t ) à régler est donc restreinte à −1 ≤ y( t ) ≤ 1 . Nous supposons que seulement la région −r0 ≤ y( t ) ≤ r0 avec r0 = 0.9 est utilisée. Un régulateur d’état (11) avec observateur est construit tel que le polynôme caractéristique est det(sI − A + BK ) = (s + 8) 3 et la valeur propre de l’observateur est à s = -10, ce qui nécessite K = [− 833 − 490 511] et L = 512 . L’observateur d’état z& ( t ) = Fz( t ) + Dy m ( t ) + TBu s ( t ) du système (1) ayant les limitations (3) et il est supposé que ce modèle est exact, c’est-à-dire (A M , B M , C M ) = (A, B, C) . Fig. 5 montre une représentation schématique de ce filtre, qui était aussi discuté dans [11]. (18) (par le signal d’entrée u s ( t ) le windup du régulateur est évité) produit une valeur estimée x̂ ( t ) = Ψy m ( t ) + Θz( t ) (19) qui est correct en régime permanent si TA − FT = DC m r est satisfait. Avec F = −10 et D = [8 − 145] on obtient Lb sat r0 ub Kb (20) ubs ua La Ka x& M =A M x M + BM u a y M =C M x M yM xM Fig. 5. Représentation schématique du filtre non linéaire pour les grandeurs de consigne La cascade intérieure est construite telle que, malgré des consignes arbitraires, les signaux u ai ( t ) ne dépassent jamais les limites existantes u 0i i = 1,2,..., m . Pour assurer cela, on peut utiliser la norme L1. Cette norme est définie dans la manière suivante. e-STA copyright © 2007 by see Volume 4 (2007), N°1 pp 7-12 T = [− 16 1 1] , 1⎤ ⎡ 0 ⎡0⎤ ⎢ ⎥ Ψ = ⎢− 0.5 7 ⎥ et Θ = ⎢⎢0.5⎥⎥ ⎢⎣ 0.5 9 ⎥⎦ ⎢⎣0.5⎥⎦ Comme la fonction de transfert K (sI − A) −1 B viole le critère du cercle il existe le problème du windup du système. Utilisant un élément dynamique additionnel (EDA) (voir Section IV) avec K S = [− 28 − 20 26] la fonction de transfert K S (sI − A) −1 B satisfait le critère du cercle et le problème du windup du système n’existe plus. Le comportement da la boucle fermée est stable pour toutes consignes satisfaisant −0.9 ≤ r ( t ) ≤ 0.9 . Lorsqu’on introduit une saturation de vitesse avec u V = 3 , et applique une consigne r ( t ) = rS1( t ) − 2rS1( t − 10) + rS1( t − 20) avec rS = 0.25 un cycle de limite évolue. La constante de temps (8) est TV = 2 / 3 et le système augmenté (10) est donc caractérisé par 1 0 0 ⎤ ⎡0 ⎡0⎤ ⎥ ⎢− 1 − 2 − 1 ⎢ ⎥ 1 ⎥, B=⎢ 0 ⎥, A=⎢ ⎢0 ⎢0⎥ 0 −1 1 ⎥ ⎥ ⎢ ⎢ ⎥ 0 0 − 1.5⎦ ⎣0 ⎣1.5⎦ polynôme caractéristique det(sI − A + BK ) = (s + 8) 3 et cela donne L = 5120 . L’observateur (18) et (19) pour les états du système augmenté (10) a les paramètres F = −10 , D = [8 − 145 10.5] , T = [− 16 1 1 1] , 1 0 ⎤ ⎡0⎤ ⎥ ⎢0.5⎥ 7 − 0.5⎥ et Θ = ⎢ ⎥ ⎢0.5⎥ 9 − 0.5⎥ ⎥ ⎢ ⎥ 0 1 ⎦ ⎣0⎦ Aussi la fonction de transfert K (sI − A )1 B viole tout critère de stabilité pour des boucles fermées consistant d’une partie linéaire et d’un seul élément non linéaire de type secteur. Lorsqu’on utilise un EDA qui est paramétré par le vecteur K S = [− 123.3468 − 87.9174 117.0774 20.6 / 3] le comportement de la boucle fermé est stable pour toute consigne bien que K S (sI − A ) −1 B ne satisfait pas le critère du cercle (mais le « critère du phase » [8]). Fig. 6 montre le comportement transitoire de la boucle fermée avec limitations d’amplitude et de vitesse qui est stable maintenant. Phenomenes transitoires 1 Sortie y(t) 0 1 ⎤ 0 ⎤ ⎡ ⎥ ⎥ ⎢ 1 0 ⎥ 0 ⎥, , B=⎢ ⎢ 1.5037 ⎥ 0 0 ⎥ ⎥ ⎥ ⎢ 0 6.8528⎦ ⎣− 7.2059⎦ La sortie y(t) est la position du chariot. Supposons qu’on utilise un régulateur d’état u Cd ( t ) = − K[x ( t ) − x M ( t )] pour la stabilisation du système instable tel que les zéros du polynôme caractéristique det(sI − A + BK ) sont placés à s1 = −5.6 , s 2 = −15 , et à s 3 / 4 = −5.6 ± 9 j , ce qui correspond à un vecteur K = [2.4905 − 133.66 − 46.101 − 14.033] . Avec le filtre de consigne utilisé dans [9] (mais avec _ r0 = 1. 21 ) le comportement du pendule devient instable lorsqu’on introduit une limitation de vitesse u V = 18 et lorsqu’on applique des signaux de référence r ( t ) = rS1( t ) avec rS ≥ 3.5 . Pour tenir compte de cette limitation, la construction du régulateur doit être fondée sur la représentation augmenté (10) du système. L’équation (8) mène à TV = 1. 1 et avec cette constante de temps la représentation (10) et complètement définie. Si on place les valeurs propres du système augmenté à s1 = −5.6 , s 2 / 3 = −5.6 ± 9 j et s 4 / 5 = −15 , le vecteur K du réglage stabilisant u Cd ( t ) = − K[x ( t ) − x M ( t )] est donné par K = [22.545 − 2227.6 − 916.86 − 337.97 51] Le filtre de consigne a la structure montrée dans Fig. 5. Si on place les valeurs propres par u a ( t ) = − K a x M ( t ) + L a u bs ( t ) à s1 = −6.8528 , s 2 / 3 / 4 = −0.9 et s 5 = 0 et choisit L a = 1 , on peut atteindre des amplitudes y(t) sans limites malgré la limitation à l’entrée du système. Le K a correspondant est K a = [0 0 − 0.078606 − 10.485 9.6142] . 0.5 Pour assurer que même des signaux de consigne arbitraires ne produisent pas des signaux u a ( t ) qui dépassent la limite u 0 = 10 on doit utiliser la norme L1 de la fonction de transfert −1 U a (s) = 1 + K a (sI − A M ) −1 BM L a . Cette norme est U bs (s) u 10 α lim = 9.68 et par conséquent, r0 = 0 = = 1.033 assure α lim 9.68 0 [ −0.5 −1 0 0 0 0 D d = D md = 0 (s + 15) est assuré par K = [− 24010 / 3 − 4802 5096 23] ⎡ 0 ⎢− 0.5 Ψ=⎢ ⎢ 0.5 ⎢ ⎣ 0 ⎡− 6.8528 ⎢ 0 A=⎢ ⎢ 0 ⎢ ⎣ 0 Bd ≡ 0 , C = [− 0.0963 1 0 0] , C m = I 4 et ⎡ − 2 − 1 1 0⎤ 0 0 0⎥⎥ C = [− 2 − 1 1 0] et Cm = ⎢⎢ 1 ⎢⎣ 0 0 0 1⎥⎦ Le Exemple 2. Le système à contrôler est aussi discuté dans [9]. C’est le pendule inversé sur un chariot avec une amplitude de saturation u 0 = 10 . Les équations d’état (1) sont définies par 0 5 10 15 Temps 20 25 30 ] des signaux u a ( t ) ≤ u 0 pour toutes signaux de consignes. Vue de l’entrée u b ( t ) , la boucle interne est un système linéaire et stable avec une saturation u bs ( t ) = sat r (u b ( t )) à l’entrée. 0 Fig. 6. Comportement transitoire avec le régulateur conçu pour le système augmenté et avec le EDA e-STA copyright © 2007 by see Volume 4 (2007), N°1 pp 7-12 Si on ajoute une cascade extérieure u b ( t ) = − K b x M ( t ) + L b r ( t ) tel que la fonction de transfert (en vue de La = 1 ) − U b (s) = K b (sI − A M + B M K a ) −1 BM satisfait le critère du U bs (s) cercle, le filtre de consigne est asymptotiquement stable. Le critère du cercle est satisfait si on choisit K b = [4.2002 − 0.18271 − 0.56307 − 2.3670 0.94136] IX. [1] [2] et cela implique L b = −0.18271 . Le vecteur K b place les zéros de det[sI − A M + BM ( K a + K b )] à s1/ 2 / 3 / 4 = −1.2 et à s 5 = −5.6 et. [3] [5] Phenomenes transitoires 50 40 Sortie y(t) [4] 30 [6] 20 10 [7] 0 0 10 20 Temps 30 40 Fig. 7. Comportement transitoire du pendule inversé avec limitations d’amplitude et de vitesse Le comportement transitoire de la Figure 7 montre, que ni la contrainte d’amplitude à u 0 = 10 ni la contrainte de vitesse à u V = 18 ont une influence déstabilisante maintenant. VII. CONCLUSION Les limitations au niveau de l’organe de commande peuvent causer des problèmes de windup sous forme de dépassements élevés, voire de cycles limites lors de grands phénomènes transitoires. On peut distinguer deux sortes de windup: le windup du régulateur (controller windup) et le windup du système (plant windup). Le premier peut être évité par des mesures structurelles, et le deuxième par un élément dynamique additionnel. La plupart des résultats anti-windup est relié aux saturations d’amplitude seulement. Mais aussi les limitations de vitesse peuvent causer des problèmes de windup. Cet article présente une solution simple pour traiter des contraintes d’amplitudes et vitesses. On ajoute un modèle « ersatz » qui consiste d’un élément de saturation et d’un système de premier ordre avec une constante de temps adaptée tel que la sortie de cet élément satisfait les contraintes d’amplitudes et vitesses pour signaux arbitraires à l’entrée du modèle. Comme cela, on peut utiliser presque toutes les résultats connus pour la prévention du windup en présence d’une limitation conjointe d’amplitude et de vitesse. Deux exemples démontrent la qualité de cette solution. VIII. REMERCIEMENTS Je remercie sincèrement Joachim Rudolph pour l'aide qu'il m'a apportée dans la rédaction en français de cet article. e-STA copyright © 2007 by see Volume 4 (2007), N°1 pp 7-12 [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] REFERENCES Aström, K. J., & Wittenmark, B. Computer Controlled Systems: Theory and Design. Prentice Hall, Englewood Cliffs, NJ., 1984. Barbu, C., Reginatto, R., Teel, A. R., & Zaccarian, L. “Anti-windup for exponentially unstable linear systems with rate and magnitude constraints.” In “Actuator saturation control”, Kapila, V. and Grigoriadis, K. M. eds., Marcel Dekker, N. Y., 2002. Bateman, A. & Lin, Z. “An analysis and design method for discrete-time linear systems under nested saturation.” IEEE Transactions on Automatic Control, 47 (2002), pp. 1305-1310. da Silva, J. M. G., Tarbouriech, S., & Garcia, G. “Local stabilization of linear systems under amplitude and rate saturating actuators.” IEEE Transactions on Automatic Control, 48 (2003), pp. 842-847. Dahleh M. A. & Pearson, J. B. “L1-optimal compensators for continuous-time systems.” Transactions on Automatic Control, 32 (1987), pp. 889-895. Davison, E. J. & Goldenberg, A. „Robust control of a general servomechanism problem: The servo-compensator.” Automatica, 11 (1975), pp. 461-471. Hanus, R., Kinnaert, M., & Henrotte, J. L. “Conditioning technique, a general antiwindup and bumpless transfer method.” Automatica, 23 (1987), pp. 729-739. Hippe, P. & Wurmthaler, Ch. “Systematic closed loop design in the presence of input saturations.” Automatica, 35 (1999), pp. 689-695. Hippe, P. “Windup prevention for unstable systems.” Automatica, 39 (2003), pp. 1967-1973. Hippe, P. “A solution to the problem of directionality for stable and unstable systems.” 6th IFAC-Symposium on Nonlinear Control Systems, Stuttgart, Germany, 2004, pp. 1391-1396. Hippe, P. “Une solution au problème de la directionalité.” CIFA’04, Douz, Tunisie, 2004. Hippe, P. “Windup prevention when using Davison’s approach to disturbance rejection.” Proceedings 16th IFAC World Congress, Prague, Czech Republic, 2005, papier no. 2328. Hippe, P. “Windup in control – Its effects and their prevention” Springer Berlin Heidelberg New York London, 2006. Johnson, C. D. “Accommodation of external disturbances in linear regulator and servomechanism problems.” IEEE Transactions on Automatic Control, 16 (1971), pp. 635644. Kothare, M. V., Campo, P. J., Morari, M., & Nett, C. N. “A unified framework for the study of anti-windup designs.” Automatica, 30 (1994), pp. 1869-1883. Rönnbäck, S., Walgama, K. S., & Sternby, J. “An extension to the generalized anti-windup compensator.” 13th IMACS World Congress on Scientific Computation, Dublin, Ireland, 1991. Teel, A. R., & Kapoor, N. “The L2 anti-windup problem: its definition and solution.” Proceedings of the Fourth European Control Conference, Brussels, Belgium, 1997, papier no. 494. Vidyasagar, M. Nonlinear Systems Analysis. Prentice Hall, Englewood Cliffs, N.J., 1993.