Tarea3 06 sol calderavapor

8
Departamento de Ingeniería de Sistemas y Automática Universidad Politécnica de Valencia INGENIERÍA DE CONTROL I 2006-7 __________________________________________________________________________________________________ P. Albertos. Dept. Ingeniería de Sistemas y Automática. UPV. Ext.: 79570 e-mail [email protected] Tarea 3. Control de una caldera de vapor (entrega 12-12-06) Una caldera de vapor tiene el esquema físico de la figura El modelo obtenido en tiempo continuo es: A=[ 0 0 0 0 0 0 -0.0078 0.0018 -0.0158 0.0009 0 0.0015 -0.0041 0.1822 -0.0043 0 0.0156 -0.1726 -0.4228 0.0443 0 -0.0008 0.0039 0.0378 -0.0111] C=[ 0.0003 -20.1392 2.4214 -20.0552 1.1660 0.0329 0.0002 0 0.0020 0 ] B=[ 0.0311 0.0060 0.0001 -0.0086 -20.1130 0.3369 -0.0422 0.9691 1.9742 0.4747 -0.0493 -1.3183 19.9838 -0.3916 0.0398 1.6444 -1.0565 -0.4651 0.0585 0.1533] D=[ 0] Entradas=[flujo-fuel flujo-agua flujo-gases flujo-vapor]; Salidas=[ presión-vapor nivel-agua]; observándose que la quinta variable de estado es fundamental para mantener la caldera en equilibrio, aunque no se puede medir. Por lo tanto, el objetivo de control serán las variables: v. controladas=[ presión-vapor nivel-agua x 5 ]; Las tres primeras variables serán manipuladas y el flujo de vapor se considerará que varía en escalones.

Transcript of Tarea3 06 sol calderavapor

Page 1: Tarea3 06 sol calderavapor

Departamento de Ingeniería de Sistemas y Automática

Universidad Politécnica de Valencia

INGENIERÍA DE CONTROL I 2006-7

__________________________________________________________________________________________________P. Albertos. Dept. Ingeniería de Sistemas y Automática. UPV. Ext.: 79570 e-mail [email protected]

Tarea 3. Control de una caldera de vapor (entrega 12-12-06) Una caldera de vapor tiene el esquema físico de la figura

El modelo obtenido en tiempo continuo es:

A=[ 0 0 0 0 0 0 -0.0078 0.0018 -0.0158 0.0009 0 0.0015 -0.0041 0.1822 -0.0043 0 0.0156 -0.1726 -0.4228 0.0443 0 -0.0008 0.0039 0.0378 -0.0111] C=[ 0.0003 -20.1392 2.4214 -20.0552 1.1660 0.0329 0.0002 0 0.0020 0 ]

B=[ 0.0311 0.0060 0.0001 -0.0086 -20.1130 0.3369 -0.0422 0.9691 1.9742 0.4747 -0.0493 -1.3183 19.9838 -0.3916 0.0398 1.6444 -1.0565 -0.4651 0.0585 0.1533] D=[ 0]

Entradas=[flujo-fuel flujo-agua flujo-gases flujo-vapor]; Salidas=[ presión-vapor nivel-agua]; observándose que la quinta variable de estado es fundamental para mantener la caldera en equilibrio, aunque no se puede medir. Por lo tanto, el objetivo de control serán las variables: v. controladas=[ presión-vapor nivel-agua x5]; Las tres primeras variables serán manipuladas y el flujo de vapor se considerará que varía en escalones.

Page 2: Tarea3 06 sol calderavapor

Departamento de Ingeniería de Sistemas y Automática

Universidad Politécnica de Valencia

INGENIERÍA DE CONTROL I 2006-7

__________________________________________________________________________________________________P. Albertos. Dept. Ingeniería de Sistemas y Automática. UPV. Ext.: 79570 e-mail [email protected]

SE PIDE: 1. Obtener la matriz de transferencia, los polos y los ceros de transmisión 2. Evaluar la relevancia de cada una de estas tres entradas y dos salidas 3. Analizar el posible emparejamiento de variables manipuladas y controladas: presión/fuel; nivel/agua; x5/gases. 4. Realizar el desacoplamiento de los tres pares de señales

