分享

谈一谈|Matlab仿真项目简介

 算法与编程之美 2020-10-08

1 仿真工具简介

Simulink是一个对动态系统(包括连续系统、离散系统和混合系统)进行建模、仿真和综合分析的集成软件包,是MATLAB的一个附加组件,其特点是模块化操作、易学易用,而且能够使用MATLAB提供的丰富的仿真资源。在 Simulink环境中,用户不仅可以观察现实世界中非线性因素和各种随机因素对系统行为的影响,而且也可以在仿真进程中改变感兴趣的参数,实时地观察系统行为的变化。因此Simulink已然成为目前控制工程界的通用软件,而且在许多其他的领域,如通信、信号处理、DSP、电力、金融、生物系统等,也获得重要应用。

Simulink的模块库有两部分组成:基本模块和各种应用工具箱。如下图所示

图1.1 模块库构成

其中每个模块对应了不同的功能,这里不做详细介绍,感兴趣的朋友可以根据自己的需求深入了解。

2 仿真案例信号发生器

通常,用户创建的Simulink模型包含下列三部分“组件”:

输入信号源( Sources):可以是常数、时钟、白噪声、正弦波、阶梯波、扫频信号、脉冲生成器、随机数产生器等信号源或者是用户自定义的信号;

系统( System):即被模拟系统的 SIMULINK 方框图;系统模块作为中心模块是Simulink仿真建模所要解决的主要部分。

接收器(即输出、显示部分Sink):可以是示波器、图形记录仪(XY Graph)等。

下面我们用一个简单的正弦波信号仿真模型体现上述流程。

首先在模块库中找到对应的模块,主要是原模块和输出显示模块,将模块拖动到合适的位置,然后用连接它们,如图所示:

图2.1 正弦波信号仿真模型

由于这里的模型不需要做其他的处理,所以不需要中间的系统模块。在模块构建完成后,可以双击模块进行参数设置,例如我们将正弦信号的振幅和频率都设为1

图2.2 正弦波信号参数设置

其他的参数设置可以根据需求而定。

3 仿真结果注意事项

在构建好仿真模型后,单击运行按钮就可以进行仿真,要想看到仿真结果,只需要双击输出框模块。但在默认的输出环境下,想要看到正确的结果还有一些问题需要处理,这是因为我们的仿真模型中含有一些参数是需要我们调整的,使用默认的输出环境会使得结果偏离我们的预期,具体效果我们可以看上面模型在默认情况下的输出

图3.1 默认情况下仿真结果

可以看到,在默认情况下得到的仿真图像和我们理想的结果还是存在很大差距,因此需要根据模块的参数对输出进行调整。 

第一个需要改变的仿真时间的停止时间和最大仿真时间间隔,一般的,停止时间可以根据我们想要展示多少的仿真结果来确定(同时和仿真模型中参数有关),拿上面的案例来说,停止时间可以选择为10个函数周期,而为了让仿真结果更加平滑,需要使用较短的仿真时间间隔。两者的调整可以按照以下步骤:

在项目顶端点击Simulation选项,选择Simulation Parameters,在stop time中输入自己想要的停止时间;然后再max step size中输入时间间隔

图3.2 仿真时间和间隔设置

的二个需要改变的是y轴的范围,对于仿真模型来说,得到的仿真结果可能远小于默认值,这样会让结果展现的不明显甚至看不出结果,因此也需要调整。其步骤可参考如下:

在Scope窗口单击图像区域,选择Axes properties选项,再根据模型调整范围

图3.3 y轴范围设置

在调整完成后,保存模型再次运行就可以看到不一样的结果。

图3.4 调整完成后仿真结果


END

编  辑   |   王文星

责  编   |   黄章鱼

能力越强,责任越大。实事求是,严谨细致。    

                                                  ——where2go 团队


微信号:算法与编程之美          

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多