3-Phase BLDC Motor Control

Thread Starter

tmckane

Joined Mar 5, 2013
5
Hi,

I am currently working on a project using a 3 phase BLDC hub motor. I am attempting to create a motor controller for this bicycle hub motor and have gone through a few different design iterations.

The motor is a 48V 20A ~ 1000W. I have 6 PWM signals that have been created from a dsPIC33fj microcontroller. These PWM signals are level translated to 12V logic and run off a frequency of 16kHZ.

From my earlier designs I attempted to feed these directly into a 6 FET 3 phase H-bridge, but learned that I would need an IC gate driver to properly switch them on. I am using an IR2110 gate driver for each phase of the h bridge. I am also using STP40NF20 transistors for the h bridge

Now for my issues. I have successfully gotten the BLDC motor to spin from a 48V current limited supply using a variable resistor that changes the duty ratio of my PWM signals. The main problem is that at higher duty ratios (higher wheel speed) the motor begins to make strange noises. My first thought is that there is not significant dead time for the FETs turning on or off. I am using a 1.2us dead time between state switching to no avail.
I have also discovered that using a lower gate resistance for each FET (currently have 100 ohms) burns which ever ir2110 module is connected to Phase A.

My schematics for the system are attached to this post

Any help would be greatly appreciated.
 

Attachments

shortbus

Joined Sep 30, 2009
10,045
How are you sensing the rotor position? The noise is probably made by the stator firing out of phase. Does the motor have Hall effect sensors? Are you using a sensor-less solution? The logic and mosfet switch combination will make a BLDC turn but not at high speed or under load.
 

Thread Starter

tmckane

Joined Mar 5, 2013
5
How are you sensing the rotor position? The noise is probably made by the stator firing out of phase. Does the motor have Hall effect sensors? Are you using a sensor-less solution? The logic and mosfet switch combination will make a BLDC turn but not at high speed or under load.
The rotor position is sensed by 3 Hall effect sensors. I also agree that the noise is likely due to the mistiming of the signals to the h bridge but I am not sure how to remedy this.

At relatively low currents I can have the motor spin fairly fast.
 

Thread Starter

tmckane

Joined Mar 5, 2013
5
I am pretty aware of how a BLDC motor is controlled, I've actually looked at the link you posted previously. I suppose my main concern is why whatever ir2110 IC is connected to phase A gets burnt out, especially when a lower than 100Ω gate resistance is used from the output of the ir2110, HO output.
Should there be any protection that needs to be added to my H bridge circuit that I am forgetting or anything for the ir2110 circuits that would protect from any high current transients?
 

shortbus

Joined Sep 30, 2009
10,045
You need to show a schematic of how the H-bridges are wired to the motor stator coils. 100ohms is a little high for a gate resistor, 4.7 to 47 ohms is the normal range. How far are the gate drivers from the mosfets? It sounds like a "shoot through" problem, where both gates are on together.
 

Thread Starter

tmckane

Joined Mar 5, 2013
5
The motor stator coils are connected where it says Phase A, B and C on the schematic for the H-bridge in a delta configuration.

The MOSFETs could be considered a decent distance away on my perf boards, although I changed the value of the gate resistors from 100Ω to 10Ω and noticed some difference in the ringing of the motor, it was less.

I was worried that shoot through was also an issue but I did add some dead time between state transitions to account for this. I estimated that a 600 ns time should be sufficient, but am not 100 % sure on that.

Thanks for help so far.
 

shortbus

Joined Sep 30, 2009
10,045
Do you have to use Wye? Star is much easier to drive. Have a look at the timing diagrams in that link, and make sure yours matches. That's where I'd start.
 
Top