Introduction: Homemade 100 HP Motor Controller for an Electric Car

This instructable explains how to build your own 100 HP (peak) motor controller for use in an electric car or motorcycle conversion.  It can take any voltage up to 144v, and the peak current is 500 amps.  The cost of the components is a few hundred dollars, which means you can save over $1000 by putting one together yourself.   At 144v, you can expect a top speed of around 75 MPH in a car. 
Check out  http://ecomodder.com/forum/open-revolt-open-source-dc-motor-controller.html
if you want to read about the whole story!

Experience in soldering is important.  If you want to really keep costs down, a mill is helpful, but that work can be outsourced to a local metal shop.

Step 1: Get/Make a Power Board and Control Board.

You are going to need a control board and etched power board.  The power board needs to be at least 3 ounce copper.   Ebay is a good place to look for heavy cheap copper clad PCB.  For example:
http://cgi.ebay.com/25-shts-Copper-Clad-Laminate-FR-4-060-9-x-12-3oz-/310244821519?pt=LH_DefaultDomain_0&hash=item483c084a0f

You could print the picture from this link and somehow transfer it onto a piece of heavy blank PCB, and etch it with a dremel if you have a ver y steady hand.  The dimensions are 8"x6".  This link also has the G-code that you can use to etch with a CNC mill or you could give the G-code to a machine shop.
http://ecomodder.com/wiki/index.php/Open_ReVolt/Fab_Files

Picture 2 and 3 below is an example of an early power board I made with a Dremel.

You can get a control board from me or you can make the control board in your favorite PCB layout software using the schematic here::
http://home.cogeco.ca/~tkooistra/Cougar_Controller_Rev2C_Schematic.pdf
And here are some pictures of the PCB layers:
http://home.cogeco.ca/~tkooistra/bottom_layer_rev2C.pdf
http://home.cogeco.ca/~tkooistra/top_layer_rev2C.pdf
http://home.cogeco.ca/~tkooistra/component_layer_rev2C.pdf

A predone control board is Picture 1.

Pictures 7 and 8 are the power board top and bottom.  The 8 solder spots are just where vias were added.

Once you have the 2 boards, you can go to step 2. 

Step 2: Drill Your Metals and Isolation Strips

Materials:
1/4" x 3/4" x 12" C110 copper bar.
Two 3/16" x 3/4" x 10" C110 copper bars.
3/4" x 1.5" x 8" aluminum bar.
3/8" x 8" x 11" aluminum plate.
3/16" x 3/4" x 8" steel bar.
Two 1/16" x 3/4" x 8" unclad FR4 used in making PCB.
1/16" x 6" x 8" unclad FR4 board.

5/16" drill bit (or 3/8" drill bit if you need slop)
1/8" drill bit.
3/16" drill bit. (Must allow a #6 screw to fit through)
Drill. 
Drill Press.

Do all the drilling!  It may help to take the big aluminum bar to a machine shop, since it's not easy drilling through 1.5" of aluminum accurately.   See all the pictures below for notes on hole locations and drill bit sizes.

Here's a video on how the power section pieces all get bolted together, without the electronics attached, just so you can see how it all fits:

Step 3: Order the Electronic Components

Order these components for the control board:
http://ecomodder.com/wiki/index.php/Open_ReVolt/Control_board

And order these components for the power section.  If you have already bought and drilled the metals on step 2, then don't reorder them.  They are listed here as well.
http://ecomodder.com/wiki/index.php/Open_ReVolt/Power_board


Step 4: Solder the Control Board

Materials:
45 or 60 watt soldering iron.
0.032" diameter (or so) rosin core solder


This step takes about 3 or 4 hours.  It's very unforgiving.  If you have never soldered before, you should get help with this.  The ground plane doesn't have "thermals", so it takes some heat to melt the solder to it.  Check out this help file for soldering the control board.  See pages 2 through 19:
http://www.paulandsabrinasevstuff.com/EVstuff%20info/Kit%20Assembly%20Directions%20Updated%20March%204,%202010.pdf

