我搭建的是Amesim和Simulink联合仿真的模型,如下图:
simulink模型
上图可以清晰地看出我用的是离散位置式PID控制,其中Kp值我代入的数值是0,下图是我输入的信号和反馈信号的scope对比图:
scope对比图
虽然Kp值为0,但是单凭Ki和Kd的控制也拟合得不错。
但是我看网上都没有用ID控制的,一般都是PI、PD、PID控制,都离不开Kp值。我知道调PID值时是先调P值,有稳态误差再调I值,需要减短响应时间再调D值。附一张PID值起什么作用的贴图:
PID值作用图
我的问题是为什么Kp不能为0呢?如果Kp不能为0,为什么我的联合仿真模型仅仅用ID控制拟合效果为什么还比较好呢?(是PID控制模型有错误吗?)
希望看到的有人能不吝赐教,这对我有很大的帮助!
谢谢大家!
2024.01.20 20:12更新
在matlab官方中文论坛上已经有人回答了这个问题,我这里贴一个🔗点击这里
简单来说就是“有单I的控制,D本身是解决控制系统滞后的问题,工程中会因为采样误差用D的话会引入干扰,如果不存在采样误差的问题,那ID理论上应该是可以的。”(原回答)
但是一般都不能让Kp值等于0,有等于0的情况这种PID组合一定要小心谨慎使用!