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.

[参考译文] TMS320F280041C:无传感器 PMSM 使用 InstaspIN-FOC 和 FAST 无法达到速度

Guru**** 2536400 points
Other Parts Discussed in Thread: TMS320F280041C

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/964676/tms320f280041c-sensorless-pmsm-not-reaching-speed-with-instaspin-foc-and-fast

器件型号:TMS320F280041C

在具有板载 TMS320F280041C 的定制电机控制板上运行 CC 版本9.3。 编译器 TI v18.12.5.LTS、C200Ware 2.00.03版、电机控制 SDK 2.00.00.00。
我们尝试使用 实验 is07 (在《InstaSPIN 项目和实验用户指南》中介绍的 Vers 1.00.00.00)在无传感器模式下运行 PMSM、同时启用 FAST 算法和强制角、并将1Hz 切换到 FAST。 电机的最大速度为370Hz、但当要求大于200Hz 时、电机会跳闸。 从用户指南第14章和以前的文章中、如:

https://e2e.ti.com/support/microcontrollers/c2000/f/171/p/502880/1821864#1821864


我们认为、我们需要通过执行离线 Rs 反转来首先对齐转子。 在运行 is07之前、在代码的初始化部分中启用 Rs recal 标志:motorVars.flagEnableRsRecalc 不起作用。 实际上、电机电流随着电流振荡而蜂鸣、并呈指数级增长、直到电机电流跳闸。

在启动时对齐转子的正确代码应该是什么、然后 IS07代码是否可以运行以使电机旋转至或接近其最大速度?

我们还注意到、当给出新的速度命令时、速度会振荡。 它最终稳定下来、但我们知道我们需要调整速度环路。

运行 is04实验时,我们注意到角度发生器输出为0到2*PI。 在运行 is07实验时、我们注意到快速角度输出为-PI 到+PI。 这是否会导致 PI 的相位偏移、从而阻止电机达到高速? 如果是、是否有调整的方法?