Watch for solder bridges (when big globs of solder bridge isolation gaps).  Also, you may want to socket the ATMega168.  You can program the ATMega168 in-system.  So, you can solder it in, and then program it if you want to.  Or you can get one preprogrammed.

This video walks you through soldering the control board from start to finish:

Step 5: Program the ATMega168 Microcontroller

Once the ATMega168 arrives with all the other stuff, you need to program it with the motor controller code.  Either make your own code, or use/modify the code below.  

You can make a very cheap ATMega168 programmer, or buy an AVRISP MK2:
http://search.digikey.com/scripts/DkSearch/dksus.dll?Cat=2621880&k=avrisp

And download the free AVR Studio development environment:
http://www.atmel.com/dyn/products/tools_card.asp?tool_id=2725

The hex file of the code is available here.  Use "coug-unified-16k.hex":
http://www.adambrunette.com/firmware/cougar-v1.11b/hexfiles-m168/

Here's the code:
http://ecomodder.com/wiki/index.php/Open_ReVolt/Software

The fuse bits are Extended High Low = F8 DC F7.  But if you are using Ponyprog, the fuse bits are 08 DC F7.

If you don't want to bother to program it yourself, then you can buy a preprogrammed one.

Step 6: Assemble the Power Section

There are quite a few parts to this process.  The short version is, you need to bolt together all of metal parts, and solder the 10 MOSFETs, 10 freewheel diodes, 16 large electrolytic capacitors, and 3 snubber capacitors to the power board.   Please see pictures below and the assembly help file, pages 20 through 43 for all the gory details.  You will need a 200 or 250w soldering gun:
http://www.paulandsabrinasevstuff.com/EVstuff%20info/Kit%20Assembly%20Directions%20Updated%20March%204,%202010.pdf


Step 7: Mount the Control Section to the Power Section

See this video for directions on how to mount the control board to the power section.  It also shows how to solder the gate resistors and the ground wires, and how to mount an enclosure:


You can also check out pages 44-46 of the help file here:
http://www.paulandsabrinasevstuff.com/EVstuff%20info/Kit%20Assembly%20Directions%20Updated%20March%204,%202010.pdf

Get Ready!!!  There's only one more step!

Step 8: Drive Away!!!

This is me driving with my car at 72v.  Notice that this one had all 3 copper bus bars coming out the same way.  That doesn't affect the functionality of the controller.


And here's a video of Joe in Phoenix using that same controller at 144v:
And here's Ben Nelson, the guy on here that made the plug-in hybrid, doing a gravel burnout with his.  He's always had a flair for the dramatic:


Now go out and build one!  Doing it yourself can save you over $1000.

Comments

author
Karlelambel made it! (author)2016-03-31

Great project, but it seems that all the links related to it are dead!!!

Does anyone know where to find the files like the schematics of the controller and the power board?!
Thanks

author
FernandoG4 made it! (author)FernandoG42016-05-05

Hi guys! I Found this Website, it has a detailed PDF and they are selling the boards as well.

http://www.paulandsabrinasevstuff.com/evmotorcontrollers.html

author
EVTVBrasil made it! (author)EVTVBrasil2017-04-02

not working

author
szadan made it! (author)szadan2016-04-02

I would like to see those files too :) I was searching through many many forums, old posts and blogs, but sadly not really much. :/

author
EVTVBrasil made it! (author)2017-04-02

Hi... the help file here is not working?

author
mykiscool made it! (author)2016-10-17

Great project, thanks for sharing!

author
thiagoroo made it! (author)2016-07-12

hello , I would buy this controller or the board , to my kart, paraens to work you have fans in Brazil . v8artesanalgmail.com

author
Karlelambel made it! (author)2016-03-31

Great project, but it seems that all the links related to it are dead!!!

Does anyone know where to find the files like the schematics of the controller and the power board?!
Thanks

author
RaonyD made it! (author)2016-02-18

