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.

[参考译文] TMDSCNCD280025C:有关电机识别问题的问题

Guru**** 2042920 points
Other Parts Discussed in Thread: TMDSCNCD280025C, DRV8353RS-EVM
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1115697/tmdscncd280025c-question-about-motor-identification-problem

器件型号:TMDSCNCD280025C
主题中讨论的其他器件: DRV8353RS-EVM

尊敬的支持团队。

我已成功使用 DRV8353RS-EVM + TMDSCNCD280025C 运行我们的电机之一。

已使用 DMC 级别4正确识别此电机。

结果如下所示:

#define USER_MOTOR1_TYPE MOTOR_TYPE_PM
#define USER_MOTOR1_NUM_POLE_PAIRS (4)
#define USER_MOOST1_RR_OHM (NULL)
#define USER_MOV1_Rs_Ohm (0.285154581)
#define USER_MOALE1_LS_D_H (0.00202809973)
#define USER_MOH1_LS_q_H (0.00202809973)
#define USER_MOUST1_RATed_VACK_VpHz (0.191983)
#define USER_MOUST1_MODEING_CURRENT_A (空)
#define USER_MOUST1_RES_EST_CURRENT_A (1.0f)
#define USER_MOV1_IND_EST_CURRENT_A (-0.8f)
#define USER_MOUST1_MAX_CURRENT_A (3.0F)
#define USER_MOALE1_FLUX_EXC_FREQ_Hz (50.0f)
#define USER_MOUST1_MOUE_CURRENT_A (6.5f)// a
#define USER_MOOST1_RATed_VOLTGE_V (24.0f)

此电机专为48V 直流链路电压而设计。

我有其他电机、我想确保我可以使用您的软件驱动无传感器电机。 这些不同的电机的额定电压不同。 一个用于24V、一个用于110V、一个用于300V (我计划将 HVkit 用于这个)。

遗憾的是、由于不同的问题(电机在斜升、过流等之后停止运转)、我无法识别其他电机。。

在本文档的帮助下:

https://www.ti.com/lit/ug/spruhj1i/spruhj1i.pdf?ts=1657101811492&ref_url=https%253A%252F%252Fwww.ti.com%252Ftool%252FMOTORWARE

我取得了一些进展,但我仍然有一些问题。

我的第一个问题与  USER_MOALE_RAVEND_VpHz 有关。

当电机在识别过程中运行时、值 motorSetVars_M1.flux_VpHz 相当稳定、但当电机停止时、该值会振荡并且非常不同。

应该在 user_mtr1.h 中使用哪个值?