a. Por realimentación del estado b. Con una prealimentación dinámica c. Es seguro el desacoplamiento?

5. Diseñar un control por realimentación del estado para obtener polos en torno a -0.5. 6. Diseñar un sensor virtual para las variables de estado no medibles (3). 7. Diseñar un control por realimentación de la salida (con observador) de forma que se asegure un valor constante en la variable x5. 7. Diseñar un sensor virtual para las variaciones estacionarias del caudal de flujo, realizando una compensación por prealimentación. 9. Diseñar un control óptimo cuyo índice pondera: salidas:Qy = [.001 0 0; 0 10 0;0 0 1]; Control: R = [1 0 0 ; 0 1 0;0 0 .2 ]; 10. Repetir el diseño por realimentación del estado para conseguir los mismos polos que en el diseño óptimo

Page 3: Tarea3 06 sol calderavapor

__________________________________________________________________________________________________P. Albertos. Dept. Ingeniería de Sistemas y Automática. UPV. Ext.: 79570 e-mail [email protected]

Solución %Tarea 3. Curso 2006/7. Control de una caldera de va por clear; clc; %Definición de las matrices del sistema inicial A=[0 0 0 0 0;0 -0.0078 0.0018 -0.0158 0-0009; 0 0.0078 -0.0041 0.1822 -0.0043; 0 0.0156 -0.1726 -0.4228 0.0443; 0 -0.0008 0.0039 0.0378 -0.0111] B=[0.0311 0.0060 0.0001 -0.0086;-20.1130 0.3369 -0. 0422 0.9691; 1.9742 0.4747 -0.0493 -1.3183; 19.9838 -0.3916 0.0398 1.6444; -1.0565 -0.4651 0.0585 0.1533] C=[0.0003 -20.1392 2.4214 -20.0552 1.1660; 0.0329 0.0002 0 0.0020 0] D=zeros(2,4) %1. Obtener la matriz de transferencia, los polos y los ceros de transmisión %Representación interna: S=ss(A,B,C,D); %Matriz de transferencia: MT=tf(S); %en forma factorizada: G=zpk(MT); %donde se ven los polos, y también, como polos comp lejos: polos=eig(A);

% Los ceros de transmisión. % La realización es mínima: rank(ctrb(A,B)); %=5 rank(obsv(A,C)); %=5 % luego ceros=tzero(S); % no tiene % 2. Evaluar la relevancia de cada una de estas tres entradas y dos salidas % El sistema es controlable y observable. Veamos pa ra cada variable. % controlabilidad u1 W1=ctrb(A,B(:,1)); rank(W1); % controlabilidad u2 W2=ctrb(A,B(:,2));

Page 4: Tarea3 06 sol calderavapor

__________________________________________________________________________________________________P. Albertos. Dept. Ingeniería de Sistemas y Automática. UPV. Ext.: 79570 e-mail [email protected]

rank(W2); % controlabilidad u3 W3=ctrb(A,B(:,3)); rank(W3); % controlabilidad u4 W4=ctrb(A,B(:,4)); rank(W4); % Todos los rangos son 5. Todas las entradas son cí clicas. % Para ver la relevancia podemos calcular el "tamañ o" % de las matrices Wi. % Una medida sería el valor singular máximo. De mom ento, vamos a % calcular los determinantes: det(W1);det(W2);det(W3);det(W4); % El mayor resulta ser el correspondiente a u1, y e l menor el de u3. % Intuimos que la primera entrada controla mejor el sistema. % Igualmente: sm1=svd(W1); sm1(1) % es mucho mayor que sm4=svd(W4); sm4(1) % Veamos con las salidas:

