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.

[参考译文] LAUNCHTXL-F2.8069万M:我是否可以使用InstaSPIN (FOC+MOTION)以极低的速度(低于1rpm)控制PMSM电机?

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/576449/launchxl-f28069m-can-i-control-a-pmsm-motor-at-very-low-speed-below-1rpm-using-instaspin-foc-motion

部件号:LAUNCHTXL-F2.8069万M
主题中讨论的其他部件:2MTR Dyno

尊敬的InstaSPIN团队:

我在运动控制方面遇到了一个挑战,那就是以极低的速度(< 1 rpm;即0.3 RPM)控制PMSM电机。 我知道并使用InstaSPIN-FOC在一个项目中控制ACIM电机,但在该项目中,我只能以超过5Hz的频率运行电机。 最近,我使用InstaSPIN-MOTION或SpinTAC运动来控制摄像机跟踪系统中的PMSM电机。 但是,我无法将电机控制在10 RPM以下运行。 我正在使用从TI购买的PMSM电机(. ),它连接了分辨率为1000 PPR (或每转4000个计数)的编码器。

但是,我在TI的手册和文档中读到过这样的信息:InstaSPIN-FOC和InstaSPIN- MOTION可以根据电机的类型,以从0.01 RPM到1万 RPM的广泛速度控制几乎所有电机。 即:

a)在文件第26页,SPRUHJ1F写道:“FAST提供可靠的角度跟踪,它在所应用波形的一个电气周期内收敛,并且能够以低于1Hz的频率进行跟踪(取决于模拟感应的质量和分辨率)。”

b)在第43页3.2 ,SPRUDJ1F文件的第1.2 节“摄像机”中写道:“高端安全和会议室摄像机以极低的速度(例如:0.1 rpm)运行,需要精确,流畅的位置控制来进行摇摄,俯仰和变焦。 驱动这些摄像机的电机很难进行低速调谐,它们通常需要至少四个调谐设置。 但是,InstaSPIN运动应用于由带有磁性编码器的2极BLDC电机驱动的高精度安防摄像头。 InstaSPIN运动能够使用在整个工作范围内有效的单个调谐参数来控制速度和位置..."

因此,根据上述“广告”,我认为使用InstaSPIN运动来控制我的电动机的极低转速是适用的,但事实上,由于某种原因,我无法达到低于10转/分的阈值。 我对InstaSPIN的能力有两种看法。

我希望收到您的团队解决此问题的任何预付款。

PS:我尝试使用LaunchPad-F2.8069万M-XL控制基于Project_Lab12的马达。

非常感谢,

