18
UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO CARRERA PROFESIONAL DE INGENIERÍA ELÉCTRICA 2013 - II Ing. Willy Morales Alarcón Página 1 PRACTICAS DE LABORATORIO CON MATLAB Ejercicios resueltos de: Fracciones Parciales, Transformadas de Laplace, Transformada Inversa de Laplace, Lugares Geométricos de las raíces, Grafica del Lugar Geométrico de las raíces, Funciones de Transferencia. I. DESARROLLO DE FRACCIONES PARCIALES SIMPLES CON MATLAB Ejemplo 1. Descomponer la siguiente función en fracciones parciales: 2 3 () 3 2 s Fs s s Solución >> num=[0 1 3]; >> den=[1 3 2]; >> [R,P,K]=residue(num,den) R = -1 2 P = -2 -1 K = [] De tal manera que el resultado de la descomposición en fracciones parciales de la función anterior sería: 2 3 1 2 () 3 2 2 1 s Fs s s s s La función residue también se puede utilizar para obtener los polinomios (numerador y denominador) a fracciones simples en la razón de polinomios. Esto es, el comando >> [num,den]=residue(R,P,K); >> printsys(num,den,'s') num/den = s + 3 ------------- s^2 + 3 s + 2

Problemas y Ejercicios Resueltos Con MatLab

Embed Size (px)

Citation preview

Page 1: Problemas y Ejercicios Resueltos Con MatLab

UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO CARRERA PROFESIONAL DE INGENIERÍA ELÉCTRICA

2013 - II

Ing. Willy Morales Alarcón Página 1

PRACTICAS DE LABORATORIO CON MATLAB Ejercicios resueltos de: Fracciones Parciales, Transformadas de Laplace, Transformada Inversa de Laplace, Lugares Geométricos de las raíces, Grafica del Lugar Geométrico de las raíces, Funciones de Transferencia.

I. DESARROLLO DE FRACCIONES PARCIALES SIMPLES CON MATLAB

Ejemplo 1. Descomponer la siguiente función en fracciones parciales:

2

3( )

3 2

sF s

s s

Solución >> num=[0 1 3]; >> den=[1 3 2]; >> [R,P,K]=residue(num,den) R = -1 2 P = -2 -1 K = [] De tal manera que el resultado de la descomposición en fracciones parciales de la función anterior sería:

2

3 1 2( )

3 2 2 1

sF s

s s s s

La función residue también se puede utilizar para obtener los polinomios (numerador y denominador) a fracciones simples en la razón de polinomios. Esto es, el comando >> [num,den]=residue(R,P,K); >> printsys(num,den,'s') num/den = s + 3 ------------- s^2 + 3 s + 2

Page 2: Problemas y Ejercicios Resueltos Con MatLab

UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO CARRERA PROFESIONAL DE INGENIERÍA ELÉCTRICA

2013 - II

Ing. Willy Morales Alarcón Página 2

Ejemplo 2. Considere la siguiente función de transferencia, exprese en términos de fracciones parciales:

3 2

3 2

( ) 2 5 3 6

( ) 6 11 6

B s s s s

A s s s s

Solución Para esta función: >> clear >> num=[2 5 3 6] num = 2 5 3 6 >> num=[2 5 3 6]; >> den=[1 6 11 6]; >> [r,p,k]=residue(num,den) r = -6.0000 -4.0000 3.0000 p = -3.0000 -2.0000 -1.0000 k = 2 Obsérvese que los residuos se devuelven en el vector columna r, las posiciones de los polos en el vector columna p y el término directo en el vector fila k. Esta es la representación en MATLAB del siguiente desarrollo en fraccione parciales simples de B(s)/A(s).

3 2

3 2

( ) 2 5 3 6

( ) 6 11 6

B s s s s

A s s s s

3 2

3 2

( ) 2 5 3 6 6 4 32

( ) 6 11 6 3 2 1

B s s s s

A s s s s s s s

La función residue también se puede utilizar para obtener los polinomios (numerador y denominador) a fracciones simples en la razón de polinomios. Esto es, el comando

>> [num,den]=residue(r,p,k); >> printsys(num,den,'s') num/den = 2 s^3 + 5 s^2 + 3 s + 6 ------------------------------ s^3 + 6 s^2 + 11 s + 6

Page 3: Problemas y Ejercicios Resueltos Con MatLab

UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO CARRERA PROFESIONAL DE INGENIERÍA ELÉCTRICA

2013 - II

Ing. Willy Morales Alarcón Página 3

