大家好,又见面了,我是你们的朋友全栈君。
Simulink是一个用来对动态系统进行建模、仿真和分析的软件包。使用Simulink来建模、分析和仿真各种动态系统(包括连续系统、离散系统和混合系统),将是一件非常轻松的事情。 它提供了一种图形化的交互环境,只需用鼠标拖动的方法便能迅速地建立起系统框图模型,甚至不需要编写一行代码。 由于Simulink具有强大的功能与友好的用户界面,因此它已经被广泛地应用到诸多领域之中,如: (1)通讯与卫星系统。 (2)航空航天系统。 (3)生物系统。 (4)物流系统。 (6)制造系统。 (7)金融系统。
simulink作为matlab中一个强大的库,在自动控制方面有着不可替代的作用。鉴于网上已有大量教材,仅提供一个小例子,以为入门。基础理论可参考这里。
已知系统的数学描述为: u ( t ) = s i n ( t ) , t ≥ 0 u(t)=sin(t),t \geq0 u(t)=sin(t),t≥0 y ( t ) = a u ( t ) = a s i n ( t ) , a ≠ 0 y(t)=au(t)=asin(t),a\ne0 y(t)=au(t)=asin(t),a=0
在选择构建系统模型所需的所有模块后,需要按照系统的信号流程将各系统模块正确连接起来。连接系统模块的步骤如下: (1) 将光标指向起始块的输出端口,此时光标变成“+”。 (2) 单击鼠标左键并拖动到目标模块的输入端口,在接近到一定程度时光标变成双十字。这时松开鼠标键,连接完成。完成后在连接点处出现一个箭头,表示系统中信号的流向。
如果需要几个同样的模块,可以使用鼠标右键单击并拖动某个块进行拷贝。也可以在选中所需的模块后,使用Edit菜单上的Copy 和Paste 或使用热键Ctrl+C和Ctrl+V完成同样的功能。
在某些情况下,一个系统模块的输出同时作为多个其它模块的输入,这时需要从此模块中引出若干连线,以连接多个其它模块。对信号连线进行分支的操作方式为:使用鼠标右键单击需要分支的信号连线(光标变成“+”),然后拖动到目标模块。
当用户按照信号的输入输出关系连接各控件之后,系统模型的创建工作便已结束。 为了对动态系统进行正确的仿真与分析,必须设置正确的控件参数。 控件参数的设置方法如下: 1.双击控件图标,打开控件参数设置对话框。 2.在参数设置对话框中设置合适的控件参数。
1、仿真起止时间设置 在缺省情况下,Simulink默认的仿真起始时间为0s,仿真结束时间为10 s。 对于简单系统,当时间大于25时系统输出才开始转换,因此需要设置合适的仿真时间。 设置仿真时间的方法有两种: (1)选择菜单Simulation中的Model configuration Parameters(或使用快捷键Ctrl+E),打开仿真参数设置对话框,在Solver选项卡中“Simulation time”栏设置系统仿真时间区间。设置系统仿真起始时间为0 s、结束时间为100 s。 (2)Simulink系统模拟编辑器窗口上方的仿真时间设置栏。 2、仿真步长设置 在使用Simulink对简单系统进行仿真时,影响仿真结果输出的因素有仿真起始时间、结束时间和仿真步长。对于简单系统仿真来说,不管采用何种求解器,Simulink总是在仿真过程中选用最大的仿真步长。 最大步长默认取值为auto,设置仿真步长的方法为: 选择菜单Simulation中的Model configuration Parameters(或使用快捷键Ctrl+E),打开仿真参数设置对话框,在Solver选项卡中“Solver options”栏的max step size设置系统仿真时间区间。
当对系统中各控件参数以及系统仿真参数进行正确设置之后,单击系统模型编辑器上的Run图标(黑色三角)或选择Simulation菜单下的Run便可以对系统进行仿真分析。 -显示系统仿真结果
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/136117.html原文链接:https://javaforall.cn