can someone send me the control board printing model at the beginning of the page ????

I can not find anywhere yet, I will build my because in Brazil the cost of tax to import is absurd will print transfer and passes stops virgin copper plate.

raony.top@gmail.com

author
MichaelL18 made it! (author)2015-08-27

There are several links that are broken in the instructable above. Files may last forever on the internet, but they don't stay in the same location ;)

You can download the various files for several versions of the controller here

http://ecomodder.com/wiki/index.php/Open_ReVolt/PC...

And if you'd like to take a look at the rest of the wiki as well ...

http://ecomodder.com/wiki/index.php/ReVolt#Quick_L...

Enjoy!

author
evwannabe made it! (author)evwannabe2016-01-11

Great site, I really like the idea of building the controller, but, when I tried the links at eccomodder.com the page came up with 'We could not retrieve this file because the link is invalid.' on most of the links to that pointed to https://www.onlinefilefolder.com/

Thank you for the work that you've done!

author
MichaelL18 made it! (author)MichaelL182016-01-12

The links still work for me ...

It would be better if Paul hosts the files - those links will be more permanent!

author
MPaulHolmes made it! (author)MPaulHolmes2016-01-11

I'll get the files up on my own website hopefully this week.

author
jimmerforpoy made it! (author)2012-01-19

Does this work for all ev conversions under 144 volts?

author
MPaulHolmes made it! (author)MPaulHolmes2012-01-24

Yes.

author
jongscx made it! (author)jongscx2012-03-05

As a follow-up, Is it possible to "scale down" the design if I'm never getting near the 144V/500A power requirements? Do I just use fewer mosfets and caps?

author
TomasT2 made it! (author)TomasT22015-09-14

Answer is YES, power requirements can be scaled down. I have two of these controllers for my ABB SEPEX motor. One full-sized for the armature current and one scaled down for the field. The field is at 10A so one mosfet was enough. The field is controlled with the motor rpm as input, with field weakning according to lookup table. For optimized performance it would be preferred to use the PWM/duty cycle from the armature controller and/or armature current as input, but it was easier to implement it without an open communication link between the two MCUs.

author
TEXACA made it! (author)2015-08-21
author
lkeerthan made it! (author)2015-07-27

Hi! I'm a part of FS hybrid team, your instructable/blog is a invaluable source for amature and students like me

I have a query, in your motor controller how did you isolate the 12V and the high voltage side?

We have a kelly contoller (which has the problem having common ground), any solution / way to isolate the grounds other than an 12V isolated DC-DC converter run from the low volatge side?

Awaiting your response

Thank you in advance

author
afbcom made it! (author)2011-01-20

Hey,

Just a thought, you could eliminate a lot of voltage spike issues by mounting the controller as close to the motor as possible. Any time the length of the wire between the motor controller exceeds the diameter of the wire, the collapse current becomes significant. Since Vpeak = di/dt, and you have a peak current of ~500 amps, if your switching time is <1ms which I'm guessing it is, this will result in a spike of 500 000 volts! These voltage spikes can damage the control circuitry. This is assuming that you are having voltage spike issues to begin with. Regardless it is typically a good idea to mount the power control board as close as possible to the motor.

-alex

author
MPaulHolmes made it! (author)MPaulHolmes2011-01-20

I've done some voltage spike tests, and at 500amp, the spikes are about 20 or 25v, so it's not too bad. I'm using 200v components, so at 144v, I'm still a fair distance away from danger. The nice thing is, under heavy current, the battery pack voltage sags, so the net result is that the voltage spikes are about 20 or 25v above like 135v in the worst case.

author
Macdddy1 made it! (author)Macdddy12015-05-07

Hello Paul, I was looking to adding 6 more batteries to my EV. So do i just need to change the speed controler & charger ?? And by the way would you sell a controler ??

author
Tom Hargrave made it! (author)Tom Hargrave2014-09-17

To clarify - 500KV spikes are real but only open loop, where the input impedance is very high. You are are clamping the spikes to 25V with your protection circuit.

