- 11
- 0
- 约8.36千字
- 约 49页
- 2017-01-11 发布于湖北
- 举报
第九讲 经典控制系统分析 早期的控制系统分析过程复杂而耗时,如想得到一个系统的冲激响应曲线,首先需要编写一个求解微分方程的子程序,然后将已经获得的系统模型输入计算机,通过计算机的运算获得冲激响应的响应数据,然后再编写一个绘图程序,将数据绘制成可供工程分析的响应曲线。 MATLAB控制系统工具箱和SIMULINK辅助环境的出现,给控制系统分析带来了福音。 利用MATLAB提供的控制系统工具箱所提供的函数对线性系统进行分析、控制。控制系统的分析包括系统的稳定性分析、时域分析、频域分析及根轨迹分析。 第一节 系统的特性函数 常用的系统函数(书P177) 第二节 控制系统时域分析 利用时域分析方法能够了解控制系统的动态性能,如系统的上升时间、调节时间、超调量和稳态误差都可以通过系统在给定输入信号作用下的过渡过程来评价。 一 特定输入时间响应函数 1. [u,t]=gensig(type,Ta)—type类型,sin square pulse Ta-周期 如 生成一个周期为5s,持续时间为30s,采样时间为 0.1s的方波。 [u,t]=gensig(square,5,30,0.1) plot(t,u) axis([0,30,-0.5,1.5]) 得波形图 二、时域分析的一般方法 一个动态系统的性能常用典型输入作用下的响应来描述。响应是指零初始值条件下某种典型的输入函数作用下对象的响应,控制系统常用的输入函数为单位阶跃函数和脉冲激励函数(即冲激函数)。在MATLAB的控制系统工具箱中提供了求取这两种输入下系统响应的函数。 求取系统单位阶跃响应:step() 求取系统的冲激响应:impulse() 程序wn=6; kosi=[0.1:0.1:1.0,2.0]; figure(1) hold on for kos=kosi num=wn.^2; den=[1,2*kos*wn,wn.^2]; ss=tf(num,den) step(ss) end title(step response) hold off 程序2 w=[2:2:12]; kosi=0.7; figure(1) hold on for wn=w num=wn.^2; den=[1,2*kos*wn,wn.^2]; ss=tf(num,den) step(ss) end title(step response) hold off 2 离散系统的单位阶跃响应 格式:[y,x]=dstep(num,den,n) [y,x]=dstep(A,B,C,D,n) ss=tf(num,den) 如二阶离散系统 num=[2 -3.4 1.5]; den=[1 -1.6 0.8]; dstep(num,den) 3 多输入多输出系统 例子:求系统 的阶跃响应 A=[2.25 -5 -1.25 -0.5; 2.25 -4.25 -1.25 -0.25; 0.25 -0.5 -1.25 -1; 1.25 -1.75 -0.25 -0.75]; B=[4 6; 2 4; 2 2;0 2]; C=[0 0 0 1;0 2 0 2]; D=zeros(2,2); Figure(1);step(A,B,C,D) 4. 单位脉冲响应 单位脉冲响应函数impulse()和dimpulse()与单位阶跃函数step() 和dstep()的调用格式完全一致。 5 系统的零输入响应 对于连续系统由初始状态所引起的响应,零输入响应,可由函数initial()来求得,其调用格式为 [y,x,t]=initial(A,B,C,D,x0) [y,x,t]=initial(A,B,C,D,x0,t) 其中x0为初始状态. 同理,对于离散系统的零输入响应函数调用格式为: [y,x,t]=dinitial(A,B,C,D,x0) [y,x,t]=dinitial(A,B,C,D,x0,n) 例如:已知系统的状态空间表达式为 以T=0.5为采样周期,采用双线形变换算法转换成离散系统,然后求出离散系统的单位阶
原创力文档

文档评论(0)