常用的simulink控制工具箱的函数

  • 1.构建基本的模型函数
    • 1.模型的表示
    • (1)传递函数分子/分母多项式模型
    • (2)传递函数零极点增益模型
    • (3)状态空间模型:
    • 2.系统建模
    • (1)串联
    • (2)并联
    • (3)反馈
  • 2.时域响应
    • 1.脉冲响应:
    • 2.阶跃响应:
    • 3.一般响应:
    • 4.系统的瞬态性能指标
  • 3.频率特性的分析
    • (1)画 N y q u i s t Nyquist Nyquist图
    • (2) B o d e Bode Bode图的绘制
    • (3)频率特征量
  • 4.系统稳定性分析
    • (1)系统特征根
    • (2)系统的相对稳定性
  • 5.系统校正
    • (1)相位超前校正
    • (2)相位滞后校正
    • (3)相位滞后超前校正
    • (4) P I D PID PID校正
    • (5) M a t l a b Matlab Matlab代码
  • 6.相轨迹图的绘制
    • (1)四阶 R u n g e − K u t t a Runge-Kutta Runge−Kutta法
    • (2) 相轨迹图的绘制
  • 7.线性离散系统
    • (1) Z Z Z变换的定义
    • (2) Z Z Z变换的性质
      • 1.线性性质:
      • 2.延迟定理:
      • 3.超前定理:
      • 4.初值定理:
      • 5.终值定理:
    • (3) Z Z Z变换表
    • (4) M a t l a b Matlab Matlab函数
    • (5) M a t l a b Matlab Matlab实现代码

1.构建基本的模型函数

1.模型的表示

​ 模型的表示有3种基本形式:

  • 传递函数分子/分母多项式模型
  • 传递函数零极点增益模型
  • 状态空间模型

(1)传递函数分子/分母多项式模型

G ( s ) = b m s m + b m − 1 s m − 1 + . . . + b 1 s + b 0 a n s n + a n − 1 s n − 1 + . . . a 1 s + a 0 G(s)=\frac{b_ms^m+b_{m-1}s^{m-1}+...+b_1s+b_0}{a_ns^n+a_{n-1}s^{n-1}+...a_1s+a_0} G(s)=an​sn+an−1​sn−1+...a1​s+a0​bm​sm+bm−1​sm−1+...+b1​s+b0​​

matlab代码:
n u m = [ b m , b m − 1 , . . . b 1 , b 0 ] , d e n = [ a n , a n − 1 , . . . a 1 , a 0 ] G = t f ( n u m , d e n ) ; num = [b_m,b_{m-1},...b_1,b_0],den = [a_n,a_{n-1},...a_1,a_0]\\ G = tf(num,den); num=[bm​,bm−1​,...b1​,b0​],den=[an​,an−1​,...a1​,a0​]G=tf(num,den);

(2)传递函数零极点增益模型

G ( s ) = K ( s − z 0 ) ( s − z 1 ) . . . ( s − z m ) ( s − p 0 ) ( s − p 1 ) . . . ( s − p n ) G(s) = K\frac{(s-z_0)(s-z_1)...(s-z_m)}{(s-p_0)(s-p_1)...(s-p_n)} G(s)=K(s−p0​)(s−p1​)...(s−pn​)(s−z0​)(s−z1​)...(s−zm​)​
matlab代码:
z = [ z 0 , z 1 , . . . z m ] p = [ p 0 , p 1 , . . . p n ] k = [ K ] G = z p k ( z , p , k ) z = [z_0 ,z_1,...z_m]\\ p = [p_0,p_1,...p_n]\\ k = [K]\\ G = zpk(z,p,k) z=[z0​,z1​,...zm​]p=[p0​,p1​,...pn​]k=[K]G=zpk(z,p,k)

复杂函数用 c o n v ( x 1 , x 2 ) conv(x1,x2) conv(x1,x2)实现连个向量卷积,用来求多项式乘法

(3)状态空间模型:

X ˙ = A X + B u Y = C X + D u \dot{X}=AX+Bu\\ Y=CX+Du X˙=AX+BuY=CX+Du

matlab代码:
s s ( A , B , C , D ) ss(A,B,C,D) ss(A,B,C,D)

2.系统建模

(1)串联

