Académique Documents
Professionnel Documents
Culture Documents
Tienen dos rasgos sobresalientes: a) La habilidad de ejecutar una accin con exactitud (determinada por su calibracin). b) No presentan problemas de inestabilidad.
El Control de Lazo Cerrado: es aquel en el cual continuamente se est monitoreando la seal de salida para compararla con la seal de referencia y calcular la seal de error, la cual a su vez es aplicada al controlador para generar la seal de control y tratar de llevar la seal de salida al valor deseado. Tambin es llamado control realimentado.
Funcin de Transferencia.
La Funcin de Transferencia de un sistema se define como la relacin entre la trasformada de Laplace de la variable de salida y la transformada de Laplace de la variable de entrada, suponiendo que todas las condiciones iniciales son iguales a cero.
La Funcin de Transferencia de un sistema (o elemento) representa la relacin que describe la dinmica del sistema considerado. Puede definirse solamente para un sistema lineal y estacionario (parametro constante).
FTSerie.m numg=[1]; deng=[500 0 0]; numgc=[1 1]; dengc=[1 2]; [num,den]=series(numg,deng,numgc,dengc); printsys(num,den);
>> FTSerie
num/den =
s+1 -----------------500 s^3 + 1000 s^2
FTParalelo.m numg=[1]; deng=[500 0 0]; numgc=[1 1]; dengc=[1 2]; [num,den]=parallel(numg,deng,numgc,dengc); printsys(num,den);
>> FTParalelo num/den = 500 s^3 + 500 s^2 + s + 2 -------------------------500 s^3 + 1000 s^2
7
FTCloop.m numg=[1]; deng=[500 0 0]; numgc=[1 1]; dengc=[1 2]; [num1,den1]=series(numg,deng,numgc,dengc); [num,den]=cloop(num1,den1,-1); printsys(num,den);
>> FTCloop
num/den =
s+1 --------------------------500 s^3 + 1000 s^2 + s + 1
10
FTFeedback.m numg=[1]; deng=[500 0 0]; numh=[1 1]; denh=[1 2]; [num,den]=feedback(numg,deng,numh,denh,-1); printsys(num,den);
>> FTFeedback
num/den =
s+2 --------------------------500 s^3 + 1000 s^2 + s + 1
11
FTft.m numg=[1]; deng=[500 0 0]; numh=[1 1]; denh=[1 2]; sys1=tf(numg,deng); sys2=tf(numh,denh); sys=feedback(sys1,sys2); display(sys); >> FTft
12
Ejemplo.
13
Mover H2 detras de G4
Eliminando G3G4H1
Codigo Matlab.
RedBlockes.m
ng1=[1]; >> RedBlockes dg1=[1 10]; ng2=[1]; num/den = dg2=[1 1]; s^5 + 4 s^4 + 6 s^3 + 6 s^2 + 5 s + 2 ng3=[1 0 1]; ---------------------------------------------------------------dg3=[1 4 4]; 12 s^6 + 205 s^5 + 1066 s^4 + 2517 s^3 + 3128 s^2 + 2196 s + 712 ng4=[1 1]; dg4=[1 6]; nh1=[1 1]; dh1=[1 2]; nh2=[2]; dh2=[1]; nh3=[1]; dh3=[1]; n1=conv(nh2,dg4); d1=conv(dh2,ng4); [n2a,d2a]=series(ng3,dg3,ng4,dg4); [n2,d2]=feedback(n2a,d2a,nh1,dh1,+1); [n3a,d3a]=series(ng2,dg2,n2,d2); [n3,d3]=feedback(n3a,d3a,n1,d1); [n4,d4]=series(ng1,dg1,n3,d3); [num,den]=cloop(n4,d4,-1); printsys(num,den); 15
Funcion minreal.
Fminreal.m numg=[1 4 6 6 5 2]; deng=[12 205 1066 2517 3128 2196 712]; [num,den]=minreal(numg,deng); printsys(num,den); >> Fminreal 1 pole-zero(s) cancelled num/den = 0.083333 s^4 + 0.25 s^3 + 0.25 s^2 + 0.25 s + 0.16667 -------------------------------------------------------------s^5 + 16.0833 s^4 + 72.75 s^3 + 137 s^2 + 123.6667 s + 59.3333
16
Ejem2.m num1=[10]; den1=[1 1]; num2=[1]; den2=[2 0 5]; num3=[540]; den3=[1]; num4=[0.1]; den4=[1]; [na,da]=series(num1,den1,num2,den2); [nb,db]=feedback(na,da,num4,den4,-1); [nc,dc]=series(num3,den3,nb,db); [num,den]=cloop(nc,dc,-1); printsys(num,den);
17
Comportamiento de sistemas.
Las especificaciones de comportamiento en el dominio temporal generalmente vienen dadas en terminos de respuesta transitoria de un sistema a una seal de entrada especifica. Como las seales de entrada son generalmente desconocidas , se suele utilizar una seal de entrada estandar de prueba.
18
Mescalon.m num=[5400]; den=[2 2.5 5402]; t=[0:0.005:3]; sys=tf(num,den); [y t]=step(sys,t); plot(t,y); grid; xlabel('tiempo [seg]'); ylabel('Velocidad');
0.5
2.5
19
Funcin Impulso.
Sistema realimentado de segundo orden con lazo simple.
Funcin de Transferencia
20
Sys2ordenStep.m t=0:0.1:12; z1=0.1; z2=0.2; z3=0.4; z4=0.7; z5=1; z6=2; num=[1]; den1=[1 2*z1 1]; sys1=tf(num,den1); den2=[1 2*z2 1]; sys2=tf(num,den2); den3=[1 2*z3 1]; sys3=tf(num,den3); den4=[1 2*z4 1]; sys4=tf(num,den4); den5=[1 2*z5 1]; sys5=tf(num,den5); den6=[1 2*z6 1]; sys6=tf(num,den6); [y1,t1]=step(sys1,t); [y2,t2]=step(sys2,t); [y3,t3]=step(sys3,t); [y4,t4]=step(sys4,t); [y5,t5]=step(sys5,t); [y6,t6]=step(sys6,t); plot(t1,y1,t2,y2,t3,y3,t4,y4,t5,y5,t6,y6); xlabel('\omega_n t'); ylabel('y(t)'); title('\zeta=0.1,0.2,0.4,0.7,1.0,2.0'); grid on;
=0.1,0.2,0.4,0.7,1.0,2.0
1.8 1.6 1.4 1.2 1
y(t)
10
12
n t
21
Sys2ordenImpulse.m t=0:0.1:12; z1=0.1; z2=0.2; z3=0.4; z4=0.7; z5=1; z6=2; num=[1]; den1=[1 2*z1 1]; sys1=tf(num,den1); den2=[1 2*z2 1]; sys2=tf(num,den2); den3=[1 2*z3 1]; sys3=tf(num,den3); den4=[1 2*z4 1]; sys4=tf(num,den4); den5=[1 2*z5 1]; sys5=tf(num,den5); den6=[1 2*z6 1]; sys6=tf(num,den6); [y1,t1]=impulse(sys1,t); [y2,t2]=impulse(sys2,t); [y3,t3]=impulse(sys3,t); [y4,t4]=impulse(sys4,t); [y5,t5]=impulse(sys5,t); [y6,t6]=impulse(sys6,t); plot(t1,y1,t2,y2,t3,y3,t4,y4,t5,y5,t6,y6); xlabel('\omega_n t'); ylabel('y(t)'); title('\zeta=0.1,0.2,0.4,0.7,1.0,2.0'); grid on;
=0.1,0.2,0.4,0.7,1.0,2.0
1 0.8 0.6 0.4 0.2
y(t)
10
12
n t
23
25
SysRampa.m
Comparacin Funcion rampa vs Funcion escalon 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2
[y1,t1]=step(sys1,t); 0.1 [y2,t2]=step(sys2,t); plot(t1,y1,t2,y2,t,u,'--'); 0 0 axis([0 8 0 1]); xlabel('tiempo'); ylabel('Respuestas a entradas arbitrarias'); title('Comparacin Funcion rampa vs Funcion escalon');
numH=[6]; denH=[1 6 11 6]; sys1=tf(numH,denH); numL=[1.6]; denL=[1 2.584 1.6]; sys2=tf(numL,denL); t=0:0.1:8; % Se crea la Funcin Rampa Uniitaria u=linspace(0,3,81); % Compara el sys1 con la Funcion Rampa Unitaria y=lsim(sys1,u,t);
4 tiempo
26
Simulink
Proporciona un entorno grafico que facilita el analisis, diseo y simulacin de sistemas (de control, electronicos, etc.), que incluyen una serie de rutinas que resuelven los calculos matematicos de fondo, con una sencilla interfaz para su uso, premitiendo dibujar los sistemas como diagramas de bloques tal y como se haria en papel.
27
Simulink
1.2
0.8
Amplitude
0.6
0.4
0.2
-0.2
0.5
2.5
3.5
28
0 0.5 1 1.5 Time (sec) 2 2.5 3
Ejemplo Simulink
29
30
31
Modelo Simulink
Gain K Scope
Kd Step Gain 2
Scope 3
32
33
Step 1
Transfer Fcn 2 1 Rt
-3 Display
34
35
Datos experimentales
Simulacin
Codigo
Problema de Ingenieria
SISTEMA
36
Los Toolboxes mas importantes de Matlab relacionados con control de sistemas pueden clasificarse en tres familias: Productos de modelado (System Identification Toolbox). Productos de diseo y analisis clasico (Control System Toolbox y Fuzzy Logic Toolbox). Productos de diseo y analisis avanzado (Robust Control Toolbox, Mu Analisys Toolbox, LMI Control Toolbox y Model Predictive Toolbox). Productos de optimizacin (Optimization Toolbox).
Modelado
Funciones y operadores para conectar modelos LTI: Con diagramas de bloques complejos (conexiones en serie, paralelo y realimentacin). Soporte para varios metodos de conversin discreto a continuo. Funciones para representar graficamente las respuestas en tiempo y en frecuencia de sistemas y comparar varios sistemas con un unico comando. Herramientas para tecnicas clasicas y modernas de diseo de controles, incluido lugar geometrico de raices, loop shaping, colocacin de polos y regulacin
39
40
41
>> sisotool
42
43
44
45
Paso No. 4: En Analisys de la ventana de SISO Design, seleccionar la opcion Other Loop Responses.
46
Paso No. 5: En Closed-Loop mantener la opcin r to y para obtener la respuesta a un cambio escalon unitario.
Para un controlador proporcional de ganancia uno, la respuesta se estabiliza aproximadamente a un tiempo de 1.5 seg. Ademas hay error en estado estacionario.
47
Paso No. 6: Seleccionar la opcion Closed-Loop Poles del menu View para visualizar los polos de la funcin de transferencia de lazo cerrado para una ganancia de este, que es igual a uno.
48
Paso No. 7: Desplazar la grafica de magnitud del diagrama de bode, para obtener un cambio en la ganancia del controlador y en los polos de lazo cerrado del controlador (ajustar la ganancia a un valor de 38).
50
Paso No. 8: Desplegar View para observar los polos del controlador para una ganacia igual a 38.
Se observa que se tiene un margen de fase de 119 grados y ademas nos muestra que el sistema es estable. 51
Paso No. 9: En propiedades del LTI Viewer cambiar los limites de la escala en el tiempo.
Notese que el tiempo de levantamiento es menor que 0.5 seg. Y que el error en estado estacionario ha disminuido.
52
Paso No. 10: Para eliminar el error en estado estacionario hay que aadir un integrador desplegando la opcin Add Pole/Zero
53
54
Observese que aparece una X roja (polo) en el origen del lugar de las raices.
55
Paso No. 12: Desplegando la respuesta a un escalon unitario del lazo cerrado del control y verificando su sobrepeso y el tiempo de levantamiento.
56
La respuesta escalon unitario con un controlador integral con ganancia de 100 y tiempo integral de uno esta caracterizado por: No hay erro estacionario por que la respuesta se estabiliza en el valor de uno, y por lo que satisface el requerimiento de que el error sea menor que el 5%. El tiempo de levantamiento es de 0.408 seg por lo que satisface la condicion del 0.5 segundos. El sobrepeso maximo es de 1.32 (Pico maximo), lo que corresponde a un 32% por lo que no satisface la condicion de que sea menor a 10%.
57