cancel
Showing results for 
Search instead for 
Did you mean: 

Noisy Torque/Phase Currents

Nikolaj_TL
Associate III

I have a custom board, which is based on the STEVAL-SPIN3201, it is used to control a low inductance BLDC motor with hall-sensors (100µH). 

The motor controller is running and is able to control the motor. Unfortunately the phase currents tell that there is something that needs more care. 
There are two problems. The first is that the phase currents are not as neat and harmonic as I might wish, the second (and main problem) is that once in a while every 10 seconds or so I see this iregularity:
The three phase currents:

Nikolaj_TL_2-1732889507293.png


I am uncertain of how I shall debug this, I suspect it has something to do with the current sensing. I would like to dump the raw current measurements from the ADC, but I do not think the chip is fast enough to do so. 
I have tried to filter the current sensing circuit, but without any luck and without a way of quantifying the noise it is hard to compare. 

How would you go about debugging this?

Informations:
Motor: BLDC with Hall sensors
Motor Control WorkBench: Version: 6.2.1
MCU: STM32SPINF0
Inverter Board: Custom, based on STEVAL-SPIN3201
Algorithm: FOC
Control Mode: Torque/Speed Control
Other: PWM Freq. 30kHz, REGULATION_EXECUTION_RATE: 2 

11 REPLIES 11
Nikolaj_TL
Associate III

Hello @Gael A

I have investigated the samplings cases for different PWM frequencies and excecution rates.
10kHz, 1 exec. rate
20kHz, 2 exec. rate
15kHz, 1 exec. rate
30kHz, 2 exec. rate

At lower PWM frequencies (10kHz & 15kHz, at intermediate load) ADC sampling is only done at half_pwm point (the common case). The timing for the ADC looks good. Still there is noise in the phase currents. 

 


I have further investigated the noise at 15kHz, 1 exec. rate

I toggle a pin at the common sampling case to illustrate that this samplings case is exclusively used (can also be seen in the ADC timing as you mentioned)
Nikolaj_TL_2-1736243249186.png Nikolaj_TL_4-1736243439209.png
(Red is the toggled pin)

ADC Timing is verified by toggling another pin at ADC start and DMA finish. 

Nikolaj_TL_6-1736244088531.png
Blue is the debug pin
Other signals are phase voltages

 

The noise/distortion correlates with when the phase currents cross each other. Every time this happens the phase current with the largest duty cycle exchanges and this is the assumed cause of the noise I see.

Nikolaj_TL_0-1736253584662.png


What could this have to do with the phase current noise in the later PWM periods?
Maybe it is HW related, I am unsure

 

Gael A
ST Employee

Hello Nikolaj_TL,

Thank you for all the investigation, the data is really interesting. This is indeed a strange behaviour. Unfortunately I have no answer to give you right now. We will try to reproduce your issue on our end to see what can be done.

In the meantime, something is still bugging me :

If the instability is correlated with the switching of the max duty phase, then this should not be impacted by the change of PWM frequency. In one of your previous post, you mentioned that the current instabilities occur less frequently for lower PWM frequencies.
However, for a given electrical speed, the frequency at which the max duty window is switched should be the same, whatever the PWM frequency. Could you investigate further on this ? Maybe the cause of the instabilities is not the one that seems to appear on the graph you showed.

If you agree with my answer, please consider accepting it by clicking on 'Accept as solution'.

Hope this will help,
Gaël A.