您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 国内外标准规范 > MATLAB控制系统仿真
一、控制系统的模型与转换1.请将下面的传递函数模型输入到matlab环境。]52)1)[(2(24)(32233sssssssG)99.02.0)(1(568.0)(22zzzzzH,T=0.1ss=tf('s');G=(s^3+4*s+2)/(s^3*(s^2+2)*((s^2+1)^3+2*s+5));GTransferfunction:s^3+4s+2------------------------------------------------------s^11+5s^9+9s^7+2s^6+12s^5+4s^4+12s^3num=[100.56];den=conv([1-1],[1-0.20.99]);H=tf(num,den,'Ts',0.1)Transferfunction:z^2+0.56-----------------------------z^3-1.2z^2+1.19z-0.992.请将下面的零极点模型输入到matlab环境。请求出上述模型的零极点,并绘制其位置。)1)(6)(5()1)(1(8)(22ssssjsjssG)2.8()6.2)(2.3()(1511zzzzzH,T=0.05sz=[-1-j-1+j];p=[00-5-6-jj];G=zpk(z,p,8)Zero/pole/gain:8(s^2+2s+2)--------------------------s^2(s+5)(s+6)(s^2+1)pzmap(G)z=[00000-1/3.2-1/2.6];p=[1/8.2];H=zpk(z,p,1,'Ts',0.05)Zero/pole/gain:z^5(z+0.3125)(z+0.3846)-------------------------(z-0.122)Samplingtime:0.05pzmap(H)二、线性系统分析1.请分析下面传递函数模型的稳定性。221)(23ssssG13)50600300(13)(22ssssssGnum=[1];den=[1212];G=tf(num,den);eig(G)'ans=-2.00000.0000-1.0000i0.0000+1.0000i可见,系统有两个特征根在虚轴上,一个特征根在虚轴左侧,所以系统是临界稳定的。num=[31];den=[3006005031];G=tf(num,den);eig(G)'ans=-1.9152-0.14140.0283-0.1073i0.0283+0.1073i可见,有两个特征根在虚轴右侧,所以系统是不稳定的。2.请判定下面离散系统的稳定性。)05.025.02.0(23)(23zzzzzH)34039.804.10215.20368.791.1576.1112.2)(1234512zzzzzzzzHnum=[-32];den=[1-0.2-0.250.05];H=tf(num,den,'Ts',0.1);[eig(H)abs(eig(H))]ans=-0.50000.50000.50000.50000.20000.2000可以看出,由于各个特征根的模均小于1,所以可以判定闭环系统是稳定的。z=tf('z',0.1);H=(2.12*z^-2+11.76*z^-1+15.91)/…;(z^-5-7.368*z^-4-20.15*z^-3+102.4*z^-2+80.39*z-1-340);[eig(H)abs(eig(H))]ans=0000000000000000000000004.17244.17240.3755+0.1814i0.41700.3755-0.1814i0.4170-0.52920.5292-0.27160.27160.11930.1193可以看出,由于4.1724这个特征根的模大于1,所以可以判定闭环系统是不稳定的。3.设描述系统的传递函数为4032010958411812467284224494536546364032018576022208812266436380598251418)(2345678234567ssssssssssssssssG,假定系统具有零初始状态,请求出单位阶跃响应曲线和单位脉冲响应曲线。num=[185145982363801226642208818576040320];den=[1365464536224496728411812410958440320];G=tf(num,den)Transferfunction:18s^7+514s^6+5982s^5+36380s^4+122664s^3+22088s^2+185760s+40320-----------------------------------------------------------------------------------------s^8+36s^7+546s^6+4536s^5+22449s^4+67284s^3+118124s^2+109584s+40320step(G,10)impulse(G,10)单位阶跃响应:单位脉冲响应:三、线性系统Simulink仿真应用1.请分析下面传递函数模型阶跃响应。221)(23ssssG利用Simulink建模,建立系统仿真模型如下:单击启动仿真按钮,双击示波器得到系统的阶跃响应如下:2.请分析下面离散系统的脉冲响应。13)50600300(143)(2223sssssssG利用Simulink建模,建立系统仿真模型如下:单击启动仿真按钮,双击示波器得到系统的脉冲响应如下:3.对离散采样系统进行分析,并求出其阶跃响应。G(s)零阶保持器u(t)y(t)-+其中:2373)(23sssssG利用Simulink建模,建立系统仿真模型如下:单击启动仿真按钮,双击示波器得到系统的阶跃响应如下:4.设计控制器,使得下列系统稳定。)2.1)(2)(3()3.2)(1()(ssssssG利用Simulink建模,未连入控制器时,仿真模型和响应如下:利用Simulink建模,设计控制器:从响应输出图形可以看出,连入控制器后系统稳定,性能明显提高。四、基于MATLAB的PID控制器设计设计题目:1.应用Ziegler—Nichols算法设计PID控制器,实现系统的闭环稳定,并比较对各个系统的控制效果。3)1s(1G(s)未连入PID控制器时的系统仿真及其性能指标如下:可见,未调节时的系统性能有待提高,需设计PID控制器连入。输入:num=1;den=conv([1,1],conv([1,1],[1,1]));Step(num,den);K=dcgain(num,den)得出:K=1根据图形,得出:L=1.86T=4.4利用自定义的Ziegler_std函数求出Kp、Ti、Td输入:K=1;L=1.86;T=4.4;[num,den,Kp,Ti,Td]=Ziegler_std(3,[K,L,T])得出:num=2.64002.83871.5262den=10Kp=2.8387Ti=3.7200Td=0.9300根据得出的Kp、Ti、Td值,设计PID控制器,并利用利用Simulink仿真建模。仿真模型及其响应如下:可见,加入PID控制器调节后,系统性能明显改善。5)1s(1G(s)未连入PID控制器时的系统仿真及其性能指标如下:可见,未调节时的系统性能有待提高,需设计PID控制器连入。输入:num=1;den=conv([1,1],conv([1,1],…;conv([1,1],conv([1,1],[1,1]))));Step(num,den);K=dcgain(num,den)得出:K=1根据图形,得出:L=3.4T=6.8利用自定义的Ziegler_std函数求出Kp、Ti、Td输入:K=1;L=3.4;T=6.8;[num,den,Kp,Ti,Td]=Ziegler_std(3,[K,L,T])得出:num=4.08002.40000.7059den=10Kp=2.4000Ti=6.8000Td=1.7000根据得出的Kp、Ti、Td值,设计PID控制器,并利用利用Simulink仿真建模。仿真模型及其响应如下:可见,加入PID控制器调节后,系统性能明显改善。3)1s(1-1.5sG(s)利用Simulink建模,未连入控制器时,仿真模型和响应如下:可见,未调节时的系统性能有待提高,需设计PID控制器连入。输入:num=[-1.51];den=conv([1,1],conv([1,1],[1,1]));Step(num,den);K=dcgain(num,den)得出:K=1根据图形,得出:L=1.8T=5.7利用自定义的Ziegler_std函数求出Kp、Ti、Td输入:K=1;L=1.8T=5.7;[num,den,Kp,Ti,Td]=Ziegler_std(3,[K,L,T])得出:num=3.42003.80002.1111den=10Kp=3.8000Ti=3.6000Td=0.9000根据得出的Kp、Ti、Td值,设计PID控制器,并利用利用Simulink仿真建模。仿真模型及其响应如下:可见,加入PID控制器调节后,系统性能明显改善。五、模糊控制器设计设计任务:试设计一个模糊控制器,实现对室内温度的控制的模拟。参考输入:(1)温度18-40℃范围内分为七个论域,NBNMNSZEPSPMPB;隶属度函数满足高斯分布;(2)温度变化率-2~2℃范围内分为七个论域,NBNMNSZEPSPMPB;隶属度函数满足高斯分布;参考输出:变频空调输出的控制信号。在一定范围内分为七个论域,NBNMNSZEPSPMPB,隶属度函数为常数1。模糊推理过程,output=输入隶属度函数值*输出论域的中心值。注:本模糊程序采用PAM控制方式的压缩机,则其输出的转速范围为:0~10500转/分。控制规则:%%ifinputisNBanderrorinputisNB,thenoutputisNB;%%ifinputisNBanderrorinputisNM,thenoutputisNB;%%ifinputisNBanderrorinputisNS,thenoutputisNB;%%ifinputisNBanderrorinputisZE,thenoutputisNM;%%ifinputisNBanderrorinputisPS,thenoutputisNM;%%ifinputisNBanderrorinputisPM,thenoutputisNM;%%ifinputisNBanderrorinputisPB,thenoutputisNS;%%ifinputisNManderrorinputisNB,thenoutputisNB;%%ifinputisNManderrorinputisNM,thenoutputisNM;%%ifinputisNManderrorinputisNS,thenoutputisNM;%%ifinputisNManderrorinputisZE,thenoutputisNM;%%ifinputisNManderrorinputisPS,thenoutputisNM;%%ifinputisNManderrorinputisPM,thenoutputisNS;%%ifinputisNManderrorinputisPB,thenoutputisNS;%%ifinputisNSanderrorinputisNB,thenoutputisNM;%%ifinputisNSanderrorinputisNM,thenoutputisNS;%%ifinput
本文标题:MATLAB控制系统仿真
链接地址:https://www.777doc.com/doc-4991826 .html