Vous êtes sur la page 1sur 13

Laboratorio de Control Prof.

Clevis Lozano
Pgina 1 de 13

LABORATORIO DE CONTROL
FUNCIONES DE TRANSFERENCIA, POLOS Y CEROS
Objetivos:
a) Escribir polinomios y funciones de transferencia.
b) Obtener races de polinomios (polos y ceros).
c) Generar la funcin de transferencia, en las formas: Polinmica decreciente, Factorizada (polos,
ceros y ganancia) y Fracciones parciales.

Introduccin:
Si y(t) es la (o una) variable de salida de un sistema, y x(t) la (o una) variable de entrada, entonces la funcin de
transferencia del sistema es G(s)Y(s)/X(s), donde, las variables x y y en el dominio de s.
{ }
{ }
Y s
X s
b s b s b s b s b
s a s a s a s a
m
m
m
m
m
m
n
n
n
n
n
( )
( )
...
...
=
+ + + + +
+ + + + +
=


=
1
1
2
2
1 0
1
1
2
2
1 0
0
salida
entrada
con condiciones iniciales
La funcin de transferencia slo se define para un sistema lineal e invariante en el tiempo.
Dado que la funcin de transferencia es una fraccin polinmica, hay muchas formas de expresarla. La forma
factorizada nos informa inmediatamente cules son los polos (races del denominador de la f.t.), ceros (races del
numerador de la f.t.) y ganancia (coeficiente de la mayor potencia del numerador de la f.t.) del sistema, parmetros
que determinan el comportamiento y estabilidad del mismo. Por su parte, la forma en fracciones parciales facilita
el clculo de la respuesta en el tiempo del sistema, puesto que a cada trmino en fraccin parcial se le puede
aplicar luego la transformada inversa de Laplace.

El siguiente cuadro resume los nombres, uso y sintaxis de las funciones ms frecuentemente utilizadas en este
laboratorio:

Nombre Uso Sintaxis
conv multiplica dos polinomios conv(a,b)
deconv divide dos polinomios [c,d]=deconv(a,b)
poly polinomio a partir de las races p=poly(r)
roots races a partir del polinomio r=roots(p)
poly2str despliega los coeficientes de un vector
como un polinomio
poly2str(a,'variable')
printsys despliega los coeficientes de dos
vectores como una funcin de
transferencia
printsys(n1,d1,'variable')
residue de una fraccin polinmica a fracciones
parciales
[r,p,k]=residue(num,den)
resi2 residue cuando hay polos repetidos resi2(num,den,polo,q,potencia)
tf2zp de la funcin de transferencia polinmica
a ella en polos y ceros
[z,p,k]=tf2zp(num,den)
zp2tf de la funcin de transferencia en polos y
ceros a ella polinmica
[num,den]=zp2tf(z,p,k)


Laboratorio de Control Prof. Clevis Lozano
Pgina 2 de 13


Seccin 1: Polinomios y races
Ejemplo: s
4
+ 3s
3
+ 11s
2
7s 36, el polinomio llamado p en Matlab sera:
p=[1 3 11 -7 -36]

p =
1 3 11 -7 -36

Deben anotarse en el vector a los coeficientes en orden decreciente. Veamos otro ejemplo:
num = [1 20 -83 0 117 2549]

num =
1 20 -83 0 117 2549

Este vector corresponde al polinomio s
5
+ 20s
4
83s
3
+ 117s + 2549 (note que al polinomio le falta el trmino
s
2
, y de all la presencia del cero en el vector).
Para poder apreciar el vector como polinomio, se utiliza la funcin poly2str:
poly2str(num,'s')

ans =
s^5 + 20 s^4 - 83 s^3 + 117 s + 2549

poly2str(p,'s')

ans =
s^4 + 3 s^3 + 11 s^2 - 7 s - 36

La otra alternativa para generar polinomios es a partir de un vector cuyos elementos son las races del
polinomio. Ejemplo: las races de un polinomio son 1, 1+ j3, 1j3, 2 y 4. Entonces generamos el vector de
races r y con la funcin poly generamos el polinomio:
r=[-1 -1+3j -1-3j -2 4];
pol=poly(r)

