控制系统建模分析设计和仿真.docx
《控制系统建模分析设计和仿真.docx》由会员分享,可在线阅读,更多相关《控制系统建模分析设计和仿真.docx(12页珍藏版)》请在冰点文库上搜索。
控制系统建模分析设计和仿真
北京理工大学珠海学院
《控制系统计算机仿真》
课程设计说明书
题目:
控制系统建模、分析、设计和仿真
学院:
信息学院
专业班级:
学号:
学生姓名:
指导教师:
胡克
2016年6月日
北京理工大学珠海学院
课程设计任务书
2015~2016学年第2学期
学生姓名:
专业班级:
指导教师:
胡克工作部门:
信息学院
一、课程设计题目
《控制系统建模、分析、设计和仿真》
本课程设计共列出10个同等难度的设计题目,编号为:
[0号题]、[1号题]、[2号题]、[3号题]、[4号题]、[5号题]、[6号题]、[7号题]、[8号题]、[9号题]。
学生必须选择与学号尾数相同的题目完成课程设计。
例如,学号为13xxxxxxxx2的学生必须选做[2号题]。
二、课程设计内容
(一)《控制系统建模、分析、设计和仿真》课题设计内容
[0号题]控制系统建模、分析、设计和仿真
设连续被控对象的实测传递函数为:
用零阶保持器离散化,采样周期取0.1秒,设计一单位加速度信号输入时的最少拍有波纹控制器D(z)。
具体要求见
(二)。
S^2[(s+1)(s+3)(s+7)]
[1号题]控制系统建模、分析、设计和仿真
设连续被控对象的实测传递函数为:
用零阶保持器离散化,采样周期取0.1秒,设计一单位加速度信号输入时的最少拍有波纹控制器D(z)。
具体要求见
(二)。
[2号题]控制系统建模、分析、设计和仿真
设连续被控对象的实测传递函数为:
用零阶保持器离散化,采样周期取0.2秒,设计一单位加速度信号输入时的最少拍有波纹控制器D(z)。
具体要求见
(二)。
[3号题]控制系统建模、分析、设计和仿真
设连续被控对象的实测传递函数为:
用零阶保持器离散化,采样周期取0.2秒,设计一单位加速度信号输入时的最少拍有波纹控制器D(z)。
具体要求见
(二)。
[4号题]控制系统建模、分析、设计和仿真
设连续被控对象的实测传递函数为:
用零阶保持器离散化,采样周期取0.05秒,设计一单位加速度信号输入时的最少拍有波纹控制器D(z)。
具体要求见
(二)。
[5号题]控制系统建模、分析、设计和仿真
设连续被控对象的实测传递函数为:
用零阶保持器离散化,采样周期取0.05秒,设计一单位加速度信号输入时的最少拍有波纹
控制器D(z)。
具体要求见
(二)。
[6号题]控制系统建模、分析、设计和仿真
设连续被控对象的实测传递函数为:
用零阶保持器离散化,采样周期取0.01秒,设计一单位加速度信号输入时的最少拍有波纹
控制器D(z)。
具体要求见
(二)。
[7号题]控制系统建模、分析、设计和仿真
设连续被控对象的实测传递函数为:
用零阶保持器离散化,采样周期取0.01秒,设计一单位加速度信号输入时的最少拍有波纹
控制器D(z)。
具体要求见
(二)。
[8号题]控制系统建模、分析、设计和仿真
设连续被控对象的实测传递函数为:
用零阶保持器离散化,采样周期取0.02秒,设计一单位加速度信号输入时的最少拍有波纹
控制器D(z)。
具体要求见
(二)。
[9号题]控制系统建模、分析、设计和仿真
设连续被控对象的实测传递函数为:
用零阶保持器离散化,采样周期取0.02秒,设计一单位加速度信号输入时的最少拍有波纹
控制器D(z)。
具体要求见
(二)。
(二)《控制系统建模、分析、设计和仿真》课题设计要求及评分标准【共100分】
1、求被控对象传递函数G(s)的MATLAB描述。
(5分)
>>z=[-2-5];p=[00-1-3-7];k=888;
>>Gs=zpk(z,p,k)
运行结果:
Zero/pole/gain:
888(s+2)(s+5)
---------------------
s^2(s+1)(s+3)(s+7)
2、求被控对象脉冲传递函数G(z)。
(8分)
Matlab输入
>>Gz=c2d(Gs,0.1,'zoh')
运行结果
Zero/pole/gain:
0.13473(z+3.403)(z-0.8187)(z-0.6065)(z+0.2408)
--------------------------------------------------
(z-1)^2(z-0.9048)(z-0.7408)(z-0.4966)
Samplingtime:
0.1
3、转换G(z)为零极点增益模型并按z-1形式排列。
(5分)
Matlab输入
>>[a,b,c]=zpkdata(Gz)
运行结果
a=[4x1double]
b=[5x1double]
c=0.1347
Matlab输入
>>Gz=zpk(a,b,c,0.1,'variable','z^-1')
运行结果
Zero/pole/gain:
0.13473z^-1(1+3.403z^-1)(1-0.8187z^-1)(1-0.6065z^-1)(1+0.2408z^-1)
-----------------------------------------------------------------------
(1-z^-1)^2(1-0.9048z^-1)(1-0.7408z^-1)(1-0.4966z^-1)
Samplingtime:
0.1
4、确定误差脉冲传递函数Ge(z)形式,满足单位加速度信号输入时闭环稳态误差为零和实际闭环系统稳
定的要求。
(15分)
Matlab输入
>>symszb0b1a0a1a2a3
>>Gez=(1-z^-1)^3*(1+b0*z^-1)
运行结果
Gez=(1-1/z)^3*(1+b0/z)
5、确定闭环脉冲传递函数Gc(z)形式,满足控制器D(z)可实现、最少拍和实际闭环系统稳定的要求。
(17分)
Matlab输入
>>Gcz=z^-1*(1+3.403*z^-1)*(a0+a1*z^-1+a2*z^-2)
运行结果
Gcz=1/z*(1+3403/1000/z)*(a0+a1/z+a2/z^2)
6、根据4、5、列写方程组,求解Gc(z)和Ge(z)中的待定系数并最终求解Gc(z)和Ge(z)。
(20分)
1)选择Ge(z),按单位加速度信号输入,Ge(z)中应含有(1-z-1)3因子,故设
Ge(z)=(1-z-1)3F2(z)
2)选择Gc(z),因G(z)分子有z-1的因子,又有不稳定的零点因子(1+2.904z-1),所以设
Gc(z)=z-1(1+3.403z-1)F1(z);
根据Ge(z)中(1-z-1)3因子为3阶,可知F1(z)中有3个未知数,故设
F1(z)=a0+a1z-1+a2z-2,代入Gc(z):
Gc(z)=z-1(1+3.403z-1)F1(z)=z-1(1+3.403z-1)(a0+a1z-1+a2z-2)
3)根据Gc和Ge的最高阶应保持一致的原则,可设F2(z)=1+b0z-1,代入Ge(z):
Ge(z)=(1-z-1)3(1+b0z-1)
4)因Ge=1-Gc,故只需求出a0,a1,a2,b0即可得出Gc(z)和Ge(z)的表达式
列方程求出a、b各系数:
1)对于Ge:
当z=1时,Ge=0,Gc=1-Ge=1,Gc-1=0;可列出下式f1
2)对于Ge的一阶导数:
当z=1时,Ge’=Gc’=0;可列出下式f2
3)对于Ge的二阶导数:
当z=1时,Ge”=Gc”=0;可列出下式f3
4)对于Gc:
当z=-3.152时,Gc=0,Ge-1=0;可列出下式f4
5)对于Gc:
当z趋于无穷时,Gc=0,Ge-1=0
Matlab输入
>>f1=subs(Gcz,z,1)-1
f1=4403/1000*a0+4403/1000*a1+4403/1000*a2-1
>>f2=subs(diff(Gcz,1),z,1)
f2=-3903/500*a0-12209/1000*a1-4153/250*a2
>>f3=subs(diff(Gcz,2),z,1)
f3=11209/500*a0+11709/250*a1+4003/50*a2
>>[a0ja1ja2j]=solve(f1,f2,f3)
a0j=99706454000/85358358827
a1j=-126270272000/85358358827
a2j=45950227000/85358358827
>>A=double([a0ja1ja2j])
A=
1.1681-1.47930.5383
>>Gcz=subs(Gcz,[a0a1a2],A)
Gcz=
1/z*(1+3403/1000/z)*(2630310348345151/2251799813685248-3331078278342513/2251799813685248/z+2424383833506079/4503599627370496/z^2)
>>Gez=(1-z^-1)^3*(1+b0*z^-1)
Gez=
(1-1/z)^3*(1+b0/z)
>>f4=subs(Gez,z,-3.403)-1
f4=
45950227000/39408131827-85358358827000/134105872607281*b0
>>boj=solve(f4)
boj=
/853********
>>B=double(boj)
B=
1.8319
>>Gez=subs(Gez,[1b0],[1boj])
Gez=
(1-1/z)^3*(1+156368622481/85358358827/z)
7、求针对单位加速度信号输入的最少拍有波纹控制器D(z)并说明D(z)的可实现性。
(10分)
>>Gz=0.13473*z^-1*(1+3.403*z^-1)*(1-0.8187*z^-1)*(1-0.6065*z^-1)*(1+0.2408*z^-1)/(1-z^-1)^2/(1-0.9048*z^-1)/(1-0.7408*z^-1)/(1-0.4966*z^-1)
Gz=13473/100000/z*(1+3403/1000/z)*(1-8187/10000/z)*(1-1213/2000/z)*(1+301/1250/z)/(1-1/z)^2/(1-1131/1250/z)/(1-463/625/z)/(1-2483/5000/z)
>>Dz=Gcz/Gez/Gz
Dz=100000/13473*(2630310348345151/2251799813685248-3331078278342513/2251799813685248/z+2424383833506079/4503599627370496/z^2)/(1-1/z)/(1+156368622481/85358358827/z)/(1-8187/10000/z)/(1-1213/2000/z)/(1+301/1250/z)*(1-1131/1250/z)*(1-463/625/z)*(1-2483/5000/z)
8、用图形仿真方法(Simulink)分析单位加速度信号输入时闭环系统动态性能和稳态性能。
(20分)
>>[N,D]=numden(simplify(Dz));
>>numD=sym2poly(N)
numD=
1.0e+039*
1.0963-3.73685.1101-3.51241.2136-0.1682
>>denD=sym2poly(D)
denD=
1.0e+038*
1.2645-0.4457-3.36843.0561-0.2295-0.2770
>>[nums,dens]=zp2tf(z,p,k)
nums=
[0,0,0,0,0,444*x-444*z+1/2*conj(888*x-888*z)]
dens=
111312100
三、进度安排
6月27日:
下达课程设计任务书;复习控制理论和计算机仿真知识,收集资料、熟悉仿真工具;确定
设计方案和步骤。
6月28-30日:
编程练习,程序设计;仿真调试,图形仿真参数整定;总结整理设计、仿真结果,撰写课程设计说明书。
7月1日:
完成程序仿真调试和图形仿真调试;完成课程设计说明书;课程设计答辩总结。
四、基本要求
1.学生应按照课程设计任务书的要求独立分析、解决问题,按计划完成课程设计任务;
2.不得抄袭或找人代做,否则按考试作弊处理;
3.学生在完成课程设计时须提交不少于3000字课程设计说明书;说明书结构为:
(1)封面,
(2)目录
(3)任务书,
(4)摘要与关键词(中英对照),
(5)课程设计的目的
(6)课程设计用的仪器与器件
(7)课程设计的内容
(8)心得体会
(9)参考文献
(10)附录
教研室主任签名:
苏禹
2016年6月15日
1.0963-3.73685.1101-3.51241.2136-0.1682
1.2645-0.4457-3.36843.0561-0.2295-0.2770
z=[-2-5];p=[00-1-3-7];k=888;
Gs=zpk(z,p,k)
Gz=c2d(Gs,0.1,'zoh')
[a,b,c]=zpkdata(Gz)
Gz=zpk(a,b,c,0.1,'variable','z^-1')
symszb0a0a1a2
Gez=(1-z^-1)^3*(1+b0*z^-1)
Gcz=z^-1*(1+3.403*z^-1)*(a0+a1*z^-1+a2*z^-2)
f1=subs(Gcz,z,1)-1
f2=subs(diff(Gcz,1),z,1)
f3=subs(diff(Gcz,2),z,1)
[a0ja1ja2j]=solve(f1,f2,f3)
A=double([a0ja1ja2j])
Gcz=subs(Gcz,[a0a1a2],A)
Gez=(1-z^-1)^3*(1+b0*z^-1)
f4=subs(Gez,z,-3.403)-1
boj=solve(f4)
B=double(boj)
Gez=subs(Gez,[1b0],[1boj])
Gz=0.13473*z^-1*(1+3.403*z^-1)*(1-0.8187*z^-1)*(1-0.6065*z^-1)*(1+0.2408*z^-1)/(1-z^-1)^2/(1-0.9048*z^-1)/(1-0.7408*z^-1)/(1-0.4966*z^-1)
Dz=Gcz/Gez/Gz
[N,D]=numden(simplify(Dz));
numD=sym2poly(N)
denD=sym2poly(D)
z=[-2-5]';p=[00-1-3-7]';k=888;%求G(s)的tf表达式的系数
[nums,dens]=zp2tf(z,p,k)