Ejemplo 3. Obtenga el desarrollo de B(s)/A(s) siguiente en fracciones simples utilizando MATLAB

2 2

3 3 2

( ) 2 3 2 3

( ) ( 1) 3 3 1

B s s s s s

A s s s s s

Solución Para esta función, se tiene >> num=[0 1 2 3]; >> den=[1 3 3 1]; >> [r,p,k]=residue(num,den) r = 1.0000 0.0000 2.0000 p = -1.0000 -1.0000 -1.0000 k =

[] >> [num,den]=residue(r,p,k); >> printsys(num,den,'s') num/den = s^2 + 2 s + 3 --------------------- s^3 + 3 s^2 + 3 s + 1

II. TRANSFORMADA DE LAPLACE CON MATLAB Ejemplo 1. Obtenga la Transformada de Laplace de la siguiente función:

f (t)=sen(4t)

Solución

>> syms t >> f=sin(4*t) f = sin(4*t) >> ans=laplace(f) ans = 4/(s^2 + 16) >> pretty(ans)

2

4

16s

Page 4: Problemas y Ejercicios Resueltos Con MatLab

UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO CARRERA PROFESIONAL DE INGENIERÍA ELÉCTRICA

2013 - II

Ing. Willy Morales Alarcón Página 4

Ejemplo 2. Obtenga la Transformada de Laplace de la siguiente función:

0.5( ) 4 4 tf t e

Solución >> syms t >> f=4-4*exp(-0.5*t); >> F=laplace(f) F = 4/s - 4/(s + 1/2) >> pretty(F)

4 4

1

2

ss

Ejemplo 3. Obtenga la Transformada de Laplace de la siguiente función:

f (t)=sen(wt) Solución

Nota: aquí se tendrán que definir simbólicamente las variables w y t ahora utilizaremos el comando >>sym(‘variable’) >> f=sin(w*t); >> w=sym('w'); >> t=sym('t'); >> f=sin(w*t); >> F=laplace(f) F = w/(s^2 + w^2) >> pretty(F)

2 2

w

s w

Page 5: Problemas y Ejercicios Resueltos Con MatLab

UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO CARRERA PROFESIONAL DE INGENIERÍA ELÉCTRICA

2013 - II

Ing. Willy Morales Alarcón Página 5

III. TRANSFORMADA INVERSA DE LAPLACE CON MATLAB Ejemplo 1: Obtenga la Transformada de Laplace inversa de la siguiente función:

2 2( )

wF s

s w

>> w=sym('w'); >> s=sym('s'); >> F=w/(s^2+w^2); >> C=ilaplace(F) C = sin(t*w) >> pretty(C) sin(t w) Ejemplo 2. Obtenga la Transformada de Laplace inversa de la siguiente función:

>> syms s >> f=4/(s^2+16) f = 4/(s^2 + 16) >> ans=ilaplace(f) ans = sin(4*t) >> pretty(ans) sin(4 t)

Page 6: Problemas y Ejercicios Resueltos Con MatLab

UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO CARRERA PROFESIONAL DE INGENIERÍA ELÉCTRICA

2013 - II

Ing. Willy Morales Alarcón Página 6

Ejemplo 3. Obtenga la Transformada de Laplace inversa de la siguiente función:

>> syms s >> f=[(s+1)*(s+5)]/[(s+2)*(s+3)*(s+4)]; >> F=ilaplace(f) F = 4/exp(3*t) - 3/(2*exp(2*t)) - 3/(2*exp(4*t)) >> pretty(F)

4 3 3

(3 ) 2 (2 ) 2 (4 )exp t exp t exp t

Ejemplo 4. Obtenga la Transformada de Laplace inversa de la siguiente función:

>> syms s >> f=5*exp(-s)/(s+1); >> F=ilaplace(f) F = 5*heaviside(t - 1)*exp(1 - t) >> pretty(F) 5 heaviside(t - 1) exp(1 - t)

Equivalente: 15 ( 1)te u t

>> t=1:0.001:5; >> y=5*exp(1-t); >> plot(t,y,'linewidth',2); >> axis([0 6 -0.5 5.5]); >> grid on; >> xlabel('t'); >> ylabel('Funcion f(t)'); >> title('Grafica en el dominio del tiempo');legend('f(t)');

Page 7: Problemas y Ejercicios Resueltos Con MatLab

UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO CARRERA PROFESIONAL DE INGENIERÍA ELÉCTRICA

2013 - II

Ing. Willy Morales Alarcón Página 7