pol =
1 1 -2 -38 -116 -80

Pueden calcularse las races de un polinomio con la funcin roots, o sea que ella es la inversa de la funcin
poly. Usando el polinomio anterior:
r1=roots(pol)

r1 =
4.0000

-1.0000 + 3.0000i
-1.0000 - 3.0000i
-2.0000
-1.0000

La exactitud (o inexactitud) de roots y poly depende sobretodo de la informacin de entrada, pero tambin del
algoritmo interno de estas funciones. Note qu ocurre cuando tratamos de generar pol a partir de r1:
pol=poly(r1)

pol =
1.0000 1.0000 -2.0000 -38.0000 -116.0000 -80.0000


Laboratorio de Control Prof. Clevis Lozano
Pgina 3 de 13


Por lo tanto, cuando se trabaja con las races para generar el polinomio hay que procurar ser lo ms exactos
posibles.

Seccin 2: Convolucin
Otra forma de generar polinomios es multiplicando dos o ms polinomios existentes. Ello se logra con la
funcin conv. Veamos el caso de los polinomios (s + 3) y (2s + 7). El producto de los polinomios es 2s
2
+ 13s
+ 21, en Matlab sera:
conv([1 3],[2 7])

ans =
2 13 21

Cuando se quiera multiplicar ms de dos polinomios, entonces se puede realizar la convolucin de una
convolucin; conv( conv( n1,n2 ), n3).
La operacin inversa (la divisin) se logra con la funcin deconv (deconvolucin). Para esta funcin son
necesarios dos argumentos de salida: el cociente y el residuo.

Seccin 3: Funciones de transferencia polinmica, factorizada y en fracciones parciales
Una funcin de transferencia polinmica consta del polinomio del numerador y del denominador. Por tanto, slo
hace falta definir los vectores de ambos polinomios.
Importante: el grado del numerador debe ser menor o igual que el del denominador.
Ejemplo: Si la funcin de transferencia es
5 5
8 11 18
3 2
s
s s s
+
+ + +
, entonces ella se escribe as:
n1=[5 5];
d1=[1 8 11 18];

Cada vez que se haya definido el numerador y denominador de un bloque, puede usar la funcin printsys
para verificar que lo que escribi est correcto.
printsys(n1,d1)
num/den =
5 s + 5
-----------------------
s^3 + 8 s^2 + 11 s + 18

La funcin tf2zp permite hallar la ganancia, ceros y polos de la funcin de transferencia:
[z,p,k]=tf2zp(n1,d1)
z =
-1

p =
-6.7676
-0.6162 + 1.5100i
-0.6162 - 1.5100i
k =
5
Matlab almacena en k la ganancia, en z los ceros, y en p los polos. Por tanto, la funcin de transferencia
factorizada (o en la forma polo-cero) es:

Laboratorio de Control Prof. Clevis Lozano
Pgina 4 de 13


) 5100 . 1 6162 . 0 )( 5100 . 1 6162 . 0 )( 7676 . 6 (
) 1 ( 5
) (
) (
j s j s s
s
s X
s Y
+ + + +
+
=


La funcin inversa a tf2zp (transfer function to (2) zero-pole") es zp2tf:
[n2,d2]=zp2tf(z,p,k)

n2 =
0 0 5 5
d2 =
1.0000 8.0000 11.0000 18.0000

La representacin en fracciones parciales de una funcin de transferencia puede lograrse mediante la funcin
residue. Usamos n1 y d1:
[R,P,K]=residue(n1,d1)
R =
-0.7188
0.3594 - 0.1915i
0.3594 + 0.1915i
P =
-6.7676
-0.6162 + 1.5100i
-0.6162 - 1.5100i
K =
[]

Matlab averigua primero si la fraccin es propia o impropia. De ser propia, K=[ ] (el conjunto vaco). De no serlo
(caso poco comn pero que puede darse) K almacena los coeficiente del cociente entre numerador y
denominador, y el residuo (junto con el denominador) forman una fraccin propia que se descompone en
fracciones parciales. La descomposicin en fracciones parciales de n1/d1 es:

+
+

+
+
+
+ +
07188
67676
03594 01915
06162 15100
03594 01915
06162 15100
.
.
. .
. .
. .
. . s
j
s j
j
s j


Si este resultado se va a utilizar para hallar la respuesta de un sistema a una entrada impulso, los residuos de
las fracciones con polos complejos deben transformarse a la forma polar. Para ello se puede usar la funcin
cart2pol (consulte el help de esta funcin en Matlab para ms informacin):
[angulo,magnitud]=cart2pol(real(R(2)),imag(R(2)))

angulo =
-0.4896 (El ngulo est dado en radianes)

magnitud =
0.4072

Compruebe que: si la entrada de un sistema de control es 10*cos(4t), la transformada de LaPlace de la
entrada es
10
16
2
s
s +
; con la funcin de transferencia dada por n1 y d1. La representacin en fracciones parciales
es:
Laboratorio de Control Prof. Clevis Lozano
Pgina 5 de 13


R =
0.7871 + 0.0000i
-0.3800 - 0.8400i
-0.3800 + 0.8400i
-0.0136 + 0.4668i
-0.0136 - 0.4668i

P =
-6.7676
0.0000 + 4.0000i
0.0000 - 4.0000i
-0.6162 + 1.5100i
-0.6162 - 1.5100i

Si los residuos de las fracciones con polos complejos transfrmelos a la forma polar.

Asignacin
1- Encuentre la expansin en fracciones parciales de las siguientes funciones:
a)
F s
s s s
( )
( )( )
=
+ +
1
2 5

b)
F s
s s s
( )
( )
=
+ +
1
2 10
2


c)
F s
s
s s s s
( )
( )( )
=
+
+ + +
1
2 6 10
2

d)
F s
s
s s s s
( )
( )( )
=
+
+ + + +
1
2 2 6 10
2 2
2. Factorice los siguientes polinomios. Note que siempre que hay una potencia del polinomio con signo negativo o
que sea cero, al menos una raz tiene parte real positiva o cero.

a) s
3
+ 13s
2
+ 33s + 30 c) s
4
+ 2s
3
+ +3s +6
b) s
5
+ 3s
4
+ 28s
3
+ 226s
2
+ 600s + 400 d) 2s
4
+ 25s

+ 4

3. Construya la funcin de transferencia en forma polinmica, dados los siguientes datos.

a) k=7; ceros: 2.5; polos: 1.33, 0.577.
b) numerador: los factores son s + 0.21 y s; denominador: los factores son s
2
+ 6s + 30 y (s 1).
c) numerador: los factores son s + 0.88 y s + 0.10; polos: 0.42, 0.80 y 0.99.
d) ceros: 1, 3, 5; denominador: los factores son 4, s + 6, s + 4 y s + 1.
e) k=1; ceros: ninguno; polos: 2, 0.40.

4. Hallar la representacin en cero-polo de las siguientes funciones de transferencia.




Laboratorio de Control Prof. Clevis Lozano

Pgina 6 de 13

REPRESENTACIN EN VARIABLES DE ESTADO
Objetivos:
1- Aprender el uso de funciones para pasar de cualquier representacin en funcin de transferencia al
espacio de estado, y viceversa.
2- Calcular los valores propios de un sistema.

Introduccin:
La teora de control moderna se basa en la descripcin de las ecuaciones de un sistema en trminos de n
ecuaciones diferenciales de primer orden que pueden combinarse en una ecuacin diferencial vectorial-matricial
de primer orden para simplificar la representacin matemtica de sistemas de ecuaciones. Desde el punto de
vista computacional, los mtodos de espacio de estado son particularmente adecuados para los clculos en
computadora digital, debido a su enfoque en el dominio del tiempo.
La caracterstica ms notable de un sistema (al estudiar su modelo matemtico) son los polos del sistema. La
informacin de los polos del sistema est contenida en el polinomio caracterstico (en el caso de una funcin de
transferencia) o en la matriz A (en el caso del espacio de estado). Los valores propios no son ms que los
polos del sistema.

