计算机仿真、实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计算机仿真技术MATLAB
实验报告
实验一:
实验内容:已知单位负反馈系统前向通道传递函数和其闭环传递函数分别为:
2()(2)n n G s s s ωξω=+2
2
2
()2n
n n s s s ωξωωΦ=++
1. 算法说明
因为wn=1,所以分子num 为1,这里我们用bc 代表阻尼系数,再对其每隔0.1
取一个数,利用循环for 语句画其每一条曲线并观察;y(:,i)表示y 中所有行,第i 列;用step 函数绘制阶跃响应曲线模型,mesh 函数用来建立三维曲线模型,此处相当于将几条阶跃响应扯出并竖过来,使其更符合观察需要,flipud 用来实现矩阵的翻转。 2.程序及运行结果
在MATLAB 中键入以下程序:
为了从不同的角度观察响应曲线,我们取了两个视角范围:(1)[280 20]图形如下:
(2)[220 30]图形如下:
两张图中范围为[0,10]的是x 轴,在这里代表阻尼比,范围[0,200]的是y 轴,范围[0,2]的是z 轴。可以看出,两张图处于三维空间的不同视角,可以满足不同的观察需要。
实验二:
实验内容:已知一个单位负反馈系统的前向通道的传递函数为:
24
32
24183
()210s s G s s s s ++=++
试绘制该函数的单位等加速度信号输入响应及其稳态误差响应曲线,并计算其响
应的稳态误差。
1.算法说明
此处使用tf 函数建立开环传递函数模型,feedback 函数建立闭环传递函数模型, 并通过dcgain 函数求出加速度误差系数,因为计算加速度误差取极限时前方要乘以s 的平方,所以要将原系数每个提升二阶,所以num 后要加两个0,再根据公式,对加速度误差系数取倒数即可得稳态误差。对于加速度响应,由于不像阶跃响应由预置好的step 函数,所以我们要建立一个加速度输入函数u(i),再将闭环传递函数和输入函数数据交给lsim 函数画图即可。
2.程序及运行结果
在MATLAB中键入以下程序:
上图程序中可见,已算出稳态误差为Ka为3.33333。运行后所画稳态误差曲线如下图:
上图可以看出,最终输出与输入误差趋于固定值,且约为3.33333.说明此系统可以跟踪单位加速度响应。
实验三:
实验内容:已知单位负反馈系统的开环传递函数为:
()()(1)(2)
k
G s H s s s s =
++
试绘制系统根轨迹,并分析系统稳定的k 值范围。 1.算法说明
这里的分母我们使用多项式函数conv ,由于函数限制最多只能写两项,而这里分母有三项,所以我们采用conv 里面再套一个conv 来解决。Rlcous 函数用来绘制根轨迹模型,其他后续操作在下面说明。
2.程序及运行结果
在MATLAB中键入以下程序:
前两行键入完毕后,系统先画出根轨迹如下图:
然后键入rlocfind函数后可以根据需求找图上对应的增益K值,显然虚轴左半平面为稳定部分,右半平面为不稳定部分,所以我们据此可以大概找出临界点位置:输入后,我们在图中选取如下点:
选好后图上出现红色的叉即为我们标出的点,如下图所示:
而程序中也会相应的算出K值为K=6.3095(见上方程序图),所以当K<6.3时系统
稳定,K>6.3时系统不稳定。
实验四:
实验内容:已知线性定常系统的状态方程为:
1122()()010()()()231x
t x t u t x t x t ⎡⎤⎡⎤⎡⎤⎡⎤=+⎢⎥⎢⎥⎢⎥
⎢⎥--⎣⎦⎣⎦⎣⎦⎣⎦
其初始状态为零,试利用Matlab 求u(t)为单位阶跃函数时系统状态方程的解。 1.算法说明
syms 函数用来定义一个符号变量,使其区别于数值变量,inv 用来求逆矩阵,ilaspace 函数用来求拉普拉斯反变换,求出后将求出的两行分别令为x1和x2即可,即为状态方程的解。
2.程序及运行结果
在MATLAB 中键入如下程序:
最后x1和x2即为状态方程的解
而plot 画图指令还将他们显示出他们的曲线,如下图:
实验五:
实验内容:已知多环系统:
()16.7(0.81)(0.251)(0.06251)
s
G s s s s =
+++
其系统结构图如下图所示,试利用Nyquist 曲线判断系统的稳定性
1.算法说明
这里使用zpk模型建立传递函数,其中z1,p1,k1为小闭环的模型,z,p,
K为大闭环的模型,由于放大系数为10,所以,原来基准点(-1,j0)要改成(-0.1,j0),然后根据nyquist判据方法判断即可,cloop用来生成大闭环传函,用来求极点。
2.程序及运行结果
在MATLAB中输入如下程序:
由上图可见3个极点均位于左半平面,所以判据公式中P=0;
下图为运行后画出的nyquist曲线:
上图中可见其未包围(-0.1,j0)点,所以N=0;
根据nyquist 判据,Z=P+N=0+0=0,所以此系统稳定。
实验六:
实验内容:求以下多输入多输出系统的单位阶跃响应曲线:
2.255 1.250.5462.25 4.25 1.250.25240.250.5 1.251221.25 1.750.250.7502x x u ---⎡⎤⎡⎤⎢⎥⎢⎥---⎢⎥⎢⎥=+⎢⎥⎢⎥---⎢⎥⎢⎥---⎣⎦⎣⎦
00010202y x ⎡⎤=⎢⎥⎣⎦
1.算法说明
分别将两个输入的系数用a ,b 矩阵表示,两个输出系数c ,d 矩阵表示: