Está en la página 1de 11

OBJETIVO

 Manejar los comandos necesarios que nos permitirán encontrar de manera rápida
los Polos, ceros y Término Independiente de una función de transferencia, sin
importar de que grado sea esta función que representa a nuestro sistema
dinámico.

RESUMEN

Utilizaremos el programa MATLAB (en la pantalla command window), una vez que
conocemos cómo funciona el programa en la ventana COMMAND WINDOW
resolveremos las fracciones parciales y obtendremos la TRANSFORMADA DE LA
PLACE.

En el procedimiento se puede observar la función y el procedimiento para resolver el


problema. Puesto que MATLAB tiene un comando para obtener la expansión en
fracciones parciales de B(s)/A(s).

INTRODUCCIÓN

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.

M ATLAB, destinado a conocer y practicar algunas de las operaciones básicas con


funciones de transferencia. Los comandos que utilizaremos son los que figuran en la
Tabla 1.
Una función transferencia puede describirse en M ATLAB utilizando dos vectores filas:
uno para los coeficientes del numerador y otro para los coeficientes del denominador. A
menudo se requiere para analizar o diseñar un sistema conocer la ubicación de sus polos
y ceros; dicha información está contenida en la función transferencia del sistema.

PROCEDIMIENTO

Primero: colocamos en forma de vectores los polinomios de numerador y denominador

Segundo: Utilizamos el comando [r,p,k] = residue(num,den) encuentra los residuos, los


polos y los términos directamente de una expansión en fracciones Parciales del cociente
de dos polinomios B(s) y A(s). La expansión en fracciones parciales de B(s)/A(s) se
obtiene mediante.

Tercero: Mostramos la función de transferencia ya teniendo los ceros y polos.

>> [num,den]=residue(r,p,k);
>> printsys(num,den,'s')

Ejemplo 1

>> num=[2 0 -4];


>> den=[1 -4 1 6];
>> [r,p,k]=residue(num,den)

r =

3.5000
-1.3333
-0.1667

p =

3.0000
2.0000
-1.0000

k =

[]

>> [num,den]=residue(r,p,k);
>> printsys(num,den,'s')

num/den =
2 s^2 - 4
--------------------
s^3 - 4 s^2 + s + 6

Ejemplo 2

>> num=[1 1];


>> den=[1 1 -6 0];
>> [r,p,k]=residue(num,den)

r =

-0.1333
0.3000
-0.1667

p =

-3
2
0

k =

[]

>> [num,den]=residue(r,p,k);
>> printsys(num,den,'s')

num/den =

1 s + 1
----------------
s^3 + s^2 - 6 s

Ejemplo 3

>> num=[1 3];


>> den=[1 3 2];
>> [r,p,k]=residue(num,den)

r =

-1
2
p =

-2
-1

k =

[]

>> [num,den]=residue(r,p,k);
>> printsys(num,den,'s')

num/den =

s + 3
-------------
s^2 + 3 s + 2

Ejemplo 4

>> num=[32];
>> den=[1 12 32 0];
>> [r,p,k]=residue(num,den)

r =

1
-2
1

p =

-8
-4
0

k =

[]

>> [num,den]=residue(r,p,k);
>> printsys(num,den,'s')

num/den =

32
-------------------
s^3 + 12 s^2 + 32 s

Ejemplo 5

>> num=[1 -2];


>> den=poly([0 -1 -1 -1]);
>> [r,p,k]=residue(num,den)

r =

2.0000
2.0000
3.0000
-2.0000

p =

-1.0000
-1.0000
-1.0000
0

k =

[]

>> [num,den]=residue(r,p,k);
>> printsys(num,den,'s')

num/den =

s - 2
------------------------
s^4 + 3 s^3 + 3 s^2 + 1 s

Ejemplo 6

>> num=[1 2 3];


>> den=poly([-1 -1 -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

Ejemplo 7

>> num=[2];
>> den=poly([-3 -1]);
>> [r,p,k]=residue(num,den)

r =

-1
1

p =

-3
-1

k =

[]

>> [num,den]=residue(r,p,k);
>> printsys(num,den,'s')

num/den =

2
-------------
s^2 + 4 s + 3
Ejemplo 8

>> 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 =

>> [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

Ejemplo 9

>> 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

Ejemplo 10

>> num=[1 0 -2 2];


>> den=poly([-1 -1 -1 -1]);
>> [r,p,k]=residue(num,den)

r =

1.0000
-3.0000
1.0000
3.0000

p =

-1.0000
-1.0000
-1.0000
-1.0000

k =

[]

>> [num,den]=residue(r,p,k);
>> printsys(num,den,'s')

num/den =

s^3 - 2 s + 2
-----------------------------
s^4 + 4 s^3 + 6 s^2 + 4 s + 1
Ejemplo 11

>> num=[ 2 -9 15 -9];


>> den= poly([2 1 1 1]);
>> [r,p,k]=residue(num,den)

r =

1.0000
1.0000
-2.0000
1.0000

p =

2.0000
1.0000
1.0000
1.0000

k =

[]

>> [num,den]=residue(r,p,k);
>> printsys(num,den,'s')

num/den =

2 s^3 - 9 s^2 + 15 s - 9
-----------------------------
s^4 - 5 s^3 + 9 s^2 - 7 s + 2

Ejemplo 12

>> num=[1 1];


>> den=poly([0 0 -2 -2 -2]);
>> [r,p,k]=residue(num,den)

r =

0.0625
0.0000
-0.2500
-0.0625
0.1250

p =
-2.0000
-2.0000
-2.0000
0
0

k =

[]

>> [num,den]=residue(r,p,k);
>> printsys(num,den,'s')

num/den =

1 s + 1
------------------------------
s^5 + 6 s^4 + 12 s^3 + 8 s^2

ANALISIS DE RESULTADOS
CONCLUSIONES

 Efectivamente se pudo obtener los ceros, polos y término independiente de las


funciones de transferencia, así mismo la misma función de transferencia mediante
el programa MATLAB.

 Es importante conocer los comandos necesarios del programa que utilizamos


(matlab) para la resolución de ejercicios matemáticos.

 Se pudo observar que los resultados obtenidos por el programa son los mismos
que se obtuvo teóricamente.

 El manejo de matlab nos simplifica la obtención de resultados, en este caso la


descomposición por fracciones parciales de funciones de tranferencia.

BIBLIOGRAFÍA

 https://www.redalyc.org/articulo.oa?id=84911639045
 http://ocw.upm.es/teoria-de-la-senal-y-comunicaciones-1/procesado-digital-de-
senal-pds/contenidos/Matlab/tut_matlab.pdf

También podría gustarte