This week we modified the power circuit, replacing the freewheeling diodes with another MOSFET, and replaced the original MOSFET driver with a half-bridge driver. Here is the original motor drive circuit, per the ReVolt design (specific part names/values not shown):
And here is how we modified it:
The modified design works like this: when the PWM turns on, the lower MOSFET is turned on and voltage is applied across the motor, and current starts flowing. Then, when the PWM output is turned off, the upper MOSFET is turned on and the current in the motor winding continues to circulate through the upper MOSFET. The upper MOSFET replaces the function of the freewheeling diodes in the original design. The advantage of this design is that there is much smaller voltage drop across the upper MOSFET than the diode and so less power is dissipated in the MOSFET than was in the diode.
The motor could also be connected across the lower MOSFET instead, which is how it will be designed for use in the car. The reason I had to connect it across the high side here is because of the way the original MOSFET driver circuit was designed (input signal to driver is inverted), and I purchased a non-inverting half-bridge driver for this experiment (IRS2183). But otherwise the circuit essentially works the same way.
Half-bridge configuration (5 MOSFET pairs in parallel)
The photo on the left shows the latest prototype setup. There is the original ReVolt controller (on the right) with the Stellaris evaluation board on top. This week I added the white breadboard which is where I built the half-bridge driver circuit. I removed the original MOSFET driver from the controller board and brought the PWM signal up to the breadboard. This setup is not very electrically sound, but is good enough to test the concept.
On the left you can see the busbars and now there are MOSFET pairs to make the half-bridge. The diodes, which were on the bottom side, have been removed. We are using 5 pairs in parallel to improve the current carrying capacity. In the photo we are testing a small motor using a 12V bench supply instead of a battery.
We were able to test with the small motor and make sure this circuit was going to work okay. Looking at the signals with a scope, everything was doing what it was supposed to. The quality of the MOSFET gate drive signals was not great, no doubt due to the breadboard and all the fly wires. But the MOSFETs were switching as they should so we were pleased about that.
Hooking up the batteries and kart motor
Once we were satisfied that the modified controller was working and nothing was blowing up, we decided to give it a try with the kart motor, using the kart batteries. We started with 12 volts and ran the motor up to about 50% PWM duty cycle. This all worked as expected and the current was about the the same as the prior week when we were using the diode version.
Next we hooked up a 24 volt configuration and repeated the same test as last week. We applied the brake to get a sustained motor current of about 30-35A. This time the power circuit did not warm up like it did last week. The upper MOSFETs (that replaced the diodes) did not get detectably warm. The lower MOSFETs were a little warm but it was barely noticeable.
Finally we got brave and hooked up the 48 volt configuration. Of course, we needed much less PWM duty cycle to get the motor to run fairly fast (no speed sensor yet). Again we applied the brake and ran the duty cycle up to about 35%. Doing this we were able to get the current up to about 130 Amps. We maintained this for 30 seconds, and then released the brake. This time the power circuits were noticeably hot, with the lower MOSFETs quite a bit hotter than the upper. While the busbars are excellent heat conductors, we don't have any heatsinking to carry away the heat, so we will need to use some heatsinks to do anything with more power than we have already done.
With this test, I think we are satisfied that this is a design we can go with for the car. I think our next efforts on the controller are going to be the mechanical design, considering heatsinking and how everything will be mechanically mounted. I am thinking about using some IXYS IXFN230N20T MOSFETs which have a chassis mount package that be attached directly to a nice big heatsink. I also like the screw terminals which should allow use of heavy gauge wire that will be able to carry more current than the leads of the other package.
And now this week's episode which is mercifully short (<1 min quicktime movie):
Comments
Jeff
Posted on Wed 18 May 2011
You need to have more “dead time” between turning OFF the lower mosfet and turning ON the top mosfet (in your modified design). Mosfets do not turn off instantly. If the top turns ON before the bottom turns off, you will get “shoot-through” where power goes directly from the + battery, through the top mosfet, through the bottom (still on) mosfet and to GND. A dead short.
joe
Posted on Sun 22 May 2011
Thank you for reading and your comments Jeff. I did spend a fair amount of time adjusting the dead time to make sure there was no shoot-through. I have spent more time debugging this and not written about it (since I am going with off-the-shelf controller for now). My main suspect at the moment is the way I had the electronics, including gate driver connected to the power board. There were some fly wires and other less than ideal construction that likely result in a crappy switching signal to the mosfets. I hope to resume working on this controller eventually but I want to get the truck finished and working first.
mho
Posted on Wed 13 December 2017
nice tutorial. can u show a full circuit diagram? and those electrolytic capacitors u have there, what are their values? and what are they for? thanks
joe
Posted on Fri 15 December 2017
Thank you for your comment. The capacitors are 200V 2200 uF. There are 8 of them. Their purpose is to smooth out the power supply. Take a look at this site which tries to explain it better than me:
http://www.4qdtec.com/pwm-01.html
I don't have a better circuit diagram. It has been a long time since I worked on this project and I did not ever come back and finish the motor controller project. Once I purchased a controller and got my truck running, then I lost incentive to continue working on it as there were many other things to do.