cancel
Showing results for 
Search instead for 
Did you mean: 

FOC Phase Current Noise (Low Inductance Motor)

Nikolaj_TL
Associate III

Greetings,

The motor I am working on is low inductant ~0.1mH with a max speed of ~2500rpm. I am wrestling with noise on the measured phase current signals, which distorts the control loop and in the end results in bad control or 'Over Current' Fault. 
Currently I am testing on the IHM08M1 board in sensorless mode, in order to see if I can pin-point the source of the noise. The noise is both present when driving the motor in closed loop and open loop (at high rpm). I have made som measurements of the noise on the open loop rev-up. 
Internal signals extracted using UART
(if I try to plot the control signals as well UART communication crashes, I have plotted them along side and they look like pure harmonic signals, except for when there are large transients on the current input signals)

Internal SignalsInternal Signals

Phase Current Signals (measured using current clamp):

Ch1: I_A, Ch2: I_B

Phase Current Measurements (using current clamp)Phase Current Measurements (using current clamp)

 

These transients on the internal current reading are a problem, but I am wondering if it is shoot-through, or what it could be that is causing these ~20A spikes, when I measure 9A max on I_A using the current clamp.

What do you make of this measurement? 
Do you have an idea to what I could examine next?

Best Regards

 

The setup project is attached

Informations:

Motor: BLDC with Hall sensors (250W)

Motor Control WorkBench: Version: 6.2.1

Control Board: NUCLEO-F446RE

Inverter Board: IHM08M1

Algorithm: FOC Sensorless (Observer + PLL)

Control Mode: Torque/Speed Control

2 REPLIES 2
DBE
ST Employee

Hello,

The current spikes at high speed may indicate an issue in the current sampling. Please refer the principle in the MCSDK 6.2.1 documentation -> user manual -> Current sampling in three-shunt topology using two A/D converters.


ST MC Workbench computes a maximum modulation index that allows to always sample two valid currents (and therefore avoid case 4 described in the documentation).
According to your project it seems that MC Workbench clamps this maximum modulation index to 81% (please check current sensing panel) even though this should be lower.

You can try to decrease your PWM frequency to 25KHz or 30KHz and reduce the regulator execution rate to 1 PWM. With this settings maximum modulation index is no more clamp and higher than 81%.

Please check if you still have current spikes.

Best regards

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

We have finally been able to locate the error source which caused the current transients. It was the UART communication that caused the chip to freeze now and then. Depending on when the chip froze (didn't update new control parameters) it had different impact, worst case was that it allowed the current to >60A.

 

By driving the motor without UART communication I have lost a most valuable tuning and debugging tool, but after I disabled it I havn't had a single OC fault.