0 1 2 3 4 5 6

0

1

2

3

4

5

t

Funcio

n f

(t)

Grafica en el dominio del tiempo

f(t)

>> s=-3:0.01:10; >> y=5*(exp(-5))./(s+1); >> plot(s,y,'r'); >> axis([-4 11 -80 80]); >> grid on; >> xlabel('s'); >> ylabel('Funcion F(s)'); >> title('Grafica en el dominio del tiempo de la frecuencia');legend('F(s)');

Page 8: Problemas y Ejercicios Resueltos Con MatLab

UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO CARRERA PROFESIONAL DE INGENIERÍA ELÉCTRICA

2013 - II

Ing. Willy Morales Alarcón Página 8

Ejemplo 5. Obtenga la Transformada de Laplace inversa de la siguiente función:

2

6 3( )

sF s

s

Solución >> syms s >> f=(6*s+3)/s^2; >> F=ilaplace(f) F = 3*t + 6 >> t=0:0.001:5; >> y=3*t+6; >> plot(t,y,'linewidth',3); >> axis([-0.2 6 0.2 22]); >> grid on; >> xlabel('t'); >> ylabel('Funcion (t)'); >> title('Grafica en el dominio del tiempo');legend('f(t)');

Page 9: Problemas y Ejercicios Resueltos Con MatLab

UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO CARRERA PROFESIONAL DE INGENIERÍA ELÉCTRICA

2013 - II

Ing. Willy Morales Alarcón Página 9

Ejemplo 6. Obtenga la Transformada de Laplace inversa de la siguiente función:

2

5 2( )

( 1)( 2)

sF s

s s

Solución

>> syms s >> f=(5*s+2)/[(s+1)*(s+2)^2]; >> F=ilaplace(f) F = 3/exp(2*t) - 3/exp(t) + (8*t)/exp(2*t) >> pretty(F)

3 3 8

(2 ) ( ) (2 )

t

exp t exp t exp t

2 2: 3 3 8t t tequivalentea e e te

>> t=0:0.001:5; >> t=0:0.0001:15; >> y=(-3./exp(t))+(((8*t)+3)./exp(2*t)); >> plot(t,y,'linewidth',2); >> grid on; >> xlabel('t'); >> ylabel('Funcion (t)'); >> title('Grafica en el dominio del tiempo');legend('f(t)');

Page 10: Problemas y Ejercicios Resueltos Con MatLab

UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO CARRERA PROFESIONAL DE INGENIERÍA ELÉCTRICA

2013 - II

Ing. Willy Morales Alarcón Página 10

Ejemplo 7. Obtenga la Transformada de Laplace inversa de la siguiente función:

2 2 2

1( )

( )F s

s s w

Solución >> syms s >> syms w >> f=1/[(s^2)*((s^2)+(w^2))]; >> F=ilaplace(f) F = t/w^2 - sin(t*w)/w^3 >> pretty(F)

2 3

( )t sin tw

w w

2 3

1: ( )

tequivalentea sin wt

w w

Ejemplo 8. Obtenga la Transformada de Laplace inversa de la siguiente función:

2

10( 2)( 4)( )

( 1)( 3)( 5)

s sF s

s s s

Solución >> syms s >> f=[10*(s+2)*(s+4)]/[(s+1)*(s+3)*(s+5)^2]; >> F=ilaplace(f) F = 15/(16*exp(t)) + 5/(4*exp(3*t)) - 35/(16*exp(5*t)) + (15*t)/(4*exp(5*t)) >> pretty(F) 15 5 35 15 t ------------ + ------------ - ------------- + ------------- 16 exp(t) 4 exp(3 t) 16 exp(5 t) 4 exp(5 t)

3 5 515 5 35 15:16 4 16 4

t t t tequivalentea e e e e

>> t=0:0.0001:10; >> Y=15./(16*exp(t))+5./(4*exp(3*t))-35./(16*exp(5*t))+(15*t)./(4*exp(5*t)); >> plot(t,Y,'linewidth',2); >> grid on >> xlabel('t');

Page 11: Problemas y Ejercicios Resueltos Con MatLab

UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO CARRERA PROFESIONAL DE INGENIERÍA ELÉCTRICA

2013 - II

Ing. Willy Morales Alarcón Página 11

>> ylabel('Funcion (t)'); >> title('Grafica en el dominio del tiempo');legend('f(t)');

0 1 2 3 4 5 6 7 8 9 100

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

t

Funcio

n (

t)

Grafica en el dominio del tiempo

f(t)

