1
2008
:
-
َ , . - , - ( , ).
, . , , , .
, , . .
, , , .
, ,
,
, .
Matlab () s. , . ,
[1]
>> n = [2 4]
n =
2 4
>> d = [1 1.5 1.5 1]
d =
1.0000 1.5000 1.5000 1.0000
>> f = tf (n, d)
Transfer function:
2 s + 4
-------------------------
s^3 + 1.5 s^2 + 1.5 s + 1
, :
>> f = tf ([2 4], [1 1.5 1.5 1]);
tf, . .
-
>> f_zpk = zpk(f)
Zero/pole/gain:
2 (s+2)
-----------------------
(s+1) (s^2 + 0.5s + 1)
, . . .
|
|
( ):
, ( ) . , . , , , . [2] .
>> f_ss = ss (f)
a =
x1 x2 x3
x1 -1.5 -0.1875 -0.03125
x2 8 0 0
x3 0 4 0
b =
u1
x1 0.5
x2 0
x3 0
c =
x1 x2 x3
y1 0 0.5 0.25
d =
u1
y1 0
,
, , , .
, , , . ,
, .
, , . , , , ( ).
(static gain, DC-gain). , . .
.
( ) ,
.
.
, , .
.
.
( ), , , , .
. Matlab
.
, ,
,
.
, , . , , , , , [3].
f Matlab,
>> k = dcgain (f)
( ) (- ) . -
|
|
, .
, , . - .
,
.
.
- , , .
, . , , ( ) , . ( ) . Matlab , . , .
, . :
,
, . , . , ..
( ) ( ) ( )
.
, .
. ( ) . , , .., .
:
.
, .
, ( ), . ( ).
(overshoot) (settling time).
,
, .
, , ( Matlab 2%).
() ( ), , [4] , .
. . - ().
|
|
(), () ():
.
, , .
, . , ( ) (, ). .
, 0 ( 1, ), ., -3 ( , 0.708), .
>> b = bandwidth (f)
, . , , .
.
. , .
Matlab, . linspace ( ) logspace ( ).
>> w = linspace (0, 10, 100);
100 0 10,
>> w = logspace (-1, 2, 100);
100 .
w f ( , -) freqresp:
>> r = freqresp(f, w);
freqresp . , ( ), . , .
>> r = r(:);
Matlab
>> plot (w, abs(r));
>> semilogx (w, abs(r));
>> loglog (w, abs(r));
, (), . ( )
>> phi = angle(r)*180/pi;
, :
>> semilogx (w, phi);
(, , ) (, , ).
. , : .
|
|
. [5] , , .
, . (natural frequency), (damping factor). , . , . , .
f
>> p = pole (f)
>> [w0,zeta,p] = damp (f)
p, w0 zeta .
f
>> z = zero (f);
, .
>> pzmap (f);
( ) () .
1