% observabilidad y1 O1=obsv(A,C(1,:)); rank(O1); % observabilidad y2 O2=obsv(A,C(2,:)); rank(O2); % Siendo el sistema observable con ambas salidas. % Procediendo como antes det(O1); %=0.0018, mientras que: det(O2); % es despreciable. (Si calculamos los rangos anteri ores % con una tolerancia de 0.1, queda claro). %3. Analizar el posible emparejamiento de variables manipuladas y %controladas: presión/fuel; nivel/agua; x5/gases. % Consideremos un nuevo sistema entrada/salida con 3 entradas y 3 %salidas, (con la misma A, eliminando la cuarta ent rada y añadiendo como %salida x5): Ba=[0.0311 0.0060 0.0001;-20.1130 0.3369 -0.0422; 1.9742 0.4747 -0.0493;19.9838 -0.3916 0.0398; -1.0565 -0.4651 0.0585]; Ca=[0.0003 -20.1392 2.4214 -20.0552 1.1660;0.0329 0 .0002 0 0.0020 0; 0 0 0 0 1]; Da=zeros(3,3); Sa=ss(A,Ba,Ca,Da); % cuya matriz de transferencia será: Ga=zpk(tf(Sa));

Page 5: Tarea3 06 sol calderavapor

__________________________________________________________________________________________________P. Albertos. Dept. Ingeniería de Sistemas y Automática. UPV. Ext.: 79570 e-mail [email protected]

% Observamos que este sistema tiene un integrador, por lo tanto, % si calculamos la matriz de ganancias estáticas no s resultarán términos %infinitos. % Podemos calcular la matriz de ganancias a distint as frecuencias y %analizar el posible emparejamiento para todas ella s. % Por ejemplo, para w=0.1: Ga1=abs(evalfr(Sa,.1*i)); rga1=Ga1.*inv(Ga1); % Probamos para varias frecuencias. La técnica del RGA no nos da una indicación clara. % % Analicemos las f.d.t. propuestas: %Presión/fuel: Ga(1,1) % nivel/agua Ga(2,2) % x5/gases Ga(3,3) % Todas ellas son inestables y de difícil control, pero las salidas % responden suficientemente a las entradas. %4. Realizar el desacoplamiento de los tres pares d e señales %a. Por realimentación del estado % Hacemos una transformación del estado para tener como primeras %variables de estado las tres salidas. Tomamos, por ejemplo: T=[Ca;0 0 1 0 0;0 0 0 1 0]; a=T*A*inv(T); b=T*Ba; c=Ca*inv(T); d=Da; %Definimos a11 = a(1:3,1:3); a12 = a(1:3,4:5); a21 = a(4:5,1:3); a22 = a(4:5,4:5); b1 = b(1:3,:); b2 = b(4:5,:); % Diseñamos: u=K.x + F.r, resultando % x1'=(a11+b1k1)x1 + (a12+b1k2)x2+b1Fr; % x2'=(a21+b2k1)x1 + (a22+b2k2)x2+b2Fr; % y elegimos: F=inv(b1); k2=-F*a12; k1=-F*a11; % El desacoplamiento no es válido, pues la parte re stante, % a22+b2k2, es inestable.

Page 6: Tarea3 06 sol calderavapor

__________________________________________________________________________________________________P. Albertos. Dept. Ingeniería de Sistemas y Automática. UPV. Ext.: 79570 e-mail [email protected]

% Desacoplamiento por PREALIMENTACIÓN DINÁMICA %También en este caso tendremos problemas, puesto q ue el sistema es %inestable y de fase no mínima. % Esto nos pone de manifiesto el fuerte acoplamient o entre todas las % variables. %5. Diseñar un control por realimentación del estado pa ra obtener polos %en torno a -0.5 (hay tres variables de control). p=[-0.5 -0.5 -0.5 -0.49 -0.51]; % Calculamos el control K = place(A,Ba,p) % Verificamos el resultado eig(A-Ba*K); % Quedando el sistema con entradas "ficticias" Sc = ss(A-Ba*K,Ba,Ca,Da); %6. Diseñar un sensor virtual para las variables de est ado no medibles %(3). % A diferencia del punto 4, tenemos solamente dos v ariables de salida, %que vamos a tomar como primeras variables de estad o T1=[C;zeros(3,2) eye(3)] % Matriz de transformacion, que comprobamos es de r ango completo: % rank(T1)=5 Ar=T1*A*inv(T1) Br=T1*Ba Dr=zeros(2,3) Cr=C*inv(T1) Sr=ss(Ar,Br,Cr,Dr) % Cuya representación detallada es: Ar11=Ar(1:2,1:2); Ar12=Ar(1:2,3:5); Ar21=Ar(3:5,1:2); Ar22=Ar(3:5,3:5); Br1=Br(1:2,:); Br2=Br(3:5,:); Cr1=Cr(:,1:2); Cr2=Cr(:,3:5); % Si fijamos los polos del observador, más rápidos po=[-2 -2.5 -3]; % Calculamos el observador reducido Ko=place(Ar22', Ar12', po)' Ao=[Ar22-Ko*Ar12] Bo=[Br2-Ko*Br1 Ar21-Ko*Ar11] Co=[eye(3)] Do=[eye(3) Ko]