Referencia Rpida:

Nombre Uso Sintaxis
tf2ss de una funcin de transferencia polinmica al
espacio de estado (forma cannica asociada)
[A,B,C,D]=tf2ss(num,den)
ss2tf del espacio de estado a una funcin de
transferencia polinmica
[num,den]=ss2tf(A,B,C,D)
zp2ss de una funcin de transferencia en polos y ceros al
espacio de estado
[A,B,C,D]=zp2ss(z,p,k)
ss2zp del espacio de estado a una funcin de
transferencia en polos y ceros
[z,p,k]=ss2zp(A,B,C,D)
eig clculo de los valores propios eig(A)
poly2str despliega los coeficientes de un vector como un
polinomio
poly2str(a,'variable')

Seccin 1: del dominio de Laplace al espacio de estado
Las funciones tf2ss y zp2ss permiten pasar de una funcin de transferencia al espacio de estado.
Ejemplo 1: Obtener la representacin en el espacio de estado para la siguiente funcin de transferencia.
a)
X s
U s s s
( )
( ) ( ) ( )
=
+ +
5
1 2
2

En Matlab se obtiene:
z=[]; %No hay ceros
p=[-1 -1 -2]'; %Polos
k=5; %Ganancia
[A,B,C,D]=zp2ss(z,p,k)

A =
-1.0000 0 0
1.0000 -3.0000 -1.4142
0 1.4142 0


Laboratorio de Control Prof. Clevis Lozano

Pgina 7 de 13

B =
1
0
0

C =
0 0 3.5355

D =
0


b)
( ) G s
s
s s s
=
+
+ + +
4
6 11 6
3 2


num=[1 4]; %numerador
den=[1 6 11 6]; %denominador
[a,b,c,d]=tf2ss1(num,den)

a =
0 1 0
0 0 1
-6 -11 -6

b =
0
0
1

c =
4 1 0

d =
0


Seccin 2: Modelo de un sistema en el espacio de estado. Cmo pasar del espacio de estado al
dominio de Laplace. Valores propios.
Problema: En la figura 1 se muestra un circuito RLC. Las variables de estado son v
c
(t) e i(t).
1- Hallar una representacin en variables de estado.
2- Hallar la funcin de transferencia en forma:
a- polinmica
b- de polos y ceros









+

+
V
C
(t)

+
e
1
(t)

R
L
C
i(t)
Figura 1: Circuito RLC
Laboratorio de Control Prof. Clevis Lozano

Pgina 8 de 13

Solucin: para este sistema, aplicamos LVK y luego las relaciones voltaje-corriente para cada elemento.
e(t) = V
R
(t) + V
L
(t) + V
C
(t)
V
R
=R*i(t); V t L
di t
dt
L
( )
( )
= ; i t C
dV t
dt
C
( )
( )
=
Si elegimos a V
C
(t) y a i(t) como variables de estado, las ecuaciones diferenciales de primer orden son:
{ }
dV t
dt C
i t
di t
dt L
V t
L
e t V t V t
L
V t
R
L
i t
L
e t
C
L R C
C
( )
( )
( )
( ) ( ) ( ) ( )
( ) ( ) ( )
=
= =
= +
1
1 1
1 1

En forma matricial:
dV t
dt
di t
dt
C
L
R
L
V t
i t
L
e t
C
C
( )
( )
( )
( )
( )

