You are on page 1of 14
UNIVERSIDAD DE MALAGA DPTO. DE INGENIERIA DE SISTEMAS Y AUTOMATICA CONTROL POR COMPUTADOR Examen Febrero 2015 P1. El sistema de la figura muestra un servocontrol de una articulacién de un brazo manipulador Compensator i 1) Obtener la funcién de transferencia del sistema en bucle abierto (excluyendo el compensador) 2 manualmente y comprobando el resultado con MATLAB 2) Disefiar un controlador tipo PID utilizando el método de Ziegler-Nichols (si es posible) y obtener la respuesta escalon unitario en MATLAB, sefialando las caracteristicas de respuesta transitoria y el error escalon. 3) Disefar utilizando el método de Rovira un controlador (si es posible) obtener la respuesta escalon unitario en MATLAB, sefialando las caracteristicas de respuesta transitoria y el error escalon. 4) Mejorar el controlador obtenido manualmente en SIMULINK variando los parémetros del PID 2 para cumplir t_estab <3 sy SO < 10 % y graficar la respuesta escalén. 5) Discretizar el sistema en bucle abierto con T = 0.5 y diseftar un controlador digital utilizando |3 laherramienta rlioo! para obtener una SO < 10% t_pico < | s ,t_establecimiento <3 sy error ~ rampa nulo, mostrando el controlador obtenido y obteniendo la respuesta escalén y rampa en SIMULINK. Tiempo: 1 h 30 min P2. El sistema de la figura muestra un esquema simple de un sistema de suspensién de un automévil de masa M;, constituido por una rueda de masa M;, un amortiguador de coeficiente B, un resorte de constante K;, siendo K? la elastancia del neumatico. ee re “ae f Wheel —ie| Las ecuaciones dinamicas del sistema vienen dadas por Py. yA _ ae Myr t BG GP + Qu - 20) = a; d: dq 52+ 8 (2-H) + KO -10) + Ken = FO 1) Hallar las matrices de representacién en espacio de estado directamente a partir de las 4 ecuaciones dinémicas, considerando el sistema con entrada f(t) y salida y,(), eligiendo = adecuadamente las componentes del vector de estado. 2) 23) a4 25 Particularizar las matrices de estado para valores asignados concretos de M; = 10, K)=5, Kr=2, y B= 3, y obtener la representacin de estado del sistema en MATLAB, hallando Ia funcién de transferencia en MATLAB. Diseftar un controlador por asignacién de polos para seguimiento de referencia nula para que la dinémica del sistema en bucle cerrado presente polos en jy, 2 = 2 Y Ha» Ms = =10, suponiendo el estado accesible., ayuddndose en su caso de MATLAB. Obtener la respuesta ante una referencia nula en SIMULINK, partiendo de condiciones iniciales para el vector de estado nulas excepto y,(0) = 0.5, graficando la evolucién temporal de la salida y, (t) y de las componentes del vector de estado 2(¢) elegidas. Discretizar el sistema original y hallar las matrices de representacién de estado discretas para T = 0.2 utilizando MATLAB, y obtener el vector de ganancias de un observador discreto de orden completo, seleccionando los polos de! observador discreto de forma ‘consistente con los definidos para el controlador disefiado en el apartado 3), ayudandose en su caso de MATLAB. Tiempo: 1h 30 min @) : 7 we fidl Mics jeaaygal | Gin “< A] en es + / jo Gig) 7 se ae Gad = Careiargl) Ax Siracn ace f+ aro S ; Ss (ts rt) (ty 2) br ; oP a te trp FEAWAS ty YW Yo f ; oe ¢ olin YQ. 4 = “puls f ems Pos SOM C41) +% Solucion P1 de Examen de Febrero 2015 Control por Computador » sezpk('s'); Gi=1/(2*s+21) ; G2=38; G3e1/(2*842); iors Grealim=feedback (G1*G2*G3,H,-1) Geg=20*Grealim/(20*s) >> Geq Zero/pole/gain: 9.5 s (s+1) (s+10) 2) Controlador de Ziegler-Nichols PID pues se exige segiumiento rampa Se aplica ritool(Geq) y se busca el limite de estabilidad con controlador en modo proporcional Kcritica = 11.579 y weritica= 3.16 por tanto Tcritico= 2pi/weritica = 1.9883 woe3.16; Tes 2*pi/we; Se entra en la tabla de Ziegler-Nichols del PI Kp=0.75#Ke; TisTe/1.6; Td=Te/10; Go=PID (Kp, Ki, Ka) >> Gc=zpk(Gc} Zero/pole/gain: 1.7267 (s+4.023) (s+1.006) >orltool %S porta Geq y Gc desde ritool Se aplica ritool y se ve la respuesta, mas bien mejorable... Se Jn, \{ V/ 2) Controlador de Rovira No es viable ya que la planta no se aproxima a planta de primer orden con retardo 3) Mejora del PID de Z_N en SIMULINK con t_estab < 3 s y SO < 10% (tune) El PID Z-N original Se aplica la mejora 4) PID digital aplicando especificaciones SO< 10% t_pico <1, t_establecimiento < 3 sy error rampa nulo, Se ha de aplicar un Pl o PID para pasar de tipo 1 a tipo 2. Se comienza con la discretizacion de la planta >> Geqd Zero/pole/gain: 0.070156 (2+0.05173) (z#1.516) (2-1) (2-0.6065) (2-0.006738) Especificaciones de control SO < 10%, t_pico< 1s t_estab <3 s, con error rampa nulo ‘Sampling time (seconds): 0.5 Se ha aplicado un PID digital con T=0.5, pero no es posible cumplir las 3 especificaciones simultanamente, especialmente la del t_pico debido al alto valor de T (t_pico = 2°T) Se ha optado por afiadir pares de polo-cero hasta cumplir las especificaciones, procurando ccancelar los polos y ceros de la planta interiores al circulo unidad Resulta por tanto >t Zero/pole/gain: 5.57 (2-0.5893) (2-0.4) (2-0.9977) (2-1) (240.1395) (2+0.051) ‘Sampling time (seconds): 0.5 Para comprobar el seguimiento rampa en SIMULINK se construye el diagrama de bloques Se observa el seguimiento rampa como era esperable (sistema tipo 2 en bucle abierto) @ My, “ BY ~yI+ ‘i (y,-ys) 20 () thy + Bye y+ Anny) hips = L(t) Eom yy Le ters vedv de A tede: Tey = CHU a) HOH xy Hel Ye Ye PD infade aps ft y achde y= WH A poke de bey 4 tue KOI @) y (1) Banta th an ok hai daivie obit rect dy 9A twa ey Ke % Ke / St = (- 4,04 HX) Ble x aM, if 3) (x xy) a a ee aeé dky 1 a 2 Z (ur Bla xy F £,(4-%) - 4%) Creo dfa feta f = xy D« % Solucion P2 de Examen de Febrero 2015 Control por Computador % P2. Descripcion de matrices ABC yD M1=10;M2=2; iKL=5;B=3; As[O0 1 0 0;-Ki/M1 -B/M1 K1/M1 B/M1; B/M2) 5 Be [0 0 0 1/M2)'; c=(2 00 01; D= [0]; 0 0 1;Ki/M2 B/M2 -(K1+K2) /M2 - sistemasss(A,B,C,D) Get£ (sistema) \ Disefio de controlador Ackermann Mcectrb(A,B) rank(Mc) € rango maximo (4) lambdai=-2; Lambda2e-2; Lambda3=-10;1ambda4=-10; J={lambdal 0 0 0;0 lambda2 0 0;0 0 lambda3 0;0 0 0 lambda4); phispoly (J); phi_Aspolyvalm(phi,A); K=[0 0 0 2] *inv(Mc) *phi_A eKe % 765.5000 459.3000 32.5000 20.7000 % Respuesta condiciones iniciales nula sistema_controlado=ss(A-B*K,B,C,D) x0=(0.1-0.5 2 -3]; fy, t,x] =initial (sistema_controlado, x0) plot (t,x) Discretizacion de sistema 120.2; sistema_dec2d(sistema,T, ‘zoh'); [G,H,C,D] =ssdata(sistema_d) % Matriz de observabilidad Mob_d-obsv(G,C) rank(Mob_d) & rango maximo (4) % Disefio de observador dicreto Ackermann % Se colocan los polos del observador a distancia de 4-5 de los polos del ¥ controlador y se mapean en discreto z-exp(s*T) J_d= (exp(4*lambdai*T) 0 0 0;0 exp(4+lambda2*T) 0 0:0 0 exp(4"lambda3*T) 070 0 0 exp(4*lanbdad*T)]; phi_depoly (J_a); phi_Gepolyvaim(phi_4,G) Ke_dephi_G*inv(Mob_d) * [0; 7072) ¥Ke_d 2.8960 % 1s092 + 5.1946 & 64.9899

You might also like