-   Open ReVolt: open source DC motor controller (
-   -   Building a lower-cost controller (

DJBecker 01-12-2011 09:34 PM

Building a lower-cost controller
This thread is a collection of related topics on the hardware and firmware design of controllers.

The subtitle is: "Why there really are not many ways to save money"

The reference design is the basic Cougar controller, with discussions on how to either make it better or less expensive.

Hopefully most of the information will end up in the Wiki, perhaps with references to specific posts.

DJBecker 01-12-2011 09:35 PM

Motor controller logic section
Logic board

The easiest and least expensive approach is to start with a commercial microcontroller for the logic board. We chose
the Arduino hardware platform (AVR ATMega chips) for its easy to use tools and low total

The software development environment is Open Source, already packaged
for Linux (Ubuntu is especially easy) and quite flexible. While we
don't use the Arduino software environment, loading that package pulls
in the compiler, libraries and downloading tools that are preconfigured
to work.

The platform cost isn't just the development board price, it is also the
add-on pieces. Most boards have built-in USB interfaces, which
elminates the need for a $10-$150 JTAG/ISP programmer. Arduino has a
thriving ecosystem of plug in accessories, especially "shields", circuit
boards that stack on top of the processor board. While proto-shields
cost more ($6-$12) than the least expensive generic protoboards ($2+),
they eliminate wiring to the processor board and mounting hardware. A sensor shield ($8-$14) is a passive board full of connectors that makes it easier to plug in sensor and output modules. You can handle almost everything for a motor controller (temperature, tachometer photosensor, throttle input, contactor relay) with existing modules. Only the isolated gate driver board needs to be custom made.

DJBecker 01-12-2011 09:36 PM

Gate driver isolation.
Gate driver isolation.

The Cougar design uses a DC-DC converter and optoisolators to provide
voltage isolation between the logic section (run from the +12V car body power) and traction power control (run at traction battery voltage).

These are some of the most expensive parts on the logic board. The converter provides lots of power and excellent regulation, but a MOSFET gate driver only needs modest power and is tolerant of the supply being a
volt or two off.

There are easier, better, and sometimes less expensive ways to provide the voltage isolation.

In some cases it is possible to use an ADUM5230 or ADuM6132 chip. These are "magic" gate drivers that use an exotic internal
chip structure to both provide an isolated power supply and isolated
gate drive signal. They are usually not considered for power devices
because their gate drive is weak. They peak at 0.1 amp and 0.2 amp
respectively, while Cougar uses a MIC4451 that can put out 12A
pulse. But you can use them as only the power supply converter and
signal isolation, stacking a powerful gate driver (e.g a MIC4422
non-inverting driver) for a fast gate drive pulse.

There are drawbacks to this approach. The power converter in the 6132
only puts out about 22mA of current at 15V. This is (barely) enough for
driving the Cougar MOSFET array at 8KHz, and may not be enough for
more/bigger/worse MOSFETs or higher traction voltage. It's very likely
not enough for an IGBT.

The other drawback is that these chips are power pigs. They suck down
over 200mA from the regulated 5V supply when doing nothing, and use even more when the gate driver
draws current. The big converter on the Cougar starts at only 5mA, and
draws it from the unregulated +12V supply.

And finally, these are Wide-SOIC parts. They are big enough to easily
solder, but you'll need a protoboard with surface mount pads.

An intermediate approach is using a DC-DC converter that operates from
the +5V regulated supply. Often these are smaller and cheaper because they don't need to handle a wide input voltage range.

VBSD1-S5-S15-SIP 5V->15V 1W, 1KV isolation Digikey 102-1362-ND $3.96

Small converters tend to require more design thought. For instance,
this part requires a minimum 7mA current draw. That's close to the basic power draw of some isolators, or easily done with
a "power on" LED. But you have to do those calculations and make a note that the specific part can't be upgraded to a lower power version, or that you can't skip
installing the LED on the board.

Even keeping a separate converter, you can still simplify and improve the gate
driver circuit. The Si8233 and Si8235 chips provide both voltage isolation
and two reasonable (4 amp) gate drivers for about the same price as the
TC4451. Even one of the gate drivers is enough for the Cougar design
(ten IRFP4668 MOSFETs) if you drop the gate resistor values, but you may need to use both drivers (and do some design calculations) to use an IGBT.

If you do decide to use an optoisolator be certain that your drive current is high enough. A rule of thumb is double the minimum current that you calculate from "typical performance" graphs or experimentation. The parts have significant batch to batch variation, and decrease in performance as they age.

And finally, if you need precise timing or a balanced drive (e.g. for synchronous rectification), strongly consider solutions beside optoisolators. Their turn-on and turn-off delays and slopes are asymmetric, and they change with temperature.

DJBecker 01-12-2011 09:38 PM

Gate current
Gate current

How much current does the gate driver use? (Technically, almost none,
but we can't recover any of the power from the gate charge.)

This is easy to calculate with the right graph from the datasheet. The
number we are looking for is the total gate charge at our operating
conditions (gate voltage, device current and traction voltage). If the
total gate charge is 378nC, we multiply that by our PWM frequency of
16KHz to get amps: 378nC * 16KHz = 6mA. For 10 devices that requires a
supply of 60mA

DJBecker 01-12-2011 10:26 PM

Current sensors
Cougar uses a LEM Hass current sensor. This is a premium, calibrated isolated current sensor.

This type of sensor is based on the Hall Effect -- it measures the current by sensing the magnetic field.

There are few alternate ways of measuring high current flows, especially with DC. The traditional approach is using a resistive current shut. These are very low value resistors made of specific alloys that have minimal resistance change with temperature. The construction is typically multiple wide thin strips separated by air gaps. At first glance they look like a solid rectangular brass bar.

We have a few current shunts, but use them only for bench tests. There they are hooked up to panel meters, not connected to the controller. Among their draw-backs is that they are part of the traction voltage circuit, and they create a voltage drop. Both are problems when you are trying to get accurate measurements to a mostly-isolated controller.

When selecting an alternate current sensor, read the specifications carefully. The aperture (opening) size and shape are often a limiting factor if you need to fit the sensor around a bus bar. Many older sensors require bipolar (e.g. both +15V and -15V) supplies, and can sometimes consume surprising amounts of power.

Hall effect sensors are not damaged by measuring currents above their rating. The rating is only the range over which they are linear and accurate. They typically will produce usable results at 50% to 100% overcurrent before they saturate. Above the saturation point they don't change output with increased current. Of course when you are pumping that much current through, something might be melting.

For smaller currents -- under 100 amps -- there are inexpensive alternatives.

One recent device is an integrated hall effect sensors that run current through the chip package itself. These are great, but don't handle overcurrent well. The conductor doesn't have enough cross-section to get rid of the heat as the resistive drop becomes significant.

Another option is hall effect sensors from DeviceTech. These are inexpensive, nicely calibrated, low power and flexible. If you are ambitious you can even change the comparator bias point by replacing the SMT resistors to allow a higher positive current measurement. Their drawbacks are the small aperture size (1/4" diameter for the low end) and exposed circuit board.

For the most part, we use current sensors that we make ourselves. We start with big toroids from discarded computer power supplies. We remove the copper windings, cut a slot through one side, and epoxy a A1302 ratiometric hall effect sensor the center of the cut. These are uncalibrated, and thus would be completely unsuitable for production use. But we need to do scaling and calibration in software anyway, so it just means entering a scaling factor.

It's also possible to measure current by just placing a hall effect sensor adjacent to the bus bar, in the right orientation. This is easy, but the reading will vary with outside influences. You wouldn't want to speed up while driving north and slow going south...

All times are GMT -4. The time now is 08:09 PM.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2020, vBulletin Solutions Inc.
Content Relevant URLs by vBSEO 3.5.2
All content copyright