1. Facultad de Ingeniería Sistemas de Control (67.22)
Universidad de Buenos Aires
INTRODUCCIÓN AL MATLAB – CLASE 1
INTRODUCCIÓN DE FUNCIONES DE TRANSFERENCIA
Para la introducción de funciones de transferencia polinómicas se utiliza la
función “sys=tf(num,den)” del modo que a continuación se indica:
Ejemplo 1:
Introducir en Matlab la función de transferencia polinómica siguiente:
s 2 + 2s + 3 s 2 + 2s + 3
H ( s) = = 3
( s + 1) 3 s + 3s 2 + 3s + 1
MATLAB
% Introducir una función de transferencia polinómica
» num=[1,2,3];
» den=[1,3,3,1];
» sys=tf(num,den)
Transfer function:
s^2 + 2 s + 3
---------------------------
s^3 + 3 s^2 + 3 s + 1
RESPUESTA TRANSITORIA A UNA ENTRADA ESCALÓN E IMPULSO
Para visualizar gráficamente la respuesta transitoria a una entrada escalón e impulso se procede
como a continuación se indica:
ESCALÓN:
La función a utilizar es la función: “step(sys)”
Ejemplo 2:
Obtener la respuesta transitoria de la función de transferencia polinómica del
Ejemplo 1, con una entrada escalón:
MATLAB
% Obtener respuesta a una entrada escalón
» step(sys)
Introducción al Matlab 1
2. Facultad de Ingeniería Sistemas de Control (67.22)
Universidad de Buenos Aires
S tep Res pons e
From: U(1)
3
2.5
2
A m plitude
To: Y (1)
1.5
1
0.5
0
0 5 10 15
Tim e (s ec .)
IMPULSO:
La función a utilizar es la función: “impulse(sys)”
Ejemplo 3:
Obtener la respuesta transitoria de la función de transferencia polinómica del
Ejemplo 1 con un impulso como entrada:
MATLAB
% Obtener respuesta a una entrada impulso
» impulse(sys)
Im puls e Respons e
From: U(1)
1
0.9
0.8
0.7
0.6
A m plitude
To: Y (1)
0.5
0.4
0.3
0.2
0.1
0
0 5 10 15
Tim e (sec.)
2 Introducción al Matlab
3. Facultad de Ingeniería Sistemas de Control (67.22)
Universidad de Buenos Aires
APLICACIÓN DE LAS INSTRUCCIONES VISTAS AL CASO DE LAS FUNCIONES DE
TRANSFERENCIA DE SEGUNDO ORDEN
La Función de Transferencia de lazo cerrado de sistemas de Segundo Orden adopta la forma
siguiente:
C (s) ωn 2
= 2
R( s ) s + 2ζω n s + ω n 2
Ejemplo 4:
Obtener la respuesta transitoria de la función de transferencia polinómica de
Segundo Orden con un escalón y un impulso como entrada:
C ( s) 1
=
R( s) 1 + 2 * 0,4 + 1
MATLAB
» num=1;
» den=[1,.8,1];
» sys=tf(num,den)
Transfer function:
1
Step Response
--------------- From: U(1)
s^2 + 0.8 s + 1 1.4
» step(sys)
1.2
1
Amplitude
0.8
To: Y(1)
0.6
0.4
0.2
0
0 5 10 15
Time (sec.)
Introducción al Matlab 3
4. Facultad de Ingeniería Sistemas de Control (67.22)
Universidad de Buenos Aires
En el caso de una entrada impulso, se obtiene:
MATLAB
» num=1;
» den=[1,.8,1];
» sys=tf(num,den)
Transfer function:
1
---------------
s^2 + 0.8 s + 1
» impulse(sys)
CONVERSIÓN DE MODELOS
Matlab permite que los distintos modelos puedan ser convertidos entre sí, de
modo que, por ejemplo, se pueda obtener la forma factorizada de la función de
transferencia cero-polo-ganancia, partiendo de la forma de cociente de polinomios.
A continuación se analizarán las funciones de conversión que resultan
comprendidas en los alcances de la presente clase.
Función : residue
La función residue convierte la función de transferencia polinómica:
b0 s n + b1 s n −1 + ..... + bn −1 s + bn
H ( s) =
a 0 s m + a1 s m −1 + ..... + a m −1 s + a m
en la función transferencia de fracciones parciales:
r1 r2 r
H (s) = + + ...... + n + k ( s )
s − p1 s − p2 s − pn
Instrucción:
[r,p,k] = residue (B,A)
Esta instrucción determina los vectores r, p, y k de los valores de residuo (r1,
r2,..., rn), los polos (p1, p2,..., pn) y los términos directos de la expansión de fracciones
parciales.
Las entradas son los coeficientes de los polinomios B (b0, b1,..., bn-1), numerador
de la expresión polinómica y A (a0, a1,..., am-1), denominador de la expresión
polinómica.
4 Introducción al Matlab
5. Facultad de Ingeniería Sistemas de Control (67.22)
Universidad de Buenos Aires
Ejemplo 1:
Calcular la función de transferencia de fracciones parciales de la siguiente
función de transferencia polinómica:
s 2 + 2s + 3 s 2 + 2s + 3
H ( s) = = 3
( s + 1) 3 s + 3s 2 + 3s + 1
MATLAB
% Calcular expansión de fracciones parciales.
» B=[1,2,3];
» A=[1,3,3,1];
» [r,p,k]= residue (B,A);
»r
r=
1.0000
-0.0000
2.0000
»p
p=
-1.0000
-1.0000
-1.0000
Por lo tanto la solución de este Ejemplo 1 es:
1 2
H (s) = +
s +1 s +1
Función : tf2zp
La función tf2zp convierte la función de transferencia polinómica:
b0 s n + b1 s n −1 + ..... + bn −1 s + bn
H ( s) =
a 0 s m + a1 s m −1 + ..... + a m −1 s + a m
Introducción al Matlab 5
6. Facultad de Ingeniería Sistemas de Control (67.22)
Universidad de Buenos Aires
en la función transferencia cero-polo-ganancia:
(s-z1)(s-z2)……(s-zn)
H(s)= k
(s-p1)(s-p2)……(s-pn)
Instrucción:
[z,p,k] = tf2zp (num,den)
Esta instrucción determina los ceros (z1, z2, … , zn), los polos (p1, p2,..., pn) y la
ganancia correspondiente (k) de la función de transferencia del tipo cero-polo-ganancia.
Las entradas son los coeficientes en orden descendente de potencias de s del
numerador y denominador de la función de transferencia polinómica a convertir.
Ejemplo 2:
Calcular la función de transferencia cero-polo-ganancia de la siguiente función
de transferencia polinómica:
s 2 + 2s + 3 s 2 + 2s + 3
H ( s) = = 3
( s + 1) 3 s + 3s 2 + 3s + 1
MATLAB
» % Ejemplo 2: Conversión de función de transferencia en cero-polo-ganancia
»
» num=[1,2,3]
num =
1 2 3
» den=[1,3,3,1]
den =
1 3 3 1
» [z,p,k]=tf2zp(num,den)
z=
-1.0000 + 1.4142i
-1.0000 - 1.4142i
6 Introducción al Matlab
7. Facultad de Ingeniería Sistemas de Control (67.22)
Universidad de Buenos Aires
p=
-1.0000
-1.0000 + 0.0000i
-1.0000 - 0.0000i
k=
1
Por lo tanto la solución de este Ejemplo 2 es:
H (s) =
(s + 1 − 1,4142i )(s + 1 + 1,4142i )
(s + 1)3
Función : zp2tf
La función zp2tf convierte la función de transferencia cero-polo-ganancia:
(s-z1)(s-z2)……(s-zn)
H(s)= k
(s-p1)(s-p2)……(s-pn)
en la función transferencia polinómica:
b0 s n + b1 s n −1 + ..... + bn −1 s + bn
H ( s) =
a 0 s m + a1 s m −1 + ..... + a m −1 s + a m
Instrucción:
[num,den] = zp2tf (z,p,k)
Esta instrucción determina los vectores num y den de los coeficientes en orden
descendente de potencias de s del numerador y denominador de la función de
transferencia polinómica a obtener.
Las entradas son los vectores z, de los ceros (z1, z2, … , zn), p, de los polos (p1,
p2,..., pn) y la ganancia correspondiente (k) de la función de transferencia del tipo cero-
polo-ganancia.
Ejemplo 3:
Calcular la función de transferencia polinómica de la siguiente función de
transferencia cero-polo-ganancia:
H (s) =
(s + 1 − 1,4142i )(s + 1 + 1,4142i )
(s + 1)3
Introducción al Matlab 7
8. Facultad de Ingeniería Sistemas de Control (67.22)
Universidad de Buenos Aires
MATLAB
» % Ejemplo 3: Conversión de función de transferencia en forma polinómica
»
» z=[-1.0000 + 1.4142i;-1.0000 - 1.4142i];
» p=[-1;-1;-1];
» k=1;
» [num,den]=zp2tf(z,p,k)
num =
0 1.0000 2.0000 3.0000
den =
1 3 3 1
Por lo tanto la solución de este Ejemplo 3 es:
s 2 + 2s + 3 s 2 + 2s + 3
H ( s) = = 3
( s + 1) 3 s + 3s 2 + 3s + 1
Impulse Response
From: U(1)
0.7
0.6
0.5
0.4
Amplitude
0.3
To: Y(1)
0.2
0.1
0
-0.1
-0.2
0 5 10 15
Time (sec.)
8 Introducción al Matlab