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.

TMS320F28069M: Motor Noise and Gate Drive

Part Number: TMS320F28069M


Greetings,

I've been working with Instaspin for a while now, and we've successfully developed a custom motor controller which works quite well over our full range of operating conditions.  The solution is quiet, efficient, and is serving us well, thanks to all the previous help on the E2E forums!

Now, we're trying to reduce our motor controller losses somewhat, and one of the easiest ways to do that is to alter our gate drive strength to reduce switching losses.  Previously, we were using 10 Ohm gate drive resistors, and I simply reduced the values of the gate drive resistors to 5.1 Ohms.  This had the desired effect of allowing the motor controllers to run cooler, but had an additional side effect.

Unfortunately, any time the motor accelerates, there is now audible noise in the motor, which sounds like perhaps a mismatch of angle or torque applied for smooth acceleration?  It sounds a bit like static, and is highly noticeable during acceleration, but essentially disappears once the motor is up to the new commanded speed after acceleration.  It almost certainly has to be coupled to noise, since with more aggressive gate drive, there is a much higher di/dt and dv/dt on the motor phase nodes, and probably a bit more phase node ringing.  

The only change I've made to the board are the gate resistors, and the only inputs which the C2000 DSP is sampling are the three motor phase currents and three motor phase voltages.  The answer almost has to be that noise is coupling in to my ADC sensed variables, but do you have a guess at which one it might be, and what the best way to mitigate the noise is?

Thanks!

  • Hello,

    I am writing to let you know that a C2000 team member has been assigned to this post and should be answering shortly.

    Regards,
    Elizabeth
  • Unfortunately, the gate driver maybe generate more noise on current or voltage sampling which will affect motor control performance, even motor can't run well. You have to optimize the PCB layout design, or add a diode + resistor in parallel with the gate drive resistor, or change the current or voltage sample filter parameter.
  • I'm definitely more familiar with power electronics hardware design than the software side. Because of this, I think that my layout is pretty good (though of course not perfect), and I've made many layout changes to make the design relatively noise free. However, I have found some weakness here, and I'm hoping to address it without substantial layout changes, since I've already put so much effort into the layout and I'm not sure what else I could do.

    If you have any key suggestions for layout practices that help with this type of noise, please let me know, but I may have done most of them already.

    As for the diode + resistor, I already have these in my design. What I am most curious about is that you said "change the current or voltage sample filter parameter". What exactly do you mean by this? I have a lowpass filter on my current sense with a 3dB frequency of roughly 100kHz (so that it doesn't corrupt my current feedback signal but filters out high frequency noise), and my filter on my voltage sense is constrained by the Instaspin requirements for the voltage filter pole. Can you give more guidance on what you meant here?
  • What are your pwm frequency and motor maximum frequency?

    Current lowpassfilter at 100 kHz is very possible cause for noise/sampling problems.If your problems are more load related and not high-speed, maybe you can try reducing the filter to maybe ~ 10kHz and see if that makes a difference. 

    With such a high cutoff frequency, as the actual sampling moment is linked to the pwm timing, there is risk of aliasing / resonance patterns with the sampling moment for specific channels at a certain dutycycle / motor angle / motor speed. Oscilloscope/hardware measurements are tricky (and probably change your system ...), so try to output / log the actual ADC result values for analysis.

    On my own hardware, for verification / testing I run a separate timer / additional ADsampling on one phase current at a non-synchronous sampling rate of (say).4~5 x pwm frequency to check for resonance issues.

    I hope this helps,

    Harry

  • My PWM frequency is 14kHz.  I'm trying to keep it 'relatively low' to keep switching losses down.

    My motor max RPM is 2600 RPM, and this is on a 42 pole motor, such that motor max electrical frequency is (2600/60)*21 = 910 Hz.

    I chose the filtering pole on my current sense lines as ~100 kHz because I wanted to reject high frequency noise, but I kept the pole roughly two decades above my max motor electrical frequency to avoid problems with phase delay in the sensed current signal.  If I were to instead choose 10 kHz as the pole on the low-pass filtering of my current sense signals, then at motor max speed, the electrical frequency of the motor is only roughly one decade below the low-pass filter 3dB frequency (910/10,000), which yields a phase delay in the current sense signals of about ~5 degrees.

    The question is: If I had a more aggressive filter, such as the 10 kHz example I've just mentioned, would the phase shift in the three current sense signals (at max RPM) be likely to lead to control problems?

    As for the ADC logging, I have a set of circular buffers set up capturing the ADC values. I'll try to set that up to see if I can capture one of these odd control events. Perhaps you're right about the aliasing.

    With respect to the additional timer, hopefully this is straightforward.  I'll look into it, but if you had any implementation suggestions that might lead to better results I'd love to hear them.

    Thanks so much!

  • Hi Chris,

    Knowing that you have a electrical frequency as high as 910 Hz, with your 14 kHz PWM frequency, each sin wave only have less than 16 steps, which yields to a noisy voltage waveform.

    Higher gate drive resistance will smooth out the voltage signal. Reducing the resistance will end up with a sharper voltage signal which contains more high frequency harmonics, which might be the source of your noise.

    You have maintained the noise is higher during acceleration, this might related to the higher current / torque during acceleration. You can try to apply some friction/ load when the motor is at constant speed and see if you can hear the same noise.

    One other thing to look for is if the pitch of the noise has relationship with the motor speed.

    Best regards,
    Han