Page 7: Tarea3 06 sol calderavapor

__________________________________________________________________________________________________P. Albertos. Dept. Ingeniería de Sistemas y Automática. UPV. Ext.: 79570 e-mail [email protected]

%7. Diseñar un control por realimentación de la sali da (con observador) % de forma que se asegure un valor constante en la va riable x5. % Para ello, debemos introducir un integrador en el observador de la % variable x5. Según hemos elegido la transformació n T1, esta variable es % la tercera de las observadas. % Ampliamos el sistema Sr=ss(Ar,Br,Cr,Dr) con este integrador y %diseñamos, como antes, una realimentación del esta do (con 6 variables de %estado): Ai=[Ar zeros(5,1); 0 0 0 0 -1 0]; Bi=[Br; 0 0 0]; Ci=[Cr zeros(2,1); 0 0 0 0 0 1]; Di=zeros(3,3); % Diseñamos el control pi=[-0.5 -0.5 -0.5 -0.49 -0.51 -0.501]; % Calculamos el control Kt = place(Ai,Bi,pi) % El sistema realimentado es: Sci=ss(Ai-Bi*Kt,Bi,Ci,Di) % cuya fdt, para la variable x5, es: g5=tf(ss(Ai-Bi*Kt,Bi,[0 0 0 0 1 0],zeros(1,3)); % Comprobando que su valor estacionario es nulo: dcgain(g5); %8. Diseñar un sensor virtual para las variaciones esta cionarias del %caudal de flujo, realizando una compensación por pr ealimentación. % En este caso generaremos la señal de caudal de fl ujo como salida % de un integrador adicional de forma que, en B, u4 desaparecerá como %señal de entrada, siendo x6=u4. B4=B(:,4);

% Reestructuramos el modelo de estado: Ap=[A B4;zeros(1,6)]; Bp=[Ba;zeros(1,3)]; Cp=[C zeros(2,1)];

% que observamos no es controlable (la sexta variab le de estado, u4, no %es controlable, pero si observable: rank(obsv(Ap,Cp)); %=6 % Diseñaremos, como antes, un observador reducido p ara la sexta variable %de estado (además de las 3 anteriores, si solo hub iera acceso a dos %variables de salida), obteniendo u^4. % La compensación por prealimentación consistirá en compensar con las %otras tres entradas el efecto de esta nueva variab le estimada, al menos %en régimen estacionario. %9. Diseñar un control óptimo cuyo índice pondera : % Salidas:Qy = [.001 0 0; 0 10 0;0 0 1]; % Control: R = [1 0 0 ; 0 1 0;0 0 .2 ];

Page 8: Tarea3 06 sol calderavapor

__________________________________________________________________________________________________P. Albertos. Dept. Ingeniería de Sistemas y Automática. UPV. Ext.: 79570 e-mail [email protected]

% Partimos del sistema inicial, Sa, con tres entrad as de control y tres % salidas % La ponderación del estado sería: Q=Ca'*Qy*Ca; % El control óptimo sería: Km=lqr(A,Ba,Q,R); %cuyos polos están en: pm=eig(A-Ba*K) %={-0.0008,-0.0737,-1.4203,-1.1367+1.2341i,-1.1367- 1.2341i} %10. Repetir el diseño por realimentación del estado para conseguir los %mismos polos que en el diseño óptimo KO=place(A,Ba,pm); % Observando que, obviamente, aunque los polos son los mismos, las % realimentaciones son muy distintas: KO =/= Km. % También podemos ver que las dinámicas entrada/sal ida de ambos %sistemas, pese a tener los mismos polos, son muy d istintas.