author
afbcom made it! (author)afbcom2011-01-21

Cool!

Not that I doubt you, but where are you measuring the spikes. The ones that I am referring to is the reverse against the driving fets from the motor and supply cables to it. If you're getting results around 25 volts then you have done a damm good engineering job and kudos to you sir.

--alex

ps awesome response time

author
MPaulHolmes made it! (author)MPaulHolmes2011-01-21
Hi afbcom! I measured the voltage spikes from drain to source of the mosfets. Every time the mosfet turns off, the voltage from drain to source goes from nearly zero to full pack voltage, and it wants to keep going past pack voltage. I also use some polypropylene metal film capacitors to help snub the spikes. My friend in Phoenix has a video of the spikes on his oscilloscope. I'll find it. When I tested it in my car, I just used a peak voltage detector (like a crab trap. but instead of crabs, it traps electrons. haha):
author
jerkey made it! (author)jerkey2011-01-31

I can't see exactly where you're connecting your measurement probe, but it is necessary to connect both the probe and the ground as closely as possible to the place you're actually measuring, because inductance is playing a huge part in what you're dealing with, and even an inch of wire can have an effect. The voltage spikes are a danger inside the MOSFETs so thats where the probe should be.

Another issue is that the voltage spikes are a result of firing into a reactive load, which is more like a motor prevented from spinning. A freewheeling motor (which I heard) will not cause inductive kickback as much as if you lock the parking brake and do it, you should try that.

A wise teacher of mine who makes giant stepper-motor controllers (and Aerco pre-amps) says that the key to protecting your fets is a combination of small and large diodes (they have different properties) and resistor-capacitor snubbers and most importantly, MOV (Metal Oxide Varistors) which are your first line of defense.

But i definitely know that the spikes are worst when the motor is stalled.

author
acelondon made it! (author)acelondon2011-04-25

