El control RST Incremental es basicamente el mismo control RST visto anteriormente, solo que presenta una pequeña modificación en el lazo de control que altera la ley de control y altera la identidad polinomial de la siguiente manera.
a. Planta:
Donde:
b. Ley de Control
Con esto, el diagrama de bloques del sistema en lazo cerrado queda de la siguiente manera:
Notese que en el Lazo de control se adiciono un Integrador que acompaña al polinomio R y es denotado como Δ, este termino garantiza que el sistema siga la referencia y también que pueda sobrellevar perturbaciones del sistema como el do(t) que esta ingresando a la salida de la planta.
c. Identidad:
Tamaño del Polinomio R
Tamaño del Polinomio S
Tamaño del Polinomio B Numerador
Tamaño del Polinomio A Denominador
Acomodando la ley de control con el modelo estimado de la planta se obtiene:
Para garantizar eñ seguimiento del set point el polinomio T debe ser igual a la suma de todos los coeficientes del polinomio S
Para un sistema de Segudo Orden por ejemplo, la identidad polinomial quedaria de la siguiente manera:
P1 y P2 son los polos asignados.
Si multiplicamos los terminos del denominador (A) con el integrador (Δ) tenemos:
Recordar que
Ley de Control
Despejando U y aplicando transformada inversa Z
Usando el ejemplo numero 2 visto en la entrada anterior, se hace el mismo tratamiento para un RST incremental usando las ecuaciones anteriormente descritas que son para un sistema de segundo orden. Se presenta entonces el codigo en matlab.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 |
clc clear all close all %% Simulacion % Condições iniciais clear all; clc; close all; nit = 400; umin = 0; umax = 4.9; ts = 0.1; u(1:10) = 0; erro(1:10) = 0; y(1:10) = 0; % Referência r(1:100) = 1; r(101:200) = 4; r(201:300) = 3; r(301:nit) = 3; %% Planta T=0.1; %Tempo da Amostragem num=1; %Numerador Continuo den=[0.1 1.1 1]; %Denominador Continuo gp=tf(num,den); %Função de transferencia ftz=c2d(gp,T); %Planta Discreta [B,A]=tfdata(ftz,'v'); %Divide Numerador em B e denominador em A nb=length(B); %Ordem do numerador na=length(A)-1; %Ordem do Denominador nr=nb-1; %Ordem do polinomio R ns=na; %Ordem do Polinomio S gpz=filt(B,A,T,'name','Planta'); %Funcao de transferenca discreta %% PMF %Alocaçao de polos por condições de disenho. Ts=1; %Tempo de estabelecimento desejado ep=0.6; %Epsilon wn=4/(ep*Ts); % %Polos conjugados za=exp(-ep*wn*T); th=57.3*wn*T*sqrt(1-ep^2); polos=za*[cosd(th)+i*sind(th),cosd(th)-i*sind(th)]; % Polinomio desejado, com polo insignificante igual a zero Am=poly([polos 0 0]); %Delata A. Multiplica por integrador DA=conv(A,[1 -1]); %Resolução de Equações metodo matricial M=[1 B(2) 0 0; DA(2) B(3) B(2) 0; DA(3) 0 B(3) B(2);DA(4) 0 0 B(3)]; q=[Am(2)-DA(2); Am(3)-DA(3);Am(4)-DA(4);Am(5)]; X=inv(M)*q; R=[1 X(1)]; %Polinomio R S=X(2:end)'; %Polinomio S %Polinomio T Tz=sum(S); %Ingresa la perturbacion en el instante 300 d0(1:300)=0; d0(301:nit)=0.05; for k = 5:nit %Salida de la Planta y(k)=B(2)*u(k-1)+B(3)*u(k-2)-A(2)*y(k-1)-A(3)*y(k-2)+d0(k); %Ley de Control u(k)=Tz*r(k)-S(1)*y(k)-S(2)*y(k-1)-S(3)*y(k-2)-(R(2)-1)*u(k-1)+R(2)*u(k-2); % Saturação if u(k) >= umax u(k) = umax; elseif u(k) <= umin u(k) = umin; end end t = 0:ts:(nit-1)*ts; figure subplot(2,1,1),plot(t,r,'--k',t,y,'-r','Linewidth',2.5) xlabel('Tempo (s)'); ylabel('Velocidade'); legend('y_r','y','Location','SouthEast') grid on; hold subplot(2,1,2),plot(t,u,'--b','Linewidth',3) xlabel('Tempo (s)'); ylabel('Controle (volts)'); legend('u') grid on; |
La respuesta del sistema de control RST es la siguiente.
Notese que a los 30 segundos ingresa una perturbación al sistema, y el controlador RST incremental es capaz de reaccionar para volver a llevar la variable al punto de referencia, cosa que no sucedía con el control RST Posicional.
Si te sirvió de algo la información de la pagina, podrías invitarme a un café y ayudarme a seguir manteniendo en pie el sitio WEB. Solo cuesta $2USD y me ayudarías enormemente a seguir con mi trabajo. Muchas Gracias por tu visita.
Pingback: 3. Enmascarar control RST en control PID | Control Automatico Educacion