主题中讨论的其他器件:C2000WARE、 BOOSTXL-DRV8320RS、 BOOSTXL-3PHGANINV、 LAUNCHXL-F280049C、 C2000WARE-MOTORCONTROL-SDK
您好!
背景和硬件:
- 我正在研究电机控制 SDK 的电机参数识别实验5 ("InstapSPIN 项目和实验室用户指南")
- 我使用的是 C2000Ware_MotorControl_SDK_4_01_00_00
- 与 BoostXL-DRV8320RS 耦合的 F280049C-LaunchPad
- 具有26个极对的 BLDC 电机
- 具有28VDC 标称电压的 BLDC 电机
当在线使用 InstaSpin GUI 进行设置时、我会得到以下值、这些值均可信、但 Rs 除外。 使用万用表、与报告的3.06 Ω 相比、在电机相位上测量的电阻接近5.9 Ω。
然后、当我运行修改后的实验05代码时、我有以下结果:
- 计算的 RS 是接近 InstaSpin GUI 的计算、但仍是使用万用表在电机相位上测量的一半。
- Ls-d、Ls-q 和磁通(V/Hz)例程似乎无法正常工作。 将电机斜升至目标速度后、电机停止运转。
- 以下是我的当前电机参数:
#elif (USER_MOTOR == my_motor_1) // #define USER_MOTOR_TYPE MOTOR_TYPE_PM #define USER_MOTOR_NUM_POLE_PAIRS (26) #define USER_MOTOR_Rr_Ohm (NULL) #define USER_MOTOR_Rs_Ohm (NULL) #define USER_MOTOR_Ls_d_H (NULL) #define USER_MOTOR_Ls_q_H (NULL) #define USER_MOTOR_RATED_FLUX_VpHz (NULL) #define USER_MOTOR_MAGNETIZING_CURRENT_A (0.0) #define USER_MOTOR_RES_EST_CURRENT_A (4) //guess//10-30% of max current #define USER_MOTOR_IND_EST_CURRENT_A (-4)//guess 10-30% of max current #define USER_MOTOR_MAX_CURRENT_A (5.5)//Max continuous current RMS #define USER_MOTOR_FLUX_EXC_FREQ_Hz (60) //10-30% of rate frequency of motor #define USER_MOTOR_NUM_ENC_SLOTS (NULL) #define USER_MOTOR_FREQ_MIN_HZ (13.3) // Hz #define USER_MOTOR_FREQ_MAX_HZ (23.3) // Hz
我的问题:
- 为什么计算出的 Rs 约为我使用万用表测量值的一半?
- 当尝试估算磁通(V/Hz)时、电机为什么在斜升后停止? 我已经试验了 USER_MOTOR_RES_EST_CURRENT_A 和 USER_MOTOR_IND_EST_CURRENT_A、设置为高达+/- 5A。 但是、一旦达到目标速度、电机就会停止旋转。 通过在线使用 InstaSpin GUI、在整个电机参数识别过程中、大约0.7A 的电流保持恒定。 使用修改后的实验05代码时、电流在初始 Rs 计算中保持高电平、然后电流下降、电机斜升速度和电流、最后电机达到目标速度并在完成 Ls-d、Ls-q 和磁通(V/Hz)估算之前停止旋转。
- 在线 InstaSpin GUI 使用哪个版本的 MotorControl SDK?
谢谢、
Nicholas