我们还注意到、user.h 参数与《InstaSPIN-FOC 用户指南》SPRUHJ1H (2019年6月)中的参数不完全匹配、因此调试更困难。
提前感谢您的帮助。

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

    您使用的是 TI EVM 套件还是您自己的电路板? 您是否尝试运行 lab05来识别电机参数并使用识别的参数来运行 lan07?

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

    感谢您的回复。

    是的、我们已经运行了电机 ID 代码并使用了这些参数、我们正在使用自己的电路板。 在进一步测试后、我们看到 is07在初始化时似乎会对齐到我们标记的已知零转子位置。 除了无法达到速度之外、我们还注意到、在低速时、电机会在速度上振荡、并且不会很稳定。 我们认为这两种情况都表明 FAST 算法的角度输出不正确。 在更高速度下、角度相位"滑动"是否需要通过添加一些相位表与速度来校正? 或者馈送到 FAST 中的一些参数是否不正确? 过去、通过其他算法、我们确定了电机电感值对估算角度有很大影响。

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

    强制角(开环控制)用于启动和低速、因此在首次旋转启动期间可能会有一点振荡、尤其是负载较重的电机。

    自从您在自己的电路板上工作以来、您是否使用 lab03和 lab04来验证电流和电压感应? 您能否发布一些电流波形以显示有助于我们理解您的问题的问题? 如果可能、您是否有机会使用 TI EVM 套件运行电机并查看发生了什么情况?

    您无需根据速度添加任何角度补偿、FAST 估算器已经具有此函数。 您只需确保硬件板足以用于电机驱动、并根据硬件和电机在 user.h 中设置正确的参数即可。

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

    我们在不同的电机上使用了 EVM 套件。 下面是 Id_ref (idq_ref_a.value[0])和估计角度的图表。 这是一个 PM 电机、因此很奇怪 Id_ref 不是零、而是-6A -+4A 正弦。  据我所知、它不运行 Rs 在线重校准或场强减弱。

    在图中、电机被命令将速度从75Hz 提高到200Hz、然后它在接近200Hz 的频率上停止。 最大电机转速为370Hz。

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

    您是否意味着电机转速是由变量" motorVars.speedRef_Hz"设置的电频率?

    您能否在表达式观察窗口中检查"userParams.maxVsMag_V"和"motorVars.vs_V"? 两个变量的值是否非常接近。  如果是、请增大逆变器的直流总线电压以查看发生了什么情况。

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

    你(们)好 是的、以 Hz 为单位的电频率。 它是一个8极电机、2900 RPM -因此最大速度约为390 Hz。 使用 lab07电机启动大约一半的时间、当它启动时、75Hz 时的电流约为2A。当速度增加到200Hz 时、电流增加到20A、直到电机突然停止。 我们将施加48V 电压、这是一个48V 电机、因此它的速度应高于200Hz。 当我们使用 lab04并且 Iq = 18A 时、电机在超过300Hz 时无问题地旋转。 这可能是因为我们要施加大电流。

    对于速度闭环 lab07、是否内置了初始转子对齐? 我们认为、在更高速度下电流的大幅增加是由于估算出的角度偏差在更高速度下变得更糟。

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

    您是否尝试使用 TI EVM 套件识别和运行电机、并与您自己电路板上的测试结果进行比较?

    您是否有示波器使用电流探头捕获的电机相电流波形?

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

    我们尚未使用 TI EVM 套件尝试电机 ID、仅使用我们的定制板。 这可能会改变一些电机参数吗? 使用定制板时、在 TI EVM 套件上执行电机 ID 并将参数复制到 user.h 文件的正确序列是否正确?

    下面是运行 lab07并启用强制角的3个相位的启动电流、由于我们只有一个电流探头、因此运行3次不同的电流。 从这一点可以看出、没有初始转子锁定或对齐、当我们尝试按照之前的帖子中所述启用它时、电机会发出蜂鸣声、电流会振荡、幅度会增加、直到它跳闸。 是否有另一种方法可以在不使用离线 Rs 重校准启用的情况下实现转子对齐、或者 lab07代码中是否有不允许这种转子对齐方法的内容?

    下面是运行 lab07的电机以75Hz (约560RPM)旋转时获得的快速估算角度和3个电流相位的 CC 图。 当速度增加到200Hz (1500 RPM)时、电流增加10倍、电机停止运转。

    最新的 user.h 文件 attachede2e.ti.com/.../0841.user.h

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

    您是否有机会在 TI EVM 套件上识别和运行电机? 看起来电流波形不好。 您能否低速运行电机并捕获上述波形?

    InstaSPIN-FOC 不会将转子锁定和初始位置检测用于启动、只需使用强制角即可。

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

    我们将使用 EVM 套件设置电机并告知您结果。  我们知道没有初始位置检测、但惊讶地发现没有用于无传感器应用的转子锁。 在《InstaSPIN-FOC 用户指南》的第14章中、SPRUHJ1H 提到了在启动时管理满负载的方法、所述的技术是在启动时通过施加直流电流来执行转子对齐(我们曾称为转子锁定、但也是如此)。 遵循此技术对于我们使用不同的锁定电流和延迟不起作用。 手册中是否有错误? 对于 InstaSPIN-FOC、在满载条件下启动电机的方式没有什么不同?

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

    您仍然可以在电机控制 SDK 中的所有 instaspin 实验中使用 Rs 重校准来强制转子处于启动的初始位置。 或者如上所述在 d 轴上施加直流电流、以强制转子处于零角位置、然后通过调用 EST_setAngle_rad ()将估算角度设置为零。  

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

    如前所述、使用 Rs 重校准强制电机处于初始位置未使用 InstaSPIN 用户指南中的函数。 电流呈指数上升。 我们在 q 轴上施加了3秒的直流电流、同时将转子设置为零角、正如您所述、但我们似乎看不到 q 轴电流命令在命令的时间内变为所需的直流值。 您能否提供我们可 用于实现此功能的功能?

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

    将转矩电流值 直接设置为 Idq_offset_A.value[1]。

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

    我们必须先禁用估算器、然后再执行启动。 初始转子对齐似乎按预期工作。