Tran先生

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

    是否有人在极低转速(<1转/分)下受控PMSM电机?

    请分享您的经验或为上述问题提供建议。

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

    Tran先生,

    Tran Binh Duong 说:
    我尝试使用LaunchPad-F2.8069万M-XL在Project_Lab12基础上控制我的电机。

    使用本实验时,您是否先运行实验12a来估计系统惯性?

    另外,您为SpinTAC速度控制器设置的带宽是多少?

    在1kHz速度控制回路下运行时,Teknic马达的最小可分辨速度为15RPM (1/4000次* 60秒/分* 1/0.001sec),因此您可能需要调整SpinTAC位置转换中的滤波,以便从该马达/编码器组合获得精确的低速度读数。

    Tran Binh Duong 说:
    对于由带有磁性编码器的2极BLDC电机驱动的高精度安防摄像头应用了InstaSPIN运动。[/QUOT]

    在这个系统中,我们正在进行位置控制,由于第二个控制环路,在这些低速下更容易旋转。  

    您可能想尝试使用实验13e,它在位置模式下模拟速度控制。

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

    尊敬的Adam Reynolds先生:

    我非常感谢您对我的问题的回答,我认为您是回答我这个问题的最合适的人,因为您是SpinTAC运动的解决方案架构师。

    我想对您的问题提供以下反馈:

    1.我运行了Lab12a来确定电机惯性。

    2.我为Lab12b中的速度控制回路设置的带宽为65弧度/秒

    3.根据您的建议,这意味着我必须在命令中增加或降低过滤器的切断频率(即8000.0):

    //设置ENC模块

    ENC_SETUP (endHandle,1,USER_MOTOR_NUM_POLIC_Pairs,USER_MOTOR_ENCHER_Lines,0, User_IQ_FULL比例FREQ_Hz,USER_ISR_FREQ_Hz,8000.0);

    4.我是否应该将速度控制回路的采样频率从1kHz提高或降低,以在 低速范围内获得更好的精度?

    5.在您的摄像机应用中,您使用了多少编码器分辨率来在极低的速度(低于1 RPM,甚至达到0.1 RPM)下获得完美的控制效率?

    感谢您的建议。

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

    Tran Binh Duong 说:
    根据您的建议,这意味着我必须在命令:[/QUOT]中增加或降低过滤器的截止频率(即8000.0)

    该频率不用于计算反馈速度。  在 spintac_velocity.h中查找函数STPOSCONV_setLowPassFilterTime_tick并修改该过滤器设置。

    [报价用户="Tran Binh Duong"]4. 我是否应该将速度控制回路的采样频率从1kHz提高或降低,以在 低速范围获得更好的准确度?[/QUOT]

    我认为您需要提高采样频率并提高滤波频率,以便获得更好的低速运行。

    [报价用户="Tran Binh Duong"]5. 在您的摄像机应用中,您使用了多少编码器分辨率来在极低的速度(低于1 RPM,甚至低于0.1 RPM)下获得完美的控制效率?[/QUOT]

    他们使用的磁性编码器每转1024个脉冲(因此只比您使用的磁性稍高)。  它们的关键区别在于,此摄像机应用不是速度控制。  这是位置控制。  

    我建议您尝试使用实验13e,以满足您的速度要求。

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

    尊敬的Adam Reynolds先生:

    感谢您的快速回答。 我将按照您的指南,尽快反馈结果。

    今天还有一个问题,您的团队为摄像机项目中的速度或位置控制环路设置了多少带宽?

    祝您度过美好的一天!

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

    尊敬的Adam Reynolds先生:

    我刚刚根据您的建议,根据Lab13e完成了SpinTAC位置移动的定位控制能力测试。 结果令人惊叹

    我确认,当我在Lab13e中使用SpinTAC Position Move (SpinTAC定位移动)而非SpinTAC Velocity Move (SpinTAC速度移动)时,电机以非常低的速度(即0.1 RPM)进行控制。

    但我有一个问题,我想请大家帮助我深入了解SpinTAC Position Move的神奇功能, 这就是为什么我认为在使用SpinTAC位置移动时电机产生的扭矩高于使用SpinTAC速度移动时产生的扭矩;尽管在这两种情况下,这些控制器都将为内部FOC回路提供参考电流(IqRef)?

    换句话说,为什么在速度模式下运行时,SpinTAC定位移动的控制刚度SpinTAC速度移动的刚度更好?

    感谢您分享您的知识。

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

    Tran Binh Duong 说:
    我为什么觉得在使用SpinTAC位置移动时电机产生的扭矩高于使用SpinTAC速度移动时的扭矩[/QUOT]

    产生的总扭矩不会更高,但扭矩将更快地传递,因为在位置控制中,现在有两个控制回路(位置和速度),而不仅仅是速度。  这意味着当转子位置出现偏转时,位置回路将命令更高的速度,速度回路将命令更多的扭矩,而不是等待转子偏转导致速度错误,然后再进行校正。

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

    尊敬的Adam Reynolds先生:

    非常感谢您的清晰解释。 因为我不知道SpinTAC位置控制的内部结构,所以我认为它只包含一个位置循环。 在阅读您的分享内容并研究了位置控制的ADRC控制器之后,我了解了SpinTAC套件中的LineStream Technologies所提供的主动干扰抑制控制(ADRC)的效率。 太棒了!

    但是,当在速度模式下尝试SpinTAC位置移动/控制时,我提出了一个问题:因为我们可以使用SpinTAC位置移动+控制有效控制电机速度,所以我们是否需要SpinTAC速度移动+控制?

    此外,我想再问一个问题来结束这个主题:gMotorVars.MaxAccel_krpmps和gMotorVars.MaxDecel_krpmps参数在我的工程师通常为商业电动机驱动器设置的加速时间(TACC_sec)和减速时间(TDEC_sec)之间的关系是什么? 换言之,我想在运行运动之前配置TACC和TDEC。

    此致,

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

    Tran Binh Duong 说:
    因为我们可以使用SpinTAC位置移动+控制来有效控制电机速度,所以我们是否需要SpinTAC速度移动+控制?[/QUOT]

    SpinTAC Velocity Control非常适合不需要以低编码器分辨率以如此低的速度运行的系统。  因此我认为您的应用程序有一些特殊要求,可以正常工作,但完全拨入可能有点困难。

    [引用user="Tran Binh Duong"]我的工程师通常为商用电机驱动程序设置的加速时间(TACC_sec)和减速时间(TDEC_sec)之间的参数gMotorVars.MaxAccel_krpmps与gMotorVars.MaxDecel_krpmps之间的关系是什么?

    在SpinTAC位置移动中,加速和减速被指定为kRPM而不是时间。  这是因为SpinTAC位置移动的相对位置移动以及轮廓生成的基于约束的性质。  您的工程师需要将您期望的TACC含义转换为这些不同的单位。  根据速度限值和时间,应向前直行。

    在SpinTAC位置,以速度模式运行(如实验13e),即使降低速度,也只使用加速限制。  这样做是为了更好地与SpinTAC Velocity Move保持一致并简化API。

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