![MATLAB-Simulink系统仿真超级学习手册](https://wfqqreader-1252317822.image.myqcloud.com/cover/494/22652494/b_22652494.jpg)
上QQ阅读APP看书,第一时间看更新
1.3 MATLAB/Simulink应用示例
本节将介绍几个例子来展示MATLAB/Simulink在系统仿真中的应用,希望读者通过这些例子对MATLB/Simulink有一个初步的认识。
【例1-1】微分方程求解。一个非线性刚体系统可用如下方程进行描述:
![](https://epubservercos.yuewen.com/611225/11229157604713606/epubprivate/OEBPS/Images/figure_0018_0001.jpg?sign=1739671745-uwOQLe8rPw3WGrU9Iz9rJQIB6KAJgrEV-0-c9f6e7ff6e1a49698e21af379fd95d32)
试求出在初始条件y1(0)=0、y2(0)=1、y3(0)=1下系统的解。
编写如下MATLAB程序:
function ep1_1 options = odeset('RelTol',1e-4, 'AbsTol', [1e-4 1e-4 1e-5]); [T, Y] = ode45(@rigid, [0 12], [0 1 1], options); plot(T, Y(:,1), '-', T, Y(:,2), '-.', T, Y(:,3), '.') function dy = rigid(t, y) dy = zeros(3,1); dy(1) = y(2) * y(3); dy(2) = -y(1) * y(3); dy(3) = -0.51 * y(1) * y(2);
程序运行结果如图1-3所示。
![](https://epubservercos.yuewen.com/611225/11229157604713606/epubprivate/OEBPS/Images/figure_0019_0001.jpg?sign=1739671745-BnDMed5I7Mclf2KWDDLvdxCJ76LPmVHg-0-5b512bc7abe401d99df9bcdfb703befb)
图1-3 微分方程的解
【例1-2】三维图形绘制。编写如下MATLAB程序:
figure; [X, Y] = meshgrid(-8:.5:8); R = sqrt(X.^2 + Y.^2) + eps; Z = sin(R)./R; mesh(Z);
程序运行结果如图1-4所示。
![](https://epubservercos.yuewen.com/611225/11229157604713606/epubprivate/OEBPS/Images/figure_0019_0002.jpg?sign=1739671745-t4BTSSp5fU3o7ozlTqetk4E26DUKrfe7-0-2621201e5b53720638f2887675f88be5)
图1-4 三维图形绘制
【例1-3】Simulink模型建立与仿真。
建立如图1-5所示的Simulink模型。
![](https://epubservercos.yuewen.com/611225/11229157604713606/epubprivate/OEBPS/Images/figure_0019_0003.jpg?sign=1739671745-bujzvIloB2y2lUyIwqYt2ptfxxIlwtrA-0-e9f6efb3369336703f3685428b6b6e4f)
图1-5 Simulink模型框图
这是一个利用S-Function建立的系统模型,通过Scope模块可以观察仿真结果。运行仿真,双击Scope模块,得到如图1-6所示的仿真结果。
![](https://epubservercos.yuewen.com/611225/11229157604713606/epubprivate/OEBPS/Images/figure_0020_0001.jpg?sign=1739671745-L4EY6mCMoGskRs5X4GFx7FwDbce7M6Q4-0-2df39dc9d664aa321d7d693c4b91cdea)
图1-6 仿真结果