T ( s ) = Y ( s ) R ( s ) = n u m d e n = G 1 ( s ) G 2 ( s ) G 1 ( s ) = n u m 1 d e n 1 G 2 ( s ) = n u m 2 d e n 2 [ n u m , d e n ] = s e r i e s ( n u m 1 , d e n 1 , n u m 2 , d e n 2 ) ; T(s)=\frac{Y(s)}{R(s)}=\frac{num}{den}=G_1(s)G_2(s)\\ G_1(s) = \frac{num1}{den1}\\ G_2(s) = \frac{num2}{den2}\\ [num,den] = series(num1,den1,num2,den2); T(s)=R(s)Y(s)​=dennum​=G1​(s)G2​(s)G1​(s)=den1num1​G2​(s)=den2num2​[num,den]=series(num1,den1,num2,den2);

(2)并联

G 1 ( s ) = n u m 1 d e n 1 G 2 ( s ) = n u m 2 d e n 2 T ( s ) = Y ( s ) R ( s ) = n u m d e n [ n u m , d e n ] = p a r a l l e l ( n u m 1 , d e n 1 , n u m 2 , d e n 2 ) G_1(s) = \frac{num1}{den1}\\ G_2(s) = \frac{num2}{den2}\\ T(s) = \frac{Y(s)}{R(s)} = \frac{num}{den}\\ [num,den] = parallel(num1,den1,num2,den2) G1​(s)=den1num1​G2​(s)=den2num2​T(s)=R(s)Y(s)​=dennum​[num,den]=parallel(num1,den1,num2,den2)

(3)反馈


s i g n : + 1 : 正 反 馈 , − 1 : 负 反 馈 G ( s ) = n u m 1 d e n 1 H ( s ) = n u m 2 d e n 2 T ( s ) = Y ( s ) R ( s ) = n u m d e n [ n u m 1 , d e n 1 ] = f e e d b a c k ( n u m 1 , d e n 1 , n u m 2 , d e n 2 , s i g n ) sign:+1:正反馈,-1:负反馈\\ G(s)=\frac{num1}{den1}\\ H(s) = \frac{num2}{den2}\\ T(s) = \frac{Y(s)}{R(s)} = \frac{num}{den}\\ [num1,den1] = feedback(num1,den1,num2,den2,sign)\\ sign:+1:正反馈,−1:负反馈G(s)=den1num1​H(s)=den2num2​T(s)=R(s)Y(s)​=dennum​[num1,den1]=feedback(num1,den1,num2,den2,sign)
状态空间模型与传递函数的转化: [ d e n , n u m ] = s s 2 t f ( F , C , G , D ) [den,num]=ss2tf(F,C,G,D) [den,num]=ss2tf(F,C,G,D)。将有理多项式转换成空间状态模型: [ F , C , G , D ] = t f 2 s s ( n u m , d e n ) ; [F,C,G,D]=tf2ss(num,den); [F,C,G,D]=tf2ss(num,den);

2.时域响应

1.脉冲响应:

y y y:输出响应, T T T:仿真时间, x x x:状态响应(状态空间模型), s y s sys sys:模型, t t t:仿真时间
[ y , T , x ] = i m p u l s e ( s y s , t ) ; [y,T,x] = impulse(sys,t); [y,T,x]=impulse(sys,t);

2.阶跃响应:

y y y:输出响应, T T T:仿真时间, x x x:状态响应(状态空间模型), s y s sys sys:模型, t t t:仿真时间
[ y , T , x ] = s t e p ( s y s , t ) ; [y,T,x] = step(sys,t); [y,T,x]=step(sys,t);

3.一般响应:

y y y:输出响应, T T T:仿真时间, x x x:状态响应(状态空间模型), s y s sys sys:模型, t t t:仿真时间, u u u:输入
[ y , T , x ] = l s i m ( s y s , u , t ) ; [y,T,x]= lsim(sys,u,t); [y,T,x]=lsim(sys,u,t);

4.系统的瞬态性能指标

求 G ( s ) = 50 0.05 s 2 + ( 1 + 50 τ ) s + 50 G(s) = \frac{50}{0.05s^2+(1+50\tau)s+50} G(s)=0.05s2+(1+50τ)s+5050​在不同的 τ \tau τ时的单位阶跃响应:

上升时间函数:

function  trl  = trlf( x,yss,t0 )
%trl 计算上身时间
%   此处显示详细说明
r = 1;
while x(r)<yssr = r+1;
end
trl  = (r-1)*t0;
end

峰值时间函数:

function tpl = tplf( x,t0 )
%tpl 计算峰值时间
%   此处显示详细说明
[ymax,tp] = max(x);
tpl = (tp-1)*t0;
end

最大超调量和调整时间函数:

function [tsl,mpl] = mplf( x,t0,yss ,dlta)
%mplf 计算1001个采样点时的调整时间和最大超调量
%   此处显示详细说明
[ymax,tp] = max(x);
mpl = (ymax-yss)/yss;
s = 1001;
while (x(s)>(1-dlta))&&(x(s)<1+dlta)s = s-1;
end
tsl = (s-1)*t0;
end

主函数:

t = 0:0.001:1;
yss = 1;
dta = 0.02;
nG = [50,50,50];
tao = [0,0.0125,0.025];
trl = zeros(3,1);%上升时间
tpl = zeros(3,1);%峰值时间
mpl = zeros(3,1);%最大超调量
tsl = zeros(3,1);%调整时间
for i = 1:3dG(i,:) = [0.05,1+50*tao(i),50];G(i) = tf(nG(i),dG(i,:));
end
out1 = step(G(1),t);
out2 = step(G(2),t);
out3 = step(G(3),t);
%以下是计算上升时间
trl(1)  = trlf( out1,yss,0.001 );
trl(2)  = trlf( out2,yss,0.001 );
trl(3)  = trlf( out3,yss,0.001 );
%以下是计算峰值时间
tpl(1) = tplf( out1,0.001 );
tpl(2) = tplf( out2,0.001 );
tpl(3) = tplf( out3,0.001 );
%以下是计算最大超调量和调整时间
[tsl(1),mpl(1)] = mplf(out1,0.001,yss,dta);
[tsl(2),mpl(2)] = mplf(out2,0.001,yss,dta);
[tsl(3),mpl(3)] = mplf(out3,0.001,yss,dta);
%输出
disp('tao = 0 时的上身时间 峰值时间 最大超调量 调整时间: ');
disp([trl(1),tpl(1),mpl(1),tsl(1)]);
disp('tao = 0.0125 时的上身时间 峰值时间 最大超调量 调整时间: ');
disp([trl(2),tpl(2),mpl(2),tsl(2)]);
disp('tao = 0.025 时的上身时间 峰值时间 最大超调量 调整时间: ');
disp([trl(3),tpl(3),mpl(3),tsl(3)]);

结果:

>> abc
tao = 0 时的上身时间 峰值时间 最大超调量 调整时间: 0.0640    0.1050    0.3509    0.3530tao = 0.0125 时的上身时间 峰值时间 最大超调量 调整时间: 0.0780    0.1160    0.1523    0.2500tao = 0.025 时的上身时间 峰值时间 最大超调量 调整时间: 0.1070    0.1410    0.0415    0.1880

3.频率特性的分析

(1)画 N y q u i s t Nyquist Nyquist图

r e : re: re:时频特性, i m : im: im:虚频特性, w : w: w:频率范围, s y s : sys: sys:模型, w w w可选频率
[ r e , i m , w ] = n y q u i s t ( s y s , w ) ; [re,im,w]=nyquist(sys,w); [re,im,w]=nyquist(sys,w);
例如:绘制 G ( s ) = 24 ( 0.25 s + 0.5 ) ( 5 s + 2 ) ( 0.05 s + 2 ) G(s)=\frac{24(0.25s+0.5)}{(5s+2)(0.05s+2)} G(s)=(5s+2)(0.05s+2)24(0.25s+0.5)​的 N y q u s i t Nyqusit Nyqusit图:

k = 24;
numG = k*[0.25 0.5];
denG = conv([5,2],[0.05,2]);
sys = tf(numG,denG);
[m,n] = size(re);
[re,im] = nyquist(sys);
for i = 1:nre1(i) = re(1,1,i);im1(i) = im(1,1,i);
end
plot(re1,im1);grid on;
xlabel('实部');
ylabel('虚部');
title('系统Nyquist图');

(2) B o d e Bode Bode图的绘制

