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.

[参考译文] CCS/TMS320F28027F:在 Lab1C 测试中、电机汲取的电流非常高

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/926019/ccs-tms320f28027f-motor-drawing-very-high-current-in-lab1c-test

器件型号:TMS320F28027F

工具/软件:Code Composer Studio

尊敬的所有人:

我们使用 TMS320F28027F 控制器来实现 FOC。 我正在尝试实现 instaspin FOC 的实验1C。 实验1B 运行良好、电机以低电流平稳旋转。 当我尝试执行 lab1c 时、电机消耗非常高的电流(电机的额定电流为2A、但在本例中它消耗的电流为14A)来运行电机。 请告诉我哪里出错了?

电机规格:

  1. #define USER_MOTOR_TYPE:                          Motor_Type_Pm
    #define USER_MOTOR_NUM_POLE_PAIRS               (2)
    #define USER_MOTOR_RR                              (空)
    #define USER_MOTOR_Rs                             (1.2)
    #define USER_MOTOR_LS_d                            (0.000721)
    #define USER_MOTOR_LS_q                            (0.000721)
    #define USER_MOTOR_RATed_VLUX                    (0.19)
    #define USER_MOTOR_磁 化电流          (空)
    #define USER_MOTOR_RES_EST_CURRENT              (1.0)
    #define USER_MOTOR_IND_EST_CURRENT              (-1.0)
    #define USER_MOTOR_MAX_CURRENT                  (1.5)
    #define USER_MOTOR_FLUX_EST_FREQ_Hz              (20.0)

  2. #define USER_MOTOR_FREQ_LOW        (10.0)  
  3. #define USER_MOTOR_FREQ_HIGH       (300.0)
  4. #define USER_MOTOR_FREQ_MAX        (400.0)  
  5. #define USER_MOTOR_VOLT_MIN        (10.0)  
  6. #define USER_MOTOR_VOLT_MAX        (48.0)  

 

电流和电压

#define USER_IQ_FULL_SCALE_FREQ_Hz     (433)

#define USER_IQ_FULL_SCALE_VOLTAGE_V   (88)

#define USER_ADC_FULL_SCALE_VOLTGE_V    (68)

#define USER_VOLTGE_FILTER_POLE_Hz (328)   

#define USER_IQ_FULL_SCALE_CURRENT_A      (3)

#define USER_ADC_FULL_SCALE_CURRENT_A     (8)

#define USER_NUM_CURRENT_SENSORS       (2)  

#define USER_NUM_VOLTGE_SENSORS       (3)

#define I_A_offset (0.8387)   (默认值)
#define I_B_OFFSET (0.8387)    (默认值)
#define I_C_OFFSET (0.8387)    (默认值)

#define V_A_offset (0.4981)   (默认值)
#define V_B_OFFSET (0.4981)   (默认值)
#define V_C_OFFSET (0.4981)   (默认值)

问题:我们尝试执行实验3A /3B 以查找电压和电流偏移、但电机消耗的电流非常高、因此偏移值不会在表达式窗口中更新。

(gMotorvarsI_bias -> value)

(gMotorvarsV_bias -> value)


//! 简要介绍时钟和计时器


#define USER_SYSTEM_FREQ_MHz        (60.0)

#define USER_PWM_FREQ_kHz         (15.00)

#define USER_MAX_VS_MAG_PU     (0.5)

#define USER_NUM_PWM_TICKS_PER_ISR_TICK     (3)

#define USER_NUM_ISR_TICKS_PER_CTRL_TICK    (1)

#define USER_NUM_CTRL_TICKS_PER_CURRENT_TICK  (1)  

#define USER_NUM_CTRL_TICKS_PER_EST_TICK    (1)  

#define USER_NUM_CTRL_TICKS_PER_SPEED_TICK (15)  

#define USER_NUM_CTRL_TICKS_PER_TRAJ_TICK  (15)

