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.

Starterware/TMS320F28069M: FOC performs worse than BLDC

Part Number: TMS320F28069M
Other Parts Discussed in Thread: DRV8305

Tool/software: Starterware

Hi,

I am trying to use TMS320F28069M launchpad and DRV8305 booster pack to run foc on my hobby grade motor, in order to replace my old bldc motor controller. However, except for the low noise at low speed range, foc performs significantly worse than bldc. I wonder if I did anything incorrectly?

I'm using sunnsky x2814-900KV motor. All the PI control parameters are calculated by default in the labs.

1. FOC generated way less torque than BLDC. For example, at low speed, I can stop the motor under foc with my hand easily at around 1.5A supplying current. But stopping the motor under bldc control is much harder-the motor draws over 10A before it comes to a full stop.

2. FOC creates a loud and high pitch noise at around 4000rpm but the noise disappear when further increase the speed. This problem does not appear on bldc control so I don't think it's the motor problem.

3. At 0 speed, FOC create a noticeable white noise in the motor but this is not the case in bldc control.

I've changed R8,9,10,14 to 22kohm and C10,11,12,22 to 0.031uF to allow better filtering and sensing. Here's my configuration:

#define USER_VOLTAGE_FILTER_POLE_Hz  (1185.73)   // 1/(2*pi*(R14*R16)/(R14+R16)*C22)
#define USER_PWM_FREQ_kHz                (45.0) 
#define USER_IQ_FULL_SCALE_FREQ_Hz        (1501.5)  
#define USER_IQ_FULL_SCALE_VOLTAGE_V      (13.0)   
#define USER_ADC_FULL_SCALE_VOLTAGE_V       (17.85)  
#define USER_IQ_FULL_SCALE_CURRENT_A         (25.0) 
#define USER_ADC_FULL_SCALE_CURRENT_A        (47.14)  

I would really really appreciate if anyone can shine any lights on this?

Thanks!

Xunjie

  • 1. Use lab02c to identify a correct motor parameters first. The torque output capacity you means which depends on torque current and transient response. The case you descripted in item 1, you can adjust the speed and torque response to improve it, and change motor stop judgement condition.
    2. As item 1, correct motor parameters is very important for instSPIN-FOC. Did you have any motor current waveform for this case?
    3. What control mode for 0rpm, and you need to use a different speed PI parameters for such low speed.
    Are you using the speed close loop and the same PI parameters for all speed range? You should use different speed and PI parameters for different work status.
  • Hi Yanming,

    Many thanks for your reply!

    1.I have done lab02c several time and I got similar(correct) result as the motor manufacture specs. How do I adjust the speed and torque response? Just by tuning PI controllers for both speed and current loop? Are there any other constraining parameters?

    2. I don't have motor current waveform. Is this something that I have to hook up oscilloscope, or some variable I can watch in the code composer?

    3. You are right, I only have one set of PI parameters across the entire speed range. Would use instaspin motion give me better results?

    Thanks again!