Simulink:The block XX is in an invalid algebric loop问题解决
一、问题原因

The block XX is in an invalid algebric loop出现的原因主要有:
模块出现自循环,且模块的信号馈入形式为直接馈入,仿真参数设置采用离散时间容易出现以上问题

二、解决方法
1.在模块的自循环信号处添加单位时延模块或时延模块,时延模块的长度注意进行设置


在回环的位置添加时延模块后,即可通过编译

2.由于matlab fcn等模块不能进行状态的保存,当我们需要进行数据的缓存或对状态记录时可以采用其他模块进行解决。例如使用HDL Coder的RAM模块,对指定地址进行读写,实现数据和状态缓存,从而避免代数环的出现。

本文介绍了Simulink中出现'The block XX is in an invalid algebric loop'错误的原因及解决方法,包括添加时延模块、使用特定模块避免代数环和利用S函数保存状态。
最低0.47元/天 解锁文章
6420

被折叠的 条评论
为什么被折叠?



