Simulink运行问题和报错处理问题整理

更新:2021-07-30 13:21:54

        在设计Simulink仿真模型中,经常会遇到一些仿真错误,原因往往是因为依赖文件找不到、模块维度设置不当、仿真步长和速率不匹配、控制器参数没调好、语法问题等等问题造成的,下面对一些常见的Simulink运行错误进行整理。

1.模型运行步长过大,会报以下错误

An error occurred while running the simulation and the simulation was terminated

Caused by:

  • Derivative of state '1' in block 'Copy_of_PMSM_HF/obsever/Integrator2' at time 0.37500000000000006 is not finite. The simulation will be stopped. There may be a singularity in the solution. If not, try reducing the step size (either by reducing the fixed step size or by tightening the error tolerances)

中文提示:

解决方法:在“设置”中减小仿真步长即可,一般看情况1e-4到1e-2左右。

2.在离散解算器中使用了连续仿真模块,会报以下错误:

The "VariableStepDiscrete" solver cannot be used to simulate block diagram 'untitled' because it contains continuous states

中文提示:

解决方法:将连续模块换成离散模块,或者可以将解算器用连续解算器,而不用离散解算器等等都可以。

3.模块数据类型有问题,报错如下:

Only 'double' signals are accepted by block type Derivative. The signals at the ports of 'untitled/Derivative' are of data type 'int16'.

Component:Simulink | Category:Model error

An error occurred while propagating data type 'int16' from 'untitled/Constant', output port 1.

中文提示:

解决方法:改变模块类型,使得在信号线连接的所有模块类型都是一致的就可以了。

以上中文提示用到是一款Simulink小工具,可以检测Simulink仿真中的错误,并以中文提示错误原因,还可以定位错误。这个工具对于不是很常用Simulink做开发的新手来说,还是非常有帮助的,此外这个工具还有其他有意思的功能比如:

功能1(运行并诊断当前模型):运行当前Simulink程序;如果出现错误,以中文进行提示,Simulink是以英文进行提示,非常不友好。
功能2 (模型美化) :模型美化:随机给模块上色,看起来模型更有色彩。
功能3 (自动排布) :自动排布:自动整理凌乱的模块分布。
功能4 (打开高版本) :MATLAB低版本打开不了高版本,本功能解决打不开高版本模型问题
功能5 (曲线画板) :任意修改曲线的数据、形状,可用于生成数据!
功能7 (模型降重):在不改变模型功能的情况下,打乱模型结构,选取合适的模型即可。
功能8 (搜索):快速搜索MATLAB内部中文文档和模型资料

工具下载地址如下:

百度网盘:

链接:https://pan.baidu.com/s/1Bl72X-GG9uQ6TccRERg9DA 
提取码:6mg2 

115网盘:

https://115.com/s/swn4uzy36ss?password=p949&#
访问码:p949


举报 © 著作权归作者所有
simulink技术
写了 717 字,被 人关注