Sei sulla pagina 1di 24

Disear cualquier controlador de su eleccin para piper avin piloto automtico (control de altitud) problema cuya funcin de transferencia

se muestra como el bloque de Simulink.

Los comandos en Matlab para esta funcin utilizando Sisotool son: >> num= [200 600 400]; >> den= [1 5 40 2 3]; >> G=tf(num,den); >> sisotool(G)

Expectativas del controlador son: No error de estado estacionario Respuesta transitoria no debe producir ms de 13% sobreimpulso, tiempo de subida no debe ser mayor que 1,3 seg. y menos de 1 seg. para la comodidad de los pasajeros.

Luego de ejecutar los comandos salen las ventanas siguientes


Interface de Usuario:

El contenido de esta ventana permite configurar todo el diseo y ajuste del sistema. La interface consta en el panel derecho de cinco apartados: Architecture, Compensator Editor, Graphical Tuning, Analysis Plots, Automated Tuning.

Interface Grafica de Diseo:

En las que se muestran el Lugar de Races, el Diagrama de Bode Open loop. En esta segunda interface donde se desarrollara el proceso de ajuste del compensador y anlisis del sistema, todo ello interactuando directamente sobre las grficas. Las dos interfaces mencionadas estn interconectadas, esto hace que cualquier modificacin en una de ellas se refleje en la otra

La estructura bsica de control de la interface consta de los siguientes bloques: sistema o planta G, Sensor o bloque de realimentacin H, compensador o regulador C, y filtro de entrada F. Todos estos bloques tienen su correspondiente funcin de transferencia que debe estar previamente definida en Matlab bien como objeto tf o zpk.

Ya en el ejercicio F y H estn puestas por defecto con el valor de 1 y ahora C es lo que se va modificar que esta por defecto tambin en un valor de 1. Primero se marca el ambiente para los plots.

En la ventana anterior marcamos Analysis Plots, en Plot 1 elegimos step. Y marcamos en las casillas de Plots

Se despliega la siguiente ventana de la funcion Step (paso):

Ahora modificando en el Graphical Tuning en el plot 2 esta por defecto la opcin de lazo abierto, y lo cambiamos a None

El grafico es el siguiente del lugar de raices

Luego nos vamos a la pestaa Automated Tunning , en la opcin Desing method marcamos PID tuning y elegimos PID y hacemos click en Update Compesator el C cambiara a un formato de PID con una ganancia sugerida para sisotool.

Ahora en la grfica de de paso se va eligiendo con el clic derecho las characteristics de Peak response, Setting time, Rise time.

Luego volviendo al Compesator Editor vemos que es un poco elevado la ganacia y lo cambiamos a 0.5(y se va disminuyendo hasta que el tiempo de levantamiento se acerque a 1)

Con esos cambio se genera la siguiente grafica de la funcion Step

Vamos a automated tuning porque el pico esta muy alto elegimos la opcin Optimization Based Tuning hacer clic en Update Optimization, elegimos Compesator y marcamos C pero luego quita la opcion ganancia (gain) porque no queremos cambiarla, despus elegimos el botn design requirements, elegimos la opcin add new desing requirement

Ahora vamos a overshoot, el cual tiene un mximo de 13, no hay ni un minimo ni mximo de tiempo de levantamiento (rise time) esto es lo que lo hace difcil asi que lo dejamos 5 % ponemos ok.

Despus vamos a optimization y ponemos start opimization

Y se tendr un tiempo de levantamiento de 0.8, todava se tiene cierta tolerancia en el pico, por lo que hay que volver al compensador y tratar de bajar la ganancia, llegamos a0.2 con un buen pico

Se va dando valores en la ganancia el ultimo valor que toma es 0.04

y volvemos a hacer el proceso, todo el proceso nuevamente, la optimizacin , click en start optimization, aqu es donde matlab se ira medio loco y le tomara un tiempo largo a matlab encontrar el lugar correcto para los parametros , y va a seguir buscando no puede encontrar una solucin que cumpla los requerimientos

Lo que tenemos que hacer es volver al PId tuning presionar update compesator y volver a hacer lo que se hacia con la ganancia, escogamos 0.04, ahora 0.03

Y volver a automated tuning , asegurarse de que todo este correcto hacemos click en start optimization, ahora tenemos mejores resultados en el tiempo de elevamiento tenemos 0.911.

Para mis estndares es mejor 0.911 que 1, estos son los parmetros que se dan, en simulink ser un poco mas largo porque no existe autotuning en simulink eso es lo que hace el problema bastante difcil solo tienes este slider

sliders pero aqu (en el lugar de races) puedes tratar de moverlo para llegar a los resultados q necesites , tambin puedes mover el polo , aunque el polo no har nada significativo al menos , puede hacer esto hasta la maana pero veras que estas llegando a valores irreales, asi que lo mejor es quedarse con el Automated Tuning ;tambin puedes aadir un polo y puedes mover el polo y puedes hacer otras cosas, bueno mejor no malogremos el resultado que tenamos, y estos parmetros deberan ser satisfactorios y esto es como lo haces en sisotool que es ms rpido que Simulink.

Potrebbero piacerti anche