Ejemplo 9. Obtenga la Transformada de Laplace inversa de la siguiente función:

4 3 2

4 3 2

5 6 9 30( )

6 21 46 30

s s s sF s

s s s s

Solución >> syms s >> f=[(s^4)+5*(s^3)+6*(s^2)+(9*s)+30]/[(s^4)+6*(s^3)+21*(s^2)+(46*s)+30]; >> F=ilaplace(f) F = 23/(18*exp(t)) - 3/(26*exp(3*t)) + dirac(t) - (253*(cos(3*t) + (399*sin(3*t))/253))/(117*exp(t)) >> pretty(F)

323 3 253 399: ( ) (3 ) (3 )18 26 117 117

t t t tEquivalente a e e t e cos t e sin t

>>t=-0.5:0.001:10; >>plot(t,y,´linewidth´,2); >>grid on; >>xlabel (`t´); >>ylabel (´Funcion f(t)´); >>title (Grafica en el dominio del tiempo´); legend(´f(t)´);

Page 12: Problemas y Ejercicios Resueltos Con MatLab

UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO CARRERA PROFESIONAL DE INGENIERÍA ELÉCTRICA

2013 - II

Ing. Willy Morales Alarcón Página 12

IV. LUGARES GEOMETRICOS DE LAS RAICES CON MATLAB

Encontrar los Ceros y Polos de B(s)/A(s) con MATLAB. MATLAB tiene una función >> [z,p,k]=tf2zp(num,den) Para obtener los ceros, polos y ganancia k de B(s)/A(s).

Ejemplo 1. Considérese el sistema definido por

2

4 3 2

( ) 4 16 12

( ) 12 44 48

B s s s

A s s s s s

Para obtener los ceros (z), polos (p) y ganancia (k), se introduce el siguiente programa de MATLAB en el computador:

Solución >> num=[0 0 4 16 12]; >> den=[1 12 44 48 0]; >> [z,p,k]=tf2zp(num,den) z = -3 -1 p = 0 -6.0000 -4.0000 -2.0000 k = 4 Los ceros son: -3 y -1. Los polos están en s=0, -6,-4 Y -2. La ganancia k es 4. Si los ceros y los polos y la ganancia k están dados, entonces el siguiente programa en MATLAB generara num/den: >> z=[-1; -3]; >> p=[0; -2; -4; -6]; >> k=4; >> [num,den]=zp2tf(z,p,k); >> printsys(num,den,'s');

Page 13: Problemas y Ejercicios Resueltos Con MatLab

UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO CARRERA PROFESIONAL DE INGENIERÍA ELÉCTRICA

2013 - II

Ing. Willy Morales Alarcón Página 13

num/den = 4 s^2 + 16 s + 12 ------------------------------------ s^4 + 12 s^3 + 44 s^2 + 48 s

OBTENCION DE FUNCIONES DE TRANSFERENCIA EN CASCADA, PARALELO Y REALIMENTADAS (EN LAZO CERRADO) UTILIZANDO MATLAB Supóngase que hay dos componentes G1(s) y G2(s) conectadas de diferentes formas como se ve en la fig. Donde:

1 2

1 2( ) , ( )

1 2

num numG s G s

den den

Para obtener las funciones de transferencia del sistema en cascada, en paralelo o realimentado (lazo cerrado) se utilizan las siguientes instrucciones: >> [num, den]=series(num1,den1,num2,den2); >> [num, den]=paralle1(num1,den1,num2,den2); >> [num, den]=feedback(num1,den1,num2,den2); Como ejemplo, se considera el caso en el que

1 22

10 1 5 2( ) , ( )

2 10 1 5 2

num numG s G s

s s den s den

El programa, en MATLAB calcula ( )

( )

C s num

R s den para cada situación de G1(s) y G2(s). Obsérvese que la

instrucción: >> printsys(num,den)

Muestra el num

den [esto es, la función

( )

( )

C s

R s] del sistema considerado.

MATLAB programa 1. >> [num,den]=parallel(num1,den1,num2,den2); >> num1=[0 0 10]; >> den1=[1 2 10]; >> num2=[0 5]; >> den2=[1 5]; >> [num,den]=series(num1,den1,num2,den2); >> printsys(num,den)

G1(s) G2(s) R(s

)

C(s

)

G1(s)

G2(s)

R(s

)

C(s

)

G1(s)

G2(s)

R(s

)

C(s

)

Page 14: Problemas y Ejercicios Resueltos Con MatLab

UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO CARRERA PROFESIONAL DE INGENIERÍA ELÉCTRICA

2013 - II

Ing. Willy Morales Alarcón Página 14

num/den = 50 ----------------------- s^3 + 7 s^2 + 20 s + 50 >> [num,den]=parallel(num1,den1,num2,den2); >> printsys(num,den) num/den = 5 s^2 + 20 s + 100 --------------------------- s^3 + 7 s^2 + 20 s + 50 >> [num,den]=feedback(num1,den1,num2,den2); >> printsys(num,den) num/den = 10 s + 50 ------------------------ s^3 + 7 s^2 + 20 s + 100 GRAFICA DEL LUGAR DE LAS RAICES CON MATLAB Grafica de los lugares de las raíces con MATLAB. Al dibujar los lugares de las raíces con MATLAB, se utiliza la ecuación del sistema obtenida por la ecuación que se escribe como:

1 0num

kden

Donde num es el polinomio del numerador y den es el polinomio del denominador. Es decir,

1 2( )( ).....( )mnum s z s z s z 1

1 2 1 2( ..... ) ...... .....m m

m mnum s z z z s z z z

1 2( )( ).....( )nden s p s p s p 1

1 2 1 2( ..... ) ...... .....n n

n nden s p p p s p p p

Obsérvese que ambos vectores, num y den, deben escribirse en potencias decrecientes des. Una orden de MATLAB que se usa con frecuencia para dibujar los lugares de las raíces es

>> rlocus(num,den) Con esta orden se dibuja en la pantalla la grafica del lugar de las raíces. El vector de ganancias k se determina de forma automática). El vector k contiene todos los valores de ganancias para los cuales se van a calcular los polos en lazo cerrado). Para los sistema definidos en el espacio de estados, rlocus (A, B, C,D) dibuja el lugar de las raíces del sistema con el vector de ganancias automáticamente determinado. Obsérvese que las ordenes:

rlocus(num,den,k) y rlocus(A,B,C,D,K) utilizan el vector de ganancias k proporcionado por el usuario. Si se invoca con los argumentos del lado izquierdo >> [r,k]=rlocus(num,den) >> [r,k]=rlocus(num,den,k)

Page 15: Problemas y Ejercicios Resueltos Con MatLab

UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO CARRERA PROFESIONAL DE INGENIERÍA ELÉCTRICA

2013 - II

Ing. Willy Morales Alarcón Página 15

>> [r,k]=rlocus(A,B,C,D) >> [r,k]=rlocus(A,B,C,D,k) >> [r,k]=rlocus(sys) La pantalla mostrará la matriz r y el vector de ganancias K. (r tiene una longitud de K filas y den una longitud de - 1 columnas que contienen las ubicaciones de las raíces complejas. Cada fila de la matriz corresponde a una ganancia a partir del vector K.) La orden plot

plot(r, ‘-’) dibuja los lugares de las raíces. Si se quiere dibujar los lugares geométricos de las raíces con las marcas ‘0’ o bien ‘x’, es necesario usar el comando siguiente:

r = rlocus(num,den) plot(r, ‘o’) o plot(r, ‘x’)

Es instructivo dibujar los lugares geométricos de las raíces mediante las marcas ‘0’ o bien ‘x’, dado que cada polo en lazo cerrado calculado se muestra en forma gráfica; en alguna parte de los lugares de las raíces estas marcas se muestran de una forma densa y en otra parte aparecen separadas. MATLAB produce su propio conjunto de valores de ganancias que se usan para obtener una gráfica del lugar de las raíces. Lo consigue mediante una rutina interna de adaptación del tamaño de paso. Asimismo, MATLAB usa la característica automática de fijar la escala del eje del comando plot. Por último, observe que, dado que el vector de ganancias se determina en forma automática, las gráficas del lugar geométrico de las raíces de:

( 1)( ) ( )

( 2)( 3)

k sG s H s

s s s

10 ( 1)( ) ( )

( 2)( 3)

k sG s H s

s s s

200 ( 1)( ) ( )

( 2)( 3)

k sG s H s

s s s

Son todas iguales. El conjunto de num y den del sistema es igual para los tres sistemas. Los num y den son num=[0 0 1 1] den = [1 5 6 0]

Ejemplo 1. Considere el sistema de control de la fig. Dibuje el diagrama del lugar de las raíces con una razón de aspecto cuadrada apara que una pendiente de 1 sea una línea realmente de 45°. Para dibujar el lugar de las raíces escoja la siguiente región:

-6≤x≤6, -6≤y≤6 Donde x e y son las coordenadas del eje real y del eje imaginario, respectivamente.

Con el fin de establecer la región de la grafica en pantalla para que sea cuadrada, introduzca la orden

>> v=[-6 6 -6 6];axis(v);axis('square') Con esta orden, una línea con una pendiente de 1 estará realmente a 45°, y no inclinada por la forma irregular de la pantalla. Para este problema, el denominador se obtiene como un producto de términos de primer y segundo orden. Por tanto, se deben multiplicar estos términos para obtener un polinomio en s. La multiplicación de estos

2

2

( 2 4)

( 4)( 6)( 1,4 1)

k s s

s s s s s

R(s) C(s) + -

Page 16: Problemas y Ejercicios Resueltos Con MatLab

UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO CARRERA PROFESIONAL DE INGENIERÍA ELÉCTRICA

2013 - II

Ing. Willy Morales Alarcón Página 16

términos se realiza de una manera sencilla mediante la orden de convolución, tal y como se muestra a continuación. Define >> a=s(s+1); a=[1 1 0] >> b=s2+4s+16 b=[1 4 16] Después utilice la siguiente orden: c=conv(a,b) Observe que conv(a,b)proporciona el producto de dos polinomios, ay b. Observe la siguiente salida del ordenador >> a=[1 1 0]; >> b=[1 4 16]; >> c=conv(a,b) c = 1 5 20 16 0 Por tanto, el polinomio del denominador es den=[1 5 20 16 0] Para encontrar los polos complejos en alzo abierto (las raíces de s2+4s+16=0), se utiliza la orden roots de la siguiente manera: >> r=roots(b) r = -2.0000 + 3.4641i -2.0000 - 3.4641i Por tanto, el sistema tiene los siguientes ceros y polos en lazo abierto: Cero en lazo abierto : s=-3 Polos en lazo abierto : s=0, s=-1, S=-2±j3,4641 El programa MATLAB, dibujará el lugar de las raíces para este sistema. La grafica aparece en la fig. MATLAB Programa: >> %--lugar de las raices--% >> num=[0 0 0 1 3]; >> den=[1 5 20 16 0]; >> rlocus(num,den) >> v=[-6 6 -6 6]; >> axis(v);axis('square') >> grid; >> title('Lugar de las raíces de G(s)=k(s+3)/[s(s+1)(s^2+4s+16)]')

Page 17: Problemas y Ejercicios Resueltos Con MatLab

UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO CARRERA PROFESIONAL DE INGENIERÍA ELÉCTRICA

2013 - II

Ing. Willy Morales Alarcón Página 17

Observe que en el Programa MATLAB en lugar de >> den=[1 5 20 16 0] Se introduce den=conv([1 1 0],[1 4 16]) los resultado son los mismos EJEMPLO 2. Considere el sistema cuya función de transferencia en lazo abierto G(s)H(s) es

2( ) ( )

( 0.5)( 0.6 10)

kG s H s

s s s s

4 3 2( ) ( )

1.1 10.3 5

kG s H s

s s s s

No hay ceros en lazo abierto. Los polos en lazo abierto se localizan en s=-0.3+j3.1480, s=-0.3-j3.1480, s=-0.5 y s=0. Si se introduce en el computador el programa MATLAB, se obtiene la grafica del lugar de las raíces de la fig. >> %--lugar de las raices--% >> num=[0 0 0 0 1]; >> den=[1 1.1 10.3 5 0]; >> r=rlocus(num,den); >> plot(r,'o') >> v=[-6 6 -6 6];axis(v) >> grid >> title('Lugar de las raíces de G(s)=k/[s(s+0.5)(s^2+0.6s+10)]') >> xlabel('Eje Real') >> ylabel('Eje Imag')

Page 18: Problemas y Ejercicios Resueltos Con MatLab

UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO CARRERA PROFESIONAL DE INGENIERÍA ELÉCTRICA

2013 - II

Ing. Willy Morales Alarcón Página 18

>> %--lugar de las raices--% >> num=[0 0 0 0 1]; >> den=[1 1.1 10.3 5 0]; >> k1=0:0.2:20; >> k2=20:0.1:30; >> k3=30:5:1000; >> k=[k1 k2 k3]; >> r=rlocus(num,den,k); >> plot(r,'o') >> v=[-4 4 -4 4];axis(v) >> grid >> title('Lugar de las raices de G(s)=k/[s(s+0.5)(s^2+0.6s+10)]') >> xlabel('Eje Real') >> ylabel('Eje Imag')