CONTROL DE MÍNIMA VARIANZA CONTROL DIGITAL (66.65) En: este reporte se presentan ejemplos de diseño de controladores de mínima varianza, es decir, se encuentran controladores que minimicen el funcional Jmv = Ey 2 (k) Se considera el enfoque polinomial para plantas que responden a una estructura ARMAX A(q)y(k) = B(q)u(k) + C(q)e(k) Antes de cada ejemplo se presenta un resumen teórico. El reporte comienza con una introducción al diseño de predictores a p-pasos, ya que es necesario para el diseño de los controladors de mínima varianza. Se consideran los casos en que la planta tiene invera estable e inestable. Contents 1. Introducción 1.1. Consideraciones sobre la afirmación A1 2. Predictor Óptimo 3. Control de Mínima Varianza 3.1. Sistemas con inversa estable 3.2. Sistemas con inversa inestable References 1 2 2 3 3 4 6 1. Introducción Consideramos modelos de estructura ARMAX (1.1) A(q)y(k) = B(q)u(k) + C(q)e(k) donde (A1) (A2) (A3) A(q) = q n + a1 q n−1 + · · · + an B(q) = b1 q m−1 + · · · + bm C(q) = q n + c1 q n−1 + · · · + cn Las raices de C(q) están dentro del disco unitario y el grado del polinomio C(q) es igual al del polinomio A(q). e(k) secuencia de variables aleatorias independientes o no correlacionadas con media nula y desvio standard σ n≥m Definition 1.1. Se llaman control de mínima varianza a los que intentan minimizar el funcional Jmv = Ey 2 (k) 1 CONTROL DE MÍNIMA VARIANZA 2 1.1. Consideraciones sobre la afirmación A1. La afirmación (A1) no es restrictiva. Consideremos el proceso estocastico n(k) generado como n(k) = C(q)e(k) donde e(k) es ruido blanco de media nula y varianza unitaria. Por lo tanto, el proceso n(k) tiene media nula y función de autocovarianza rn (τ ) = E (n(t + τ )n(t)) Su densidad espectral es φn (eiω ) , Frn (τ ) = ∞ 1 X rn (k)e−ikω 2π k=−∞ Por ser e(k) ruido blanco de varianza unitaria, resulta1 φ(eiω ) = 1 C(eiω )C(e−iω ) 2π Reemplazando z = eiω encontramos φ(z) = 1 C(z)C(z −1 ) 2π Si C(z) no tiene raices sobre el círculo unitario, siempre es posible encontrar C̃(z) estable de manera que C(z)C(z −1 ) = C̃(z)C̃(z −1 ) ∀z ∈ C lo que implica que los procesos n(k) = C(q)e(k) ñ(k) = C̃(q)e(k) tienen la misma densidad espectral y por lo tanto, la misma función de autocovarianza. 2. Predictor Óptimo Para construir un control de mínima varianza para la planta (1.1) necesitamos el predicor del siguiente Theorem 2.1. Sea y(k) un proceso estocástico generado por el modelo (1.1). Bajo las afirmaciones A1-A2, el predictor a p-pasos de mínima varianza es (2.1) ŷ = ŷ(k + p|k) = q G∗ (q −1 ) G(q) y(k) = ∗ −1 C(q) C (q ) donde los polinomios F (q) = q p−1 + f1 q p−2 + · · · + fp−1 G(q) = g0 q n−1 + g1 q n−2 + · · · + gn−1 son el cociente y resto, respectivamente, de dividor q p−1 C por A. Es decir q p−1 C(q) = A(q)F (q) + G(q) (2.2) El error de predicción es un proceso MA dado por ỹ(k + p|k) = y(k + p) − ŷ(k + p|k) = F (q)e(k + 1) Tiene valor medio nulo y varianza Proof. ver [1]. 1Ver [1], páginas 389 y 450. 2 2 σ Eỹ 2 (k + p|k) = 1 + f12 + · · · fp−1 CONTROL DE MÍNIMA VARIANZA 3 Note 2.2. Recordar que para cualquier polinomio de grado n P (q) = p0 q n + p1 q n−1 + · · · + pn se define P ∗ (q −1 ) como P ∗ (q −1 ) , q −n P (q) Example 2.3. Diseñaremos un predictor a 3 paso de mínima varianza para la planta y(k) = 2 q 2 − 1.4q + 0.5 e(k) q 2 − 1.2q + 0.4 con e(k) ruido blanco gaussiano de media nula y varianza unitaria. Primero tenemos que reescribir el modelo en la forma del teorema 2.1 C(q) y(k) = ẽ(k) A(q) con A(q) = q 2 − 1.2q + 0.4 C(q) = q 2 − 1.4q + 0.5 y ẽ(k) ruido blanco gaussiano de media nula y varianza 4. El polinómio C(q) tiene raices en 0.7 ± 0.1i (dentro del disco unitario). Para obtener el predictor a 3 pasos necesitamos hallar polinomios F (q) = q 2 + f1 q 1 + f2 G(q) = g0 q 1 + g1 tales que ⇔q 2 q 2 C(q) = q 2 − 1.4q + 0.5 = A(q)F (q) + G(q) q 2 − 1.2q + 0.4 q 2 + f1 q 1 + f2 + g0 q 1 + g1 Igualando coeficientes de potencias iguales resultan f1 f2 = = −0.2 −0.14 g0 g1 = = −0.088 0.056 Luego F (q) = q 2 − 0.2q 1 − 0.14 = −0.088q 1 + 0.056 G(q) Finalmente, el predicto óptimo a 3-pasos esta dado por ŷ(k + 3|k) = q −0.088q 2 + 0.056q G(q) y(k) = C(q) q 2 − 1.4q + 0.5 3. Control de Mínima Varianza 3.1. Sistemas con inversa estable. Primero consideremos el caso donde B(q) tiene sus raices dentro del círculo unitario. Recoordemos que el modelo de la planta (1.1) tiene la forma y(k) = C(q) B(q) u(k) + e(k) A(q) A(q) Definamos d,n−m+1 CONTROL DE MÍNIMA VARIANZA 4 por (A3) d > 0. Se demuestra, ver [1], que (3.1) 2 Ey (k + d) (3.2) f12 2 G(q) B(q)F (q) σ + q y(k) + u(k) C(q) C(q) 2 = 1+ ≥ 2 2 σ 1 + f12 + · · · + fd−1 donde + ···+ 2 fd−1 F (q) = q d−1 + f1 q d−2 + · · · + fd−1 G(q) = g0 q n−1 + g1 q n−2 + · · · + gn−1 son los polinomios del predictor óptimo a d-pasos del teorema 2.1. De (3.1) resulta que el control de mínima varianza esta dado por (3.3) u(k) = − G(q) y(k) B(q)F (q) 3.2. Sistemas con inversa inestable. El controlador (3.3) cancela los ceros del sistema. Si alguno de estos ceros es inestable, el sistema a lazo cerrado no será internamente estable. En particular, ver [1], la transferencia G(q) Tue (q) = d−1 q B(q) es inestable. El siguiente teorema resuleve el problema de mínima varianza para el caso en que B(q) tiene raices inestables2. Theorem 3.1. Consideremos el sistema (1.1) y(k) = B(q) C(q) u(k) + e(k) A(q) A(q) Factoricemos B(q) como B(q) = B + (q)B − (q) con B −∗ (q) mónico. Todos los ceros de B + (q) están dentro del circulo unitario y todos los ceros de B − (q) estan sobre o fuera el criculo unitario. Si los polinomios A(q) y B − (q) no tienen factores en común entonces, bajo las afirmaciones (A1)-(A3), el control de mínima varianza esta dado por (3.4) u(k) = − G(q) y(k) B + (q)F (q) donde F (q) y G(q) satisfacen la ecuación de Diofantos (3.5) q d−1 C(q)B −∗ (q) = A(q)F (q) + B − (q)G(q) con d = grado(F ) = n−m+1 d + grado(B − ) − 1 grado(G) grado(A) = n < Proof. ver [1]. Note 3.2. El polinómio B −∗ (q) del teorema 3.1 resulta de reemplazar q −1 por q en el polinomio B −∗ (q −1 ) = q −r B − (q) es decir B −∗ (q) = q r B − (q −1 ) donde r = grado(B − (q)). 2Por raices inestables entendemos aquellas que estan sobre y fuera el circulo unitario CONTROL DE MÍNIMA VARIANZA 5 Example 3.3. Diseñaremos un controlador de mínima varianza para la planta B(q) C(q) y(k) = u(k) + e(k) A(q) A(q) con A(q) = B(q) = q 3 − 1.7q 2 + 0.8q − 0.1 2(q − 0.9) C(q) = 0.1q − 1 y e(k) de media nula y varianza unitaria. El polinomio A(q) tiene raices en q = 1, 0.5, 0.2 por lo tanto se trata de un sistema inestable. El polinomio B(q) es estable de manera que el control de mínima varianza esta dado por (3.3) u(k) = − G(q) y(k) B(q)F (q) Notemos que C(q) tiene una raiz fuera del disco unitario y que el grado de C(q) es menor que el de A(q). Necesitamos reescribir a C(q) de manera que verifique (A1) C(q)C(q −1 ) = (0.1q − 1) q −1 q 0.1q −1 − 1 = 0.1 − q −1 q −2 q 2 (0.1 − q) = q 2 (q − 0.1) q −2 q −1 − 0.1 Por lo tanto, podemos reemplazar a C(q) por el polinomio estable C̃(q) = q 2 (q − 0.1) ya que n(k) = C(q)e(k) ñ(k) = C̃(q)e(k) tienen la misma densidad espectral. Para hallar el controlador de mínima varianza, necesitamos resolver la ecuación (2.2) para p=d =n−m+1=3−1+1=3 q 2 C̃(q) 4 = A(q)F (q) + G(q) ⇔ q (q − 0.1) = ⇔0 ⇔ ⇔ luego q 3 − 1.7q 2 + 0.8q − 0.1 + g0 q 2 + g1 q 1 + g2 q 2 + f1 q 1 + f2 + = (f1 − 1.7) q 4 + (0.8 + f2 − 1.7f1 ) q 3 + + (0.8f1 + 1.7f2 + g0 − 0.1) q 2 + (−0.1f1 + 0.8f2 + g1 + 0.1) q + g2 − 0.1f2 f1 − 1.7 = 0 0.8 + f2 − 1.7f1 = 0 0.8f1 + 1.7f2 + g0 − 0.1 = 0 −0.1f 1 + 0.8f2 + g1 + 0.1 = 0 g2 − 0.1f2 = 0 f1 = 1.70 f2 = −0.8 + 1.7f1 = 2.09 g0 = 0.1 − 0.8f1 − 1.7f2 = −4.813 g 1 = −0.1 + 0.1f1 − 0.8f2 = −1.602 g2 = 0.1f2 = 0.209 F (q) = q 2 + 1.7q 1 + 2.09 G(q) = −4.813q 2 − 1.602q 1 + 0.209 CONTROL DE MÍNIMA VARIANZA Finalmente u(k) = − 6 −4.813q 2 − 1.602q 1 + 0.209 y(k) 2 (q − 0.9) (q 2 + 1.7q 1 + 2.09) En el ejemplo que sigue se considera una planta con inversa inestable. Example 3.4. Repetir el ejemplo anterior pero con B(q) = 2(0.9q − 1) Ahora, B(q) tiene una raiz fuera del disco unitario. Por lo tanto, lo factorizamos como B(q) = B + (q)B − (q) donde B + (q) = −2 B (q) = 1 − 0.9q − Notar que no hay cancelación entre las raices de A(q) y B − (q), y que por lo tanto no tienen factores en común. El controlador buscado esta dado por (3.4) donde F (q) y G(q) verifican la ecuación de Diofantos q d−1 C̃(q)B −∗ (q) = A(q)F (q) + B − (q)G(q) con d = 3 − 1 + 1 = 3, grad(F ) = d = grado(F ) = 3−1+1=3 d + grado(B − ) − 1 = 3 + 1 − 1 = 3 grado(G) grado(A) = 3 < donde C̃(q) es el polinomio calculado en el ejemplo anterior y B −∗ (q) = q 1 B − (q −1 ) = q − 0.9 notar que B −∗ (q) es mónico. Con esto, la ecuación de Diofantos toma la forma q 2 C̃(q)B −∗ (q) = A(q)F (q) + B − (q)G(q) ⇔ q 4 (q − 0.1)(q − 0.9) = q 3 − 1.7q 2 + 0.8q − 0.1 q 3 + f1 q 2 + f2 q + f3 + +(1 − 0.9q) g0 q 2 + g1 q 1 + g2 f1 = 0.7 f 2 = 0.48 f3 = 2.4896 g0 = 2.3706 g 1 = −1.7196 g2 = 0.249 ⇔ Luego F (q) = q 3 + 0.7q 2 + 0.48q + 2.4896 = 2.3706q 2 − 1.7196q 1 + 0.249 G(q) Finalmente u(k) = − G(q) B + (q)F (q) y(k) = 2.3706q 2 − 1.7196q 1 + 0.249 y(k) 2 (q 3 + 0.7q 2 + 0.48q + 2.4896) References [1] Astrom and Wittenmark, “Computer-Controlled Systems, Theory and Design”, 3th ed. Prentice Hall.