ZHCU083I January 2013 – October 2021 TMS320F2802-Q1 , TMS320F28026-Q1 , TMS320F28026F , TMS320F28027-Q1 , TMS320F28027F , TMS320F28027F-Q1 , TMS320F28052-Q1 , TMS320F28052F , TMS320F28052F-Q1 , TMS320F28052M , TMS320F28052M-Q1 , TMS320F28054-Q1 , TMS320F28054F , TMS320F28054F-Q1 , TMS320F28054M , TMS320F28054M-Q1 , TMS320F2806-Q1 , TMS320F28062-Q1 , TMS320F28062F , TMS320F28062F-Q1 , TMS320F28068F , TMS320F28068M , TMS320F28069-Q1 , TMS320F28069F , TMS320F28069F-Q1 , TMS320F28069M , TMS320F28069M-Q1
为了禁用 Rs 在线重校准,用户可以参考第一个代码示例(在此处再次列出),在其中写入初始值并禁用标志。按照之前的讨论,此代码示例还将检查状态机的状态是否正确以便正确地禁用 Rs 在线重校准:
CTRL_Obj *obj = (CTRL_Obj *)ctrlHandle;
// get the controller state
gMotorVars.CtrlState = CTRL_getState(ctrlHandle);
// get the estimator state
gMotorVars.EstState = EST_getState(obj->estHandle);
if((gMotorVars.CtrlState <= CTRL_State_OffLine) ||
((gMotorVars.CtrlState == CTRL_State_OnLine)&&
(gMotorVars.EstState == EST_State_Rs)))
{
EST_setRsOnLine_qFmt(obj->estHandle,EST_getRs_qFmt(obj->estHandle));
EST_setRsOnLineId_mag_pu(obj->estHandle,_IQ(0.0));
EST_setRsOnLineId_pu(obj->estHandle,_IQ(0.0));
EST_setFlag_enableRsOnLine(obj->estHandle,FALSE);
EST_setFlag_updateRs(obj->estHandle,FALSE);
}