Sunteți pe pagina 1din 7

TEORA DE CONTROL

TALLER MATLAB
LAPLACE, DIAGRAMAS DE BLOQUES Y ESTABILIDAD

1. DESARROLLO EN FRACCIONES PARCIALES


Considere la funcin de transferencia

B(s) 2s3 5s 2 3s 6

A(s) s3 6s 2 11s 6

%desarrollo en fracciones parciales


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

Resultado:
r=
-6.0000
-4.0000
3.0000
p=
-3.0000
-2.0000
-1.0000
k=
2
Los residuos se devuelven en r (numeradores)
Las posiciones de los polos en p.
El trmino independiente en k.
As que:

B( s) 2s3 5s 2 3s 6
6
4
3
3

2
2
A(s) s 6s 11s 6 s 3 s 2 s 1

EMPERATRIZ GOMEZ B.

emgobo262@yahoo.es

Tambin es posible realizar el proceso inverso:


[num,den]=residue(r,p,k)

El resultado es:
num =
2.0000

5.0000

3.0000

6.0000

6.0000 11.0000

6.0000

den =
1.0000

>> printsys(num,den)

num/den =
2. BSQUEDA DE POLOS, CEROS Y GANANCIA A PARTIR DE LA FT
Dada la funcin de transferencia

B( s )
4s 2 16s 12
4
A(s) s 12s3 44s 2 48s

Se debe definir en Matlab la FT como:


%Encontrar polos y ceros
num2=[4 16 12];
den2=[1 12 44 48 0];
[z,p,k]=tf2zp(num2,den2)

Lo cual generar el resultado:


z=
-3
-1
p=
0
-6.0000
-4.0000
-2.0000

EMPERATRIZ GOMEZ B.

emgobo262@yahoo.es

k=
4

3. BSQUEDA DE LA FT A PARTIR DE LOS POLOS, CEROS Y GANANCIA


Dados los polos, ceros y ganancia
Ceros: En 0
Polos: En (-1+2j) y (-1-2j)
Ganancia: K=10
Los comandos:
%Obtencin de FT a partir de polos y ceros
z3=[0];
p3=[-1+2*j;-1-2*j];
K3=10;
[num3,den3]=zp2tf(z3,p3,K3)
printsys(num3,den3,'s')

Generan como resultado


num3 =
0

10

den3 =
1

num/den =

4. SOLUCIN DE DIAGRAMAS DE BLOQUES


Para G1 ( s)

10
5
y G2 ( s)
obtenga las funciones de transferencia de los
s 2s 10
s5
2

dos sistemas en cascada, paralelo y realimentado.


Para codificar estas FTs en Matlab se requieren las siguientes instrucciones:
%hallar la funcin de transferencia
num41=[10];

EMPERATRIZ GOMEZ B.

emgobo262@yahoo.es

den41=[1 2 10];
num42=[5];
den42=[1 5];

4.1 En cascada (serie)

Con las instrucciones:


%En serie
[num_s,den_s]=series(num41,den41,num42,den42);
printsys(num_s,den_s)

Se obtiene:
num/den =
4.2 En paralelo

Con las instrucciones


[num_p,den_p]=parallel(num41,den41,num42,den42);
printsys(num_p,den_p)

Se obtiene

num/den =

4.3 En realimentacin

EMPERATRIZ GOMEZ B.

emgobo262@yahoo.es

Con las instrucciones:


[num_r,den_r]=feedback(num41,den41,num42,den42);
printsys(num_r,den_r)

Se obtiene: num/den =
Laplace

0 t 0
3t
te t 0

5. f (t )

>>syms t
>>resp5=laplace(t*exp(-3*t))

F(s) =
6. f t sen2t cos 2t
>>resp6=laplace(sin(2*t)+cos(2*t))

F(s) =
7. f (t ) t 2e 3t cos 3t
>>resp7=laplace((t^2)*(exp(-3*t))*cos(3*t))

8.

>>w=sym('w'); % Definimos loa constante 'w'


>>t=sym('t');

%definimos la variable 't'

>>laplace(sin(w*t))
EMPERATRIZ GOMEZ B.

emgobo262@yahoo.es

9. >>syms a s t w x

% definimos las variables y las constantes

>>laplace(t^5)

% introducimos el comando laplace para calcular la


%transformada de cada funcin

>>pretty(ans)

% para arreglar el resultado

>>laplace(exp(a*s))
>>pretty(ans)
>>laplace(cos(w*x),t)
>>pretty(ans)
10. >> f=(4-4*exp(-0.5*t))
>>ans=laplace(f)
>>pretty(ans)

TRANSFORMADA INVERSA DE LAPLACE


EJEMPLO 1:
>>syms s

% Definimos la variable s

>>f=(s+5)/(s^2+3*s+2);
>>f1=ilaplace(f)

%introducimos la funcin que queremos antitransformada

%Aplicamos el comando ilaplace

f1 =
-3*exp(-2*t)+4*exp(-t)
>> pretty(f1)

EJEMPLO 2:
>>w=sym('w');

% Definimos loa constante 'w'

>>s=sym('s');

%definimos la variable s

>>ilaplace(w/(s^2+w^2))

%utilizamos el comando ilaplace

EJEMPLO 3:
EMPERATRIZ GOMEZ B.

emgobo262@yahoo.es

>>syms s t w x y

% definimos las variables y las constantes de las funciones

>>ilaplace(1/(s-1))

% introducimos el comando ilaplace

>>pretty(ans)
>>ilaplace(1/(t^2+1))
>>pretty(ans)
>>ilaplace(y/(y^2 + w^2),y,x)
>>pretty(ans)

EMPERATRIZ GOMEZ B.

emgobo262@yahoo.es

S-ar putea să vă placă și