请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:TMS320F2800156-Q1 工具与软件:
你(们)好
我们使用 F2800156进行压缩机控制、并具有振动补偿。
我们可以得到一次旋转的电机扭矩曲线。
但是、每次电机停止时、转子位置都是随机的、具有4对极 IPMSM。
这意味着,每次电机运行时, 电动机的0度数的定速实际上是0,90,180,270机械角。
我不太喜欢使用 COMPT 来补偿扭矩纹波。
#elif defined(MOTOR1_VIBCOMPT)
// This algorithm reduces speed ripple induced vibration by adjusting Iq
// depending on compressor angle. Compressor angle is in radians and
// compensation values are defined by vibCompAlpha0, vibCompAlpha120,
// vibCompAlpha240.
//
// Fine tune the angle range for compensation depending on compressor's
// torque vs angle profile
//
// Note that compressor may not align at 0 Mech degree at startup and hence
// based on speed ripple, angle may need to be updated
obj->vibCompAngle_rad = VIB_COMP_calcMechangle(obj->vibCompHandle, obj->angleFOC_rad);
// adjust the Iq current for angle lower than 1.57rad by value of vibCompAlpha0
if(obj->vibCompAngle_rad < 1.57f)
{
obj->IdqRef_A.value[1] = obj->Idq_out_A.value[1] - obj->vibCompAlpha0;
}
else if(obj->vibCompAngle_rad >= 1.57f && obj->vibCompAngle_rad <= 4.2f )
{
obj->IdqRef_A.value[1] = obj->Idq_out_A.value[1] +
((obj->vibCompAngle_rad - 1.57f) * obj->vibCompAlpha120);
}
else if(obj->vibCompAngle_rad > 4.2f)
{
obj->IdqRef_A.value[1] = obj->Idq_out_A.value[1] -
((obj->vibCompAngle_rad - 4.2f) * obj->vibCompAlpha240);
}
#else // !MOTOR1_VIBCOMPA && !MOTOR1_VIBCOMPT
如上面的演示代码所示、如何在每次电机启动时使用不同的可能机械装置调整角度?
此致
箭头
