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.
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.
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):