例如、在我的一个电机上、电机运行时的值为0.1066、但识别后电机停止时的值为0.15。

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

    这是一个错误、请在 "motorVars_M1.estState"为 EST_State_Ls 时复制标识的值。 该错误将在下一个版本 MCSDK 中修复。

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

    好的、感谢您的回答

    第二个电机现在也在使用  DRV8353RS-EVM + TMDSCNCD280025C 运行。

    现在、请询问有关功率计算的问题:

     motor_common.c 中已计算出功率、但我一侧的结果不准确(motorVars_M1.powerActive_W)。 是否确定公式是计算有功功率的公式(不考虑电压和电流之间的角度)?

    论坛上有一些旧主题、还有一些是功耗计算、但由于这些内容非常陈旧、我不确定是否仍能按所述使用它:

    https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/556743/calculate-supply-current-from-instaspin-foc-signals

    请告诉我、下周结束

    此致。  

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

    它是逆变器到电机的输出功率、而不是逆变器的输入功率、而不是电机的输出功率。

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

    是的、这对我来说很清楚、但差异太大、与逆变器的效率有关、而且在某些工作点、输出功率(在 moter_common.c 中计算得出)可能高于输入功率(测量值)。 这是不可能的。

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

    您可以尝试使用"motorVars_M1.powerReal_W"、这是电机的输出功率。  

     如果 SVM 模式(motorVars_M1.svmMode = SVM_min_C)为 DPWM_MIN 模式、则 motorVars_M1.powerActive_W 的计算值不正确。 您可以在 motor1_driv. c 中搜索 SVM_min_C 并将 SVM_min_C 更改为 SVM_COM_C   motorVars_M1.powerActive_W 的计算值将正确。

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

    好的、我稍后会尝试、因为现在我回到了 HVkit 和300V 电机。

    首先、我尝试使用一个低电压(90V)、我已经使用跳线更改了 HVkit 上的分压器。 我还使用宏更改 SW 中的电压范围。

    我能够识别电机、但我无法运行它、因为我有模过流错误。 我可以在绕组中看到短时电流脉冲(小于1A)、这就是全部。

    我无法确定为什么设置了故障。

    如果我是对的、这是硬件过流、但该值太低、无法触发过流阈值、我在 HVkit 上的比较器输出上看不到任何触发。

    我不能正确遵循 HVkit 和 TMDSCNCD280025C (使用180至100适配器)之间原理图上的信号、引脚编号很奇怪、因此我不确定用于触发 模电流过流的信号。

    可以帮助我尝试解决这个问题吗?

    我的电机大约为150W @ 300Vdc、因此电流应该正常。

    编辑:

    我完成的最后一项测试:我启用了飞行启动,并在开始之前用手旋转它。 在这种情况下、它会运行、因此我的问题似乎与从零速度开始有关、可能是在力角期间。

    此致。

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

    关于模块过流、我似乎错了。 这似乎与 HVkit 上的硬件比较器无关、而是与内部比较器相关。

    更改 USER_MOOST1_OVER_CURRENT_A  有助于我解决模块过流错误。

    您能否解释一下在代码  USER_motor1_over_CURRENT_A 中的哪个位置用于更改阈值? 我找不到。

    现在模过流不再是三态的、启动不是很好、但我将尝试对其进行调整。

    此致

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

    延明目前不在办公室,请在15日星期五之前收到我们的下一次答复。

    最棒的

    Matthew

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

    好的、我可以等待、没问题。

    为此、我不得不对启动过程进行调整、以使其成功。

    我仍然有兴趣获得有关模块过流的问题的答案:

    您能否解释一下在代码  USER_motor1_over_CURRENT_A 中的哪个位置用于更改阈值? 我找不到。

    Edit (编辑):我在 calcMotorOverCurrentThreshold 中自己找到它。

    此外、由于难以确定哪个参数与强制角期间的最大电流相关、因此很难进行调优。 最后、通过更改大量参数、我发现这是 USER_MOUST1_VACK_CURRENT_A  、但 关于参数的名称、这并不明显。

    是否计划更新包含所有参数的文档?

    我使用的不是最新版本:

    https://www.ti.com/lit/ug/spruhj1i/spruhj1i.pdf?ts=1657101811492&ref_url=https%253A%252F%252Fwww.ti.com%252Ftool%252FMOTORWARE

    编辑:

    根据功率计算(之前的几个帖子)、 将 SVM_MIN_C 更改为 SVM_COM_C 会有所帮助、但逆变器的输出(计算值)仍比输入(测量值)高出大约10W。 我仍然认为使用的公式是用于视在功率、而不是有功功率。

    motorVars_M1.powerReal_W 似乎正常、但难以验证、但在我的应用中、我需要测量电能、而不是机械功率。

    您认为使用 Vd、ID、Vq、IQ 进行功率计算是否更有效?  

    此致。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [引用 userid="166470" URL"~μ C/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forume/11150697/tmdscncd280025c-question-about -motor-identification-problem/4140938#4140938"]是否计划更新包含所有参数的文档?[报价]

    没有更新 InstaSPIN 用户指南的计划。 Universal 实验中的大多数参数用于其他工程功能、与 FAST 估算器无关。 我们仅计划简化控制参数并更新通用实验室指南。

    [引用 userid="166470" URL"~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forume/1115697/tmdscncd280025c-question-about -motor-identification-problem/4140938#4140938"]您认为使用 Vd、ID、Vq、Vq 进行功率计算是否更有效?[引用 IQ]

     powerActive_W 是逆变器到电机的输出功率、 powerReal_W 是电机到负载的输出功率。

    您可以尝试使用 α-β 轴电压和电流来计算逆变器的输出功率、而不是 d-q 轴。