m a g : mag: mag:幅频特性, p h a s e : phase: phase:相频特性, w : w: w:频率范围, s y s : sys: sys:模型
[ m a g , p h a s e , w ] = b o d e ( s y s , w ) ; [mag,phase,w]=bode(sys,w); [mag,phase,w]=bode(sys,w);
例如:绘制 G ( s ) = 24 ( 0.25 s + 0.5 ) ( 5 s + 2 ) ( 0.05 s + 2 ) G(s)=\frac{24(0.25s+0.5)}{(5s+2)(0.05s+2)} G(s)=(5s+2)(0.05s+2)24(0.25s+0.5)​的 B o d e Bode Bode图:

k = 24;
numG = k*[0.25 0.5];
denG = conv([5,2],[0.05,2]);
sys = tf(numG,denG);
[m,n] = size(re);
w = logspace(-2,3,100);
bode(sys,w);
title('系统Nyquist图');

(3)频率特征量

k = 24;
numG = k*[0.25 0.5];
denG = conv([5,2],[0.05,2]);
sys = tf(numG,denG);
w = logspace(-2,4,100);
[Gm,Pm,w]=bode(sys,w);
[m,n] = size(Gm);
for i = 1:nGm(i) = Gm(1,1,i);Pm(i) = Pm(1,1,i);
end
[Mr,k] = max(Gm);
disp('协震峰值是:');
disp(20*log10(Mr));
disp('谐振频率是:');
disp(w(k));
n = 1;
while 20*log10(Gm(n))>=-3n = n+1;
end
disp('截至频率是:');
disp(w(n));

结果:

协震峰值是:9.5398谐振频率是:0.0100截至频率是:3.5112

4.系统稳定性分析

(1)系统特征根

已知特征方程 a n s n + a n − 1 s n − 1 + . . . + a 1 s + a 0 a_ns^n+a_{n-1}s^{n-1}+...+a_1s+a_0 an​sn+an−1​sn−1+...+a1​s+a0​的特征系数是 [ a n , a n − 1 , . . . a 1 , a 0 ] [a_n,a_{n-1},...a_1,a_0] [an​,an−1​,...a1​,a0​],求根的方法:
r o o t s ( [ a n , a n − 1 , . . . a 1 , a 0 ] ) ; roots([a_n,a_{n-1},...a_1,a_0]); roots([an​,an−1​,...a1​,a0​]);

(2)系统的相对稳定性

s y s : sys: sys:系统模型, G m : Gm: Gm:幅值裕度, P m : P_m: Pm​:相位裕度, W c g : W_{cg}: Wcg​:相位穿越频率, W c p : W_{cp}: Wcp​:幅值穿越频率。
[ G m , P m , W c g , W c p ] = m a r g i n ( s y s ) ; [ m a g , p h a s e , w ] = b o d e ( s y s ) ; → [ G m , P m , W c g , W c p ] = m a r g i n ( m a g , p h a s e , w ) [G_m,P_m,W_{cg},W_{cp}]=margin(sys);\\ [mag,phase,w]=bode(sys);\rightarrow[G_m,P_m,W_{cg},W_{cp}]=margin(mag,phase,w) [Gm​,Pm​,Wcg​,Wcp​]=margin(sys);[mag,phase,w]=bode(sys);→[Gm​,Pm​,Wcg​,Wcp​]=margin(mag,phase,w)

5.系统校正

(1)相位超前校正

T = R 1 C 1 α = R 1 R 1 + R 2 < 1 G ( s ) = U 0 ( s ) U i ( s ) = 1 + T s 1 + α T s T=R_1C_1\\\alpha = \frac{R_1}{R_1+R_2}<1\\ G(s) = \frac{U_0(s)}{U_i(s)}=\frac{1+Ts}{1+\alpha Ts}\\ T=R1​C1​α=R1​+R2​R1​​<1G(s)=Ui​(s)U0​(s)​=1+αTs1+Ts​

(2)相位滞后校正

β = R 3 + R 4 R 4 > 1 T = R 4 C 2 G ( s ) = 1 + T s 1 + β T s \beta=\frac{R_3+R_4}{R_4}>1\\ T = R_4C_2\\ G(s) = \frac{1+Ts}{1+\beta Ts} β=R4​R3​+R4​​>1T=R4​C2​G(s)=1+βTs1+Ts​

