




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、一、 控制系统的模型与转换1 请将下面的传递函数模型输入到matlab环境。 ,T=0.1s>> s=tf('s'); G=(s3+4*s+2)/(s3*(s2+2)*(s2+1)3+2*s+5); G Transfer function: s3 + 4 s + 2-s11 + 5 s9 + 9 s7 + 2 s6 + 12 s5 + 4 s4 + 12 s3>> num=1 0 0.56; den=conv(1 -1,1 -0.2 0.99); H=tf(num,den,'Ts',0.1) Transfer function: z2 +
2、 0.56-z3 - 1.2 z2 + 1.19 z - 0.992 请将下面的零极点模型输入到matlab环境。请求出上述模型的零极点,并绘制其位置。 ,T=0.05s>>z=-1-j -1+j; p=0 0 -5 -6 -j j; G=zpk(z,p,8) Zero/pole/gain: 8 (s2 + 2s + 2)-s2 (s+5) (s+6) (s2 + 1)>>pzmap(G)>> z=0 0 0 0 0 -1/3.2 -1/2.6; p=1/8.2; H=zpk(z,p,1,'Ts',0.05) Zero/pole/gain:z
3、5 (z+0.3125) (z+0.3846)- (z-0.122) Sampling time: 0.05>>pzmap(H)二、 线性系统分析1. 请分析下面传递函数模型的稳定性。 >> num=1;den=1 2 1 2;G=tf(num,den);eig(G)'ans =-2.0000 0.0000 - 1.0000i 0.0000 + 1.0000i可见,系统有两个特征根在虚轴上,一个特征根在虚轴左侧,所以系统是临界稳定的。>> num=3 1;den=300 600 50 3 1;G=tf(num,den);eig(G)'ans
4、= -1.9152 -0.14140.0283 - 0.1073i 0.0283 + 0.1073i可见,有两个特征根在虚轴右侧,所以系统是不稳定的。2. 请判定下面离散系统的稳定性。 >> num=-3 2; den=1 -0.2 -0.25 0.05; H=tf(num,den,'Ts',0.1); eig(H) abs(eig(H) ans = -0.5000 0.5000 0.5000 0.50000.2000 0.2000可以看出,由于各个特征根的模均小于1,所以可以判定闭环系统是稳定的。>> z=tf('z',0.1); H=
5、(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 = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4.1724 4.1724 0.3755 + 0.1814i 0.4170 0.3755 - 0.1814i 0.4170 -0.5292 0.5292 -0.2716 0.2716 0.1193 0.1193 可以看出,由于4.1724这个特征根的模大于1,所以可以判定闭环系统是不稳定的。3.
6、设描述系统的传递函数为,假定系统具有零初始状态,请求出单位阶跃响应曲线和单位脉冲响应曲线。>> num=18 514 5982 36380 122664 22088 185760 40320; den=1 36 546 4536 22449 67284 118124 109584 40320; G=tf(num,den) Transfer function: 18 s7 + 514 s6 + 5982 s5 + 36380 s4 + 122664 s3 + 22088 s2 + 185760 s + 40320-s8 + 36 s7 + 546 s6 + 4536 s5 + 224
7、49 s4 + 67284 s3 + 118124 s2 + 109584 s + 40320 >> step(G,10)>> impulse(G,10)单位阶跃响应:单位脉冲响应:三、 线性系统Simulink仿真应用1. 请分析下面传递函数模型阶跃响应。 利用Simulink建模,建立系统仿真模型如下:单击启动仿真按钮,双击示波器得到系统的阶跃响应如下:2. 请分析下面离散系统的脉冲响应。 利用Simulink建模,建立系统仿真模型如下:单击启动仿真按钮,双击示波器得到系统的脉冲响应如下:3. 对离散采样系统进行分析,并求出其阶跃响应。 其中:利用Simulink建
8、模,建立系统仿真模型如下:单击启动仿真按钮,双击示波器得到系统的阶跃响应如下:4. 设计控制器,使得下列系统稳定。 利用Simulink建模,未连入控制器时,仿真模型和响应如下:利用Simulink建模,设计控制器:从响应输出图形可以看出,连入控制器后系统稳定,性能明显提高。四、 基于MATLAB的PID 控制器设计设计题目:1. 应用Ziegler Nichols算法设计PID控制器,实现系统的闭环稳定,并比较对各个系统的控制效果。 未连入PID控制器时的系统仿真及其性能指标如下: 可见,未调节时的系统性能有待提高,需设计PID控制器连入。输入:>> num=1; den=con
9、v( 1,1,conv( 1,1,1,1 ); Step(num,den); K=dcgain (num,den)得出:K =1根据图形,得出:L=1.86 T=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.6400 2.8387 1.5262den =1 0Kp =2.8387Ti =3.7200Td =0.9300根据得出的Kp、Ti、Td值,设计PID控制器,并利用利用Simulink仿真建模。仿真模型及其响应
10、如下:可见,加入PID控制器调节后,系统性能明显改善。未连入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.4 T=6.8利用自定义的Ziegler_std函数求出Kp、Ti、Td输入:>> K=1; L=3.4; T=6.8; num,den,Kp,Ti,Td=Ziegler_std (
11、3,K,L,T)得出:num = 4.0800 2.4000 0.7059den = 1 0Kp = 2.4000Ti = 6.8000Td =1.7000根据得出的Kp、Ti、Td值,设计PID控制器,并利用利用Simulink仿真建模。仿真模型及其响应如下:可见,加入PID控制器调节后,系统性能明显改善。利用Simulink建模,未连入控制器时,仿真模型和响应如下:可见,未调节时的系统性能有待提高,需设计PID控制器连入。输入:>>num=-1.5 1; den=conv( 1,1,conv( 1,1,1,1 ); Step(num,den); K=dcgain (num,de
12、n)得出:K =1根据图形,得出:L=1.8 T=5.7利用自定义的Ziegler_std函数求出Kp、Ti、Td输入:>> K=1; L=1.8 T=5.7; num,den,Kp,Ti,Td=Ziegler_std (3,K,L,T)得出:num = 3.4200 3.8000 2.1111den =1 0Kp =3.8000Ti =3.6000Td =0.9000根据得出的Kp、Ti、Td值,设计PID控制器,并利用利用Simulink仿真建模。仿真模型及其响应如下:可见,加入PID控制器调节后,系统性能明显改善。五、 模糊控制器设计设计任务:试设计一个模糊控制器,实现对室内
13、温度的控制的模拟。参考输入:(1)温度18-40范围内分为七个论域,NB NM NS ZE PS PM PB;隶属度函数满足高斯分布;(2)温度变化率-2 2范围内分为七个论域,NB NM NS ZE PS PM PB;隶属度函数满足高斯分布;参考输出:变频空调输出的控制信号。在一定范围内分为七个论域,NB NM NS ZE PS PM PB,隶属度函数为常数1。模糊推理过程,output=输入隶属度函数值*输出论域的中心值。注:本模糊程序采用PAM控制方式的压缩机,则其输出的转速范围为:010500转/分。控制规则:% % if input is NB and errorinput is N
14、B, then output is NB;% % if input is NB and errorinput is NM, then output is NB;% % if input is NB and errorinput is NS, then output is NB;% % if input is NB and errorinput is ZE, then output is NM;% % if input is NB and errorinput is PS, then output is NM;% % if input is NB and errorinput is PM, th
15、en output is NM;% % if input is NB and errorinput is PB, then output is NS;% % if input is NM and errorinput is NB, then output is NB;% % if input is NM and errorinput is NM, then output is NM;% % if input is NM and errorinput is NS, then output is NM;% % if input is NM and errorinput is ZE, then ou
16、tput is NM;% % if input is NM and errorinput is PS, then output is NM;% % if input is NM and errorinput is PM, then output is NS;% % if input is NM and errorinput is PB, then output is NS;% % if input is NS and errorinput is NB, then output is NM;% % if input is NS and errorinput is NM, then output
17、is NS;% % if input is NS and errorinput is NS, then output is NS;% % if input is NS and errorinput is ZE, then output is NS;% % if input is NS and errorinput is PS, then output is NS;% % if input is NS and errorinput is PM, then output is ZE;% % if input is NS and errorinput is PB, then output is ZE
18、;% % if input is ZE and errorinput is NB, then output is NS;% % if input is ZE and errorinput is NM, then output is ZE;% % if input is ZE and errorinput is NS, then output is ZE;% % if input is ZE and errorinput is ZE, then output is ZE;% % if input is ZE and errorinput is PS, then output is ZE;% %
19、if input is ZE and errorinput is PM, then output is PS;% % if input is ZE and errorinput is PB, then output is PS;% % if input is PS and errorinput is NB, then output is ZE;% % if input is PS and errorinput is NM, then output is PS;% % if input is PS and errorinput is NS, then output is PS;% % if in
20、put is PS and errorinput is ZE, then output is PS;% % if input is PS and errorinput is PS, then output is PS;% % if input is PS and errorinput is PM, then output is PM;% % if input is PS and errorinput is PB, then output is PM;% % if input is PM and errorinput is NB, then output is PS;% % if input i
21、s PM and errorinput is NM, then output is PS;% % if input is PM and errorinput is NS, then output is PM;% % if input is PM and errorinput is ZE, then output is PM;% % if input is PM and errorinput is PS, then output is PM;% % if input is PM and errorinput is PM, then output is PM;% % if input is PM
22、and errorinput is PB, then output is PB;% % if input is PB and errorinput is NB, then output is PS;% % if input is PB and errorinput is NM, then output is PM;% % if input is PB and errorinput is NS, then output is PM;% % if input is PB and errorinput is ZE, then output is PM;% % if input is PB and e
23、rrorinput is PS, then output is PB;% % if input is PB and errorinput is PM, then output is PB;% % if input is PB and errorinput is PB, then output is PB;1.输入为:程序为:>> x1 = (18:0.1:40)'y0 = gaussmf(x1, 1 18);y1 = gaussmf(x1, 1 21);y2 = gaussmf(x1, 1 25);y3 = gaussmf(x1, 1 29);y4 = gaussmf(x1
24、, 1 33);y5 = gaussmf(x1, 1 37);y6 = gaussmf(x1, 1 40);plot(x1,y0 y1 y2 y3 y4 y5 y6)2.误差图:程序为:>> x1 = (-2:0.1:2)'y0 = gaussmf(x1, 0.5 -2);y1 = gaussmf(x1, 0.5 -1.3);y2 = gaussmf(x1, 0.5 -0.7);y3 = gaussmf(x1, 0.5 0);y4 = gaussmf(x1, 0.5 0.7);y5 = gaussmf(x1, 0.5 1.3);y6 = gaussmf(x1, 0.5 2)
25、;plot(x1,y0 y1 y2 y3 y4 y5 y6)3.程序为;x=35;ex=-0.8;% define input type in fuzzy zoney0 = gaussmf(x, 1 18);y1 = gaussmf(x, 1 21);y2 = gaussmf(x, 1 25);y3 = gaussmf(x, 1 29);y4 = gaussmf(x, 1 33);y5 = gaussmf(x, 1 37);y6 = gaussmf(x, 1 40);a=y0 y1 y2 y3 y4 y5 y6;b=max(a);% caculate input in fuzzy zone,g
26、et input_type and input_authorityvalueif x<=40 & x>=18 if b=a(1) type='NB' authorityvalue=y0; elseif b=a(2) type='NM' authorityvalue=y1; elseif b=a(3) type='NS' authorityvalue=y2; elseif b=a(4) type='ZE' authorityvalue=y3;elseif b=a(5) type='PS' auth
27、orityvalue=y4;elseif b=a(6) type='PM' authorityvalue=y5;elseif b=a(7) type='PB' authorityvalue=y6;endelse if x>40 type='PB' authorityvalue=1; elseif x<18 type='NB' authorityvalue=1; endend type authorityvalue%error calculate.ey0 = gaussmf(x, 0.5 -2);ey1 = gaussm
28、f(x, 0.5 -1.3);ey2 = gaussmf(x, 0.5 -0.7);ey3 = gaussmf(x, 0.5 0);ey4 = gaussmf(x, 0.5 0.7);ey5 = gaussmf(x, 0.5 1.3);ey6 = gaussmf(x, 0.5 2);a=ey0 ey1 ey2 ey3 ey4 ey5 ey6;b=max(a);% caculate input in fuzzy zone,get input_type and input_authorityvalueif x<=2 & x>=-2 if b=a(1) etype='NB
29、' eauthorityvalue=y0; elseif b=a(2) etype='NM' eauthorityvalue=y1; elseif b=a(3) etype='NS' eauthorityvalue=y2; elseif b=a(4) etype='ZE' eauthorityvalue=y3; elseif b=a(5) etype='PS' eauthorityvalue=y4; elseif b=a(6) etype='PM' eauthorityvalue=y5; elseif b=
30、a(7) etype='PB' eauthorityvalue=y6; endelse if x>2 etype='PB' eauthorityvalue=1; elseif x<-2 etype='NB' eauthorityvalue=1; endend etype eauthorityvalue% caculate output by if type='NB'& etype='NB' out=authorityvalue*0.001; % if input is NB and errori
31、nput is NB, then output is NB; elseif type='NB'& etype='NM' out=authorityvalue*0.001; % if input is NB and errorinput is NM, then output is NB; elseif type='NB'& etype='NS' out=authorityvalue*0.001; % if input is NB and errorinput is NS, then output is NB; els
32、eif type='NB'& etype='ZE' out=authorityvalue*1750; % if input is NB and errorinput is ZE, then output is NM; elseif type='NB'& etype='PS' out=authorityvalue*1750; % if input is NB and errorinput is PS, then output is NM; elseif type='NB'& etype=
33、9;PM' out=authorityvalue*1750; % if input is NB and errorinput is PM, then output is NM; elseif type='NB'& etype='PB' out=authorityvalue*3500; % if input is NB and errorinput is PB, then output is NS; elseif type='NM'& etype='NB' out=authorityvalue*0.001;
34、% if input is NM and errorinput is NB, then output is NB; elseif type='NM'& etype='NM' out=authorityvalue*1750; % if input is NM and errorinput is NM, then output is NM;elseif type='NM'& etype='NS' out=authorityvalue*1750; % if input is NM and errorinput is NS
35、, then output is NM;elseif type='NM'& etype='ZE' out=authorityvalue*1750; % if input is NM and errorinput is ZE, then output is NM;elseif type='NM'& etype='PS' out=authorityvalue*1750; % if input is NM and errorinput is PS, then output is NM;elseif type='N
36、M'& etype='PM' out=authorityvalue*3500; % if input is NM and errorinput is PM, then output is NS;elseif type='NM'& etype='PB' out=authorityvalue*3500; % if input is NM and errorinput is PB, then output is NS;elseif type='NS'& etype='NB' out=aut
37、horityvalue*1750; % if input is NS and errorinput is NB, then output is NM;elseif type='NS'& etype='NM' out=authorityvalue*3000; % if input is NS and errorinput is NM, then output is NS;elseif type='NS'& etype='NS' out=authorityvalue*3000; % if input is NS and
38、 errorinput is NS, then output is NS;elseif type='NS'& etype='ZE' out=authorityvalue*3000; % if input is NS and errorinput is ZE, then output is NS;elseif type='NS'& etype='PS' out=authorityvalue*3000; % if input is NS and errorinput is PS, then output is NS;e
39、lseif type='NS'& etype='PM' out=authorityvalue*5250; % if input is NS and errorinput is PM, then output is ZE;elseif type='NS'& etype='PB' out=authorityvalue*5250; % if input is NS and errorinput is PB, then output is ZE;elseif type='ZE'& etype=
40、9;NB' out=authorityvalue*3500; % if input is ZE and errorinput is NB, then output is NS;elseif type='ZE'& etype='NM' out=authorityvalue*5250; % if input is ZE and errorinput is NM, then output is ZE;elseif type='ZE'& etype='NS' out=authorityvalue*5250; % i
41、f input is ZE and errorinput is NS, then output is ZE;elseif type='ZE'& etype='ZE' out=authorityvalue*5250; % if input is ZE and errorinput is ZE, then output is ZE;elseif type='ZE'& etype='PS' out=authorityvalue*5250; % if input is ZE and errorinput is PS, th
42、en output is ZE;elseif type='ZE'& etype='PM' out=authorityvalue*7000; % if input is ZE and errorinput is PM, then output is PS;elseif type='ZE'& etype='PB' out=authorityvalue*7000; % if input is ZE and errorinput is PB, then output is PS;elseif type='PS
43、9;& etype='NB' out=authorityvalue*5250; % if input is PS and errorinput is NB, then output is ZE;elseif type='PS'& etype='NM' out=authorityvalue*7000; % if input is PS and errorinput is NM, then output is PS;elseif type='PS'& etype='NS' out=authori
44、tyvalue*7000; % if input is PS and errorinput is NS, then output is PS;elseif type='PS'& etype='ZE' out=authorityvalue*7000; % if input is PS and errorinput is ZE, then output is PS;elseif type='PS'& etype='PS' out=authorityvalue*7000; % if input is PS and err
45、orinput is PS, then output is PS;elseif type='PS'& etype='PM' out=authorityvalue*8750; % if input is PS and errorinput is PM, then output is PM;elseif type='PS'& etype='PB' out=authorityvalue*8750; % if input is PS and errorinput is PB, then output is PM;elsei
46、f type='PM'& etype='NB' out=authorityvalue*7000; % if input is PM and errorinput is NB, then output is PS;elseif type='PM'& etype='NM' out=authorityvalue*7000; % if input is PM and errorinput is NM, then output is PS;elseif type='PM'& etype='NS' out=authorityvalue*8750; % if input is PM and errorinput is NS, then output is PM;elseif type='PM'&a
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 帮助考生的监理工程师试题及答案
- 学术论文投资咨询工程师试题及答案
- 完善备考育婴师考试试题及答案清单
- 全方位支持的陪诊师考试试题及答案
- 动物行为矫正初步试题及答案
- 2024年人力资源管理师考前资料试题及答案
- 黑龙江省七台河市重点中学2024-2025学年高三下第11次大练习英语试题含解析
- 传感器与检测技术课件 项目一识别与选用传感器1.1 识别传感器
- 黑龙江省哈尔滨三十二中2025届高三历史试题周练试卷含解析
- 黑龙江省哈尔滨市尚志市达标名校2025年初三中考冲刺压轴卷(一)化学试题含解析
- 澳大利亚PSC检查经过
- 01-14江苏大学车辆工程考研复试真题答案
- TMYZX 001-2021 酿酒专用小麦原粮
- 2023年湖北国土资源职业学院高职单招(数学)试题库含答案解析
- GB/T 37910.1-2019焊缝无损检测射线检测验收等级第1部分:钢、镍、钛及其合金
- 雷锋叔叔你在哪里教学反思
- (新版)国家统计执法证资格考试备考题库(含答案)
- 项目验收单标准模板
- 24式太极拳教案(1~4课)
- 小学 三年级 心理健康《最好的老师-兴趣的作用》教学设计
- DB12T 1040-2021 建筑工程规划管理技术规范
评论
0/150
提交评论