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.

[参考译文] TMS320F28069M:最大 4极 BLDC 电机的可能 RPM

Guru**** 2611705 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/690733/tms320f28069m-max-possible-rpm-with-a-4-pole-bldc-motor

器件型号:TMS320F28069M

您好!

想知道 F28069M 在默认90MHz 下运行时可以实现的最大电机主轴 RPM 是多少。

有什么想法吗? 如何找到此图?

谢谢、

制造商

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    InstaSPIN-FOC 不一定由以 RPM 为单位的物理速度进行门控、而是由电频率进行门控。 公式是

    Electrical Freq_Hz = RPM *极数/120

    我们的主要控制技术通常在2KHz 的频率下工作

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

    感谢您的澄清、非常感谢。 哪些参数会影响频率?
    我指的是在 user.h 中可配置的任何参数?
    对于我来说、控制电机电气频率的参数似乎并不明显。
    具有一个4极电机、转速可高达20、000RPM;20、000x4/120 = 666Hz、至少在2kHz 限制范围内。

    谢谢、
    制造商
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    正确、您提供的数字似乎合理。 请记住、在高频时(接近2khz)、无传感器控制可能很困难。 电气驱动频率不是 user.h 中的参数、它与逆变器驱动电机的频率相关、而后者又与命令输出相关

    肖恩
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尝试调整 user.h、在 instaspin_lab 手册的这一行中感到非常困惑:

    "最后、低电感电机通常也具有低磁通值。 确保满量程电压设置为允许识别磁通的值。 选择满量程电压时、请考虑以下公式:

    V/Hz 下的最小磁通= USER_IQ_FULL_SCALE_VOLTAGE_V/USER_EST_FREQ_Hz/0.7"
    这在手册的第72页上。

    尝试使用 user.h 中的宏来分解该语句:

    #define USER_ISR_FREQ_Hz ((float_t) USER_PWM_FREQ_kHz * 1000.0 /(float_t) USER_NUM_PWM_TICKS_PER_ISR_TICK)
    #define USER_CTRL_FREQ_Hz (uint_least32_t)(USER_ISR_FREQ_Hz/USER_NUM_ISR_TICKS_PER_CTRL_TICK)
    #define USER_EST_FREQ_Hz (uint_least32_t)(USER_CTRL_FREQ_Hz/USER_NUM_CTRL_TICKS_PER_EST_TICK)

    我不确定这些值、但在随附的电子表格中找到它们。

    USER_NUM_PWM_TICKS_PER_ISR_TICK 是否为3个周期?
    USER_NUM_ISR_TICKS_PER_CTRL_TICK 为1?
    USER_NUM_CTRL_TICKS_PER_EST_TICK 为1?

    它们是正确的值吗?

    USER_ISR_FREQ_Hz = 45.0 * 1000/3 = 15000.0
    USER_CTRL_FREQ_Hz = 15000.0/1 = 15000.0
    USER_EST_FREQ_Hz=15000.0/1 = 15000.0

    定义如下、使用电子表格计算:
    //--调整
    #define USER_PWM_FREQ_kHz(45.0)
    #define USER_IQ_FULL_SCALE_FREQ_Hz(1386.0)
    #define USER_MOTOR_FLUX_EST_FREQ_Hz(133.0)//(50.0)
    #define USER_MAX_ACCEL_EST_Hzps(18.0)
    #define USER_IQ_FULL_SCALE_CURRENT_A(18.0)
    #define USER_IQ_FULL_SCALE_VOLTAGE_V(34.0)

    V/Hz 中的最小磁通= 34.0/15000.0/0.7 = 0.00323809523809523809523809580952381

    现在、它是否意味着要替换

    #define USER_MOTOR_RAGED_FLUX(0.0340334028)

    使用此计算值? 我不明白必须在哪里设置它?

    谢谢、
    制造商
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您得出的计算是将由 lab2c 中的 FAST 观测器识别的额定磁通值的下限值。 您无需根据此值更改 user.h。 如果 FAST 由于电机的低电感而无法识别额定磁通、那么您可以考虑更改 USER_EST_FREQ_Hz (或 USER_IQ_FULL_SCALE_VOLTAGE_V)。 我相信您不需要执行这些操作之一、因为0.0032对于电机识别期间的额定磁通而言是一个相当低的限制

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

    您好 Sean、

    感谢您的澄清。

    谢谢、

    制造商