matlab中仿真报错:某一个积分模块无穷大。

 我来答
百度网友c9d59dc
2023-06-30
知道答主
回答量:16
采纳率:100%
帮助的人:4334
展开全部

我也遇到过题主所述的这种情况,也是报错说某个积分模块在某个仿真时刻的值是not finite。

在我的仿真模块里,我设定的是固定步长,0.001。解决方法一般有以下几种,可以逐个尝试:

1、在simulation下拉菜单中congfiguration parameters减小步长

2、给积分模块赋予初值,取一个极小数(如0.0001),不影响全局

3、如果在仿真模块中含有控制器,可以在控制器的输出值后面增加一个限幅环节,这样可防止出现刚开始仿真时就出现过冲的现象。在我的仿真示例中,采用了系统自带的PID控制模块,因此可以直接在该模块中设置限幅:

双击PID Controller模块可以找到

根据实际需要设置限幅值,如±10

4、也可以考虑修改PID Controller模块中的Filter coefficient,在这里我把原来的值10000减小为1000,

接着便可以正常仿真了:

希望可以帮助到大家❤❀~

TableDI
2024-07-18 广告
仅需3步!不写公式自动完成Excel vlookup表格匹配!Excel在线免,vlookup工具,点击16步自动完成表格匹配,无需手写公式,免费使用!... 点击进入详情页
本回答由TableDI提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式