您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 其它相关文档 > 控制系统仿真与CAD课程设计报告
控制系统仿真与CAD课程设计姓名:刘晓慧班级:电控(荷)131班学号:2013102340062016年7月4日选题一:二阶弹簧—阻尼系统的PID控制器设计及参数整定考虑弹簧-阻尼系统如图1所示,其被控对象为二阶环节,传递函数()Gs如下,参数为M=1kg,b=2N.s/m,k=25N/m,()1Fs。设计要求:(1)控制器为P控制器时,改变比例系数大小,分析其对系统性能的影响并绘制相应曲线。(2)控制器为PI控制器时,改变积分系数大小,分析其对系统性能的影响并绘制相应曲线。(例如当Kp=50时,改变积分系数大小)(3)设计PID控制器,选定合适的控制器参数,使闭环系统阶跃响应曲线的超调量σ%20%,过渡过程时间Ts2s,并绘制相应曲线。图1弹簧-阻尼系统示意图弹簧-阻尼系统的微分方程和传递函数为:FkxxbxM25211)()()(22sskbsMssFsXsG图2闭环控制系统结构图(一)设计P控制器,改变比例系数大小,分析其对系统性能的影响并绘制相应曲线。以下为所做的设计以及运行结果,kp取了不同的值,通过运用sim函数进行仿真,并得出超调量MP,过渡过程时间Ts的大小,通过分析所得出的结果,多次改变KP的大小直到符合题目的要求,使稳态误差等都达到要求。1、仿真运行程序[t,x,y]=sim('kp');plot(t,y);N=length(t);yss=y(N);%yss:稳态值[ymax,i]=max(y);mp=(ymax-yss)*100/yss%计算超调量mpi=N;whileabs(y(i)-yss)/yss=0.02i=i-1;endTs=t(i)%计算过渡过程时间ess=1-yss%计算静态误差2、仿真框图3、仿真运行结果改变比例系数kp大小(分别取Kp=1,10,30和50),得如下结果,通过以下数据以及得出的曲线可分析其对系统性能的影响当kp=1时:当kp=10时:当kp=30时:当kp=50时:4.综合分析:通过运行下列程序,可得到一张整合的响应曲线图,并得到不同kp值时的超调量Mp,过渡过程时间Ts和稳态误差ess。num=[1];den=[1225];sys=tf(num,den);forKp=[1,10,30,50]sys_y=feedback(Kp*sys,1);step(sys_y);holdongtext(num2str(Kp));endKp=1Kp=10Kp=30Kp=50Mp49.804456.563864.299766.4206Ts3.68563.75233.87683.9380ess0.96150.71430.45450.3333由以上的运行结果以及曲线可以看出随Kp增大,超调量Mp是逐渐变大的,Ts也是逐渐变大的,因此得出以下结论:随着Kp值的增大,系统响应超调量加大,动作灵敏,系统的响应速度加快。但因为Kp偏大,而振荡次数加多,调节时间加长。并且系统的稳态误差减小,调节应精度越高,但是系统容易产生超调,并且加大Kp只能减小稳态误差,却不能消除稳态误差。(二)设计PI控制器,改变积分时间常数大小,分析其对系统性能的影响并绘制相应曲线。以下为设计出的仿真程序等,运用sim函数进行仿真,编写程序使Kp=50,改变Ki的大小,来进行分析,直到符合题目的要求,使运行出的结果稳态误差基本很小即可。1、仿真运行程序[t,x,y]=sim('kpi');plot(t,y);N=length(t);yss=y(N);%yss:稳态值[ymax,i]=max(y);mp=(ymax-yss)*100/yss%计算超调量mpi=N;whileabs(y(i)-yss)/yss=0.02i=i-1;endTs=t(i)ess=1-yss%计算静态误差%计算过渡过程时间2、仿真框图3、仿真运行结果当Kp=50时,改变积分时间常数ki的大小,由以下的结果以及曲线可分析其对系统性能的影响当kp=50;ki=1时:当kp=50;ki=10时:当kp=50;ki=40时:当kp=50;ki=100时:4.运行结果分析:通过运行下列程序,可得到一张整合的响应曲线图,并得到当kp=50,取不同kp值时的超调量Mp,过渡过程时间Ts和稳态误差ess。num=[1];den=[1225];Kp=50;sys=tf(num,den);forTi=[1,10,40,100]sys_pi=tf(Kp*[Ti1],[Ti0]);sys_y=feedback(sys_pi*sys,1);step(sys_y,10);holdongtext(num2str(Ti));endKi=1Ki=10Ki=40Ki=100Mp57.077237.175225.089824.0156Ts5.86286.61618.56899.5052ess0.29160.08720.00140当Kp=50时,随着ki值的增大,系统的超调量变小,系统响应时间出现了波动。Ki越小,系统的超调量增大,积分速度越快,积分作用就越强,响应时间越快,但系统振荡次数就较多。稳态误差随Ki增大而减小,直到等于零。所以PI控制可以消除系统的稳态误差,提高系统的误差度。(三)设计一PID控制器,选定合适的控制器参数,使闭环系统阶跃响应曲线的超调量σ%20%,过渡过程时间Ts2s,并绘制相应曲线。以下为所设计的程序,仿真等,改变kp,ki,kd的值得出闭环阶跃响应的超调量和过渡过程时间,通过多次试验,得到的kp取20,ki取65,kd取9时运行出的结果是满足题目要求的:1、仿真运行程序[t,x,y]=sim('kpid');plot(t,y);N=length(t);yss=y(N);%yss:稳态值[ymax,i]=max(y);mp=(ymax-yss)*100/yss%计算超调量mpi=N;whileabs(y(i)-yss)/yss=0.02i=i-1;endTs=t(i)ess=1-yss%计算静态误差%计算过渡过程时间2、仿真框图3、仿真运行结果经过多次试验,当Kp=20,ki=65,看kd=9满足使闭环系统的阶跃响应曲线的超调量σ%20%,过渡过程时间ts2s,结果如下:mp=0Ts=1.4904ess=04、仿真运行曲线:从曲线和运行的结果可知,超调量mp=0%20%,过渡过程时间Ts=1.4909s2s,且没有稳态误差,此参数满足设计要求.综合分析:随着Kp增大,系统的稳态误差减小,但是系统容易产生超调,并且加大Kp只能减小稳态误差,却不能消除稳态误差,显著特点就是有差调节;PI控制器消除或减小系统的稳态误差,改善系统的稳态性能。PID控制通过积分作用消除误差,而微分控制可缩小超调量,加快反应,是综合了PI控制与PD控制长处并去除其短处的控制.选题二:Bode图法设计串联校正装置考虑一个单位负反馈控制系统,其前向通道传递函数为:()(1)(4)oKGssss设计要求:应用Bode图法设计一个串联校正装置()cGs,使得校正后系统的静态速度误差系数110vKs,相角裕量50r,幅值裕量10gKdB。一、校正前的系统1.首先根据静态速度误差系数的要求求出待校正系统的开环根轨迹增益:由于系统的开环传递函数为:()(1)(4)oKGssss根据静态速度误差系数的定义知:4)4)(1(lim)(lim00KssKssGKvss题目要求110vKs,所以140sK。可得到开环传递函数为)4)(1(40)(ssssG2.通过MATLAB绘制出在MATALAB的M文件中输入下列程序,可得到校正前系统的bode图num=40;den=conv([10],conv([11],[14]));sys=tf(num,den)margin(sys);%bode图从上图可以看出,校正前系统的静态速度误差系数110vKs,相角裕量r(PM)=-6.01deg50deg,而幅值裕量Kg(Gm)=-15dB=10dB。所以校正前的系统不满足题目的条件。二、校正后的系统在MATALAB的M文件中输入下列程序,可得到校正后系统的bode图程序:num=40;den=conv([10],conv([11],[14]));Ep=5.5;Gm=50;%相角裕量要求为50G0=tf(num,den);figure(1)margin(G0);grid;[mag,phase,w]=bode(G0);%得到相角裕量和幅值裕量phi=-180+Ep+Gm;%计算角度的值wc=spline(phase,w,phi);%样条函数表达式Gm1=spline(w,mag,wc);Gm_db=20*log10(Gm1);b=10^(-Gm_db/20);T=1/(b*(wc/10))bT=b*T;Gc=tf([bT1],[T1])G=G0*Gcfigure(2)margin(G);%校正后的bode图校正后的bode图:从上图可以看出,校正后系统的静态速度误差系数110vKs,相角裕量r(PM)=50deg,而幅值裕量Kg(Gm)=18.1=10dB。所以校正后的系统满足题目的条件。选题三:二阶系统串联校正装置的设计与分析设某被控系统的传递函数G(s)如下:)2()(ssKsG设计要求:选用合适的方法设计一个串联校正装置K(s),使闭环系统的阶跃响应曲线超调量%20%,过渡过程时间.()sT15s,开环比例系数)/1(01sKv,并分析串联校正装置中增益、极点和零点对系统性能的影响。一、设计思路方法根据题目要求采用matlab中提供的一个辅助设计闭环系统根轨迹的仿真软件Rltool,来进行根轨迹校正。打开matlab,在commandwindow下键入rltool,进入设计环境。根据设计要求:开环比例系数)/1(01sKv即20102)(lim0kkssGksv得取k=40,传递函数)2(40)(sssG二、设计步骤1、打开matlab,在CommandWindow下键入rltool,启动SISODesignTool,进入设计环境。在matlab的M文件中输入num=40;den=conv([1,0],[1,2]);sys=tf(num,den)在Matlab的命令窗口出现函数40/(s^2+2s)得到该系统的LTI对象模型sys。2、启动SISODesignTool窗口后,利用该窗口中File菜单下的命令Import,打开系统模型输入对话框窗口。采用系统默认的结构,输入选中的对象sys,将控制对象G设置为sys,控制器C设为1,其他的环节H,F均使用默认的取值1.单击OK(如图1)在SISODesignTool中会自动绘制此负反馈线性系统的根轨迹图,以及系统波特图(如图2)图1图23、点击Analysis中的otherloopresponse选择step得到闭环系统阶跃响应曲线(如图3)可以看到校正前的超调量为60.5%,过渡过程时间为3.66s(如图4),明显不满足要求。图3图4经过反复试验,得出加入零点-5.44,加入极点-37,是满足要求的,同时也可得到关于C的方程式(如图5),还有根rootlocus图以及bode图(如图6)图5图64、得到的阶跃响应曲线如下超调量16.8%20%,过渡过程时间0.742s1.5s,满足要求说明加的零点和极点是满足条件的6、编写M文件运行以得出超调量和过渡过程时间,以验证是否正确,程序如下:num1=40;den1=conv([1,0],[1,2]);num2=[0.18,1];den2=[0.027,1];[num3,den3]=series(num1,den1,num2,den2);[num,den]=cloop(num3,den3);t=0:0.005:5;y=step(num,den,t);plot(t,y);N=length(t);yss=y(N);holdon[ymax,imax]=max(y);mp=
本文标题:控制系统仿真与CAD课程设计报告
链接地址:https://www.777doc.com/doc-5725665 .html