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
通过进行此配置,系统可以避免在用户发出电机启动命令后花时间进行偏移重校准。不过,由于低速运行和电机启动要求偏移是正确的,用户必许在调用 CTRL_setFlag_enableCtrl(ctrlHandle, TRUE) 函数之前,加载这些预校准的偏移。下列示例代码加载已知的预校准偏移至 HAL 对象。
// disable automatic calculation of bias values
CTRL_setFlag_enableOffset(ctrlHandle,FALSE);
// set the current bias
HAL_setBias(halHandle,HAL_SensorType_Current,0,_IQ(I_A_offset));
HAL_setBias(halHandle,HAL_SensorType_Current,1,_IQ(I_B_offset));
HAL_setBias(halHandle,HAL_SensorType_Current,2,_IQ(I_C_offset));
// set the voltage bias
HAL_setBias(halHandle,HAL_SensorType_Voltage,0,_IQ(V_A_offset));
HAL_setBias(halHandle,HAL_SensorType_Voltage,1,_IQ(V_B_offset));
HAL_setBias(halHandle,HAL_SensorType_Voltage,2,_IQ(V_C_offset));
请注意,I_A_offset、I_B_offset、I_C_offset、V_A_offset、V_B_offset 和 V_C_offset 为之前系统运行的预校准偏移。重校准启用后,若这些偏移发生更新,可使用以下示例从 HAL 对象获取它们。
// enable automatic calculation of bias values
CTRL_setFlag_enableOffset(ctrlHandle,TRUE);
// Return the bias value for currents
I_A_offset = HAL_getBias(halHandle,HAL_SensorType_Current,0);
I_B_offset = HAL_getBias(halHandle,HAL_SensorType_Current,1);
I_C_offset = HAL_getBias(halHandle,HAL_SensorType_Current,2);
// Return the bias value for voltages
V_A_offset = HAL_getBias(halHandle,HAL_SensorType_Voltage,0);
V_B_offset = HAL_getBias(halHandle,HAL_SensorType_Voltage,1);
V_C_offset = HAL_getBias(halHandle,HAL_SensorType_Voltage,2);