yanxiao 发表于 2019-8-8 15:31:18

simulink模拟时0.961秒不收敛,错误提示积分器模块问题,求问

simulink仿真程序如下图,
仿真时提示在0.961秒时出现奇点,积分不收敛,然后标黄了积分器模块。该如何解决该问题?
这是一个状态空间方程的simulink模拟,输入有三个,一个是最左侧输入x2_2elcentrol的地震波,另外两个是用所得数据通过模糊神经网络模块计算得到的控制力。
现在出现的问题尝试过的解决办法有

[*]修改求解器,改成定步长计算,减小步长,以及所有求解器的方法都算了一遍,求解器方法不同时计算都会出现不收敛,只是出现的时间不同了。
[*]在积分器模块前边加入一个memory模块也试了,也是会出现不收敛,出现的时间点变了。
[*]修改时发现两个模糊神经网络计算的控制力在乘以相应的位置矩阵时,如果将位置矩阵B中其中的一列改为0时可以计算,就相当于是作用一个控制力的时候是可以计算的,两个控制力同时作用就不能计算了。
计算得到的0.961秒前的数据和要求得到的原始数据曲线对比图如下。

对比图中前段计算还算吻合,到后边会突然发生变化,不知道是什么原因,请各位大神帮忙看看,多谢了。
计算所用的MATLAB文件在附件中,文件中的par.mat是所需输入的各个参数,对比所用的原始数据通过statespace_original.slx模型计算得到。FNN.slx是计算错误时所用的模型。




页: [1]
查看完整版本: simulink模拟时0.961秒不收敛,错误提示积分器模块问题,求问