In the EV community, we use freewheeling diodes to take care of all the inductive kickback from the motor. Ususally rated at LEAST the same as the switching device. My IGBT controller(inspired by Paul's MOSFET controller) will be built for 1200 amps, with 1200 amps of freewheeling diodes, AND be run at 750 amps. Should last a while XD

It's my senior project for college. Great excuse to rip around campus with a less than legal electric car!

author
MPaulHolmes made it! (author)MPaulHolmes2011-01-31

I didn't make that video. It was actually my beta tester. I've done testing with a locked rotor, and the spikes were around 25v, at least with my peak detector, which was a diode and capacitor. electrons could get in and not back out. That was the crab trap I was referring to above. A locked rotor has almost no resistance, so the current is huge, and the voltage spike is di/dt*L_stray, so a larger change in current definitely gives a larger voltage spike. The nice thing is, there may be optimal ways of doing things, but his controller has run for over a year and a half in sometimes 110 degree weather and it's still going strong, and that was not withstanding my crappy assembly process, since it was the first or 2nd one I put together.

author
afbcom made it! (author)afbcom2011-01-21

This just goes to that what you read in a textbook doesn't necessarily apply to the real world! Nice scope. There are commercial products that aren't as well designed as yours... friggin cool!

author
killersquirel11 made it! (author)killersquirel112011-01-21

You could also include a TVS diode to protect against the spikes if they are too large

author
MPaulHolmes made it! (author)MPaulHolmes2011-01-21

Hi Killersquirel11! Great minds think alike! haha. I'm using the P6KE20A-T transient voltage suppressor. Nothing goes over 20v from gate to source, and gate to source is rated for up to 30v, so it's kept safe.

author
Ziggythewiz made it! (author)Ziggythewiz2011-01-23

"Any time the length of the wire between the motor controller exceeds the diameter of the wire"

I'm pretty sure every wire I've ever used was longer than it's diameter.

author
megapix made it! (author)megapix2011-01-21

Just a little correction on the math for the voltage spike. The voltage is V = L * di/dt where L is the inductance of the wire. For a couple of feet of wire this could be around 1uH (microHenry = 10e-6). So for a 1mSec switching time you would have 0.5V, and for a 1uSec switching time you would have a 500V spike. So it is worth being careful about, but not as severe as your calculation.

author
afbcom made it! (author)afbcom2011-01-21

thankyou for the correction. Now that I think about it, 500kvolt is a bit large sounding eh?

author
en2oh made it! (author)2015-03-31

Great project. Thanks for sharing.

Anyone know of similar specs controller for 144v BLDC motor?

Nitrous

author
jolaniyan made it! (author)2015-02-24

Hi Paul! Thanks for the great instructable. Firstly, many of the links
are dead so kindly update them. Secondly, i want to do a variant of this
controller that has 24V - 48V, and a max current of 150A (for a 2.2KW
motor). What modifications do i need to make to your controller and/or
power boards to reduce cost? (I know your set up will work but i think its an over-kill for a 2.2kW motor, what do you think?) I intend to make my first instructable out
of this and provide full credits to you. Any help will be thoroughly
appreciated.

author
pteurlings made it! (author)2015-01-15

Would it be possible to create a controller that can handle 24V at 1000A?

author
mihnea1970 made it! (author)2012-05-28

Hi,
I can not download the schematics for the control board. Please help.

author
kairala made it! (author)2013-08-11

hi,
i am from india, want to build electric car as well as a bike.
for electric bike - requires a 36v controller circuit diagram with components specified.
for electric car- i was not able to download circuit diagram of 144v-500amps controller version.
so i hereby request to help me for the above project.
email id- kairala27@rediffmail.com

author
kairala made it! (author)2013-08-11

hi, i am from india. want to build electric car as well as a bike.
for electric bike i require 36v controller circuit diagram with components specification.
for electric car i was not able to download the circuit diagram of 144v-500amp version.
so i request to help me for the above.
thanking you.

author
anriocarver made it! (author)2013-02-13

What is the price for one 144Volt 500Amp already built. Ready to use.
My email address is anriocarver@yahoo.com
I leave in Mauritius.

author
Nav made it! (author)2012-01-21

Okay so I am a novice in all things electric car, but I'm wondering if throwing 4 of these controllers into a car with 4 forklift motors somehow connected to the axle would result in a 400HP car? I'm sure it doesn't work like that but could someone please explain the pros/cons of this to me? Thanks and awesome instructable!

author
MPaulHolmes made it! (author)MPaulHolmes2012-01-24

Yes you could.

author
DieCastoms made it! (author)2012-01-23

Ok, so.. I have what used to be a small-sized 3-wheeled 24-volt "Mobility Scooter". I am building a large RC vehicle out of it.

I need a motor controller for 24 volts that will run the thing either from a wired throttle or eventually a servo output from an RC receiver OR an actual servo mechanically coupled to a pot that is wired to the controller (This should give perfectly isolated power from the vehicle's 24 volt system and the RC's 6 volt system, yes?)

I WANT to have the option to run it via RC or to be able to plug in a wired controller because the vehicle will be large enough to sit on when complete.

Can someone please suggest a source for such a controller? I DO NOT have the original controller from the Mobility Scooter, or I would gladly just use it. I know I could buy another controller for the chair or a similar model, but I would like to see what else gets suggested, first.

Thank You!

DieCastoms.

author
abdellah309 made it! (author)2012-01-12

good job Paul, can you post the schemetic of Mosfet stage.
I'm working on electic car project in Algeria.
Many thanks,

author
epuneet made it! (author)2011-11-07

Is this circuit work for lower power ratings i.e. for 20 Hp motor

author
bertzie made it! (author)2011-10-12

What kind of modifications would need to be done to make it take 170v 2000amp?

author
IT BITz made it! (author)2011-05-12

COOL

About This Instructable

328,271views

516favorites

License:

More by MPaulHolmes:200kW AC Motor Controller for Electric CarHomemade 100 HP Motor Controller for an Electric Car
Add instructable to: