计算机仿真实验报告实验
- 格式:doc
- 大小:895.00 KB
- 文档页数:25
一、实验内容:实验三 利用欧拉法、梯形数法和二阶显式Adams 法对RLC 串联电路的仿真1前向欧拉法状态方程:Du CX y Bu AX X m +=+=+•1 然后根据前向欧拉法(其中h 为步长)•++=m m m hX X X 1即可得到系统的差分方程2后向欧拉法根据前向欧拉法得到的系统状态方程,结合后向欧拉法(其中h 为步长)•+++=11m m m hX X X 即可得到系统的差分方程3梯形法由前面的系统状态方程,结合梯形法)(211+••+++=m m m m X X h X X 即可得到系统的差分方程4二阶显式Adams 方法由前面的状态方程,结合二阶显式Adams 方法)51623(12211--++-+=m m m m m F F F h X X 即可得到系统的差分方程但是二阶显式Adams 法不能自起步,要使方程起步,需要知道开始的三个值,但是我们只知道第一个值。
经过分析后,二阶显式Adams 方法精度是二阶的,而梯形法精度也是二阶的,因此我们可以先借助梯形法得到输出的前三个值,以达到起步的目的,然后借助上面得到的差分方程对其进行求解。
二、实验波形:下图为前向欧拉法、后向欧拉法、梯形法、二阶显式Adams 方法的系统差分方程得到相应的输出波形:图1 h=410 时四种方法的输出波形图2 h=56-⨯时四种方法的输出波形10图3 h=510-时四种方法的输出波形图4 h=610-时四种方法的输出波形三、实验分析:由输出波形可以看到各种方法的特点(在图中蓝色线均表示连续系统模型的实际输出波形,红色线表示在对应方法下系统的输出波形。
):1前向欧拉法和二阶显式Adams方法对步长的要求很强。
步长太大,最后的到的结果不是绝对收敛,而是发散。
在小步长下才显得收敛,这也从另一方面验证,步长越小,截断误差越小;2步长不能太小,太小的步长相应的舍入误差和累积误差也会增大;3前向欧拉法也可称为显式欧拉法,后向欧拉法也可称为隐式欧拉法,可以看到,后向欧拉法的稳定域要比前向欧拉法大,计算精度也要高一些。
山东工商学院计算机仿真及应用实验报告实验七 MATLAB的基本应用(二)及Simulink仿真(验证性实验)学院:专业班级:实验时间:学号:姓名:一、实验目的1、掌握连续信号的仿真和傅里叶分析方法2、掌握连续系统的分析方法(时域分析法,拉氏变换法和傅里叶分析法);3、掌握离散信号的仿真和分析运算方法4、掌握离散系统的分析方法(时域分析法);5、掌握符号运算方法;6、掌握Simulink仿真工具;二、实验原理1、连续信号的仿真和分析法,参考教材第6.1节,重点:单位冲激信号的仿真方法;单位阶跃信号的仿真方法;复指数信号的仿真方法2、连续系统的分析方法,参考教材第6.1节,重点:例6.2,LTI系统的零输入响应的求解方法;例6.3,LTI系统的冲激响应的求解方法例6.5,LTI系统的零状态响应的求解方法例6.6,系统中有重极点时的计算3、系统的频域分析方法,参考教材第6.2节,重点:例6.7,方波分解为多次正弦波之和例6.8:全波整流电压的频谱例6.10:调幅信号通过带通滤波器例6.12:用傅里叶变换计算滤波器的响应和输出4、离散信号的仿真和分析法,参考教材第6.3节,7.1节,重点:单位脉冲序列impseq,单位阶跃序列stepseq例7.1:序列的相加和相乘例7.2:序列的合成与截取例7.3:序列的移位和周期延拓运算三、实验内容(包括内容,程序,结果)以自我编程练习实验为主,熟悉各种方法和设计,结合课堂讲授,实验练习程序代码。
1、根据教材第6.1节的内容,练习连续信号和系统的时域分析和拉氏变换方法。
q602clear,clca=input('输入分母系数向量a=[a1,a2,...]= ');n=length(a)-1;Y0=input('输入初始条件向量Y0=[y0,Dy0,D2y0,...]= ');p=roots(a);V=rot90(vander(p));c=V\Y0';dt=input('dt= ');tf=input('tf= ');t=0:dt:tf;y=zeros(1,length(t));for k=1:n y=y+c(k)*exp(p(k)*t); end plot(t,y),grid hold on输入分母系数向量a=[a1,a2,...]= [3 5 7 1] 输入初始条件向量Y0=[y0,Dy0,D2y0,...]= [1 0 0] dt= 0.2 tf= 8Warning: Imaginary parts of complex X and/or Y arguments ignored. > In q602 at 9输入分母系数向量a=[a1,a2,...]= [3 5 7 1] 输入初始条件向量Y0=[y0,Dy0,D2y0,...]= [0 1 0] dt= 0.2 tf= 8Warning: Imaginary parts of complex X and/or Y arguments ignored. > In q602 at 9输入分母系数向量a=[a1,a2,...]= [3 5 7 1] 输入初始条件向量Y0=[y0,Dy0,D2y0,...]= [0 0 1] dt= 0.2 tf= 8Warning: Imaginary parts of complex X and/or Y arguments ignored. > In q602 at 91234567800.10.20.30.40.50.60.70.80.91q603clear,clca=input('多项式分母系数向量a= ');b=input('多项式分子系数向量b= ');[r,p]=residue(b,a),disp('解析式h(t)=r(i)*exp(p(i)*t)')disp('给出时间数组t=[0:dt:tf]')dt=input('dt= ');tf=input('tf= ');t=0:dt:tf;h=zeros(1,length(t));for i=1:length(a)-1 h=h+r(i)*exp(p(i)*t); end plot(t,h),grid多项式分母系数向量a= poly([0 -1+2i -1-2i -2 -5]) 多项式分子系数向量b= [8 3 1]r =0.62000.1300 - 0.3900i0.1300 + 0.3900i-0.90000.0200p =-5.0000-1.0000 + 2.0000i-1.0000 - 2.0000i-2.0000解析式h(t)=r(i)*exp(p(i)*t)给出时间数组t=[0:dt:tf]dt= 0.2tf= 8012345678-0.15-0.1-0.0500.050.10.150.20.252、 根据教材第6.2节练习傅里叶分析方法。
第1篇实验名称:仿真软件操作实验实验目的:1. 熟悉仿真软件的基本操作和界面布局。
2. 掌握仿真软件的基本功能,如建模、仿真、分析等。
3. 学会使用仿真软件解决实际问题。
实验时间:2023年X月X日实验地点:计算机实验室实验器材:1. 仿真软件:XXX2. 计算机一台3. 实验指导书实验内容:一、仿真软件基本操作1. 打开软件,熟悉界面布局。
2. 学习软件菜单栏、工具栏、状态栏等各个部分的功能。
3. 掌握文件操作,如新建、打开、保存、关闭等。
4. 熟悉软件的基本参数设置。
二、建模操作1. 学习如何创建仿真模型,包括实体、连接器、传感器等。
2. 掌握模型的修改、删除、复制等操作。
3. 学会使用软件提供的建模工具,如拉伸、旋转、镜像等。
三、仿真操作1. 设置仿真参数,如时间、步长、迭代次数等。
2. 学习如何进行仿真,包括启动、暂停、继续、终止等操作。
3. 观察仿真结果,包括数据、曲线、图表等。
四、分析操作1. 学习如何对仿真结果进行分析,包括数据统计、曲线拟合、图表绘制等。
2. 掌握仿真软件提供的分析工具,如方差分析、回归分析等。
3. 将仿真结果与实际数据或理论进行对比,验证仿真模型的准确性。
实验步骤:1. 打开仿真软件,创建一个新项目。
2. 在建模界面,根据实验需求创建仿真模型。
3. 设置仿真参数,启动仿真。
4. 观察仿真结果,进行数据分析。
5. 将仿真结果与实际数据或理论进行对比,验证仿真模型的准确性。
6. 完成实验报告。
实验结果与分析:1. 通过本次实验,掌握了仿真软件的基本操作,包括建模、仿真、分析等。
2. 在建模过程中,学会了创建实体、连接器、传感器等,并能够进行模型的修改、删除、复制等操作。
3. 在仿真过程中,成功设置了仿真参数,启动了仿真,并观察到了仿真结果。
4. 在分析过程中,运用了仿真软件提供的分析工具,对仿真结果进行了数据分析,并与实际数据或理论进行了对比,验证了仿真模型的准确性。
《计算机仿真技术》实验报告实验一 数字仿真方法验证一、实验目的1.掌握基于数值积分法的系统仿真、了解各仿真参数的影响; 2.掌握基于离散相似法的系统仿真、了解各仿真参数的影响; 3.掌握SIMULINK 动态仿真;4.熟悉MATLAB 语言及应用环境。
二、实验环境网络计算机系统,MATLAB 语言环境三、实验内容、要求(一)试将示例1的问题改为调用ode45函数求解,并比较结果。
示例1:设方程如下,取步长 h =0.1。
上机用如下程序可求出数值解。
调用ode45函数求解: 1)建立一阶微分方程组 du=u-2*t/u2)建立描述微分方程组的函数m 文件 function du=sy11vdp(t,u) du=u-2*t/u3)调用解题器指令ode45求解y[t,u]=ode45('sy11vdp',[0 1],1) plot(t,u,'r-'); xlabel('t'); ylabel('u'); 结果对比:euler 法:t=1,u=1.7848; RK 法:t=1,u=1.7321; ode45求解:t=1,u=1.7321;[]1,01)0(2∈⎪⎩⎪⎨⎧=-=t u u t u dt duode45求解t-u 图:00.10.20.30.40.50.60.70.80.9111.11.21.31.41.51.61.71.8tu(二)试用四阶RK 法编程求解下列微分方程初值问题。
仿真时间2s ,取步长h=0.1。
⎪⎩⎪⎨⎧=-=1)0(2y t y dt dy 四阶RK 法程序:clear t=2; h=0.1; n=t/h; t0=0; y0=1;y(1)=y0; t(1)=t0;for i=0:n-1 k1=y0-t0^2;k2=(y0+h*k1/2)-(t0+h/2)^2; k3=(y0+h*k2/2)-(t0+h/2)^2 k4=(y0+h*k3)-(t0+h)^2;y1=y0+h*(k1+2*k2+2*k3+k4)/6; t1=t0+h; y0=y1; t0=t1;y(i+2)=y1; t(i+2)=t1;end y tplot(t,y,'r'); 结果:t=2,y=2.61090.511.522.511.21.41.61.822.22.42.62.83:(三)试求示例3分别在周期为5s 的方波信号和脉冲信号下的响应,仿真时间20s ,采样周期Ts=0.1。
计算机仿真技术实验报告今天我要给大家讲一讲我做的计算机仿真技术实验。
这个实验可有趣啦,就像玩一场超级神奇的游戏。
我做这个实验的目的呢,就是想看看计算机怎么能像变魔术一样模拟出真实的东西。
我用到的工具就是学校电脑室里的电脑,那电脑的屏幕大大的,闪着光,好像在等着我去探索它的秘密。
实验开始的时候,我打开了一个专门做仿真的软件。
这个软件的界面花花绿绿的,有好多小图标。
我点了一个看起来像小房子的图标,屏幕上就出现了一个简单的小房子模型。
这个小房子就像我们用积木搭起来的一样,方方正正的,还有个三角形的屋顶。
我可以用鼠标拖着它转来转去,从各个角度看这个小房子,就像我真的围着小房子在走一样。
然后呢,我想让这个小房子变得更像真的。
我就在软件里找到了一个可以给小房子加颜色的功能。
我给房子的墙涂成了白色,就像我们家的房子一样。
屋顶呢,我涂成了红色,就像圣诞老人的帽子。
这时候的小房子看起来漂亮多了,就像从童话里走出来的一样。
接着,我又想给小房子周围加点东西。
我就在软件里找啊找,发现了可以加树的工具。
我在小房子前面加了几棵大树,那些大树有粗粗的树干和绿绿的树叶。
我还在树下加了一些小花,五颜六色的小花在风中好像还会轻轻晃动呢。
现在小房子看起来就像是住在森林里的小木屋,感觉特别温馨。
在这个实验里,我还发现了一些特别有趣的事情。
比如说,我可以让太阳在小房子的上空移动。
当太阳慢慢升起的时候,阳光洒在小房子和树上,小房子和树的影子就会慢慢变短。
当太阳慢慢落下的时候,影子又会变长。
这就像我们在外面玩的时候,早上和傍晚影子长长的,中午影子短短的一样。
我还能让天空中的云动起来。
我加了一些白白的云,那些云就像棉花糖一样。
我让风一吹,云就慢慢地飘走了,有的云还会变成各种形状,像小兔子,像小绵羊。
这个计算机仿真技术实验真的太好玩了。
它就像一个魔法世界,我可以在这个世界里创造出我想要的东西。
通过这个实验,我也明白了计算机好厉害呀,它能做出这么像真的东西。
实验一 常微分方程的求解及系统数学模型的转换一.实验目的通过实验熟悉计算机仿真中常用到的Matlab指令的使用方法,掌握常微分方程求解指令和模型表示及转换指令,为进一步从事有关仿真设计和研究工作打下基础。
二. 实验设备个人计算机,Matlab软件。
三. 实验准备预习本实验有关内容(如教材第2、3、5章中的相应指令说明和例题),编写本次仿真练习题的相应程序。
四. 实验内容1. Matlab中常微分方程求解指令的使用题目一:请用MATLAB的ODE45算法分别求解下列二个方程。
要求:1.编写出Matlab仿真程序;2.画出方程解的图形并对图形进行简要分析;3.分析下列二个方程的关系。
1.2.1.仿真程序方程一:f1=inline('-x^2','t','x');[t,x]=ode45(f1,[0,30],[1]);plot(t,x,'-*');grid方程二:f2=inline('x^2','t','x');[t,x]=ode45(f2,[0,30],[-1]);plot(t,x,'-*');grid2.方程解的图形图形进行简要分析3.3.二个方程的关系题目二:下面方程组用在人口动力学中,可以表达为单一化的捕食者-被捕食者模式(例如,狐狸和兔子)。
其中表示被捕食者, 表示捕食者。
如果被捕1x 2x 食者有无限的食物,并且不会出现捕食者。
于是有,则这个式子是以指1'1x x 数形式增长的。
大量的被捕食者将会使捕食者的数量增长;同样,越来越少的捕食者会使被捕食者的数量增长。
而且,人口数量也会增长。
请分别调用ODE45、ODE23算法求解下面方程组。
要求编写出Matlab 仿真程序、画出方程组解的图形并对图形进行分析和比较。
fun3 m 文件:function fun3=fun3(t,x)fun3=[x(1)-0.1*x(1)*x(2)+0.01*t;-x(2)+0.02*x(1)*x(2)+0.04*t]Ode45解函数程序:[t,x]=ode45('fun3',[0,20],[30,20]);plot(t,x,'-*');title('ode45解函数');gtext('捕食者');gtext('被捕食者');xlabel('t=0:20');gridOde45解函数图像:Ode23解函数程序:[t,x]=ode23('fun3',[0,20],[30,20]);plot(t,x,'-*');title('ode23解函数');gtext('捕食者');gtext('被捕食者');xlabel('t=0:20');gridOde23解函数图像:2. Matlab 中模型表示及模型转换指令的使用题目三:若给定系统的的传递函数为1132106126)(23423+++++++=s s s s s s s s G 请用MATLAB 编程求解其系统的极零点模型。
计算机仿真技术实验报告1. 引言计算机仿真技术是一种基于计算机模型的虚拟实验手段,通过对真实系统的建模和仿真运行,可以模拟系统在不同条件下的行为和性能,从而实现系统优化、预测和决策支持等目的。
本实验旨在通过一个简单的例子,介绍计算机仿真技术的基本原理和应用。
2. 实验目的掌握计算机仿真技术的基本原理和方法,通过实际操作了解模型建立、参数设置和结果分析等相关内容。
3. 实验过程3.1 模型建立选择一个适合的仿真软件,如Arena、Simulink等,并根据实际需要,在软件中建立相应的仿真模型。
模型的建立包括确定系统的输入、输出、变量和参数,并定义其关系和约束条件。
3.2 参数设置为了保证仿真结果的准确性和可靠性,需要对模型中的参数进行设置。
根据实际情况,选择合适的参数值,并考虑不同参数对仿真结果的影响。
3.3 仿真运行设置好参数后,可以运行仿真程序,观察系统在不同条件下的运行情况。
可以通过改变输入、输出、变量和参数等相关参数,来模拟不同的系统行为。
3.4 结果分析根据仿真运行的结果,进行相应的数据分析和结果评估。
可以通过绘制柱状图、折线图、散点图等,直观地展示系统的性能和行为。
4. 实验结果与讨论根据实际情况,展示实验的结果,并进行相应的讨论。
可以比较不同参数下的仿真结果,分析其差异和影响因素。
在讨论时,可以考虑系统的稳定性、效率、安全性等方面。
5. 实验结论通过本次实验,我们深入了解了计算机仿真技术的基本原理和方法,并通过实际操作,掌握了模型建立、参数设置和结果分析等相关技能。
计算机仿真技术具有广泛的应用领域,包括交通运输、物流管理、生产调度、风险评估等,可以帮助我们理解和优化现实系统的运行和性能。
6. 参考文献[1] Robert, J. (2007). Simulation Modeling and Analysis. Boston: McGraw-Hill.[2] Banks, J., Carson, J., Nelson, B. L., & Nicol, D. M. (2000). Discrete-Event System Simulation. New Jersey: Prentice Hall.7. 致谢感谢实验指导教师对本次实验的支持和指导,也感谢实验中的所有参与人员的付出和帮助。
计算机网络仿真实验报告一、实验目的本次计算机网络仿真实验的主要目的是深入理解计算机网络的工作原理和性能特点,通过仿真工具对网络模型进行构建和分析,观察不同参数设置对网络性能的影响,从而为实际网络的设计、优化和故障诊断提供理论依据和实践经验。
二、实验环境本次实验使用了具体仿真软件名称作为仿真工具,该软件具有强大的网络建模和性能分析功能,能够支持多种网络协议和拓扑结构的模拟。
实验在 Windows 10 操作系统上进行,计算机配置为处理器型号、内存大小、硬盘容量。
三、实验内容(一)网络拓扑结构的构建首先,我们构建了一个简单的星型网络拓扑结构,包括一个中心节点和多个边缘节点。
中心节点作为服务器,边缘节点作为客户端。
通过设置不同的链路带宽和延迟参数,模拟了不同网络环境下的数据传输情况。
(二)网络协议的配置在构建好网络拓扑结构后,我们配置了常用的网络协议,如 TCP/IP 协议。
设置了 IP 地址、子网掩码、网关等参数,确保网络的连通性。
(三)流量生成与性能监测为了测试网络的性能,我们使用了流量生成工具,模拟了不同类型的网络流量,如文件传输、视频流、语音通话等。
同时,通过内置的性能监测模块,实时监测网络的吞吐量、延迟、丢包率等关键性能指标。
四、实验步骤1、打开仿真软件,创建一个新的项目。
2、在项目中绘制星型网络拓扑结构,添加中心节点和边缘节点,并连接它们之间的链路。
3、为链路设置带宽和延迟参数,例如,将某些链路的带宽设置为10Mbps,延迟设置为 50ms。
4、配置网络协议,为每个节点设置 IP 地址、子网掩码和网关。
5、启动流量生成工具,选择流量类型和流量强度,例如,生成一个持续的文件传输流量,速率为 5Mbps。
6、运行仿真实验,观察网络性能指标的变化。
7、调整参数,如增加链路带宽、减少延迟、改变流量类型和强度等,重复实验,比较不同参数设置下的网络性能。
五、实验结果与分析(一)带宽对网络性能的影响当链路带宽增加时,网络的吞吐量显著提高,延迟和丢包率降低。
计算机仿真实验报告计算机仿真实验报告引言:计算机仿真是一种利用计算机模拟实际系统行为的方法。
它通过建立数学模型,运用计算机算法和技术,模拟和分析系统的运行过程,以便更好地理解和预测系统的行为。
本文将探讨计算机仿真实验的概念、目的、方法和应用。
一、概念与目的计算机仿真实验是指利用计算机技术对实际系统进行模拟和分析,以研究系统的行为、性能和优化方法的一种实验方法。
其目的在于通过模拟实验,提供对实际系统的理解和预测,以便进行决策和改进。
二、方法与技术1. 建立数学模型:计算机仿真实验的第一步是建立数学模型,即将实际系统抽象为数学表达式或算法。
这需要对系统的结构、行为和性能进行深入分析和理解。
2. 数据采集与预处理:收集实际系统的数据,并对数据进行预处理,以便在计算机中进行仿真实验。
这包括数据清洗、数据转换和数据校正等步骤。
3. 编程与算法设计:根据建立的数学模型,使用计算机编程语言编写仿真程序,并设计相应的算法。
这需要熟悉计算机编程和算法设计的基本原理和方法。
4. 参数设置与验证:根据实际系统的特点和需求,设置仿真实验的参数,并进行验证。
这需要对实际系统的数据进行分析和比对,以确保仿真实验的准确性和可靠性。
5. 仿真运行与结果分析:运行仿真程序,观察和分析仿真结果。
这包括对系统行为、性能和优化方法的分析,以及对仿真结果的可视化和统计。
三、应用与案例计算机仿真实验在各个领域都有广泛的应用。
以下是一些典型的案例:1. 交通仿真:通过模拟城市交通流量和交通信号灯的运行,优化交通信号配时方案,提高交通效率和减少拥堵。
2. 生物仿真:通过模拟生物系统的行为和进化过程,研究生物多样性、环境适应性和生物进化机制。
3. 金融仿真:通过模拟金融市场的价格波动和交易行为,预测市场趋势和风险,辅助投资决策和风险管理。
4. 工程仿真:通过模拟工程系统的设计和运行过程,优化工程结构和工艺参数,提高工程效率和质量。
5. 医学仿真:通过模拟人体器官的结构和功能,研究疾病的发生机制和治疗方法,辅助医学研究和临床决策。
《计算机仿真》上机实验报告姓名:学号: 2012104021专业:测控班级: 12级实验一常微分方程的求解及系统数学模型的转换一.实验目的通过实验熟悉计算机仿真中常用到的Matlab指令的使用方法,掌握常微分方程求解指令和模型表示及转换指令,为进一步从事有关仿真设计和研究工作打下基础。
二. 实验设备个人计算机,Matlab软件。
三. 实验准备预习本实验有关内容(如教材第2、3、5章中的相应指令说明和例题),编写本次仿真练习题的相应程序。
四. 实验内容1. Matlab中常微分方程求解指令的使用题目一:请用MATLAB的ODE45算法分别求解下列二个方程。
要求:1.编写出Matlab 仿真程序;2.画出方程解的图形并对图形进行简要分析;3.分析下列二个方程的关系。
1.2.1.function fun=funl(t,x)fun=-x^2;[t,x]=ode45('fun1',[0,20],[1]); figure(1);plot(t,x);grid2.function fun=fun2(t,x)fun=x^2;[t,x]=ode45('fun2',[0,20],[-1]); figure(2);plot(t,x);grid题目二:下面方程组用在人口动力学中,可以表达为单一化的捕食者-被捕食者模式(例如,狐狸和兔子)。
其中1x 表示被捕食者, 2x 表示捕食者。
如果被捕食者有无限的食物,并且不会出现捕食者。
于是有1'1x x ,则这个式子是以指数形式增长的。
大量的被捕食者将会使捕食者的数量增长;同样,越来越少的捕食者会使被捕食者的数量增长。
而且,人口数量也会增长。
请分别调用ODE45、ODE23算法求解下面方程组。
要求编写出Matlab 仿真程序、画出方程组解的图形并对图形进行分析和比较。
1.ODE45function fun=fun3(t,x)fun=[x(1)-0.1*x(1)*x(2)+0.01*t;-x(2)+0.02*x(1)*x(2)+0.04*t];[t,x]=ode45('fun3',[0,20],[30,20]);plot(t,x);Grid2.ODE23function fun=fun3(t,x)fun=[x(1)-0.1*x(1)*x(2)+0.01*t;-x(2)+0.02*x(1)*x(2)+0.04*t];[t,x]=ode23('fun3',[0,20],[30,20]);plot(t,x);Grid2. Matlab 中模型表示及模型转换指令的使用题目三:若给定系统的的传递函数为1132106126)(23423+++++++=s s s s s s s s G请用MATLAB 编程求解其系统的极零点模型。
num=[6 12 6 10]; den=[1 2 3 1 1]; sys=tf(num,den); H=zpk(sys)题目四:习题2.4系统传递函数为)65)(1(54)(22+++++=s s s s s s G 求其对角标准型实现。
num=[1 4 5]; den=[1 6 11 6]; sys=tf(num,den); canon(sys,'modal')题目五:习题5.8已知某离散系统02.003.0)(2+-=z z zz D ,采样周期Ts=0.02s,现需要在T=0.1s下作数字仿真,求该系统的数字仿真模型。
D=zpk(0,[0.1 0.2],1,0.1) D2=d2d(D,0.02)五.总结与体会初步掌握了Matlab常用指令的使用方法,为下一步学习打下了基础。
实验二 Matlab 优化工具箱的使用一.实验目的通过上机操作熟悉Matlab 优化工具箱的主要功能及其使用方法,掌握优化工具箱中常用函数的功能和语法,并利用其进行极值运算、求解线性和非线性问题等,为进一步的仿真设计和研究打下基础。
二. 实验设备个人计算机,Matlab 软件。
三. 实验准备预习本实验有关内容(如教材第6章中的相应指令说明和例题),编写本次仿真练习题的相应程序。
四. 实验内容1. 应用Matlab 优化工具箱求解优化问题例题6.6~6.10,选做2题,要求自行修改方程系数,并比较运行结果。
例6.6 例如求解非线性方程:21212122x x e x x e x x --=+-=-初始值为x0 = [-5 -5]。
原程序function F=myfun(x)F=[2*x(1)-x(2)-exp(-x(1));-x(1)+2*x(2)-exp(-x(2))];x0=[-5,-5];options=optimset('Display','iter');[x,fval]=fsolve(@myfun,x0,options)改变后function F=myfun(x)F=[3*x(1)-x(2)-exp(-x(1));-x(1)+3*x(2)-exp(-x(2))];x0=[-5,-5];options=optimset('Display','iter');[x,fval]=fsolve(@myfun,x0,options)例 6.8利用Matlab 命令求解下面的无约束非线性规划问题。
)12424()(min 221222112++++=∈x x x x x e x f x R x原程序function f=fun(x)f=exp(x(1))*(4*x(1)^2+2*x(2)^2+4*x(1)*x(2)+2*x(2)+1);x0=[-1,1];options=[];[x,options]=fminu('fun',x0,options)改变后function f=fun(x)f=exp(x(1))*(5*x(1)^2+3*x(2)^2+2*x(1)*x(2)+4*x(2)+1);x0=[-1,1];options=[];[x,options]=fminu('fun',x0,options)2. 应用Matlab优化工具箱求解极值问题已知函数f(x)=10*exp(-x)*cos(x) ,求函数的极值。
(1)x∈[2,5]时,求函数的最小值,并画出函数的曲线。
X=fmin('10*exp(-x*cos(x)',2,5)X=2.3562f='10*exp(-x)*cos(x)';fplot(f,[2,5])Y=-0.6702(2)x∈[3,9]时,求函数的最大值,并画出函数的曲线。
X=fmin('-10*exp(-x*cos(x)',3,9)X=5.4978f='10*exp(-x)*cos(x)';fplot(f,[3,9])Y=0.0290五.总结与体会熟悉了Matlab优化工具的主要功能和使用方法,常用函数的功能,并利用进行极值运算,求解线性非线性问题。
实验三利用Matlab和Simulink进行系统仿真设计一.实验目的通过实验对一个汽车运动控制系统进行实际设计与仿真,掌握控制系统性能的分析和仿真处理过程,熟悉用Matlab和Simulink进行系统仿真的基本方法。
二. 实验设备个人计算机,Matlab软件。
三. 实验准备预习本实验相关说明,复习PID控制器的原理和作用,明确汽车运动控制系统问题的描述及其模型表示,编写本次仿真练习的相应程序。
四. 实验说明本实验是对一个汽车运动控制系统进行实际设计与仿真,其方法是先对汽车运动控制系统进行建摸,然后对其进行PID 控制器的设计,建立了汽车运动控制系统的模型后,可采用Matlab 和Simulink 对控制系统进行仿真设计。
注意:设计系统的控制器之前要观察该系统的开环阶跃响应,采用阶跃响应函数step( )来实现,如果系统不能满足所要求达到的设计性能指标,需要加上合适的控制器。
然后再按照仿真结果进行PID 控制器参数的调整,使控制器能够满足系统设计所要求达到的性能指标。
五. 实验内容1. 问题的描述如下图所示的汽车运动控制系统,设该系统中汽车车轮的转动惯量可以忽略不计,并且假定汽车受到的摩擦阻力大小与汽车的运动速度成正比,摩擦阻力的方向与汽车运动的方向相反,这样,该汽车运动控制系统可简化为一个简单的质量阻尼系统。
根据牛顿运动定律,质量阻尼系统的动态数学模型可表示为:⎩⎨⎧==+v y u bv v m 系统的参数设定为:汽车质量m =1000kg ,比例系数b =50 N ·s/m ,汽车的驱动力u =500 N 。
根据控制系统的设计要求,当汽车的驱动力为500N 时,汽车将在5秒内达到10m/s 的最大速度。
由于该系统为简单的运动控制系统,因此将系统设计成10%的最大超调量和2%的稳态误差。
这样,该汽车运动控制系统的性能指标可以设定为:上升时间:t r <5s ;最大超调量:σ%<10%;稳态误差:e ssp <2%。
2.系统的模型表示假定系统的初始条件为零,则该系统的Laplace 变换式为:⎩⎨⎧==+)()()()()(s V s Y s U s bV s msV 即 )()()(s U s bY s msY =+ 则该系统的传递函数为:bms s U s Y +=1)()( 如果用Matlab 语言表示该系统的传递函数模型,相应的程序代码如下:num=1;den=[1000,50];sys=tf(num,den)同时,系统的数学模型也可写成如下的状态方程形式:⎪⎩⎪⎨⎧=+-=vy u m v m b v 1如果用Matlab 语言表示该系统状态空间模型,相应的程序代码如下:A=-50/1000;B=1/1000;C=1;D=0;sys=ss(A,B,C,D)3. 系统的仿真设计●利用Matlab进行仿真设计I.求系统的开环阶跃响应在Matlab命令窗口输入相应的程序代码,得出该系统的模型后,接着输入下面的指令:step(500*sys)可得到该系统的开环阶跃响应曲线,如下图所示:从图上可看出该系统不能满足系统设计所要求达到的性能指标,需要加上合适的控制器。
II .PID 控制器的设计PID 控制器的传递函数为:sK s K s K s K s K K I P D D I P ++=++2在PID 控制中,比例(P )、积分(I )、微分(D )这三种控制所起的作用是不同的(请注意在实验总结中进行归纳)。
下面分别讨论其设计过程。
(1)比例(P )控制器的设计增加比例控制器之后闭环系统的传递函数为:)()()(P P K b ms K s U s Y ++= 由于比例控制器可以改变系统的上升时间,现在假定Kp =100,观察一下系统的阶跃响应。