# hypothetical easy diy controller



## esoneson (Sep 1, 2008)

In 2008, MPaulHolmes (on this and other forums) had similar hypothetical feelings as you. It resulted in quite a lengthy forum entry on ecomodder.com. He went from simple/impractical to simple/practical in about 6900 posts. It is lengthy but will demonstrate the differences between "is it possible" and "is it practical". You can now buy his practical solution for about $600. But go ahead and read the thread if you want to satisfy your yearnings for "is it possible".

http://ecomodder.com/forum/showthread.php/paul-sabrinas-cheap-diy-144v-motor-controller-6404.html

My hat is off to MPaulHolmes as is a whole lot of other hats in this community. Over 1 million views on that thread. 

Thank you Paul and good luck to you Arklan.

Eric


----------



## arklan (Dec 10, 2012)

wow thankyou


----------



## Hollie Maea (Dec 9, 2009)

What's the advantage of switching with SSRs rather than IGBTs or MOSFETs?


----------



## TheSGC (Nov 15, 2007)

Hollie Maea said:


> What's the advantage of switching with SSRs rather than IGBTs or MOSFETs?


Absolutely none, SSRs are way too slow compared to IGBTs and MOSFETS. They are insanely expansive and will not handle the PWM needed to properly control a motor.

I've built and used Pauls Open Source EV controller and I think it's greatly for a budget commuter EV. However, it does require soldering skills and equipment.


----------



## arklan (Dec 10, 2012)

Hollie Maea said:


> What's the advantage of switching with SSRs rather than IGBTs or MOSFETs?


im just a guy looking on google, i dont know that much about this stuff
but to me, the advantage is that the arduino can power the ssrs without ever being connected to the pack voltage, because the power is isolated from the relay in the ssr
with mosfets and ssrs they have to share a common ground with the arduino
the pwm frequency can be turned down so the ssr can keep up

just me 2 cents
im reading the open revolt wiki to try and learn more, its good stuff


----------



## GrowleyMonster (Apr 7, 2014)

esoneson said:


> In 2008, MPaulHolmes (on this and other forums) had similar hypothetical feelings as you. It resulted in quite a lengthy forum entry on ecomodder.com. He went from simple/impractical to simple/practical in about 6900 posts. It is lengthy but will demonstrate the differences between "is it possible" and "is it practical". You can now buy his practical solution for about $600. But go ahead and read the thread if you want to satisfy your yearnings for "is it possible".
> 
> http://ecomodder.com/forum/showthread.php/paul-sabrinas-cheap-diy-144v-motor-controller-6404.html
> 
> ...


Thanks for that link. Really interesting thread. Arduino boards are really cool and flexible building blocks.


----------



## evemf (Apr 19, 2012)

arklan said:


> mosfets and ssrs(sic) they have to share a common ground with the arduino


Hi,

Mosfets and IGBTs don't need to share a common ground with the controller (Arduino). You can use a gate drive like HCPL-3120-300E. This is an optically isolated gate drive. Or if you want to use a standard mosfet gate drive, you can use a regular (fast) opto-isolator like HCPL-2531-000E to isolate the signals.

What you do want is to power the gate drive from a power supply that *is* isolated from the Arduino. This would usually be achieved using an isolated DC-DC converter. Typically you would use the 12V aux battery to derive the Arduino power and to power the DC-DC converter as well. The isolated side of the DC converter powers the gate drive circuity, and there is no common ground between the two sides.

It is a little more complicated and expensive than driving a standard SSR but you have much more control over the switching and it is still isolated.

Jeff


----------



## dougingraham (Jul 26, 2011)

arklan said:


> but to me, the advantage is that the arduino can power the ssrs without ever being connected to the pack voltage, because the power is isolated from the relay in the ssr
> with mosfets and ssrs they have to share a common ground with the arduino
> the pwm frequency can be turned down so the ssr can keep up


The MOSFETs and IGBTs used in these kinds of high power switches don't have to share a common ground with the CPU and almost never do. The output pins do not have adequate drive so must be buffered. There are standard driver chips that do the isolation as well as offer the capability of driving the gates of the devices at many amps current level required to keep the device in its transition state for as short a time as possible.

There is also a minimum switching frequency that is required with a given motor or efficiency suffers. On the other side you want the switching frequency to be high enough that it doesn't cause the motor to rattle your teeth or even emit audible sound. 8 khz is probably as low as you want to switch and even that is quite audible.

I personally would not use an Arduino board in a high power switching supply. The Atmel CPU's are ok but the Arduino boards were not designed to handle the kinds of interference from the adjacent high power switching that is going on. If you were to choose to use an Arduino you would want to make a shielded shield to isolate the device from the high power circuits and probably also from the automotive side as well.

Best Wishes!


----------



## PStechPaul (May 1, 2012)

The Arduino is good for a learning experience and relatively simple designs, but for something like a motor controller you really need a device that is made for that purpose. The PWM of the Arduino is 1 kHz, and although it can be made to run at 20 kHz or more, it requires more in-depth low-level programming to change the clock rate. There are Atmel chips with multiple PWMs and logic for half-bridge, full-bridge, and three phase PWM designed for motor control, and they might be available on a development board, but it's really not that difficult to use the microcontroller directly in your own design. I prefer the Microchip PIC series, probably because I have used them extensively and have familiarity, but I now have an Arduino and it is quite capable and easy to program, and there is probably a much larger user base at the hobbyist level where you can get support from the DIY community.


