This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TMS320F2800156-Q1:如果我们在每个电机启动时使用 COMPT 进行振动补偿、那么使用4对磁极 IPMSM 时机械角度可能会有所不同

Guru**** 2530100 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1410321/tms320f2800156-q1-what-if-we-use-compt-for-vibration-compensation-while-the-every-motor-starts-mechanical-angle-may-be-different-with-a-4-pairs-of-poles-ipmsm

器件型号: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

如上面的演示代码所示、如何在每次电机启动时使用不同的可能机械装置调整角度?

此致

箭头

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    机械角度不需要与电角度同步。 有关详细信息、请参阅设计指南中的第32页: https://www.ti.com/lit/ug/tidube5a/tidube5a.pdf

    谢谢!

    嘉兴市

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

    tidube5a.pdf 的第32页显示了 COMPA 而非 COMPT 的方式。

    是的、COMPA 将学习负载曲线、并且不需要同步角度。

    但对于紧凑策略、负载曲线已经已知。 但是、每次电机启动时的机械角度可能不同。

    此致

    箭头

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    对于 COMP 方法、您需要根据速度纹波手动更新三个扇区的角度。  

    谢谢!

    嘉兴市