Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Laboratorio de
Sistemas de control moderno
Laboratorio N°1
ANÁLISIS DE ESTABILIDAD Y RESPUESTA EN EL TIEMPO Y
FRECUENCIA
Laboratorio N°1
ÍNDICE
1. OBJETIVO 3
2. FUNDAMENTO TEÓRICO 3
2.1. ANÁLISIS DE ESTABILIDAD 3
2.1.1. Introducción 3
2.1.2. Método de Routh-Hurwitz en MATLAB 3
2.1.3. Ejercicios Propuestos 6
2.2. LUGAR GEOMÉTRICO DE LAS RAÍCES 7
2.2.1. Introducción 7
2.2.2. Construcción de LGR 7
2.2.3. Ejercicios Propuestos 9
2.3. RESPUESTA EN FRECUENCIA 11
2.3.1. Introducción 11
2.3.2. Diagrama de Bode 11
2.3.3. Traza de Nyquist 13
2.3.4. Carta de Nichols 14
2.3.5. Ejercicios propuestos 16
Laboratorio N°1
1. OBJETIVO
2. FUNDAMENTO TEÓRICO
%
% 1.0000 3.0000
% 2.0000 1.0000
% 2.5000 0
% 1.0000 0
%
% 2) Routh array for s^3+a*s^2+b*s+c
%
% >>syms a b c EPS;
% >>ra=routh([1 a b c],EPS);
% ra =
%
% [ 1, b]
% [ a, c]
% [ (-c+b*a)/a, 0]
% [ c, 0]
%
%
% Author:Rivera-Santos, Edmundo J.
% E-mail:edmundo@alum.mit.edu
%
if(nargin<2),
fprintf('\nError: Not enough input arguments given.');
return
end
for i=1:coeff,
RA(2-rem(i,2),ceil(i/2))=poli(i); %assemble 1st and 2nd rows
end
for i=1:rows,
index(rows-i+1)=ceil(i/2); %form index vector from bottom to top
end
Este código está implementado como una función con argumentos y debe ser
guardada en la carpeta de trabajo de MATLAB con el nombre “routh.m”. Para esto
debe crear una hoja nueva: File/New/Script o click en , copiar el código y
guardarlo como se indica.
En el código se indica la forma como debe usarse esta función con un par de
ejemplos (numéricos y con componente simbólica). Tomando el ejemplo
desarrollado en clase:
>> %Dado P(s) = s3+6s2+11s+6+Kc = 0
>> syms EPS Kc
>> P = [1 6 11 6+Kc];
>> ra= routh(P,EPS) %Ejecuta función routh
ra =
Laboratorio N°1
[ 1, 11]
[ 6, Kc + 6]
[ 10 - Kc/6, 0]
[ ((Kc + 6)*(Kc - 60))/(6*(Kc/6 - 10)), 0]
Esta expresión de la tabla de Routh puede ser simplificada:
>> ra2 = simplify (routh_array) %Simplifica
expression simbólica
ra2 =
[ 1, 11]
[ 6, Kc + 6]
[ 10 - Kc/6, 0]
[ Kc + 6, 0]
Con:
𝑠+1
𝐺(𝑠) = 𝑠(𝑠−1)(𝑠+6)
𝑠+3
𝐾(𝑠) = λ 2
𝑠 +4𝑠+5
Analice la estabilidad del sistema en lazo cerrado en función del parámetro λ del
controlador usando el criterio de Routh.
>> s = tf('s');
>> G = 2/(3*s+1)/(s+1); %Define FdT
>> H = 0.5;
>> sys_ol = G*H; %FdT del sistema en lazo abierto
>> figure; %Abre una figura nueva
>> rlocus(sys_ol) %Grafica LGR para sys_ol
>> axis([-1.2 0.2 -1.8 1.8]) %axis[xi xf yi yf] establece el cuadro de visión en el
%rectángulo definido por (xi, yi) y (xf, yf)
>> axis('equal') %Iguala escala en direcciones X e Y
>> dseta = 0.707; %Factor de amortiguamiento ζ = 0.707
>> omega = 1.33; %Frecuencia natural ωn = 1.33
>> sgrid(dseta,[]); %sgrid(ζ, ωn) permite especificar una curva de nivel
>> sgrid([], omega); %específica para un cierto ζ y/o ωn
>> sgrid(dseta, omega);
En la figura 2 se puede observar un LGR compuesto por dos ramas (en color azul y
verde) rectas por tramos. Las curvas de nivel para el factor de amortiguamiento son
rectas diagonales, mientras que las curvas para la frecuencia natural son
circunferencias.
Haciendo click sobre cualquier punto del LGR se puede mostrar un pequeño cuadro
con información sobre el valor de ganancia, polo señalado, amortiguamiento, entre
otros.
b. En una misma figura, grafique los diagramas de Bode para los sistemas
descritos por:
1+𝑠
𝐺1(𝑠) = 1+2𝑠
1−𝑠
𝐺2(𝑠) = 1+2𝑠