Documentos de Académico
Documentos de Profesional
Documentos de Cultura
EJERCICIOS RESUELTOS
EN MATLAB
GUIA DE LABORATORIO T.C.A. I
CARI SALAS, IVAN ISMAEL 20161844
ESTABILIDAD DE LOS SISTEMAS DE CONTROL AUTOMATICO
N ( s)
i) G( s) usando el criterio de Routh-Hurtwitz (R-H) tenemos:
s 3 3s 2
kN ( s)
ii) G ( s ) tenemos:
s 2s 24s 3 48s 2 25s 50
5 4
s5 1 24 -25
s4 2 48 -50
(2s 4 48s 2 50)
8s 3 96s
s
s3 0(8) 0(96) 0
s1 112.7 0 0
En matlab tenemos:
i. ( s ) s 3 2s 2 s 2
s3 1 1
s2 2 2
s 1 d (2s 2 2)
4 0 4s
ds
s0 8 0
ans =
-2.0000
0.0000 + 1.0000i
0.0000 - 1.0000i
>> pzmap(tf([1],[1 2 1 2]));grid
Pole-Zero Map
1.5
0.5
Imaginary Axis
-0.5
-1
-1.5
-2 -1.5 -1 -0.5 0 0.5
Real Axis
Como se puede apreciar tenemos una raíz en el lado izquierdo del plano y
dos en el eje jω, entonces el sistema si es estable.
s4 1 12 36
3 ( s 4 12s 2 36)
s 4 24 0 4s 3 24s
s
s2 6 36 0 (6s 2 36)
12s
s1 12 0 0 s
s0 36 0 0
En este caso tampoco cambian los signos en la primera columna, entonces
el sistema es estable.
>> p=[1 0 13 0 36];
>> roots(p)
ans =
0 + 3.0000i
0 - 3.0000i
0 + 2.0000i
0 - 2.0000i
>>pzmap(tf([1],[1 0 13 0 36]))
Pole-Zero Map
4
Imaginary Axis 1
-1
-2
-3
-4
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
Real Axis
iii. (s) s 5 2s 4 4s 3 8s 2 5s 10
s5 1 4 5
s4 2 8 10 (2s 4 8s 2 10)
8s 3 16s
s3 8 16 0 s
2
s 4 10 0
1
s -4 0 0
s0 -10 0 0
ans =
-2.0000
0.3436 + 1.4553i
0.3436 - 1.4553i
-0.3436 + 1.4553i
-0.3436 - 1.4553i
>> pzmap(tf([1],[1 2 4 8 5 10]))
Pole-Zero Map
1.5
-0.5
-1
-1.5
-2 -1.5 -1 -0.5 0 0.5
Real Axis
Como tenemos dos raíces complejas conjugadas en el lado derecho del
plano, este sistema no es estable.
iv. ( s) s 4 s 3 s 2 s 2
s4 1 1 2
3
s 1 1 0
s2 2 0
s1 2
2 0 0
s0 2 0 0
ans =
-0.9734 + 0.7873i
-0.9734 - 0.7873i
0.4734 + 1.0256i
0.4734 - 1.0256i
>> pzmap(tf([1],[1 1 1 1 2]))
Pole-Zero Map
1.5
0.5
Imaginary Axis
-0.5
-1
-1.5
-1 -0.5 0 0.5
Real Axis
s2 1 k 6k
s1 1 5k 0
0
s 6k 0
1 k 0 , 1 5k 0 6k 0 o bien 1 k 0 , 1 5k 0 6k 0
Entonces: k 1 k k 0 k 1 k k 0
1 1
5 5
k 0 k 1
k . 1] [0,
s 2 5s 6
La función a analizar es: P( s)
s2 s
>> P=tf(conv([1 2],[1 3]),conv([1 0],[1 1]))
Transfer function:
s^2 + 5 s + 6
-------------
s^2 + s
>> rlocus(P)
>> [K,polos]=rlocfind(P)
Select a point in the graphics window
selected_point =
-0.3774 + 0.3012i
K=
0.0767
polos =
-0.6424 + 0.1205i
-0.6424 - 0.1205i
>> [K,polos]=rlocfind(P)
Select a point in the graphics window
selected_point =
0.0041 - 0.0031i
K=
8.6466e-004
polos =
-0.9983
-0.0052
>> [K,polos]=rlocfind(P)
Select a point in the graphics window
selected_point =
-2.7577 - 0.0031i
K=
26.4001
polos =
-2.7577
-2.0963
Root Locus
1
0.95 0.9 0.82 0.7 0.52 0.3
0.8
0.978
0.6
0.4
0.994
0.2
Imaginary Axis
-0.2
0.994
-0.4
-0.6
0.978
-0.8
0.95 0.9 0.82 0.7 0.52 0.3
1
ii) C (s) k G ( s) H ( s) 1
s( s 3s 18)
2
C ( s)G( s)
F ( s)
1 C ( s)G( s) H ( s)
k
F ( s)
s 3 3s 2 18s k
s3 1 18
s2 3 k
54 k
s1 0
3
s0 k 0
54 k
0 k 0 54 k 0 k 0
3
54 k k 0 k 54 k 0
54 k 0 k 54
k [0,54]
1
P( s)
La función a analizar es:
s s 3s 18
2
>> [K,polos]=rlocfind(P)
Select a point in the graphics window
selected_point =
1.7820 + 6.1180i
K=
265.1732
polos =
-6.5028
1.7514 + 6.1409i
1.7514 - 6.1409i
>> [K,polos]=rlocfind(P)
Select a point in the graphics window
selected_point =
-0.0379 + 0.0311i
K=
0.8766
polos =
-1.4755 + 3.9596i
-1.4755 - 3.9596i
-0.0491
>> [K,polos]=rlocfind(P)
Select a point in the graphics window
selected_point =
-9.0237 - 0.0311i
K=
652.9275
polos =
-9.0237
3.0119 + 7.9552i
3.0119 - 7.9552i
Root Locus
10
0.68 0.56 0.42 0.28 0.14
0.8
8
6
0.91
4
0.975
2
Imaginary Axis
12 10 8 6 4 2
0
-2
0.975
-4
0.91
-6
-8
0.8
0.68 0.56 0.42 0.28 0.14
-10
-12 -10 -8 -6 -4 -2 0 2 4
Real Axis
k ( s 1)
F (s)
s 4s 2 ks k
3
s3 1 k
2
s 4 k
1 3k
s 0
4
s0 k 0
k
0 k 0
2
k 0 k 0 k [0,
s 1
La función es: P( s)
s s 4
2
>> [K,polos]=rlocfind(P)
selected_point =
-0.6398 + 1.2631i
K=
5.4790
polos =
-2.7277
-0.6361 + 1.2665i
-0.6361 - 1.2665i
>> [K,polos]=rlocfind(P)
Select a point in the graphics window
selected_point =
-3.1991 - 0.0249i
K=
3.7292
polos =
-3.198
-0.4007 + 1.0027i
-0.4007 - 1.0027i
Root Locus
0.5
-1
1
0.94
1.5
-2
2
0.8 2.5
-3
3
k 1 1
i) C (s) G ( s) H (s)
s s2 s4
C ( s)G( s)
F ( s)
1 C ( s)G( s) H ( s)
k ( s 4)
F (s) 3
s 6 s 2 8s k
s3 1 8
s2 6 k
48 k
s1 0
6
s0 k 0
48 k
0 k 0
6
48 k 0 k 0
48 k k 0
k 48 k 0
k [0,48]
>> P=tf(1,[1 6 8 0])
Transfer function:
1
-----------------
s^3 + 6 s^2 + 8 s
>> rlocus(P);grid
>> [K,polos]=rlocfind(P)
Select a point in the graphics window
selected_point =
-0.0379 - 0.0745i
K=
0.6507
polos =
-4.0768
-1.8362
-0.0869
>> [K,polos]=rlocfind(P)
Select a point in the graphics window
selected_point =
-9.9716 - 0.0248i
K=
474.6813
polos =
-9.9716
1.9858 + 6.6076i
1.9858 - 6.6076i
>> [K,polos]=rlocfind(P)
Select a point in the graphics window
selected_point =
-5.0427 - 0.0248i
K=
16.0028
polos =
-5.0429
-0.4786 + 1.7159i
-0.4786 - 1.7159i
Root Locus
8
0.76 0.64 0.5 0.34 0.16
0.86
6
4 0.94
2 0.985
Imaginary Axis
12 10 8 6 4 2
0
-2 0.985
-4 0.94
-6
0.86
0.76 0.64 0.5 0.34 0.16
-8
-12 -10 -8 -6 -4 -2 0 2 4
Real Axis
5. A partir de la ecuación característica ф(s), determine para que valor del
sistema es estable (use criterio de R-H)
i) (s) s 4 s 3 3s 2 2s k
2k 0 k 2 y k 0 entonces
Transfer function:
1
---------------------------
s^4 + s^3 + 3 s^2 + 2 s + 1
>> rlocus(g)
Root Locus
4
4
0.72 0.58 0.44 0.3 0.14 3.5
3
3
2.5
0.84
2
2
0.92 1.5
1
1
0.98
Imaginary Axis
0.5
0.98 0.5
-1
1
0.92 1.5
-2
2
0.84
2.5
-3
3
ii) (s) s 5 s 4 2s 3 s 2 s k
s5 1 2 1
s4 1 1 k
s2 k k 0 positivos
s1 k 0 0
s0 k 0 0
k 0 k 0 k 0 entonces
Transfer function:
1
---------------------------
s^5 + s^4 + 2 s^3 + s^2 + s
>> rlocus(g)
Root Locus
3
0.81 0.7 0.56 0.38 0.2
2 0.89
0.95
1
0.988
Imaginary Axis
0.988
-1
0.95
-2 0.89
( s) 2
(1)
Vi( s) ( s 10)( s 2)
( s) 2
G(s)
Vi( s) ( s 10)( s 2)
G( s)G1( s)
W ( s)
1 G( s)G1( s)
H ( s) ?
H ( s) k
2
*k
( s 10)( s 2)
W ( s)
2
1 *k
( s 10)( s 2)
2k
W ( s)
( s 10)( s 2) 2k
2k
W ( s) 2
s 12 s 20 2k
2k
W ( s) 2
s 12s 20 2k
0.707
12 2
12 2 * 0.707 *
12
1.414
8.4865629420084865629420084865629
8.49
20 2k 2
20 2k 8.492
20 2k 72.0801
2k 52.0801
k 26.04005
k 26
52
Entonces W ( s )
s 12s 72
2
7. La función transferencia del péndulo invertido está expresado por (2),
donde (s ) es el ángulo de inclinación de la barra y T (s) representa el torque
aplicado por un motor en base del péndulo. Haga el lugar de raíces
suponiendo un controlador proporcional Gc( s ) Kp . ¿Qué tipo de repuesta
en lazo cerrado espera para los valores de Kp ?
( s) 2
(2)
T ( s) s 22
( s) 2
G( s) G1( s ) Gc( s ) Kp
T ( s) s 22
2
*k
H (s)
G ( s)Gc( s)
H (s) s 2 2
H (s) 2
2k
H (s) 2
2k
1 G ( s)Gc( s) 1 2
2
*k s 2 2k s 2(k 1)
s 2
(s) s 2 2(k 1)
s2 1 0
s1 2(k 1) 0
s0 0 0
En matlab tendremos:
Transfer function:
4
-------
s^2 + 2
>> rlocus(g)
Root Locus
3
3
0.27 0.19 0.12 0.06
2.5
0.36
2
2
0.5 1.5
0.66 1
1
0.5
Imaginary Axis
0.88
0.88 0.5
-1
0.66 1
0.5 1.5
-2
2
0.36
2.5
0.27 0.19 0.12 0.06
-3
-1 -0.8 -0.6 -0.4 -0.2 30 0.2 0.4 0.6 0.8 1
Real Axis
>> rlocfind(g)
Select a point in the graphics window
selected_point =
-0.5379 - 1.4068i
ans =
0.3862
Root Locus
3
3
0.27 0.19 0.12 0.06
2.5
0.36
2
2
0.5 1.5
0.66 1
1
0.5
Imaginary Axis
0.88
0.88 0.5
-1
0.66 1
0.5 1.5
-2
2
0.36
2.5
0.27 0.19 0.12 0.06
-3
-1 -0.8 -0.6 -0.4 -0.2 30 0.2 0.4 0.6 0.8 1
Real Axis
8. Considere el sistema en lazo directo:
10
G ( s)
s 1
Obtenga la respuesta temporal del sistema en lazo cerrado (realimentación
negativa y unitaria), cuando este sujeto a cada una de las entradas
siguientes:
Transfer function:
10
-----
s+1
>> H=feedback(G,1)
Transfer function:
10
------
s + 11
>> t=[0:0.01:10];
i. r (t ) sen(t 30o )
>> lsim(H,sin(t+pi/6),t)
Linear Simulation Results
1
0.8
0.6
0.4
0.2
Amplitude
-0.2
-0.4
-0.6
-0.8
-1
0 1 2 3 4 5 6 7 8 9 10
Time (sec)
ii. r (t ) 2sen(2t 45 o )
>> lsim(H,2*sin(2*t-pi/4),t)
Linear Simulation Results
2
1.5
0.5
Amplitude
-0.5
-1
-1.5
-2
0 1 2 3 4 5 6 7 8 9 10
Time (sec)
>> lsim(H,sin(t+pi/6)+cos(2*t-pi/4),t)
Linear Simulation Results
2
1.5
0.5
Amplitude
-0.5
-1
-1.5
-2
0 1 2 3 4 5 6 7 8 9 10
Time (sec)
10( s 0.5)
* Si K=1 G( s) H ( S )
s ( s 2)( s 10)
2
Transfer function:
10 s + 5
---------------------
s^4 + 12 s^3 + 20 s^2
>> nyquist(gh)
>> grid
>> axis([-10 10 -5 5])
Nyquist Diagram
4
0 dB
2 dB -2 dB
2
4 dB -4 dB
1
6 dB -6 dB
Imaginary Axis
10 dB -10 dB
0
-1
-2
-3
-4
-10 -5 0 5
Real Axis
La función en lazo cerrado será luego de hacer la operación:
G ( s) H ( s)
F (s)
1 G ( s) H ( s)
10k ( s 0.5)
F (s)
s 12s 3 20s 2 10ks 5k
4
s4 1 20 5
s3 12 10 0
s2 19.1667 5 0
s1 6.8696 0 0
s0 5 0 0
100( s 0.5)
* Si K=10 G( s) H ( S )
s ( s 2)( s 10)
2
Transfer function:
100 s + 50
---------------------
s^4 + 12 s^3 + 20 s^2
>> nyquist(gh)
>> grid
>> axis([-10 10 -5 5])
Nyquist Diagram
4
0 dB
2 dB -2 dB
2
4 dB -4 dB
1
6 dB -6 dB
Imaginary Axis
10 dB -10 dB
0
-1
-2
-3
-4
-10 -5 0 5
Real Axis
100( s 0.5)
F (s)
s 12s 3 20s 2 100s 50
4
s4 1 20 50
s3 12 100 0
s2 11.6667 50 0
s1 48.5716 0 0
s0 50 0 0