请在 LAB1B 测试期间找到以下相电流和相电压图像。

相电流

相位电压

此外、我要连接相电压测量电路和相电流测量电路。

相电压测量电路

相电流测量电路

Kp 和 Ki 值在 Lab1B 和 Lab1C 中均保持不变。

SpeedKp_pu:38.5

SpeedKI_PU:7.56

CurrentKp_pu:0.187

CurrentKI_PU:0.113

为什么电机消耗的电流很高? 请帮帮我。  

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

    您可以参阅 《InstaSPIN-FOC 和 InstaSPIN-MOTION 用户指南》(修订版 H) (http://www.ti.com/lit/ug/spruhj1h/spruhj1h.pdf)的第5.2章(硬件必要条件)、以了解有关此内容的详细说明。

     

    1.根据 user.h 中的硬件板设置正确的参数

    #define USER_IQ_FULL_SCALE_VOLTAGE_V          (xx)

    #define USER_VOLTGE_FILTER_POLE_Hz              (xx)

    #define USER_ADC_FULL_SCALE_VOLTGE_V      (xx)

    #define USER_IQ_FULL_SCALE_CURRENT_A          (xx)

    #define USER_ADC_FULL_SCALE_CURRENT_A      (xx)

     

    2.更改 hal.h 中 HAL_readAdcData()中电流系数的符号,并确保启用电流和电压偏移校准。

    静态内联空 HAL_readAdcData (HAL_Handle handle、HAL_AdcData_t * pAdcData)

      _IQ Current_SF = HAL_getCurrentScaleFactor (handle);

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

    您好、先生、

    谢谢先生! 我们的电机已开始以低电流运行。

    我们已更改 hal.h 中 HAL_readAdcData()中系数的符号

    现在、电机启动良好、但它会关闭、以大约2000RPM 的转速旋转。 在开环中、它以前运行速度高达10000 RPM。 我们保持了相同的速度和电流 KP 和 KI。

    #define USER_IQ_FULL_SCALE_VOLTAGE_V          (88)

    #define USER_VOLTGE_FILTER_POLE_Hz        (656)

    #define USER_ADC_FULL_SCALE_VOLTGE_V      (69)

    #define USER_IQ_FULL_SCALE_CURRENT_A      (19.8)

    #define USER_ADC_FULL_SCALE_CURRENT_A      (33)

    当我们检查 MOSFET 上的栅源波形时、高达1900RPM 的波形非常好、当我们进一步提高速度时、波形看起来会振荡、变得很糟糕、完全破坏了大约2000rpm 的运行。

    您能否帮助我们了解电机为何在此低速下停止旋转?

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

    Lab01c 仅用于通过旋转电机验证电流感应、它是开环控制、不带转子位置。 它可用于高速运行电机、尤其是在重负载下。

    如果您确保电流和电压感应信号足够好、则可以使用以下实验来识别电机参数并使用无传感器 FOC 运行电机。

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

    感谢你的答复。

    现在、我能够以10K RPM 的额定速度运行电机。 正在进步!!

    但是、我有一个大问题:

    Q1:我只能运行 Lab01B 和 Lab01C。 当我尝试通过其他实验来识别电机参数时、电机非常不稳定、消耗的电流高达14安培。 为什么会发生这种情况?

    注意:我正在使用2个电流传感器、3个电压相位检测电路和直流电压反馈。 在使用2个电流传感器的情况下、需要进行哪些必要的更改?

    #define USER_NUM_CURRENT_SENSORS       (2)  //我只做了此更改

    请告诉我仅使用2个电流分流传感器时缺少的所有更改。 在实验室教程和 Instaspin FOC 指南中未找到此信息。

    我从一开始就一直在解决这个问题。 正在等待您的回复。

     

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

    问题应来自硬件板上的电流或电压感应。

    将滤波电容器更改为低电容 C85、从1uF 更改为1nF。 对于 FOC、电流感测的延迟太长。