(
(
(
=

(
(
(

(
+

(
(
0
1
1
0
1


Una vez se sepan los valores de R, L y C, y se definan las matrices A, B, C, D, en funcin de esos parmetros,
entonces podemos proceder a la resolucin en Matlab:

R=1e3; L=1e-3; C=1e6; %Parmetros
A=[0 1/C;-1/L -R/L];
B=[0; 1/L];
% Asumir como salida i(t).
C=[0 1]; D=0;

% Transformacin a una funcin de transferencia polinmica:
[num,den]=ss2tf(A,B,C,D); %haremos uso del printsys
printsys(num,den,'s')
num/den =
1000 s + 9.895e-007
--------------------------
s^2 + 1e+006 s + 0.0009895

% Transformacin a funcin de transferencia ceros-polos:
[z,p,k]=ss2zp(A,B,C,D) %el printsys no es aplicable aqu

z =
0

p =
1.0e+005 *

0.0000
-10.0000


k =
1000




Laboratorio de Control Prof. Clevis Lozano

Pgina 9 de 13

Asignacin:
1- El diagrama de bloques mostrado es de un sistema automtico de control de profundidad para un robot
submarino. La profundidad se mide mediante un transductor de presin. La ganancia del actuador del alern
de popa es K=10
-4
cuando la velocidad es de 8 m/s. El submarino tiene la funcin de transferencia aproximada
( )
( )
G s
s
s
( )
.
.
=
+
+
0 2
0 01
2
2
y el transductor de retroalimentacin es H(s)=1.











a- Hallar una representacin en variables de estado.
b- Hallar la funcin de transferencia.

2- Para el siguiente diagrama de bloque, las variables de estado son x
1
(t), x
2
(t) y x
3
(t)









a- Hallar la representacin en el espacio de estado.
b- Halle la funcin de transferencia, polos y ceros.
Diagrama de bloque para el problema 1
2
3 s +

( )
2
1 s s +

s
+
+


U(s)
X
1
(s)
X
2
(s)
X
3
(s)
Diagrama de bloque para el problema 2.

+

profundidad deseada
R(s)
1
s

profundidad
C(s) G(s) K
H(s)
Medicin de
presin
actuador
Laboratorio de Control Prof. Clevis Lozano

Pgina 10 de 13

REDUCCIN DE DIAGRAMAS DE BLOQUE

Objetivos:
Aprender el uso de funciones, y luego aplicarlas para reducir diagramas de bloque sencillos.

Introduccin:
Un diagrama de bloque es la representacin grfica de un sistema fsico que ilustra las relaciones
funcionales entre los componentes del sistema. En general, un diagrama de bloques consiste en una
configuracin especfica de cuatro tipos de elementos: bloques, puntos de suma, puntos de bifurcacin y
flechas que representan la seal de flujo unidireccional.

Referencia Rpida:

Nombre Uso Sintaxis
series reduce dos bloques en serie [n,d]=series(n1,d1,n2,d2)
parallel reduce dos bloques en paralelo [n,d]=parallel(n1,d1,n2,d2)
cloop reduce un bloque retroalimentado unitariamente [n,d]=cloop(n1,d1,signo)
feedback reduce un bloque retroalimentado [n,d]=feedback(n1,d1,n2,d2,signo)
poly2str despliega los coeficientes de un vector como un
polinomio
poly2str(a,'variable')
printsys despliega los coeficientes de dos vectores como
una funcin de transferencia
printsys(n1,d1,'variable')

Seccin 1: Ejemplo
Reducir el diagrama de bloque que se muestra:














1. Identificar a cada bloque, asignando una variable de identificacin al numerador y al denominador, y
cuyos contenidos seran los coeficientes de los polinomios del numerador y denominador de la funcin de
transferencia del bloque. Ejemplo: para el bloque 1, la funcin de transferencia es
1
1 s +
; por lo tanto, su
numerador es 1, y su denominador es s+1. De igual forma para todos los bloques. La representacin en
Matlab es la siguiente:

+
1
1 s +

s
s 2s 7
2
+ +

1
s

1
s

1
3s 10
2
s + +

Y(s)
U(s)
+

+
+
1 2
3
4
5
Figura 1: diagrama de bloques para la explicacin.
Laboratorio de Control Prof. Clevis Lozano

Pgina 11 de 13

n1=1;
d1=[1 1];
n2=[1 0];
d2=[1 2 7];
n3=1;
d3=[1 0];
n4=n3;
d4=d3;
n5=1;
d5=[1 3 10];

Puede usar la funcin printsys para verificar si lo que escribi est correcto. Por ejemplo:
printsys(n1,d1)
num/den =
1
-----
s + 1

El siguiente paso es la reduccin secuencial de los bloques. En este caso, est reduccin se hace en el
siguiente orden:
a- bloques 2 y 3: retroalimentacin bloque (ret1)
b- bloques ret1 y 4: en serie bloque (ser1)
c- bloques ser1 y 5: en paralelo bloque (par1)
d- bloques par1 y 1: en serie bloque (ser2)
d- bloque par1: retroalimentacin unitaria bloque final.

Esto llevada a Matlab:
% bloques 2 y 3 en paralelo
[nret1,dret1]=feedback(n2,d2,n3,d3,-1);
printsys(nret1,dret1,'s')
num/den =
s^2
-----------------
s^3 + 2 s^2 + 8 s

% el bloque resultante est en serie con el bloque 4
[nser1,dser1]=series(nret1,dret1,n4,d4);
printsys(nser1,dser1,'s')
num/den =
s^2
-------------------
s^4 + 2 s^3 + 8 s^2

% el bloque resultante est en paralelo con el bloque 5
[npar1,dpar1]=parallel(nser1,dser1,n5,d5);,printsys(npar1,dpar1,'s')
num/den =
2 s^4 + 5 s^3 + 18 s^2
--------------------------------------
s^6 + 5 s^5 + 24 s^4 + 44 s^3 + 80 s^2
Laboratorio de Control Prof. Clevis Lozano

Pgina 12 de 13


%(Note que hicimos uso de la coma para escribir dos comandos en la misma
lnea.)
% el bloque resultante est en serie con el bloque 1
[nser2,dser2]=series(npar1,dpar1,n1,d1);,printsys(nser2,dser2,'s')
num/den =
2 s^4 + 5 s^3 + 18 s^2
------------------------------------------------
s^7 + 6 s^6 + 29 s^5 + 68 s^4 + 124 s^3 + 80 s^2

% el bloque resultante est unitariamente retroalimentado
[num,den]=cloop(nser2,dser2,-1);,printsys(num,den,'s')
num/den =
2 s^4 + 5 s^3 + 18 s^2
------------------------------------------------
s^7 + 6 s^6 + 29 s^5 + 70 s^4 + 129 s^3 + 98 s^2

% y este viene a ser el bloque final o funcin de transferencia.

Asignacin
1- Determine las funciones de transferencia C(s)/R
1
(s)

y C(s)/R
2
(s). Si
1 4
1
) (
2
1
+ +
=
s s
s G
,
H s
s
1
1
( ) =
,
G s
s
s s
2
2
3
3 12
( ) =
+
+ +
, H
2
= H
1
.
G
2
(s)
G
1
(s)
H
2
(s)
H
1
(s)
C

R
1


R
2

E




+


+


E


2- a) Determinar C(s)/R
1
(s), si G
1
(s)=5.5;
50
100
) (
2
+
=
s
s G ;
G s
s s
3
4
1
( )
( )
=
+
; H
1
(s)=s.
b) Estudie el efecto que tiene sobre la funcin de transferencia el reemplazar H
1
(s) por
a s +
1
, con
a=0, 0.5, 5, 50, 500.






+


+


G
3
(s) G
1
(s)
H
1
(s)
G
2
(s)
C
R
1

Laboratorio de Control Prof. Clevis Lozano

Pgina 13 de 13

3- a) Para el diagrama de bloque que se muestra a continuacin determine la funcin de transferencia
de lazo cerrado (C(s)/R(s)), para K=10, T
m
=0.8, T
1
=2.


1
T
m

T
1

K

1
s

C
R
E
B
E
+


+


1
T
m

K
s
2

1
s

+


+


T
1

E E E

Vous aimerez peut-être aussi