----------



## arklan (Dec 10, 2012)

this is really good information 
thankyou guys

looking through the openrevolt wiki the stuff seems to be way beyond me


----------



## piotrsko (Dec 9, 2007)

It is incremental knowledge. Baby steps. In your case, they are replacing the SSR relays with mosfets or igbts. Then they discover that they have issues they need to fix. Then they want to add a new function. New function causes problems. Rinse, repeat until satisfied.

You don't have to GROK it, you just need to know where to check if you have a problem.

It's a kit, most of the hard bits are done.


----------



## Duncan (Dec 8, 2008)

Hi Arklan
I'm a mechanical guy - no experience of electronics whatsoever!
And I succeeded in building an OpenRevolt kit
I learned an absolute ton in the process!

Do make yourself a kit

Don't leave it in a dirty dusty environment for a year with no covers
I did and I ended up having to make a second one


----------



## Lynx (Feb 5, 2015)

evemf said:


> Hi,
> 
> Mosfets and IGBTs don't need to share a common ground with the controller (Arduino). You can use a gate drive like HCPL-3120-300E. This is an optically isolated gate drive. Or if you want to use a standard mosfet gate drive, you can use a regular (fast) opto-isolator like HCPL-2531-000E to isolate the signals.
> 
> ...


Hi Jeff, noob here.
Thanks for the tip on the HCPL-3120-300E, it's been a while now since I last searched for a fast IGBT gate driver.

