1、仿真技术实验程序及思考题解答完整版汇总实验一 连续系统的数字仿真一、实验目的1 熟悉Matlab中m文件的编写;2 掌握龙格库塔法的基本原理。二、实验设备计算机、MATLAB软件三、实验内容假设单变量系统如图所示。试根据四阶龙格库塔法,求系统输出y的动态响应。1首先把原系统转化为状态空间表达式:,根据四阶龙格库塔公式,可得到: (1)其中: (2)根据(1)、(2)式编写仿真程序。 2在Simulink环境下重新对上述系统进行仿真,并和1中结果进行比较。四、实验结果及分析要求给出系统输出响应曲线,并分析计算步长对龙格库塔法的影响。计算步长对龙格库塔法的影响:单从每一步看,步长越小,截断误差就越
2、小,但随着步长的缩小,在一定求解范围内所要完成的步数就增加,不但引起计算量的增大,而且可能导致舍入误差严重积累,因此同积分的数值计算一样,微分方程的解法也有选择步长的问题。源程序:r=5;numo=1;deno=1 4 8 5;numh=1;denh=1;num,den=feedback(numo,deno,numh,denh);A,b,C,d=tf2ss(num,den);Tf=input(仿真时间 Tf= );h=input(计算步长 h=);x=zeros(length(A),1);y=0;t=0;for i=1:Tf/h; K1=A*x+b*r; K2=A*(x+h*K1/2)+b*r
3、; K3=A*(x+h*K2/2)+b*r; K4=A*(x+h*K3)+b*r; x=x+h*(K1+2*K2+2*K3+K4)/6; y=y;C*x;t=t;t(i)+h;endplot(t,y)Tf=5 h=0.02五、思考题1 试说明四阶龙格库塔法与计算步长关系,它与欧拉法有何区别。计算步长对龙格库塔法的影响:单从每一步看,步长越小,截断误差就越小,但随着步长的缩小,在一定求解范围内所要完成的步数就增加,不但引起计算量的增大,而且可能导致舍入误差严重积累,因此同积分的数值计算一样,微分方程的解法也有选择步长的问题。 区别:四阶龙格库塔法与欧拉法都是基于在初值附近展开成泰勒级数的原理,所
4、不同的是取泰勒级数的项数,欧拉公式仅取到h项,四阶龙格库塔法取到h4项。实验二 面向结构图的仿真一、实验目的1 掌握连接矩阵及系统状态方程的确定方法;2 掌握面向结构图的仿真方法。二、实验设备计算机、MATLAB软件三、实验内容 假设某系统由三个典型环节组成,如下图所示,求输出量y的动态响应。仿真基本步骤:1 给定输入信号,确定典型环节及环节参数;2 确定连接矩阵;3 输入仿真时间和计算步长;4 求H,H-1和Q阵,确定A、B阵;5 根据龙格库塔法求状态方程的解;6 根据15编写仿真程序。四、实验结果及分析 源程序:r=10;P=0 1 1 0;2 1 2 0;10 1 10 0;W=0 0
5、-1;1 0 0; 0 1 0;W0=1;0;0;Wc=0 0 1;Tf=input(仿真时间 Tf =);h=input( 计算步长 h=);A1=diag(P(:,1);B1=diag(P(:,2);C1=diag(P(:,3);D1=diag(P(:,4);H=B1-D1*W;Q=C1*W-A1;A=inv(H)*Q;B=inv(H)*C1*W0;x=zeros(length(A),1);y=zeros(length(Wc(:,1),1);t=0;for i=1:Tf/h; K1=A*x+B*r; K2=A*(x+h*K1/2)+B*r; K3=A*(x+h*K2/2)+B*r; K4=
6、A*(x+h*K3)+B*r; x=x+h*(K1+2*K2+2*K3+K4)/6; y=y;Wc*x;t=t;t(i)+h;endplot(t,y) 仿真时间Tf=10 计算步长h=0.05图一 仿真曲线五、思考题1 典型环节的确定必须满足什么条件? 答: G(S)=式中u为典型环节的输入,x为典型环节的输出。1.为了保证H的逆存在,应严格按照0的原则确定每个典型环节,既避免以纯比例、纯微分环节作为典型环节。2.在输入向量不全为阶跃函数的情况下,只要在确定典型环节时,注意使含有微分项系数即(0)的环节不直接与参考输入连接。实验三 连续系统的快速仿真一、实验目的1 熟悉增广矩阵的构建方法;2
7、掌握连续系统的快速仿真基本原理。二、实验设备计算机、MATLAB软件三、实验内容假设某系统结构图如下,要求采用快速仿真方法求系统输出响应。仿真基本步骤:1 给定输入信号,确定典型环节及环节参数;2 确定连接矩阵;3 输入仿真时间和计算步长;4 求H,H-1和Q阵,确定A、B阵;5 构建增广矩阵;6 采用增广矩阵法求齐次方程的解和系统输出响应。根据16编写仿真程序。4、实验结果和分析 源程序:r=10;num,den=series(1,1,0,2,1,2);num,den=series(num,den,10,1,10);num,den=cloop(num,den);A1,B1,C1,D1=tf2
8、ss(num,den);A=A1,B1;0,0,0,0;C=C1,0;Tf=10;h=0.05;k1=eye(size(A);k2=A*h;k3=k2*k2/2;k4=k3*k2/3;k=k1+k2+k3+k4;x=zeros(size(A1,1),1);10;y=0;t=0;for i=1:Tf/h x=k*x; y=y,C*x; t=t,i*h;endplot(t,y)五、思考题1增广矩阵法和四阶龙格库塔法有何区别? 答: 如果取的泰勒级数前五项,则增广矩阵的计算与四阶龙格库塔法相同。四阶龙格库塔法具有很高的精度,但运行速度很慢,而增广矩阵法既满足了精度又满足了速度。实验四 离散相似法仿真
9、一、实验目的1 掌握离散化的基本原理;2 掌握非线性系统的离散化仿真方法。二、实验设备计算机、MATLAB软件三、实验内容已知非线性系统结构图如下,求系统输出响应。1 给定参考输入,输入仿真时间,采样周期(T=0.1s);2 将被控对象离散化;3 给定参数初始值;4 计算误差和非线性环节输出;5 计算系统输出;6 参数值更新;7 若仿真时间到,则结束,否则转1。编写仿真程序,求解系统输出响应。4、实验结果及分析 源程序:%backlash.mfunction x,u1=backlash(u1,u,x1,s)if (uu1) if (u-s)=x1) x=u-s;else x=x1;endels
10、e if (uu1) if (u+s)50,幅值裕量kg10db,试确定串联校正装置。设计基本步骤:1 根据性能指标确定开环增益k;2 利用确定的开环增益k画出未校正系统的Bode图,并求其相位裕量r0和幅值裕量kg;3 确定所需增加的超前相位角,一般取515;4 令超前校正装置最大超前角,则;5 将校正装置的最大超前相位角处的频率作为校正后系统的剪切频率,则:;6 根据,可求得:;7 画出校正后系统Bode图,检验指标是否满足,如不满足,增大重新设计。四、实验结果及分析 源程序见课本P220num0=40;den0=conv(1,0,1,2);Gm1,Pm1,Wcg1,Wcp1=margin(num0,den
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1