第一篇:《控制系统仿真与CAD》学习的感想
《控制系统仿真与CAD》学习的感想
学习了《控制系统仿真与CAD》这门课程。在这一过程中我学了很多东西,最直接的就是将控制理论和MATLAB软件联系起来,用计算机来仿真在《自动控制原理》中所学的内容,即利用MATLAB软件来对自动控制系统进行仿真,以验证所学的知识并且得到比较直观的结论。
控制系统是指由控制主体、控制客体和控制媒体组成的具有自身目标和功能的管理系统。控制系统意味着通过它可以按照所希望的方式保持和改变机器、机构或其他设备内任何感兴趣或可变化的量。控制系统同时是为了使被控制对象达到预定的理想状态而实施的。控制系统仿真是建立在控制系统模型基础之上的控制系统动态过程试验,目的是通过试验进行系统方案论证,选择系统结构和参数,验证系统的性能指标等。
MATLAB不仅仅是一门编程语言,还是一个集成的软件平台,它包含以下几个主要部分:MATLAB语言、集成工作环境、MATLAB图形系统、数学函数库、交互式仿真环境Simulink、编译器、应用程序接口API、工具箱、Notebook工具。而在控制系统CAD中我们较多的是使用MATLAB数学函数库中的函数来对控制系统进行仿真与处理。另外,也利用MATLAB交互式仿真环境Simulink来构建系统的结构框图,这样更直接的应用于不知道系统传递函数的情况下来得到系统的仿真结果,从而省去了计算传递函数的复杂计算。
MATLAB它具有丰富的可用于控制系统分析和设计的函数,MATLAB的控制系统工具箱提供对线性系统分析、设计和建模的各种算法;MATLAB的仿真工具箱(Simulink)提供了交互式操作的动态系统建模、仿真、分析集成环境。通过在传递函数的建立、绘制响应的曲线等方面谈了我学习的经历,以及整个对控制系统仿真的整体过程。
在学习过程中还有利用Simulink工具箱绘出系统的结构框图,再调用这个框图来产生出传递函数再进行仿真计算。这样的话可以更方便的对控制系统进行仿真与设计,而不用去通过复杂的方式去求去传递函数,然后再去计算响应,绘制响应曲线。MATLAB软件的强大的功能和优点以及MATLAB语言的特点,在控制系统仿真中带来了很大帮助,在实际中经常将控制系统的数学模型用零点、极点和增益来描述,在对于单神经元自适应PID控制,通过仿真定性的分析了单神经元PID控制中比例学习率、积分学习率、微分学习率和增益K等参数在控制中所起到的作用得出:
(1)在积分学习率、微分学习率不变的情况下,比例系数学习率越大则超调量越小,但是响应速度也会越慢;
(2)在比例学习率、微分学习率不变的情况下,积分系数学习率越大则响应会越快,但是超调量也会越大;
(3)在比例学习率、积分学习率不变的情况下,微分学习率对单神经元PID控制器的控制效果影响不大;
(4)K是系统最敏感的参数,K值增大、减小相当于P、I、D三项同时增加、减小,同时K 值过大会使系统发生振荡,导致系统发散,所以对于K值应合理选择。
通过本次学习,学习了薛教授的控制系统仿真课程,结合自己在教学工作中总结的经验教训,使我更进一步加深了怎样分析问题和解决问题,加强了对已学过知识的理解,增强了实际应用能力,同时也开阔了视野,使我对《控制系统仿真与CAD》有了新的理解。
首先,基于MATLAB仿真环境平台,尽量将控制系统理论的学习与实际应用结合在一起,用控制系统设计和试验结果为依据,加深学生对理论知识的形象理解,为学生提供了一种重要的数学建模的辅助工具。本课程具有很强的实践性,实践是一个必要的环节,学习该课程主要是为了将其应用于控制系统的分析与设计,因此培养学生的实践能力极为重要。
其次,要给学生具体的任务,同时注意知识点与实际模型的结合,让学生在完成任务和解决实际问题的过程中学习,增加学生的学习兴趣,提高学习效果。首先,教师讲课的水平必须提高,讲课方式必须有激情,才能保证学生得以继续学习提供最基本的学习兴趣;其次,在任何一门课开始之前,必须跟学生阐述此门课程与实际生活的相关性,并列举一二三实例最好加以演示,这样可大大提高学生学习此门课程的兴趣;然后,充分利用课程内实验环节,多设计几个与实际例子息息相关的课题,让学生独立或者分组去完成;最后,实时鼓励学生,给学生信心。
第三,重视发展学生的智力,主要包括观察能力,实验操作能力、思维能力、想象能力和记忆能力等.教学的根本任务是教会学生如何学习.只会传播真理的还不能算好教师,只有在传播真理的同时,又能传播发现真理方法的才是好教师。学习过程中,不仅要看到前人的科学结论,对于后人创造发展所起的巨大作用,而且还要看到前人在成功和失败中,曾经使用过的一些科学方法,他们对科学真理的执着追求的信念和百折不挠的坚强意志,对人类社会的发展所起的巨大影响。
最后,MALAB是一个作为仿真实验所用的强大软件,只有通过实验或仿真,才证明理论或方法的正确性和有效性。通过实验、仿真,提高学生对研究的兴趣,从而反过来激发学生对理论研究的热情,让学生通过MATLAB仿真彻底理解和掌握这些结论。
虽然学习结束了,但对控制系统的仿真仍要伴随在我以后的学习和工作中。今后,对控制系统的仿真与设计也将有更加实际的内容,继续学习,不断深入,努力将MATLA这个软件更好的应用于对控制系统的仿真和设计上。
第二篇:控制系统仿真与CAD课程设计报告..
控制系统仿真与课程设计
学
院:物流工程学院 专
业:测控技术与仪器 班
级:测控102 姓
名:杨红霞 学
号:201010233037 指导教师:兰莹
完成日期:2013年7月4日CAD
一、目的和任务
配合《控制系统仿真与CAD》课程的理论教学,通过课程设计教学环节,使学生掌握当前流行的演算式MATLAB语言的基本知识,学会运用MATLAB语言进行控制系统仿真和辅助设计的基本技能,有效地提高学生实验动手能力。
一、基本要求:
1、利用MATLAB提供的基本工具,灵活地编制和开发程序,开创新的应用;
2、熟练地掌握各种模型之间的转换,系统的时域、频域分析及根轨迹绘制;
3、熟练运用SIMULINK对系统进行仿真;
4、掌握PID控制器参数的设计。
二、设计要求
1、编制相应的程序,并绘制相应的曲线;
2、对设计结果进行分析;
3、撰写和打印设计报告(包括程序、结果分析、仿真结构框图、结果曲线)。
三、设计课题
设计一:二阶弹簧—阻尼系统的PID控制器设计及其参数整定
考虑弹簧-阻尼系统如图1所示,其被控对象为二阶环节,传递函数G(S)如下,参数为M=1kg,b=2N.s/m,k=25N/m,F(S)=1。设计要求:
(1)控制器为P控制器时,改变比例系数大小,分析其对系统性能的影响并绘制相应曲线。
(2)控制器为PI控制器时,改变积分时间常数大小,分析其对系统性能的影响并绘制相应曲线。(例如当kp=50时,改变积分时间常数)(3)设计PID控制器,选定合适的控制器参数,使闭环系统阶跃响应曲线的超调量σ%<20%,过渡过程时间Ts<2s, 并绘制相应曲线。
图1 弹簧-阻尼系统示意图
弹簧-阻尼系统的微分方程和传递函数为:
bxkxF MxG(s)X(s)11 F(s)Ms2bsks22s25
图2 闭环控制系统结构图
附:P控制器的传递函数为:GP(s)KP
PI控制器的传递函数为:GPI(s)KP11 TIsPID控制器的传递函数为:GPID(s)KP11TDs TIs
(一)设计P控制器,改变比例系数大小,分析其对系统性能的影响并绘制相应曲线。以下为所做的设计以及运行结果,KP取了不同的值,通过运用sim函数进行仿真,并得出超调量MP,过渡过程时间Ts的大小,通过分析所得出的结果,多次改变KP的大小直到符合题目的要求,使稳态误差等都达到要求。
1、仿真运行程序
for Kp=[200,400,800] t=[0:0.01:6];
[t,x,y]=sim('yhx',6);hold on plot(t,y);N=length(t);
yss=y(N);%yss:稳态值 hold on
[ymax,i]=max(y);
mp=(ymax-yss)*100/yss, %计算超调量mp i=N;
while abs(y(i)-yss)/yss<=0.02 i=i-1;end
Ts=t(i), %计算过渡过程时间 gtext(num2str(Kp));end
2、仿真框图
KpStepGain12s +2s+25Transfer FcnScope1Out1
3、仿真运行结果
改变比例系数kp大小,得如下结果,通过以下数据以及得出的曲线可分析其对系统性能的影响 Kp=200
mp =
75.3359 Ts =
3.7962
Kp=400
mp =
84.7526 Ts =
3.8317 Kp=800
mp =
88.0528 Ts =
4.5685
4、仿真运行曲线
21.81.61.48001.214000.82000.60.40.200123456
5、运行结果分析
根据实验要求设计了一个P控制器,与Gs等构成闭环控制系统结构。由以上的运行结果以及曲线可以看出随Kp增大,超调量mp是逐渐变大的,Ti也是逐渐变大的,而且总是达不到稳态误差很小很小,因此得出以下结论:随着Kp值的增大,系统的超调量变大,调节时间变长,振荡次数也增多了。Kp值越大,系统的稳态误差就越小,调节应精度越高,但是系统的波动明显变多了,稳定性变差,但是系统响应变快了。随着比例系数女kp的增大并不能消除稳态误差,只能减小稳态误差。(二)设计PI控制器,改变积分时间常数大小,分析其对系统性能的影响并绘制相应曲线。以下为设计出的仿真程序等,运用sim函数进行仿真,编写程序使KP=50,改变KI的大小,来进行分析,直到符合题目的要求,使运行出的结果稳态误差基本很小即可,如果达不到,就要重新设定KI的大小,进行多次试验,选出如下符合要求的KI的值,程序中都有所体现。
1、仿真运行程序
for Ki=[30,50,80] t=[0:0.01:10];
[t,x,y]=sim('yhxx',10);hold on plot(t,y);
N=length(t);%yss:稳态值 yss=y(N);hold on [ymax,i]=max(y);
mp=(ymax-yss)*100/yss, %计算超调量mp i=N;
while abs(y(i)-yss)/yss<=0.02 i=i-1;end
Ts=t(i),%计算过渡过程时间 end
2、仿真框图
50Kp1KiStepKi1sIntegrator2s +2s+25AddTransfer FcnScope1Out1
3、仿真运行结果
当Kp=50时, 改变积分时间常数ki的大小,由以下的结果以及曲线可分析其对系统性能的影响 ki=30
mp =
21.4633 Ts =
6.5686 Ki=50
mp =
26.7424 Ts =
5.1127 Ki=80
mp =
31.0229 Ts =
7.3375
4、仿真运行曲线:
1.41.280501300.80.60.40.20012345678910
5、运行结果分析
Kp=50时,随着ki值的增大,系统的超调量变大,系统响应时间出现了波动。ki越大,积分速度越快,积分作用就越强,响应时间变快,但系统振荡次数就较多。PI控制可以消除系统的稳态误差,提高系统的误差度。在积分控制中,控制器的输出与输入误差信号的积分成正比关系。为了消除稳态误差,在控制器中必须引入“积分项”。积分项对误差取决于时间的积分,随着时间的增加,积分项会增大。这样,即便误差很小,积分项也会随着时间的增加而加大,它推动控制器的输出增大使稳态误差进一步减小,直到等于零。因此,比例+积分(PI)控制器,可以使系统在进入稳态后基本无稳态误差。这是比上一个只有比例控制器的一个进步的地方。
(三)设计一PID控制器,选定合适的控制器参数,使闭环系统阶跃响应曲线的超调量σ%<20%,过渡过程时间Ts<2s, 并绘制相应曲线。以下为所设计的程序,仿真等,改变kp,ki,kd 的值得出闭环阶跃响应的超调量和过渡过程时间,通过多次试验,得到的kp取20,ki取65,kd取9时运行出的结果是满足题目要求的:
1、仿真运行程序
[t,x,y]=sim('yhxxx');plot(t,y);N=length(t);
yss=y(N);%yss:稳态值 [ymax,i]=max(y);
mp=(ymax-yss)*100/yss, %计算超调量mp i=N;
while abs(y(i)-yss)/yss<=0.02 i=i-1;end
Ts=t(i), %计算过渡过程时间
2、仿真框图
20Kp1y(s)65StepKi1sIntegratorAdd12s +2s+25Transfer FcnYTo Workspace9Kddu/dtDerivativeScope
3、仿真运行结果
经过多次试验,当Kp=20,ki=65,pd=9满足使闭环系统的阶跃响应曲线的超调量σ%<20%,过渡过程时间ts<2s,结果如下: mp =
1.1367
Ts =
0.8945 从结果可知超调量mp%<20%,过渡过程时间Ts<2s满足设计要求.4、仿真运行曲线:
1.41.210.80.60.40.20012345678910
5、运行结果分析及设计小结
把比例 微分 积分结合起来进行控制能够更好的达到我们想要的结果,PID参数的整定就是合理的选取PID三个参数。从系统的稳定性、响应速度、超调量和稳态误差等方面来考虑问题,每个参数都有自己的作用,比如比例调节的作用是能够成比例地反映系统的偏差信号,系统一旦出现了偏差,比例调节立即产生与其成比例的调节作用,以减小偏差。随着Kp增大,系统的稳态误差减小,但是系统容易产生超调,并且加大Kp只能减小稳态误差,却不能消除稳态误差,显著特点就是有差调节。然后就是微分调节的作用是消除系统的稳态误差,提高系统的误差度,它的特点就是误差调节。微分调节作用是改善系统的动态性能,可以减少超调,减少调节时间。总之比例积分微分控制作用是相互关联的,结合起来用效果会更好。设计二:二阶系统串联校正装置的设计与分析
设某被控系统的传递函数G(s)如下:
G(s)设计要求:
K
s(s2)选用合适的方法设计一个串联校正装置K(s),使闭环系统的阶跃响应曲线超调量%20%,过渡过程时间Ts1.5(s),开环比例系数Kv10(1/s),并分析串联校正装置中增益、极点和零点对系统性能的影响。
提示:可采用根轨迹校正工具进行串联校正
MATLAB 提供了一个辅助设计闭环系统根轨迹的仿真软件Rltool,可以用来进行根轨迹校正。在command window 下键入>> rltool,进入设计环境。
一、设计思路方法
根据题目要求采用matlab中提供的一个辅助设计闭环系统根轨迹的仿真软件Rltool,来进行根轨迹校正。打开matlab,在command window 下键入>> rltool,进入设计环境。
k根据设计要求:开环比例系数Kv10(1/s)即 kvlimsG(s)10得k20
s02取k=40, 传递函数G(s)40
s(s2)
二、设计步骤
1、打开matlab,在command window 下键入>> rltool,进入设计环境。启动SISO Design Tool 在matlab中键入num=40;den=conv([1,0],[1,2]);ex_1=tf(num,den),出现函数
40/(s^2 + 2 s)得到该系统的LTI对象模型ex_1。
2、启动SISO Design Tool 窗口后,利用该窗口中File菜单下的命令Import,打开系统模型输入对话框窗口。采用系统默认的结构,输入选中的对象ex_1,将控制对象G设置为ex_1,控制器C设为1,其他的环节H,F均使用默认的取值1.单击OK在SISO Design Tool中会自动绘制此负反馈线性系统的根轨迹图,以及系统波特图,如图
Root Locus Editor(C)850Open-Loop Bode Editor(C)64020G.M.: InfFreq: InfStable loop-50-90-2-4-135-6P.M.: 18 degFreq: 6.17 rad/sec-1-8-2-180-1.5-1Real Axis-0.5010
3、点击Analysis 中的other loop response 选择step得到闭环系统阶跃响应曲线如图可以看到校正前的超调量为60.4%,过渡过程时间为3.66s,明显不满足要求。
1010Frequency(rad/sec)01102Step Response1.81.6System: Closed Loop: r to yI/O: r to yPeak amplitude: 1.6Overshoot(%): 60.4At time(sec): 0.5081.41.2System: Closed Loop: r to yI/O: r to ySettling Time(sec): 3.66Amplitude10.80.60.40.200123Time(sec)456
4、经过反复试验,得出加入零点-5,加入极点-33,是满足要求的,可得到如下的根轨迹图以及伯德图
Root Locus Editor(C)50403020-50100-10-20-30-40-50-40-180-30-20Real Axis-100-135G.M.: InfFreq: InfStable loop-100-90050Open-Loop Bode Editor(C)P.M.: 58.3 degFreq: 8.7 rad/sec-1101001010Frequency(rad/sec)12103
5、得到的阶跃响应曲线如下超调量15.8%<20%,过渡过程时间0.715s<1.5s,满足要求说明加的零极点是正确的
Step Response1.41.21System: Closed Loop: r to yI/O: r to ySystem: Closed Loop: r to ySettling Time(sec): 0.715I/O: r to yPeak amplitude: 1.16Overshoot(%): 15.8At time(sec): 0.348Amplitude0.80.60.40.2000.10.20.30.40.5Time(sec)0.60.70.80.91
6、在使用SISO Design Tool 完成系统的设计之后,在系统实现之前必须对设计好的系统通过Simulink 进行仿真分析,进一步对控制器C进行验证,以确保系统设计的正确性。下图为系统相应的Simulink模型:
untitledFStepFeed ForwardSumuntitledCCompensatorex_1PlantOutput1untitledHSensor DynamicsOut1
7、编写M文件运行以得出超调量和过渡过程时间,以验证是否正确,程序如下: num0=40;den0=conv([1,0],[1,2]);num1=[0.2,1];den1=[0.03,1];
[num2,den2]=series(num0,den0,num1,den1);[num,den]=cloop(num2,den2);t=0:0.005:5;
y=step(num,den,t);plot(t,y);N=length(t);yss=y(N);hold on
[ymax,i]=max(y);mp=(ymax-yss)*100/yss, i=N;
while abs(y(i)-yss)/yss<=0.02 i=i-1;end Ts=t(i),运行结果: mp =
15.7500
Ts =
0.7150
运行所得的曲线如下: 1.41.210.80.60.40.2000.511.522.533.544.55
运行结果分析:所得出的结果,超调量15.7500%<20%,过渡过程时间0.7150s<1.5s,满足设计要求,证明设计的没有问题,符合设计要求。
三、串联校正装置中增益、极点和零点对系统性能的影响。(1)加入增益68,所得到的根轨迹及伯德图:
Root Locus Editor(C)150100Open-Loop Bode Editor(C)10050500G.M.: InfFreq: InfStable loop-50-900-50-135-100P.M.: 8.66 degFreq: 106 rad/sec-1-150-20-180-15-10Real Axis-5010100
编写M程序,得出图像及超调量,过渡过程时间等值,来判断加入增益对系统性能的影响,程序如下:
num0=40;den0=conv([1,0],[1,2]);num1=68*[0.2,1];den1=[0.03,1];[num2,den2]=series(num0,den0,num1,den1);[num,den]=cloop(num2,den2);t=0:0.005:1;y=step(num,den,t);plot(t,y);%计算超调量mp N=length(t);yss=y(N);
hold on %yss:稳态值 [ymax,i]=max(y);mp=(ymax-yss)*100/yss, i=N;while abs(y(i)-yss)/yss<=0.02
i=i-1;end Ts=t(i),运行结果为
1010Frequency(rad/sec)12103mp =
69.4107
Ts =
0.2600 运行曲线为:
1.81.61.41.210.80.60.40.2000.10.20.30.40.50.60.70.80.91
由以上结果及图像可以得出以下结论:加入增益之后超调量变大了,过渡过程时间变短了,波动的更加厉害,稳态误差变小了。说明可以改变开环增益的大小,从而改善稳态误差
(2)加入零点-10,所得到的根轨迹及伯德图: Root Locus Editor(C)360402200Open-Loop Bode Editor(C)10-20G.M.: InfFreq: NaNStable loop-40-45-1-90-2-135P.M.: 108 degFreq: 12.9 rad/sec-1-3-60-180-50-40-30-20Real Axis-100101001010Frequency(rad/sec)12103
阶跃响应曲线如下:
Step Response1.41.21Amplitude0.80.60.40.2000.5Time(sec)11.5
由图可以得出,加入零点后对系统的性能产生了很大的影响,过渡过程时间变长了,超调量变小了,波动次数少了,而且增加开环极点,使得原系统根轨迹的整体走向在S平面向右移,使系统稳定性变坏。
(3)加入极点-10后所得到的根轨迹以及伯德图: Root Locus Editor(C)8050Open-Loop Bode Editor(C)60040-50200-100G.M.: 10.3 dBFreq: 14.4 rad/secStable loop-150-90-20-40-180-60P.M.: 22.1 degFreq: 7.34 rad/sec100-80-100-50Real Axis0-270-150101010Frequency(rad/sec)12103
阶跃响应曲线如下:
Step Response1.61.41.21Amplitude0.80.60.40.2000.511.5Time(sec)22.533.5 由图可以看出加入零点之后系统的性能发生的变化,过渡过程时间变得更长了,超调量变大了,波动次数变多了,增加开环零点,使得原系统根轨迹的整体走向在S平面向右移,使系统稳定性得到改善。
四、设计小结
这个设计是应用了matlab中新的功能,是辅助设计闭环系统根轨迹的仿真软件Rltool,可以用来进行根轨迹校正的一个软件,在使用的过程中遇到了很多问题,参照着课本,一步一步的进行探索,遇到课本上解决不了的,就向同学和老师询问,或者在网上搜些资料以帮助自己理解一些概念,从而更快的理解课程设计需要做的东西,该如何按照老师的要求做出来,其中需要试一些符合要求的零极点,试了很多次。还要到最后进行simulink的仿真,并且编写了程序,以验证所设计的是不是符合要求。
通过这次课程设计,我学到了很多东西,通过编写程序,用到了以前学过的知识,对以前所学知识进行了巩固,觉得非常好,把以前学过的东西又重新捡起来,继续用,也为自己的后续的学习之路铺下基础,比如说后面的毕业设计可能就会用到matlab。我也感受到了matlab强大的功能,对这个软件产生了极大的兴趣,非常实用和好玩。这次课程设计真的学到了很多很多,深受启发,让我对以后的学习充满了信心,老师也很敬业,对我们学生很负责任,耐心教导。
第三篇:MATLAB与控制系统仿真实验报告
《MATLAB与控制系统仿真》
实验报告
2013-2014学年 第 1 学期
专业: 班级: 学号: 姓名:
实验三 MATLAB图形系统一、实验目的:
1.掌握绘制二维图形的常用函数。2.掌握绘制三维图形的常用函数。3.熟悉利用图形对象进行绘图操作的方法。4.掌握绘制图形的辅助操作。
二、实验原理:
1,二维数据曲线图
(1)绘制单根二维曲线 plot(x,y);(2)绘制多根二维曲线 plot(x,y)当x是向量,y是有一维与x同维的矩阵时,则绘制多根不同颜色的曲线。当x,y是同维矩阵时,则以x,y对应列元素为横、纵坐标分别绘制曲线,曲线条数等于矩阵的列数。(3)含有多个输入参数的plot函数 plot(x1,y1,x2,y2,…,xn,yn)(4)具有两个纵坐标标度的图形 plotyy(x1,y1,x2,y2)2,图形标注与坐标控制 1)title(图形名称); 2)xlabel(x轴说明)3)ylabel(y轴说明)4)text(x,y图形说明)5)legend(图例1,图例2,…)
6)axis([xmin xmax ymin ymax zmin zmax])3, 图形窗口的分割 subplot(m,n,p)4,三维曲线
plot3(x1,y1,z1,选项1,x2,y2,选项2,…,xn,yn,zn,选项n)5,三维曲面
mesh(x,y,z,c)与surf(x,y,z,c)。一般情况下,x,y,z是维数相同的矩阵。X,y是网格坐标矩阵,z是网格点上的高度矩阵,c用于指定在不同高度下的颜色范围。6,图像处理
1)imread和imwrite函数 这两个函数分别用于将图象文件读入matlab工作空间,以及将图象数据和色图数据一起写入一定格式的图象文件。
2)image和imagesc函数 这两个函数用于图象显示。为了保证图象的显示效果,一般还应使用colormap函数设置图象色图。
三、实验仪器和设备:
计算机一台(带有MATLAB6.5以上的软件环境)。
四、预习要求:
1.复习二维与三维图形的绘图函数。2.复习图形辅助操作。
五、实验内容及步骤:
1,设y[0.53sinx]cosx,在x=0~2π区间取101点,绘制函数曲线。21x
2,已知y1=x2,y2=cos(2x),y3=y1*y2,完成下列操作:
(1)在同一坐标系下用不同的颜色和线型绘制三条曲线;
(2)分别用条形图、阶梯图、杆图和填充图绘制三条曲线。
3,已知
x,x02e y1In(x1x2),x02在-5<=x<=5区间绘制函数曲线。
4,绘制函数的曲面图和等高线
zcosxcosyex2y24
其中x的21个值均匀分布在[-5,5]范围,y的31个值均匀分布在[0,10],要求使用subplot(2,1,1)和subplot(2,1,2)将产生的曲面图和登高图画在同一个窗口上。
5.画出函数
zx2y2sin(xy)的曲面及等高线图。
x2y21绘制平面曲线,并分析参数a对其形状的影响。6.根据2a25a2
四、心得体会:
通过这次实验我能熟练掌握二维和三维图以及其他特殊图形的制作,弄清楚了基本的图形操作规则,大大加深了我对matlab的兴趣。
实验二 MATLAB程序设计
一、实验目的
1.掌握利用if语句实现选择结构的方法。
2.掌握利用switch语句实现多分支选择结构的方法。3.掌握利用for语句实现循环结构的方法。4.掌握利用while语句实现循环结构的方法。
二、实验设备及条件
计算机一台(带有MATLAB6.5以上的软件环境)。
三、实验内容
1.编写求解方程ax2bxc0的根的函数(这个方程不一定为一元二次方程,因a、b、c的不同取值而定),这里应根据a、b、c的不同取值分别处理,有输入参数提示,当a0,b0,c~0时应提示“为恒不等式!”。并输入几组典型值加以检验。
clear,clc a=input('请输入一个数a=');b=input('请输入一个数b=');c=input('请输入一个数c=');m=b^2-4*a*c;if a==0
if b==0
'为恒不等式'
end end
m=b^2-4*a*c;if m>0
x1=(-b+sqrt(m))/(2*a)
x2=(-b-sqrt(m))/(2*a)elseif m==0
x=(-b)/(2*a)else
'不存在正实根' end
2.输入一个百分制成绩,要求输出成绩等级A+、A、B、C、D、E。其中100分为A+,90分~99分为A,80分~89分为B,70分~79分为C,60分~69分为D,60分以下为E。
要求:(1)用switch语句实现。
(2)输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错信息。
clear,clc for k=1:10
a(k)={89+k};b(k)={79+k};
c(k)={69+k};d(k)={59+k};end A=cell(3,6);A(1,:)={'a','b','c','d','e','f'};A(2,:)={85,76,95,100,40,65};for k=1:6
switch A{2,k}
case 100
r='A+';
case a
r='A';
case b
r='B';
case c
r='C';
case d
r='D';
otherwise
r='E';
end
A(3,k)={r};end A A =
'a'
'b'
'c'
[85]
[76]
[95]
'B'
'C'
'A'
'd'
'e'
[100]
[40]
'A+'
'E'
'f' [65] 'D'
3.利用for循环语句编写计算n!的函数程序,取n分别为-89、0、3、5、10验证其正确性(输入n为负数时输出出错信息)。
clear,clc n=input('请输入一个正数n=');if n<0
'输入错误' elseif n==0
'n!=0' elseif n==1
'n!=1' else
y=1;
for i=1:1:n
y=y*i;
i=i+1;
end
y end 请输入一个正数n=-89
ans =输入错误 请输入一个正数n=0
ans =n!=0 请输入一个正数n=1
ans =n!=1 请输入一个正数n=3
y =6 请输入一个正数n=10
y =3628800
四、实验心得体会:
通过本次实验课,我能熟练运用for循环语句,switch条件语句以及if条件语句的新用法,和在C中的区别。尽管如此,但是在实验中依然容易把for循环跟C语言中的for语句弄混,最后经过不懈努力下,终于弄明白了两者之间的差别,使我能更好的运用这些指令语句。
第四篇:2-控制系统仿真与CAD课程报告选题说明-张晓华080305(定稿)
“控制系统数字仿真与CAD”课程结业考核
“课程报告”选题说明
一、关于本课程
“控制系统数字仿真与CAD”课程是电气工程系工业自动化专业方向的一门选修课,课程结业考核评定以撰写“课程报告”的形式进行;其重在培养学生自主学习能力与独立思考能力,检查学生综合运用所学知识与基本技能情况,锻炼学生的书面表达能力。
二、关于 “课程报告”的选题
“课程报告”包括如下两部分内容:
1、必做题:“双闭环直流调速系统的建模与仿真实验研究”(参见教材第六章第一节内容)。
2、选做题:在“课程报告”选题一览中任选一题(参见教材中的相关内容)。
“课程报告”撰写中有如下要求:
1、每个选题最多三人合作(如发现超过三人,将随机保留三人,其他人重新选题/再次撰写“课程报告”)。
2、“课程报告”要按规定的格式撰写(对于存在“逻辑混乱”“文字不清”、“作图潦草”等问题的报告,将予以退回重新撰写)。
3、无论计算机录入/打印还是手工书写,均要求用标准A4纸进行撰写,以便于报告最终的批阅与存档。
三、“课程报告”的格式要求
“课程报告”要求按科技论文的格式进行撰写,具体格式如下: 中文 “题目” “姓名/班级/电子信箱/联系电话” 中文“摘要” “关键词” 英文“题目” 英文“摘要” 正文:
1、引言
2、原理/建模
3、设计/分析/论述
4、仿真实验/结果分析
5、结论
建议:学生参阅“中国电机工程学报”、“控制与决策”、“自动化学报”、“控制理论与应用”杂志上的文章格式进行撰写。
“控制系统数字仿真与CAD”课程结业考核
“课程报告”选题一览
1、选题一:“一阶直线倒立摆系统建模与模型验证”
合作者:、、2、选题二:“一阶直线倒立摆系统模型的线性化与固有特性分析”
合作者:、、3、选题三:“一阶直线倒立摆系统的可控性分析”
合作者:、、4、选题四:“一阶直线倒立摆的双闭环PID控制系统设计”
合作者:、、5、选题五:“双闭环PID控制的一阶直线倒立摆系统抗扰性能分析”
(摆长/配重/直线导轨倾斜/外力冲击摆杆等扰动)
合作者:、、6、选题六:“一阶直线双倒立摆系统建模与模型验证”(参见教材之习题5-14)
合作者:、、7、选题七:“一阶直线双倒立摆系统模型的线性化与固有特性分析”
(参见教材之习题5-14)
合作者:、、8、选题八:“一阶直线双倒立摆系统的可控性分析”(参见教材之习题5-14)
合作者:、、9、选题九:“一阶旋转倒立摆系统建模与模型验证”
(参见教材之习题6-1)
合作者:、、10、选题十:“一阶旋转倒立摆系统模型的线性化与固有特性分析”
(参见教材之习题6-1)
合作者:、、11、选题十一:“一阶旋转倒立摆系统的可控性分析”
(参见教材之习题6-1)
合作者:、、12、选题十二:“斜梁-滚球系统建模与模型验证”
(参见教材之习题2-11)
合作者:、、13、选题十三:“斜梁-滚球系统模型的线性化与固有特性分析”
(参见教材之习题2-11)
合作者:、、14、选题十四:“斜梁-滚球系统的可控性分析”
(参见教材之习题2-11)
合作者:、、15、选题十五:“二维运动龙门起重机系统建模与模型验证”(参见教材第二章第二节/第五章第五节)合作者:、、16、选题十六:“二维运动龙门起重机系统模型的线性化与固有特性分析”
(参见教材第二章第二节/第五章第五节)合作者:、、17、选题十七:“二维运动龙门起重机系统的可控性分析”(参见教材第二章第二节)合作者:、、18、选题十八:“二维运动龙门起重机的双闭环PID控制系统设计”(参见教材第五章第三节)合作者:、、19、选题十九:“双闭环PID控制的二维运动龙门起重机系统抗扰性能分析”
(绳长/重物质量/外力冲击重物等扰动)
合作者:、、20、选题二十:“单水箱液位控制系统建模与模型验证”
(参见教材第二章第二节)
合作者:、、21、选题二十一:“单水箱液位控制系统模型的线性化与固有特性分析”
(参见教材第二章第二节)
合作者:、、22、选题二十二:“单水箱液位控制系统设计”
(参见教材第六章第三节)
合作者:、、23、选题二十三:教材之习题5-8。
合作者:、、24、选题二十四:教材之习题5-11。
合作者:、、25、选题二十五:教材之习题5-12。
合作者:、、26、选题二十六:教材之习题5-13。
合作者:、、27、选题二十七:教材之习题5-6。
合作者:、、28、选题二十八:教材之习题3-8。
合作者:、、29、选题二十九:教材之习题3-2。
合作者:、、30、选题三十:教材之习题2-7。
合作者:、、31、选题三十一:教材之习题2-12。
合作者:、、32、选题三十二:教材之习题3-3。
合作者:、、33、选题三十三:教材之习题3-6。
合作者:、、34、选题三十四:教材之习题4-8。
合作者:、、35、选题三十四:教材之习题5-3。
合作者:、、36、选题三十四:教材之习题5-4。
合作者:、、37、选题三十四:教材之习题5-1。
合作者:、、38、选题三十四:教材之习题5-9。
合作者:、、39、选题三十四:教材之习题5-2。
合作者:、、40、选题三十四:教材之习题5-10。
合作者:、、说明:
1、以上选题使用120人,如班级人数超过之,可以在每题中再加一名合作者。
2、学生也可自行确定其他的“选题”,但须与任课教师商定。
第五篇:基于 Matlab 的离散控制系统仿真
2014 / 2015 学年第 1 学期
计算机控制技术 实
班 级 学 生 指 导 验 报 告
学 号 1108030301 姓 名 蔡 梦 教 师 张 坤 鳌
实验二 基于 Matlab 的离散控制系统仿真
一、实验目的和要求:
1、学习使用 Matlab 的命令对控制系统进行仿真的方法
2、学习使用 Matlab 中的 Simulink 工具箱进行系统仿真的方法
二、实验环境
X86系列兼容型计算机,Matlab软件
三、实验原理
1、控制系统命令行仿真
1)建立如图所示一阶系统控制模型并进行系统仿真:
一阶系统闭环传递函数为G(S)=
s1333s=s3,转换为离散系统脉冲传递函数并仿真。
2)建立如图所示二阶系统控制模型并进行系统仿真:
52s(s20.45)25251s(s20.45)=s220.45s52,二阶系统闭环传递函数为G(S)=转换为离散系统脉冲传递函数并仿真,改变参数,观察不同的系统的仿真结果。
2、控制系统的 Simulink 仿真
按图建立系统的 Simulink 模型,对不同的输入信号进行仿真,改变参数,观察不同的仿真结果。
将上述系统离散化并仿真,观察仿真结果
四、实验步骤
1、根据实验原理对控制系统进行软件仿真
2、观察记录输出的结果,与理论计算值相比较
3、自行选择参数,练习仿真方法,观察不同的仿真结果
5252s(s20.45)s(s20.45)525211s(s20.45)s(s20.45)进行软二阶系统闭环传递函数为G(S)=件仿真如下图:
分别进行离散仿真:
五、实验心得
针对这次实验设计,我通过各种渠道,上课认真学习,请教老师、上网搜索,图书馆查阅,询问同学等学习到了很多知识,一步步了解最少拍控制系统设计,锻炼了自我学习能力。
尽管学习上遇到了很多困难,结果也差强人意。但我们在不断处理困难的过程中磨练了处理事物的能力和耐心,也让同学间学会了互相学习,共享资源