MATLAB 您所在的位置:网站首页 如何用simulink求解微分方程 MATLAB

MATLAB

#MATLAB| 来源: 网络整理| 查看: 265

这次还是继续为之后的专栏做铺垫(如果之后还继续写这一系列专栏的话)。

以一个经典的有质量、弹性和阻尼的东西为例。质量×加速度,阻尼×速度,弹性×偏移量(距离),驱动力构成这样一个动力系统。这样一来有一个简单的等式:

二阶系统

这个东西通常被称为二阶系统,接下来我们用MATLAB的Simulink搭建这个系统:

Simulink搭建二阶系统

如图 2所示,我们需要用到Step、Add、Gain、Integrator、Scope这几个模块。点击工具栏的Library Browser在Simulink Library找到这几个模块,并将其拖放到工作区。

Sources下的Step模块

图 3 Step模块

Sinks 下的 Scope 模块

图  4 Scope 模块

Continous 下的 Integrator 模块

图  5 Integrator 模块

Math Operations 下的 Gain 模块

图  6 Gain 模块 

Math Operations 下的 Add 模块

图  7Add 模块

然后配置我们找到的这些模块,双击 Add 模块,将 List of signs改为-+-

图  8 配置 Add 模块

按住 Ctrl 拖动 Gain 模块,将其复制,右键 Gain 模块进行旋转或者选中 Gain 模块后按快捷键 Ctrl+R

图  9  配置 Gain 模块

将配置好的模块按图  10 方式连接起来,直接拖动鼠标即可连接。

图  10 连接各模块 

修改系统的参数,分别双击 Step 以及 3 个 Gain 模块

图  11 修改 Step 的 Step time

Gain 模块参数过长,显示不下时可以拖动调整模块大小

图  12 Gain 模块参数显示不下图  13 拖动调整模块大小

点 击 File->Model  Properties->  Model  Properties->Call  backs-> InitFcn  进行初始化参数。

图  14  初始化参数

m=0.5;%这里是质量 0.5kg c=0;%  这里是阻尼 0 k=1; %  这里是弹性 1N/m w=sqrt(k/m); %  这里是振动系统的频率 kes=c/(2*w*m);%这里是判断系统状态的 ξ 值 %0Style 进行图像风格的调整。

图  17  图像风格的调整

调整完后的图像

图  18  图像风格的调整 

回到 MATLAB 主界面工作区,在工作区窗口可以查看运行后,各个参数的取值。

图19 各参数取值

然后可以对参数进行修改,探索二阶系统不同ξ 值下的单位阶跃响应曲线。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有