我用的的TMS320F28069F+DRV8301-69M-KIT套件,
第一个问题:
程序在pid初始化时默认设置Iq PID控制器中允许的最小和最大输出值
outMin = _IQ(-0.95);
outMax = _IQ(0.95);
PID_setMinMax(obj->pidHandle_Iq,outMin,outMax);
但在电机运行时outMin,outMax的值有发生了变化,请问这两个量是由什么决定的?
第二个问题:
void USER_calcPIgains(CTRL_Handle handle)
{
CTRL_Obj *obj = (CTRL_Obj *)handle;
…
…
…
PID_setKi(obj->pidHandle_Iq,Ki_Iq);
CTRL_setGains(handle,CTRL_Type_PID_Iq,Kp_Iq,Ki_Iq,Kd);
}
在更新Id和Iq PI增益时 CTRL_setGains(handle,CTRL_Type_PID_Iq,Kp_Iq,Ki_Iq,Kd)中已经更新了Ki_Iq,
问什么在 CTRL_setGains(handle,CTRL_Type_PID_Iq,Kp_Iq,Ki_Iq,Kd)之前又加了PID_setKi(obj->pidHandle_Iq,Ki_Iq)
这不是重复了吗?有什么特殊用意吗?