A quick search by my friend Google showed me the IXYS IX2113 dual driver (http://www.ixysic.com/home/pdfs.nsf/www/IX2113.pdf/$file/IX2113.pdf), which could come in handy if you're out to switch both the high and the low side in a typical most 3-phase H-bridge and it's propagation delays are just under 200 nS, which is not bad at all IMO.

It made me think though about just how fast IGBT gate drivers are nowadays, are there those who's capable of propagation delays below say 50 nS?

I know one of the problems involved in using optos are the switching delays in the detectors, so I'm guessing that would be a healthy competition factor for the makers out there.

If there's already a thread dealing with these questions feel free to point me there


----------



## dcb (Dec 5, 2009)

the ixys uses a bootstrap capacitor on the high side, as far as I know those have operational constraints:
2.3 Drawbacks of Bootstrap Circuitry
https://www.fairchildsemi.com/application-notes/AN/AN-6076.pdf

I recall someone trying to run a brick igbt with one and it got a bit hot. He replaced it with a dc-dc converter and it was much better.

Designs that use isolated DC-DC converters seem the most reliable to me. Johannes uses some prefab 2W units that would allow 600A igbts switched at ~2.2khz (so opto speed isn't critical there), mpaulholmes (in his latest 3 phase inverter) has a built in one that uses common mode chokes driven by a switched 24v that should be good for 10khz on 600 ampers.

Also there's some discussion about ZVS and ZGS (Zero voltage switching, zero current switching) where you add some inductance and diodes to your power path and switch the silicon with minimal gate power requred (and can bump up the frequency), though I don't quite have my head around all the operational constraints there, my instincts tell me it is going to be a little fidgety like a bootstrap capacitor.


----------



## Lynx (Feb 5, 2015)

dcb said:


> the ixys uses a bootstrap capacitor on the high side, as far as I know those have operational constraints:
> 2.3 Drawbacks of Bootstrap Circuitry
> https://www.fairchildsemi.com/application-notes/AN/AN-6076.pdf


Thanks for the heads up on the bootstrap circuit.

After having brushed up on bootstrapping a bit it looks as though, although it's a fairly low cost solution, it's by far the most common way to adress the issues involved in providing energy for the high side switching circuit, provided the values in the components (the diode, resistor and the capacitor) are calculated according to operating parameters, after that then everything should be running just fine, atleast until $h!t happens, which of course happens from time to time, that's just life.

I'm beginning to see the advantages though with using DC/DC converters instead of bootstrapping as it offers a better way of avoiding disasters when TSHHF, the "only" downside would of course be the cost thing of it all.

I did find a fairly easy-to-understand document, atleast to me anyway, that which offers easy enough explanations and calculations to what's what in a typical most basic bootstrap configuration for, I guess basically any, high side output stage driver circuit.

http://www.silabs.com/support documents/technicaldocs/AN486.pdf

(select the whole link, copy & paste into the adress bar, enter, choose open or safe file).


----------



## PStechPaul (May 1, 2012)

http://www.silabs.com/support documents/technicaldocs/AN486.pdf

That should be a direct link. Something you need to consider for DC-DC converters is the rating of the insulation barrier for a high voltage DC link bus. The cheapest ones (about $5) may have only a 500V or 1000V breakdown rating, and that is not for continuous duty on mains voltages. You need a device with reinforced insulation, and typically 4000-5000V breakdown rating, to be safe on 300-600V mains. High side gate drivers and their power supplies are also stressed by the rapid voltage change (dV/dt) when the IGBT is turned on and off.


----------



## Lynx (Feb 5, 2015)

PStechPaul said:


> http://www.silabs.com/support%20documents/technicaldocs/AN486.pdf
> 
> That should be a direct link. Something you need to consider for DC-DC converters is the rating of the insulation barrier for a high voltage DC link bus. The cheapest ones (about $5) may have only a 500V or 1000V breakdown rating, and that is not for continuous duty on mains voltages. You need a device with reinforced insulation, and typically 4000-5000V breakdown rating, to be safe on 300-600V mains. High side gate drivers and their power supplies are also stressed by the rapid voltage change (dV/dt) when the IGBT is turned on and off.


Thank you very much 

So a fairly high isolation voltage is recommended then, noted.
Just out of curiosity, which (durable / reliable) design configuration would you recommend for driving high and low side transistors?

One idea that looked kinda interesting was using (small) transformers, such as found in page 6 here, http://www.ti.com/lit/an/slua669/slua669.pdf
Using transformers that way (transformer, 2 diodes and a capacitor) leaves it kinda open how to design the primary circuit, I mean, would it even be necessary to use dedicated gate driver circuits at all?


----------



## dcb (Dec 5, 2009)

pulse transformers have their operational limitations as well.

http://www.digikey.com/Web Export/S...a-powering-igbt-gate-drivers.pdf?redirected=1

a dc-dc converter is essentially a small high frequency transformer, that just supplies power for the gate, not logic/timing.


----------



## MPaulHolmes (Feb 23, 2008)

Problems with pulse transformers (according to the link):
First, you don't have to do it like they show in the schematic. It seems like almost all the limitations come from not using an opto-isolated gate driver in conjunction with the pulse transformer. They do it with ONLY a pulse transformer.

1. Drive voltages depend on duty cycle without C1, C2, D1 and D2 to provide ‘DC restoration’ and constant positive/negative drive voltages. (The voltage regulation in my experience is good enough. 15.2-15.5v with 600amp IGBTs switching at 10KHz.)

2. C1, C2 have to ‘settle’ to DC offsets on start-up and with changes in duty cycle. See Figure 5. (this one isn't relevant if you are also using an optocoupled gate driver)

3. The transformer may have to deliver significant power (watts) so may be large and unsuitable for high frequencies (IGBT gate power requirement increases with frequency). (about 22mm long line filter. Ya, that's pretty big, but it's rated for 1 amp continuous)

4. A large transformer has high coupling capacitance giving high circulating currents from dV/dt across the transformer. (you just choose a standard line filter with the 2 separate coils far from each other, NOT on top of each other. It makes for teeny tiny coupling capacitance. And 1mH is enough)

5. Transformers designed for low coupling capacitance have high leakage inductance limiting PWM slew-rate. (not relevant if you are using a gate drive opto in conjunction)

6. The transformer requires special construction to meet any safety agency standards for isolation. (the line filter is rated for 3KV for 1 minute from primary to secondary)

7. The transformer primary has to be driven by a high speed buffer for high power which is complex and costly for good bandwidth. (You can just use a IXDN604 dual driver to push-pull the inputs of the line filter. Easy peasy)

8. Not suitable for ‘normally on’ devices. (good thing we're using this for mosfets and IGBTS!)

9. No continuous power for control and monitoring (e.g. desaturation detection). (this isn't relevant when using a gate drive opto in conjunction)

10. Transformer must ‘reset’ between pulses – must consider pulse width limits and reset voltage limits. (I'm not using the transformer to pass PWM. It just gets hit really hard with the push-pull of the IXDN604 in order to create the 24v on the secondary)


----------



## Lynx (Feb 5, 2015)

Excellent post, thank you very much 
That's quite a lot of info to digest, but I'm grateful none the less for all your input here.


----------



## dcb (Dec 5, 2009)

mpauls is basically a dc-dc converter, with a common driver circuit for the primaries, repurposing common mode chokes, and a nice gate driver chip. Definately not in the "pulse transformer" category, and a lot better power/$ than the little 2 watt converters. More power to the gate driver means you can switch larger igbt's and/or use a higher switching frequency.


----------



## PStechPaul (May 1, 2012)

I have designed some SCR trigger boards for devices running on 480 VAC mains, and used two small 60 Hz transformers which have split bobbins and high isolation. But they are large and fairly expensive. More recently I designed a board using very small ferrite cores and split bobbins, driven by 10 kHz, and they save size and money. They only needed about 20 turns to provide an isolated 12 VDC from a 12 VDC source.

An E20/10/6 E-core in type 87 ferrite is only $0.15:
http://www.newark.com/epcos/b66311gx187/ferrite-core-e-n87/dp/05J8937

A coilformer is less than $2:
http://www.mouser.com/ProductDetail...EpiMZZMs2JV%2bnT/vX8Heb/ur9dEV5d%2btZpvGdqHQ=

That one is for layer wound. Split bobbins are not as common, but are available. I got several as free samples from Lodestone Pacific:
http://www.lodestonepacific.com/bobbinsmain.php


----------