(3)相位滞后超前校正

T 1 = R 1 C 1 , T 2 = R 2 C 4 β = R 1 + R 2 R 2 > 1 G ( s ) = ( T 1 s + 1 ) ( T 2 s + 1 ) ( T 1 β s + 1 ) ( β T 2 s + 1 ) T_1 = R_1C_1,T_2 = R_2C_4\\ \beta=\frac{R_1+R_2}{R_2}>1\\ G(s) = \frac{(T_1s+1)(T_2s+1)}{(\frac{T_1}{\beta}s+1)(\beta T_2s+1)} T1​=R1​C1​,T2​=R2​C4​β=R2​R1​+R2​​>1G(s)=(βT1​​s+1)(βT2​s+1)(T1​s+1)(T2​s+1)​

(4) P I D PID PID校正

T i = R 1 C 1 + R 2 C 2 T d = R 1 C 1 R 2 C 2 R 1 C 1 + R 2 C 2 K p = R 1 C 1 + R 2 C 2 R 1 C 2 G ( s ) = K p ( 1 + 1 T i s + T d s ) T_i=R_1C_1+R_2C_2\\ T_d = \frac{R_1C_1R_2C_2}{R_1C_1+R_2C_2}\\ K_p=\frac{R_1C_1+R_2C_2}{R_1C_2}\\ G(s)=K_p(1+\frac{1}{T_is}+T_ds) Ti​=R1​C1​+R2​C2​Td​=R1​C1​+R2​C2​R1​C1​R2​C2​​Kp​=R1​C2​R1​C1​+R2​C2​​G(s)=Kp​(1+Ti​s1​+Td​s)

(5) M a t l a b Matlab Matlab代码

function y = PID_fun(num,den,kp,ki,kd,ts,numbers,yd,M)
%PID_fun 阶跃信号
%  num:连续函数分子
%  den:连续函数分母
%  k_p,k_i,k_d:PID参数
%  ts:采样时间
%  numbers:采样点数目
%  yd:输入信号
%  M:阈值
% clc;
% clear;
sys = tf(num,den);
dsys = c2d(sys,ts,'z');
[numz,denz] = tfdata(dsys,'v');
u_1 = 0;u_2 = 0;u_3 = 0;
y_1 = 0; y_2 = 0; y_3 = 0;
x = [0 0 0]';
error_1 = 0;
error_2 = 0;
for k = 1:1:numberstime(k) = k*ts;du(k) = kp*x(1)+kd*x(2)+ki*x(3);u(k) = u_1 + du(k);if u(k)>=Mu(k) = M;endif u(k)<=-Mu(k) = -M;endy(k) = (-denz(2)*y_1 - denz(3)*y_2+numz(2)*u_1+numz(3)*u_2)/denz(1);%z变换延迟定理error = yd(k) - y(k);u_3 = u_2;u_2 = u_1;u_1 = u(k);y_3 = y_2;y_2 = y_1;y_1 = y(k);x(1) = error - error_1;x(2) = error - 2*error_1+error_2;x(3) = error;error_2 = error_1;error_1 = error;
end
figure;
plot(time,yd,'r',time,y,'b','linewidth',2);
xlabel('时间(s)');ylabel('y_d,y');
grid on
title('增量式PID响应曲线');
legend('理想位置信号','位置追踪');
end

调用

>> y = PID_fun([40 10],[1 50 0],8,0.1,10,0.001,1000,2*ones(1000,1),10);

反馈校正和顺馈校正此处就不再赘述了。

6.相轨迹图的绘制

(1)四阶 R u n g e − K u t t a Runge-Kutta Runge−Kutta法

​ 设 t t t为自变量时间, y y y为因变量,微分方程的形式 y ˙ = f ( t , y ) \dot{y}=f(t,y) y˙​=f(t,y)。 ′ o d e f u n ′ 'odefun' ′odefun′:包含微分方程(组)的 M M M文件, t s : ts: ts:自变量取值, y 0 : y_0: y0​:变量 y y y的初值, p i : p_{i}: pi​:文件内的附加参数。
[ t , y ] = o d e 45 ( ′ o d e f u n ′ , t s , y 0 , [ ] , p 1 , p 2 , . . . ) ; [t,y] = ode45('odefun',t_s,y_0,[],p_1,p_2,...); [t,y]=ode45(′odefun′,ts​,y0​,[],p1​,p2​,...);

(2) 相轨迹图的绘制

​ 做出 x ¨ + 0.5 x ˙ + 2 x + x 2 = 0 \ddot{x}+0.5\dot{x}+2x+x^2=0 x¨+0.5x˙+2x+x2=0在初值为 ( − 2.2 , 0.5 ) T (-2.2,0.5)^T (−2.2,0.5)T时的相轨迹图:
​ 令 x 1 = x , x 2 = x 1 ˙ x_1 = x,x_2=\dot{x_1} x1​=x,x2​=x1​˙​:
x 1 ˙ = x 2 x 2 ˙ = − 0.5 x 2 − 2 x 1 − x 1 2 \dot{x_1} =x_2\\ \dot{x_2} = -0.5x_2-2x_1-x_1^2 x1​˙​=x2​x2​˙​=−0.5x2​−2x1​−x12​
函数:

function y = odefun1( t,x,p1 )
%UNTITLED 此处显示有关此函数的摘要
%   此处显示详细说明
y = [x(2);-p1*x(2)-2*x(1)-x(1)^2];
end

主函数:

t = 0:0.01:100;
x0 = [-2.2;0.5];
p1 = 0.5;
[t,y] = ode45(@odefun1,t,x0,[],p1);
plot(y(:,1),y(:,2),'linewidth',2);
grid on;xlabel('x_1');ylabel('x_2');
title('相轨迹图');

7.线性离散系统

(1) Z Z Z变换的定义

​ 连续信号 x ( t ) x(t) x(t),采样输出信号 x ∗ ( t ) x^*(t) x∗(t),单位脉冲序列 δ s ( t ) \delta_s(t) δs​(t),采样周期 T T T
x ∗ ( t ) = ∑ n = 0 ∞ x ( n T ) δ ( t − n T ) 当 n ≥ 0 时 , 对 上 面 进 行 L a p l a c e 变 换 : L [ x ∗ ( t ) ] = ∑ n = 0 ∞ x ( n T ) ∫ 0 ∞ δ ( t − n T ) e − s t d t = ∑ n = 0 ∞ x ( n T ) e − s n T x^*(t)=\sum_{n=0}^{\infty}x(nT)\delta(t-nT)\\ 当n \geq 0时,对上面进行Laplace变换:\\ L[x^*(t)]=\sum_{n=0}^{\infty}x(nT)\int_0^{\infty}\delta(t-nT)e^{-st}dt=\sum_{n=0}^{\infty}x(nT)e^{-snT} x∗(t)=n=0∑∞​x(nT)δ(t−nT)当n≥0时,对上面进行Laplace变换:L[x∗(t)]=n=0∑∞​x(nT)∫0∞​δ(t−nT)e−stdt=n=0∑∞​x(nT)e−snT
如果我们让 z = e s T z=e^{sT} z=esT得到 Z Z Z变换的变换式:
Z [ x ( t ) ] = X ( z ) = ∑ n = 0 ∞ x ( n T ) z − n Z[x(t)]=X(z)=\sum_{n=0}^{\infty}x(nT)z^{-n} Z[x(t)]=X(z)=n=0∑∞​x(nT)z−n

(2) Z Z Z变换的性质

1.线性性质:

Z [ a x 1 ( t ) + b x 2 ( t ) ] = a X 1 ( z ) + b X 2 ( z ) Z[ax_1(t)+bx_2(t)]=aX_1(z)+bX_2(z) Z[ax1​(t)+bx2​(t)]=aX1​(z)+bX2​(z)

2.延迟定理:

设 Z [ x ( t ) ] = X ( z ) , 且 t < 0 时 , x ( t ) = 0 , 则 : Z [ x ( t − m T ) ] = z − m X ( z ) 设Z[x(t)] = X(z),且t<0时,x(t)=0,则: Z[x(t-mT)]=z^{-m}X(z) 设Z[x(t)]=X(z),且t<0时,x(t)=0,则:Z[x(t−mT)]=z−mX(z)

3.超前定理:

设 Z [ x ( t ) ] = X ( z ) , 则 : Z [ x ( t + m T ) ] = z m [ X ( z ) − ∑ k = 0 m − 1 x ( k T ) z − k ] 设Z[x(t)] = X(z),则: Z[x(t+mT)]=z^m[X(z)-\sum_{k=0}^{m-1}x(kT)z^{-k}] 设Z[x(t)]=X(z),则:Z[x(t+mT)]=zm[X(z)−k=0∑m−1​x(kT)z−k]

4.初值定理:

设 Z [ x ( t ) ] = X ( z ) , 则 : x ( 0 ) = l i m z → ∞ X ( z ) 设Z[x(t)]=X(z),则: x(0)=lim_{z \rightarrow \infty}X(z) 设Z[x(t)]=X(z),则:x(0)=limz→∞​X(z)

5.终值定理:

设 Z [ x ( t ) ] = X ( z ) , 且 ( z − 1 ) X ( z ) 的 全 部 极 点 位 于 单 位 圆 内 , 则 : x ( ∞ ) = l i m z → 1 [ X ( z ) ( z − 1 ) ] 设Z[x(t)]=X(z),且(z-1)X(z)的全部极点位于单位圆内,则:x(\infty)=lim_{z \rightarrow 1}[X(z)(z-1)] 设Z[x(t)]=X(z),且(z−1)X(z)的全部极点位于单位圆内,则:x(∞)=limz→1​[X(z)(z−1)]

(3) Z Z Z变换表

Z [ a k ] = z z − a Z [ a k c o s k π ] = z z + a Z[a^{k}]=\frac{z}{z-a}\\ Z[a^kcosk\pi]=\frac{z}{z+a} Z[ak]=z−az​Z[akcoskπ]=z+az​

稳定性分析和校正设计就不描述了。

(4) M a t l a b Matlab Matlab函数

若 G ( z ) = n u m d ( z ) d e n d ( z ) G(z) = \frac{numd(z)}{dend(z)} G(z)=dend(z)numd(z)​, T T T为采样时间, ′ z o h ′ 'zoh' ′zoh′为零阶保持,传递函数 G p ( s ) = n u m ( s ) d e n ( s ) G_p(s)=\frac{num(s)}{den(s)} Gp​(s)=den(s)num(s)​,且 G ( z ) G(z) G(z)对应着传递函数 G p ( s ) G_p(s) Gp​(s),则:
[ n u m d , d e n d ] = c 2 d m ( n u m , d e n , T , ′ z o h ′ ) ; [numd,dend] = c2dm(num,den,T,'zoh'); [numd,dend]=c2dm(num,den,T,′zoh′);
而如果求得逆的话:
[ n u m , d e n ] = d 2 c m ( n u m d , d e n d , T , ′ z o h ′ ) ; [num,den] = d2cm(numd,dend,T,'zoh'); [num,den]=d2cm(numd,dend,T,′zoh′);
如果要求任意输入响应, y y y:输出响应, x : x: x:状态响应, u : u: u:输入, G ( s ) = n u m d e n G(s)=\frac{num}{den} G(s)=dennum​, k : k: k:指定的采样数。
[ y , x ] = d l s i m ( n u m , d e n , u , k ) ; [y,x]=dlsim(num,den,u,k); [y,x]=dlsim(num,den,u,k);

(5) M a t l a b Matlab Matlab实现代码

num = 1;den = [1,1,0];
T = 1;
[nz,dz] = c2dm(num,den,T,'zoh');
printsys(nz,dz,'z');

输出:

num/den = 0.36788 z + 0.26424------------------------z^2 - 1.3679 z + 0.36788

常用的simulink控制工具箱的函数相关推荐

  1. 如何解决simulink控制系统仿真中的代数环

    目录 1. 什么是代数环 2. 如何解决代数环 3. 多个s函数导致的代数环 4. 源代码 1. 什么是代数环 在simulink仿真过程中,当输入信号直接取决于输出信号,同时输出信号也直接取决于输入 ...

  2. 看不懂matlab工具箱,matlab /simulink 各个工具箱的简单介绍 入门请看

    所谓Matlab工具箱就是一些M文件的集合, 用户可以修改工具箱中的函数,更为重要的是用户可以通过编制M文件来任意地添加工具箱中原来没有的工具函数.此功能充分体现了matlab语言的开放性.许多的专业 ...

  3. matlab虚拟现实之建立simulink虚拟现实工具箱的使用

    前面几篇重点介绍了三维模型制作器V-Realm Builder2的使用方法. 接下来介绍虚拟现实工具箱的使用. 其实,虚拟现实工具箱就是连接simulink和三维模型的桥梁. simulink负责信号 ...

  4. MATLAB/Simulink中的S函数报错

    关于MATLAB/Simulink中的S函数报错: Output returned by S-function 'xxx' in 'xxx' during flag=3 call must be a ...

  5. 《MATLAB智能算法30个案例》:第17章 基于PSO工具箱的函数寻优算法

    <MATLAB智能算法30个案例>:第17章 基于PSO工具箱的函数寻优算法 1. 前言 2. MATLAB 仿真示例 3. 小结 1. 前言 <MATLAB智能算法30个案例分析& ...

  6. 谢菲尔德遗传算法工具箱--Ranking函数

    事先声明,我没有系统的学习过该工具箱的函数细节,所以下面的都是我个人的推测而已. 计算公式是: sp是压差. 就这么看,我看了半天也没明白这东西有什么用,后来我写了个栗子,突然明白了.看下图. 不知道 ...

  7. matlab ltiview应用例子,Matlab控制工具箱(网络软件)

    Matlab控制工具箱的应用 --基于Matlab R2010a(7.10.0) 1.线性时不变系统浏览器LTI Viewer 在Matlab的command Window中,建立LTI对象,之后使用 ...

  8. 一些常用且实用的原生 JavaScript函数[转]

    日常开始中常用到的一些原生JavaScript函数,比较实用, 今天特地整理一下,分享给大家,希望对大家有用,会常更新,同时也欢迎大家补充. css及html方面的技巧总结,点此前往: 前端开发中一些 ...

  9. mysql中的dateDayOfYear_Mysql 常用的时间日期及转换函数小结

    本文主要是总结一些常用的在实际运用中常用的一些mysql时间日期以及转换的函数 1.now()  :返回当前日期和时间 select now(); //2018-04-21 09:19:21 2.cu ...

最新文章

  1. bootstrap学习(五)代码
  2. 何谓CRT,CRT的由来
  3. [js] 写一个方法,实时验证input输入的值是否满足金额如:3.56(最多只有两位小数且只能数字和小数点)的格式,其它特殊字符禁止输入
  4. body div js 放大图片_jquery图片放大插件鼠标悬停图片放大效果
  5. BZOJ 4259: 残缺的字符串 [FFT]
  6. android 抓取webview中的所有图片_如何一键提取PDF文档中的所有图片?
  7. 函数fun的功能是将s所指字符串_21 函数的简介
  8. nagios配置之监控端配置
  9. SQL 连接 JOIN 例解。(左连接,右连接,全连接,内连接,交叉连接,自连接)...
  10. 微信公众号+web后台的工资条发放功能的实现
  11. web页面视频播放器选型
  12. defer和async的区别
  13. Maple拥有优秀的符号计算和数值计算能力
  14. fiddler视频分析
  15. 补充设定 timer1 定时器和 timer2 定时器定时做多件事
  16. 小程序源码:AI微信小程序源码下载人脸照片AI转换动漫照片全新源码安装简单无需服务器域名-多玩法安装简单
  17. 微信小程序 函数防抖和函数节流
  18. 【Tableau Desktop 企业日常技巧9.0】打开第二个 Tableau 桌面实例时出现错误“连接错误:Tableau 无法连接到数据源“
  19. C++的特点,及对C语言的发展
  20. 最小二乘法和主成分分析的比较 matlab  儿子的papa

热门文章

  1. vol.146 生活这么苦,为什么你们还要玩更苦的游戏
  2. MapReduce 与函数式编程
  3. 利用云笔记提高效率的方法
  4. 关于tab栏切换时数据接口的调用
  5. 【Unity Animation】 read-only 无法添加关键帧
  6. Five features in Bilibili APP
  7. FPGA基础之SPI通信
  8. 心动的本质是什么_不是风动,不是幡动,仁者心动
  9. linux 安全审计以及加固工具 lynis 使用介绍
  10. goldengate mysql双向_GoldenGate双向复制配置