BLDC motor controller help needed

150 views
Skip to first unread message

ja...@varanidcs.com.au

unread,
Aug 4, 2016, 7:37:35 PM8/4/16
to Connected Community HackerSpace


I have been developing a motor controller with open firmware, I have the hardware mostly done, the other people I was working with overseas can no longer assist so now I'm stuck. I built it in kicad and the hardware is mostly done but I don't have a oscilloscope I just need to find someone familiar with motor controllers to have a look and find out what is causing a few issues with mosfet switching and a few other things.

Does anyone here know anyone that would be interested in helping with it? Or know of someone I could pay to fix the last few issues.

Regards
Jacob Martyr

Clifford Heath

unread,
Aug 4, 2016, 11:43:47 PM8/4/16
to connected-commu...@googlegroups.com

Jacob, some details of the hardware design might help folk debug it for you "offline". Can you share the schematic and layout?

There are many traps for newcomers to design of switching hardware...

Clifford Heath


--
You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
To post to this group, send email to connected-community-hacke...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/528c3a50-285b-4ad3-92cb-54f4deaae4e6%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

ja...@varanidcs.com.au

unread,
Aug 5, 2016, 1:52:32 AM8/5/16
to Connected Community HackerSpace

Here are the kicad files, sorry the schematic is a mess, some of the components are redundant as I made it so I could test multiple configurations with one board design. It's relatively straight forward it plugs into either a TI MCU using instaspin or a STM32F4 board with VESC software. Voltage dividers and current sensors appear to be working without any issue. Mosfet drivers are 3x analogue devices adum7223 isolated 4A half bridge drivers. High side is bootstrapped with a schottky diode + 0.1uf and 10uf ceramic capacitors. low side just has the capacitors. Between the driver and the mosfet gate I have tried a few configurations, one with a diode + 30ohm resistors, sinking was done via a PNP bjt. This one did function once but was damaged afterwards. I then tried different variations with just resistors and no BJT since the driver is supposed to be able to sink quite a bit.


 Everything I tried just killed gate drivers and mosfets due to shorts from not switching. I managed to prevent it damaging itself by adding capacitors between each motor phase and ground but I still haven't got it switching properly again. Generally when it was breaking everything on the 15V vdd section was being destroyed. The PCB is 2oz copper thickness.

Clifford Heath

unread,
Aug 8, 2016, 7:52:36 PM8/8/16
to connected-commu...@googlegroups.com
Jacob,

I couldn't make head nor tail of that mess of files.
I saw the PCB layout and the master schematic,
but perhaps you could just post a single PDF with
the MOSFET drivers and output stage?

Clifford Heath.

> On 5 Aug 2016, at 3:30 PM, ja...@varanidcs.com.au wrote:
>
> Here are the kicad files, sorry the schematic is a mess, some of the components are redundant as I made it so I could test multiple configurations with one board design. It's relatively straight forward it plugs into either a TI MCU using instaspin or a STM32F4 board with VESC software. Voltage dividers and current sensors appear to be working without any issue. Mosfet drivers are 3x analogue devices adum7223 isolated 4A half bridge drivers. High side is bootstrapped with a schottky diode + 0.1uf and 10uf ceramic capacitors. low side just has the capacitors. Between the driver and the mosfet gate I have tried a few configurations, one with a diode + 30ohm resistors, sinking was done via a PNP bjt. This one did function once but was damaged afterwards. I then tried different variations with just resistors and no BJT since the driver is supposed to be able to sink quite a bit.
>
>
>
> Everything I tried just killed gate drivers and mosfets due to shorts from not switching. I managed to prevent it damaging itself by adding capacitors between each motor phase and ground but I still haven't got it switching properly again. Generally when it was breaking everything on the 15V vdd section was being destroyed. The PCB is 2oz copper thickness.
>
> https://drive.google.com/open?id=0B9A_COVyKU7oX1kyMDZCeC1ZU2M
>
>
>
>
>
> On Friday, August 5, 2016 at 1:43:47 PM UTC+10, Clifford Heath wrote:
> Jacob, some details of the hardware design might help folk debug it for you "offline". Can you share the schematic and layout?
>
> There are many traps for newcomers to design of switching hardware...
>
> Clifford Heath
>
>
> On 5 Aug 2016 9:37 AM, <ja...@varanidcs.com.au> wrote:
>
>
> I have been developing a motor controller with open firmware, I have the hardware mostly done, the other people I was working with overseas can no longer assist so now I'm stuck. I built it in kicad and the hardware is mostly done but I don't have a oscilloscope I just need to find someone familiar with motor controllers to have a look and find out what is causing a few issues with mosfet switching and a few other things.
>
> Does anyone here know anyone that would be interested in helping with it? Or know of someone I could pay to fix the last few issues.
>
> Regards
> Jacob Martyr
>
> --
> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-h...@googlegroups.com.
> To post to this group, send email to connected-commu...@googlegroups.com.
> --
> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-h...@googlegroups.com.
> To post to this group, send email to connected-commu...@googlegroups.com.
> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/950d22c3-6a97-4cec-b077-eedc17909dd3%40googlegroups.com.

ja...@varanidcs.com.au

unread,
Aug 8, 2016, 11:01:00 PM8/8/16
to Connected Community HackerSpace


This is how I have it configured for recent tests, each phase has an ADUM7223 driving the mosfets with an 82R resistor at the gate with a diode to bypass it when sinking. The ADUM7223 is configured wit the high side power provided by a bootstrap circuit, after the diode there are 10uf and 0.1uf ceramic caps. Low side is the same minus the diode.

 
 
 

Clifford Heath

unread,
Aug 8, 2016, 11:55:20 PM8/8/16
to connected-commu...@googlegroups.com
On 9 Aug 2016, at 12:49 PM, ja...@varanidcs.com.au wrote:
> This is how I have it configured for recent tests, each phase has an ADUM7223 driving the mosfets with an 82R resistor at the gate with a diode to bypass it when sinking. The ADUM7223 is configured wit the high side power provided by a bootstrap circuit, after the diode there are 10uf and 0.1uf ceramic caps. Low side is the same minus the diode.

Ahh, that's better.

The ADUM7223 has no shoot-through protection.
If the two inputs are going to a microprocessor, can
you be sure that they aren't *ever* enabled at the
same time. Because that would be bad. Very bad!

You really need to have logic (hardware not software!)
to prevent this from ever happening - like an inverter
between VIA and VIB (use DISABLE to turn both FETs
off).

You have nice FETs, and a nice powerful driver (4A!) yet
you're using quite slow switch-on. The 36nC gate charge
of those FETs combined with the 82R resistor means your
switch-on time will be about half a microsecond. Switch-off
is much faster, assuming that D5 and its friend can handle
the gate current. This asymmetrical drive arrangement is
intended to give you some dead-time, assuming that VIA
and VIB are complements of each other as I suggested.

Given that you have up to four amps flowing in the gate
lead during switch-off, how long is the wiring? It needs to
be really short - like millimetres, not centimetres. The
very rapid switch-off is guaranteed to cause problems if
you don't do this. You'll have significant voltage spikes in
both the gate lead and the source if you leave much
inductance. Those spikes will find their way into the
power lines for your microprocessor if you're not *very*
careful.

Personally I'd put 10R in series with the Schottky diodes,
to slow the switch off to perhaps 100ns, which will alleviate
that problem and reduce EMI. Keep it much smaller than
the 82R to maintain your dead-time.

All your high-current wiring loops (including the gate lines)
must have minimum area as well, or you'll have radiated
magnetic fields that will get picked up everywhere and will
cause problems. Even if the microprocessor glitches, you
must make sure it can *never* turn both FETs on at the
same time.

That's all I can tell from what you've shown, but it's by far
your most likely sources of problems.

Clifford Heath.

Jacob Martyr

unread,
Aug 9, 2016, 2:36:13 AM8/9/16
to connected-commu...@googlegroups.com
These are the traces high side is around 18mm in total while low side is around 13mm. The high side one travels across different layers, I put that trace on layer 3 with a ground plane on layer 2 to try and shield it. Do you think these traces would be the source of my issues, if so any suggestions on any sort of hack I could make (I can solder a wire directly from the gate driver to the resistor, it would be around 10mm long). I examined many other motor controllers but found many had longer and more convoluted gate driver to mosfet traces so I thought I would be ok. 

In regards to shoot through, Both of the software I'm using Ti instaspin and VESC have dead time insertion, do you still need hardware based protection? This was a bit of a trade off with these gate drivers, they are completely isolated across three sections but no shoot through prevention. On the upside you can abuse them to the point they burst into flames and it had no impact on the MCU. Gate driver and mosfet PCB layouts are giving me the most issues in general though, everyone has switched to IPM with IBGT but that's not any use for me as they switch too slowly for the type of motors I want to run.

One other questions, I'm using Allegro hall based current sensors, they output 5v / 2 so I'm using voltage divider is that acceptable? They say to use them with high impedance but there's no info regarding using voltage dividers to connect to 3.3v logic.
Thanks for the help,
Regards,
Jacob 



--
You received this message because you are subscribed to a topic in the Google Groups "Connected Community HackerSpace" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/connected-community-hackerspace/UYO1QZMMmbo/unsubscribe.
To unsubscribe from this group and all its topics, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
To post to this group, send an email to connected-community-hacke...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/4FD3C1C0-5639-4691-B4A1-C931F96DC123%40gmail.com.

Clifford Heath

unread,
Aug 9, 2016, 3:10:37 AM8/9/16
to connected-commu...@googlegroups.com

You definitely need hardware protection. I'd wager $20 you're turning both top and bottom FETs on at the same time. Use an inverter between INA and INB (one wire from MCU) and use DISABLE for off (one more).

The trace length thing could be glitching the MCU but that's a secondary concern.

Clifford Heath


To unsubscribe from this group and all its topics, send an email to connected-community-hackerspace+unsu...@googlegroups.com.
To post to this group, send an email to connected-community-hackerspace...@googlegroups.com.

--
You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
To post to this group, send email to connected-community-hacke...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/CAGG-JB_AsXTwogQRi78kRYQmXaq3k4PAVPhazk1nPWCOt12Eeg%40mail.gmail.com.

Clifford Heath

unread,
Aug 9, 2016, 8:14:36 AM8/9/16
to connected-commu...@googlegroups.com
Ok, before I was on the phone, now I'm at the computer.

The driver chips can put 4 amps into the gate (presumably
that's bi-directional, I didn't check). So on turn-off, where the
Schottky diodes conduct fully, your FETs will go from full-on
to full-off in about 9ns. That's fast, too fast. I don't know
what voltage you're switching, but at those speeds, even
100nH of trace inductance looks like 70+ ohms.

What the hell are the capacitors doing from the FETs to ground?
This is exactly where you *must not* have capacitors. The FETs
are designed to *rapidly* change the voltage to the motor, and
the 100uF capacitor kills that. It could be killing the FETs all by
itself, depending on the ESR of the cap and your switching rate.

The motor is an inductor - that means that it resists any rapid
change in the current flowing through it by allowing the voltage
to whatever level is needed to keep current flowing. So the
FETs switch, the voltage jumps suddenly, but the current
changes relatively slowly.

So when you turn the motor off and it's passing 10 amps,
those 10 amps are *going* to continue flowing, by producing
whatever voltage creates a current path for them. Possibly
through the body diodes of the FETs, but then where? Into
your power supply? You haven't shown that. There absolutely
must be a safe path for the motor current to continue flowing
when the FETs are both off. You could easily be getting a
thousand volts from a beefy motor when you slam the FETs
off. You just can't muck around with high power switching
and hope that things will be ok, it has to be actually designed.

Anyhow Jacob, I hope I've helped a bit... but you are seriously
out of your depth here. You need to understand a lot more
basic electronics and learn how to calculate all these time
constants, and to consider the instantaneous behaviour at
every point in the switching cycle. You're just not down to
"the last few issues" yet. You haven't dealt with the first few.

Clifford Heath.

> On 9 Aug 2016, at 3:31 PM, Jacob Martyr <devel...@varanidcs.com.au> wrote:
>
> These are the traces high side is around 18mm in total while low side is around 13mm. The high side one travels across different layers, I put that trace on layer 3 with a ground plane on layer 2 to try and shield it. Do you think these traces would be the source of my issues, if so any suggestions on any sort of hack I could make (I can solder a wire directly from the gate driver to the resistor, it would be around 10mm long). I examined many other motor controllers but found many had longer and more convoluted gate driver to mosfet traces so I thought I would be ok.
>
> In regards to shoot through, Both of the software I'm using Ti instaspin and VESC have dead time insertion, do you still need hardware based protection? This was a bit of a trade off with these gate drivers, they are completely isolated across three sections but no shoot through prevention. On the upside you can abuse them to the point they burst into flames and it had no impact on the MCU. Gate driver and mosfet PCB layouts are giving me the most issues in general though, everyone has switched to IPM with IBGT but that's not any use for me as they switch too slowly for the type of motors I want to run.
>
> One other questions, I'm using Allegro hall based current sensors, they output 5v / 2 so I'm using voltage divider is that acceptable? They say to use them with high impedance but there's no info regarding using voltage dividers to connect to 3.3v logic.
>
> To unsubscribe from this group and all its topics, send an email to connected-community-h...@googlegroups.com.
> To post to this group, send an email to connected-commu...@googlegroups.com.
> --
> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-h...@googlegroups.com.
> To post to this group, send email to connected-commu...@googlegroups.com.
> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/CAGG-JB_AsXTwogQRi78kRYQmXaq3k4PAVPhazk1nPWCOt12Eeg%40mail.gmail.com.

Geoff

unread,
Aug 9, 2016, 9:22:16 AM8/9/16
to Connected Community HackerSpace
Hi Jacob,

Your circuit is interesting but it is quite different from the reference design. 

There's nothing wrong with having ago:-)

My approach is to start with a reference design, if available, and modify it as I see fit. A good reference design will include the calculations and rational, this one is limited but is still a good starting point:

ja...@varanidcs.com.au

unread,
Aug 9, 2016, 6:20:21 PM8/9/16
to Connected Community HackerSpace
For now the power supply is just an isolated 20v 2a DC power supply, I saw a few articles that suggested low ESR high ripple current caps for low inductance BLDC when testing. Motor controller software should always keep one low side mosfet open. I did actually have it running once, but the working one was broken when I connected a different MCU dev board which turned out to have a fault and destroyed it. After that I was ill for a few weeks but my attempts to build another one didn't work this time. I was able to construct an oscilloscope using a cyrpress PSOC today, I think I found the problem, some flux residue may have been causing gate drivers not to be soldered correctly leading to signal issues that weren't visible without the oscilloscope. I suspect some of the highside gates were turning on while none of the low side operated properly and as you were saying the motor acts as an inductor it would then dump the energy into the gate drivers and mosfets. The capacitors must have been able to stop the mosfets being killed as they were very high ripple current low esr 260V caps for power supplies, so they likely can absorb anything the small motor can produce with 20V and a few amps.

I have been looking at this reference design today https://wiki.analog.com/resources/eval/user-guides/ad-fmcmotcon2-ebz/hardware/lv_board it's relatively close to what I want run with mine, I will try similar values to what they used, 22ohm driver to gate and diode + 3ohm for sinking. They didn't seem to have any sort of hardware based shoot through protection, though it is driven by a FPGA, maybe it takes care of that. I have the PSOC working as a PWM + scope, so I will try testing each phase individually doing something simple like varying the intensity of an LED lamp before trying motor control with all 3 phases.

Stuart Young

unread,
Aug 9, 2016, 7:00:41 PM8/9/16
to CCHS

Just a note:

If you're using a 20V supply gor the motors, then you're 2V over the max listed for the output drive for thr ADuM7223


On 10 Aug 2016 08:20, <ja...@varanidcs.com.au> wrote:
For now the power supply is just an isolated 20v 2a DC power supply, I saw a few articles that suggested low ESR high ripple current caps for low inductance BLDC when testing. Motor controller software should always keep one low side mosfet open. I did actually have it running once, but the working one was broken when I connected a different MCU dev board which turned out to have a fault and destroyed it. After that I was ill for a few weeks but my attempts to build another one didn't work this time. I was able to construct an oscilloscope using a cyrpress PSOC today, I think I found the problem, some flux residue may have been causing gate drivers not to be soldered correctly leading to signal issues that weren't visible without the oscilloscope. I suspect some of the highside gates were turning on while none of the low side operated properly and as you were saying the motor acts as an inductor it would then dump the energy into the gate drivers and mosfets. The capacitors must have been able to stop the mosfets being killed as they were very high ripple current low esr 260V caps for power supplies, so they likely can absorb anything the small motor can produce with 20V and a few amps.

I have been looking at this reference design today https://wiki.analog.com/resources/eval/user-guides/ad-fmcmotcon2-ebz/hardware/lv_board it's relatively close to what I want run with mine, I will try similar values to what they used, 22ohm driver to gate and diode + 3ohm for sinking. They didn't seem to have any sort of hardware based shoot through protection, though it is driven by a FPGA, maybe it takes care of that. I have the PSOC working as a PWM + scope, so I will try testing each phase individually doing something simple like varying the intensity of an LED lamp before trying motor control with all 3 phases.

--
You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
To post to this group, send email to connected-community-hacke...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/a1c97186-1286-4b87-bfad-1e346b82e99e%40googlegroups.com.

Clifford Heath

unread,
Aug 9, 2016, 7:00:59 PM8/9/16
to connected-commu...@googlegroups.com
On 10 Aug 2016, at 12:34 AM, ja...@varanidcs.com.au wrote:
> For now the power supply is just an isolated 20v 2a DC power supply

So when the motor is at full current, and the FETs turn off,
where does the current go? How long does it take for that
current path to "open up" - longer than 9ns? What is the
cross-section area of the loop of wire that leads from one
motor terminal round to the other one(s), and will radiation
from that loop cause glitches? How many joules of energy
exist in the motor's magnetic field (I^2*L/2) that must be
passed or absorbed?

If you can't answer these questions, you don't yet have a
"design" for a motor controller. Because that current *will*
not stop. It will find a path, even if it has to make smoke.

Clifford Heath.

> , I saw a few articles that suggested low ESR high ripple current caps for low inductance BLDC when testing. Motor controller software should always keep one low side mosfet open. I did actually have it running once, but the working one was broken when I connected a different MCU dev board which turned out to have a fault and destroyed it. After that I was ill for a few weeks but my attempts to build another one didn't work this time. I was able to construct an oscilloscope using a cyrpress PSOC today, I think I found the problem, some flux residue may have been causing gate drivers not to be soldered correctly leading to signal issues that weren't visible without the oscilloscope. I suspect some of the highside gates were turning on while none of the low side operated properly and as you were saying the motor acts as an inductor it would then dump the energy into the gate drivers and mosfets. The capacitors must have been able to stop the mosfets being killed as they were very high ripple current low esr 260V caps for power supplies, so they likely can absorb anything the small motor can produce with 20V and a few amps.
>
> I have been looking at this reference design today https://wiki.analog.com/resources/eval/user-guides/ad-fmcmotcon2-ebz/hardware/lv_board it's relatively close to what I want run with mine, I will try similar values to what they used, 22ohm driver to gate and diode + 3ohm for sinking. They didn't seem to have any sort of hardware based shoot through protection, though it is driven by a FPGA, maybe it takes care of that. I have the PSOC working as a PWM + scope, so I will try testing each phase individually doing something simple like varying the intensity of an LED lamp before trying motor control with all 3 phases.
>
> --
> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-h...@googlegroups.com.
> To post to this group, send email to connected-commu...@googlegroups.com.

ja...@varanidcs.com.au

unread,
Aug 9, 2016, 11:33:18 PM8/9/16
to Connected Community HackerSpace
Texas instruments instaspin software calculates those variables. You place voltage sensing circuits at each motor phase and vsupply as well as three current sensors. During configuration it runs tests that calculates inductance, resistance, magnetic flux and many other variables. It's fairly new, it's quite math intensive so it became possible when 32 bit MCUs with powerful FPUs and co processors became common. Most of the major MCU companies have released or are working on software solutions to automate motor and inverter detection and configuration. All you need to do is provide it with an inverter capable of switching properly and the correct sensor topology. It's also useful for profiling unknown motors if you want detailed specifications so you can run them with a systems that lacks motor detection. 


On Wednesday, August 10, 2016 at 9:00:59 AM UTC+10, Clifford Heath wrote:
On 10 Aug 2016, at 12:34 AM, ja...@varanidcs.com.au wrote:
> For now the power supply is just an isolated 20v 2a DC power supply

So when the motor is at full current, and the FETs turn off,
where does the current go? How long does it take for that
current path to "open up" - longer than 9ns? What is the
cross-section area of the loop of wire that leads from one
motor terminal round to the other one(s), and will radiation
from that loop cause glitches? How many joules of energy
exist in the motor's magnetic field (I^2*L/2) that must be
passed or absorbed?

If you can't answer these questions, you don't yet have a
"design" for a motor controller. Because that current *will*
not stop. It will find a path, even if it has to make smoke.

Clifford Heath.

> , I saw a few articles that suggested low ESR high ripple current caps for low inductance BLDC when testing. Motor controller software should always keep one low side mosfet open. I did actually have it running once, but the working one was broken when I connected a different MCU dev board which turned out to have a fault and destroyed it. After that I was ill for a few weeks but my attempts to build another one didn't work this time. I was able to construct an oscilloscope using a cyrpress PSOC today, I think I found the problem, some flux residue may have been causing gate drivers not to be soldered correctly leading to signal issues that weren't visible without the oscilloscope. I suspect some of the highside gates were turning on while none of the low side operated properly and as you were saying the motor acts as an inductor it would then dump the energy into the gate drivers and mosfets. The capacitors must have been able to stop the mosfets being killed as they were very high ripple current low esr 260V caps for power supplies, so they likely can absorb anything the small motor can produce with 20V and a few amps.
>
> I have been looking at this reference design today https://wiki.analog.com/resources/eval/user-guides/ad-fmcmotcon2-ebz/hardware/lv_board it's relatively close to what I want run with mine, I will try similar values to what they used, 22ohm driver to gate and diode + 3ohm for sinking. They didn't seem to have any sort of hardware based shoot through protection, though it is driven by a FPGA, maybe it takes care of that. I have the PSOC working as a PWM + scope, so I will try testing each phase individually doing something simple like varying the intensity of an LED lamp before trying motor control with all 3 phases.
>
> --
> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
> To post to this group, send email to connected-community-hacke...@googlegroups.com.

Clifford Heath

unread,
Aug 9, 2016, 11:45:35 PM8/9/16
to connected-commu...@googlegroups.com
You have again completely missed the point.
"An inverter capable of switching properly"
always routes the circulating current safely.
Your circuit simply doesn't.

The FETs turn off in as little as 9ns. Software
cannot decide where the ongoing motor current
will go. The current *will* instantaneously find a
path, so *hardware* must provide a safe path.

Google for "flywheel diode" and read until you
understand what is going on (remembering that
the motor current might flow in either direction).

Clifford Heath.
> > To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-h...@googlegroups.com.
> > To post to this group, send email to connected-commu...@googlegroups.com.
> --
> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-h...@googlegroups.com.
> To post to this group, send email to connected-commu...@googlegroups.com.
> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/2acf9e9f-b57c-42ab-9d96-77d872ec4007%40googlegroups.com.

Clifford Heath

unread,
Aug 10, 2016, 12:06:56 AM8/10/16
to connected-commu...@googlegroups.com
One addition...

On 10 Aug 2016, at 1:45 PM, Clifford Heath <cliffor...@gmail.com> wrote:
> (remembering that
> the motor current might flow in either direction).

Also, when a FET is on, it can pass current in *either* direction.
This matters, especially in regenerative braking.

One common way to handle flywheel currents is to enable
both low-side FETs (both ends of a single winding). One
FET passes the current in the normal (drain +ve) direction,
the other passes it in the opposite direction. This avoids the
need to have beefy flywheel diodes, as long as their
instantaneous rating handles the switch-over.

It's pretty non-intuitive, but if you short-circuit an inductor
that has a current flowing in it, then the better the short,
the *longer* the current flows. The short circuit doesn't
quench the current; only the DC resistance does that.

The time constant is L/R - smaller R means a longer time.
Zero R (superconductor) means infinite time; that's how
NMR gradient magnets work.

Jacob Martyr

unread,
Aug 10, 2016, 12:57:58 AM8/10/16
to connected-commu...@googlegroups.com
Wouldn't FOC commutation mitigate the issues with high MOSFET on/off speeds? From what I understand the FOC control schemes have considerable overlap which is why motors with low inductance cause problems. Some less common coreless motors recommend FOC with switching speeds up to 100khz. 

>>> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
>>> To post to this group, send email to connected-community-hacke...@googlegroups.com.

>>> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/a1c97186-1286-4b87-bfad-1e346b82e99e%40googlegroups.com.
>>> For more options, visit https://groups.google.com/d/optout.
>>
>>
>> --
>> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
>> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
>> To post to this group, send email to connected-community-hacke...@googlegroups.com.
--
You received this message because you are subscribed to a topic in the Google Groups "Connected Community HackerSpace" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/connected-community-hackerspace/UYO1QZMMmbo/unsubscribe.
To unsubscribe from this group and all its topics, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
To post to this group, send an email to connected-community-hacke...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/BC2F7A32-9118-46DE-8C78-CFC509B72673%40gmail.com.

Clifford Heath

unread,
Aug 10, 2016, 1:48:14 AM8/10/16
to connected-commu...@googlegroups.com
On 10 Aug 2016, at 2:57 PM, Jacob Martyr <devel...@varanidcs.com.au> wrote:
> Wouldn't FOC commutation mitigate the issues with high MOSFET on/off speeds? From what I understand the FOC control schemes have considerable overlap which is why motors with low inductance cause problems. Some less common coreless motors recommend FOC with switching speeds up to 100khz.

No. FOC is an algorithm for deciding what average voltage to
produce to get the desired rotating field. The field rotates at
the speed of the motor shaft, i.e. slowly wrt the commutation
speed.

The FETs commutate at a speed much higher than the motor
shaft, so as to produce the desired output *average* voltages.
The actual voltages jump from rail to rail at this high speed,
and must *never* be left to float (while the motor is running).
Another way of saying this is that the current from each motor
lead must *always* have a low impedance path along high
current wiring (and FETs, and clamp, flywheel or FET body
diodes).

Now, assuming that each half-bridge is working correctly,
and you never turn on top and bottom at the same time...

It's this high-speed switching that will kill you, not an error in
the slowly rotating field calculated by FOC. Basically if there's
current flowing in the motor that does not have a path, it will
*make* a path. That's what inductors do.

Note that because the output voltages jump rapidly from rail
to rail, you must not bypass them to ground with a capacitor.
A capacitor resists change of voltage by sinking or sourcing
current. An inductor resists change of current by sinking or
sourcing *voltage*. You can't use them both together except
in a resonant circuit. And this circuit is *inductive*.

Regarding glitching and isolation:

A rapid change of voltage means you get E-field radiation and
capacitive pickup. The coupling is charge transfer (i.e. *current*
injection) proportionate to surface area and separation distance.
So keep sensitive (high impedance) stuff well away and well
shielded.

With rapidly changing currents, you get B-field or magnetic
coupling, which induces *voltage* proportionate to loop areas
and the separation distance cubed. So keep loop areas small
and well separated, both on the high-current side and on any
noise-sensitive pickup point. It's not easy to implement magnetic
shielding; a magnetic field passes right through all but the
most exotic metals. So make use of the cube law and use
separation distance instead.

Is anyone else (than Jacob) learning from what I'm writing?
I sure hope so, because otherwise it would be easier to just
ask him to, you know, read a book or something :)

Clifford Heath.
> >>> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-h...@googlegroups.com.
> >>> To post to this group, send email to connected-commu...@googlegroups.com.
> >>> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/a1c97186-1286-4b87-bfad-1e346b82e99e%40googlegroups.com.
> >>> For more options, visit https://groups.google.com/d/optout.
> >>
> >>
> >> --
> >> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> >> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-h...@googlegroups.com.
> >> To post to this group, send email to connected-commu...@googlegroups.com.
> >> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/2acf9e9f-b57c-42ab-9d96-77d872ec4007%40googlegroups.com.
> >> For more options, visit https://groups.google.com/d/optout.
> >
>
> --
> You received this message because you are subscribed to a topic in the Google Groups "Connected Community HackerSpace" group.
> To unsubscribe from this topic, visit https://groups.google.com/d/topic/connected-community-hackerspace/UYO1QZMMmbo/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to connected-community-h...@googlegroups.com.
> To post to this group, send an email to connected-commu...@googlegroups.com.
> --
> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-h...@googlegroups.com.
> To post to this group, send email to connected-commu...@googlegroups.com.
> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/CAGG-JB-KXh9cJS%3D_Esr9x4SoDAWZE8s2tyB8%3DT_yJVC7BwuvRQ%40mail.gmail.com.

Stuart Young

unread,
Aug 10, 2016, 2:06:19 AM8/10/16
to CCHS

Clifford,

While I know some of the theory, it's definitely been good to read through it again from your explanation.

FWIW: I had a crap time (many many moons ago) figuring out pointers in C till I read through my 3rd book (K&R no less, which I was told "not" to bother with by everyone at the time) which explained it in a different way. It "clicked" and suddenly all the previous explanations I read made complete sense.

Sometimes, simply reading the same explanation done from someone elses perspective is all the enlightening you need. ;)


> >>> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
> >>> To post to this group, send email to connected-community-hacke...@googlegroups.com.

> >>> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/a1c97186-1286-4b87-bfad-1e346b82e99e%40googlegroups.com.
> >>> For more options, visit https://groups.google.com/d/optout.
> >>
> >>
> >> --
> >> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> >> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
> >> To post to this group, send email to connected-community-hacke...@googlegroups.com.

> >> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/2acf9e9f-b57c-42ab-9d96-77d872ec4007%40googlegroups.com.
> >> For more options, visit https://groups.google.com/d/optout.
> >
>
> --
> You received this message because you are subscribed to a topic in the Google Groups "Connected Community HackerSpace" group.
> To unsubscribe from this topic, visit https://groups.google.com/d/topic/connected-community-hackerspace/UYO1QZMMmbo/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
> To post to this group, send an email to connected-community-hacke...@googlegroups.com.

> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/BC2F7A32-9118-46DE-8C78-CFC509B72673%40gmail.com.
> For more options, visit https://groups.google.com/d/optout.
>
>
> --
> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
> To post to this group, send email to connected-community-hacke...@googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
To post to this group, send an email to connected-community-hacke...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/D7282D02-8950-47A3-902F-B4B62A9EADCA%40gmail.com.

Jacob Martyr

unread,
Aug 10, 2016, 2:26:21 AM8/10/16
to connected-commu...@googlegroups.com
So my main concern should be the issue of the gate driver to mosfet gate circuit generating magnetic fields which will potentially cause interference and turn on other mosfets? The amount of interference will be proportional to the surface area of the driver to gate circuit, voltage, how quickly the mosfet turns on and off, switching frequency, driver power and mosfet gate properties? So in theory I want to turn the mosfet on and off as quickly as possible, but not so fast as to generate magnetic fields that will disrupt other circuits, is that correct?

> >>> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsu...@googlegroups.com.
> >>> To post to this group, send email to connected-community-hackerspace...@googlegroups.com.

> >>> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/a1c97186-1286-4b87-bfad-1e346b82e99e%40googlegroups.com.
> >>> For more options, visit https://groups.google.com/d/optout.
> >>
> >>
> >> --
> >> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> >> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsu...@googlegroups.com.
> >> To post to this group, send email to connected-community-hackerspace...@googlegroups.com.

> >> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/2acf9e9f-b57c-42ab-9d96-77d872ec4007%40googlegroups.com.
> >> For more options, visit https://groups.google.com/d/optout.
> >
>
> --
> You received this message because you are subscribed to a topic in the Google Groups "Connected Community HackerSpace" group.
> To unsubscribe from this topic, visit https://groups.google.com/d/topic/connected-community-hackerspace/UYO1QZMMmbo/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to connected-community-hackerspace+unsu...@googlegroups.com.
> To post to this group, send an email to connected-community-hackerspace...@googlegroups.com.

> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/BC2F7A32-9118-46DE-8C78-CFC509B72673%40gmail.com.
> For more options, visit https://groups.google.com/d/optout.
>
>
> --
> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsu...@googlegroups.com.
> To post to this group, send email to connected-community-hackerspace...@googlegroups.com.

> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/CAGG-JB-KXh9cJS%3D_Esr9x4SoDAWZE8s2tyB8%3DT_yJVC7BwuvRQ%40mail.gmail.com.
> For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsu...@googlegroups.com.
To post to this group, send an email to connected-community-hackerspace...@googlegroups.com.

--
You received this message because you are subscribed to a topic in the Google Groups "Connected Community HackerSpace" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/connected-community-hackerspace/UYO1QZMMmbo/unsubscribe.
To unsubscribe from this group and all its topics, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
To post to this group, send email to connected-community-hacke...@googlegroups.com.

Bharanee Rathna

unread,
Aug 10, 2016, 2:32:40 AM8/10/16
to connected-commu...@googlegroups.com
A lot of lurkers like me reading it very carefully. Thanks Clifford :)



> >>> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsu...@googlegroups.com.
> >>> To post to this group, send email to connected-community-hackerspace...@googlegroups.com.

> >>> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/a1c97186-1286-4b87-bfad-1e346b82e99e%40googlegroups.com.
> >>> For more options, visit https://groups.google.com/d/optout.
> >>
> >>
> >> --
> >> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> >> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsu...@googlegroups.com.
> >> To post to this group, send email to connected-community-hackerspace...@googlegroups.com.

> >> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/2acf9e9f-b57c-42ab-9d96-77d872ec4007%40googlegroups.com.
> >> For more options, visit https://groups.google.com/d/optout.
> >
>
> --
> You received this message because you are subscribed to a topic in the Google Groups "Connected Community HackerSpace" group.
> To unsubscribe from this topic, visit https://groups.google.com/d/topic/connected-community-hackerspace/UYO1QZMMmbo/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to connected-community-hackerspace+unsu...@googlegroups.com.
> To post to this group, send an email to connected-community-hackerspace...@googlegroups.com.

> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/BC2F7A32-9118-46DE-8C78-CFC509B72673%40gmail.com.
> For more options, visit https://groups.google.com/d/optout.
>
>
> --
> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsu...@googlegroups.com.
> To post to this group, send email to connected-community-hackerspace...@googlegroups.com.

> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/CAGG-JB-KXh9cJS%3D_Esr9x4SoDAWZE8s2tyB8%3DT_yJVC7BwuvRQ%40mail.gmail.com.
> For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsu...@googlegroups.com.
To post to this group, send an email to connected-community-hackerspace...@googlegroups.com.

--
You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
To post to this group, send email to connected-community-hacke...@googlegroups.com.

Clifford Heath

unread,
Aug 10, 2016, 2:44:36 AM8/10/16
to connected-commu...@googlegroups.com
On 10 Aug 2016, at 4:26 PM, Jacob Martyr <devel...@varanidcs.com.au> wrote:
> So my main concern should be the issue of the gate driver to mosfet gate circuit generating magnetic fields which will potentially cause interference and turn on other mosfets? The amount of interference will be proportional to the surface area of the driver to gate circuit, voltage, how quickly the mosfet turns on and off, switching frequency, driver power and mosfet gate properties? So in theory I want to turn the mosfet on and off as quickly as possible, but not so fast as to generate magnetic fields that will disrupt other circuits, is that correct?

No, wrong on almost all counts. I don't know how many more
ways I can say this, so please read and re-read this (and my
earlier postings) before replying again.

Your first and foremost concern should be ensuring that each
half-bridge functions correctly, with only one FET on at a time.
If you haven't ensured that, nothing else matters.

Your second concern should be to ensure that each terminal
of the motor has a low impedance path at *all* parts of the
switching cycle. It doesn't matter whether it's connected by an
enabled high-side FET, or by a low-side FET, or is clamped
through a diode to one or the other (including a FET body
diode). As long as it's *always* connected to something stiff.

During the FET dead-time, it must be connected via a diode
(body or other). Make sure that the diode can handle it, and
turns on and off fast enough. If current is flowing from the
motor into the rail in the wrong direction (yes, this happens)
then the supply must sink it. It might sink it into a big filter
capacitor, or into a battery (that's how regenerative charging
works), but it must go somewhere. If you use a diode in the
supply rail to reduce system noise, that diode will block the
motor current path and the local supply rail will jump - possibly
causing damage from excessive voltage.

Your third concern is to ensure that your layout manages the
electric field (dV/dt) and magnetic field (di/dt) emissions to
avoid glitching nearby sensitive circuits. This is important,
but not smoke-inducing; it'll just mess up your controller.
Which might be smoke inducing, but if you got the above
right, it shouldn't - the bridge should be intrinsically safe.
> > >>> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-h...@googlegroups.com.
> > >>> To post to this group, send email to connected-commu...@googlegroups.com.
> > >>> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/a1c97186-1286-4b87-bfad-1e346b82e99e%40googlegroups.com.
> > >>> For more options, visit https://groups.google.com/d/optout.
> > >>
> > >>
> > >> --
> > >> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> > >> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-h...@googlegroups.com.
> > >> To post to this group, send email to connected-commu...@googlegroups.com.
> > >> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/2acf9e9f-b57c-42ab-9d96-77d872ec4007%40googlegroups.com.
> > >> For more options, visit https://groups.google.com/d/optout.
> > >
> >
> > --
> > You received this message because you are subscribed to a topic in the Google Groups "Connected Community HackerSpace" group.
> > To unsubscribe from this topic, visit https://groups.google.com/d/topic/connected-community-hackerspace/UYO1QZMMmbo/unsubscribe.
> > To unsubscribe from this group and all its topics, send an email to connected-community-h...@googlegroups.com.
> > To post to this group, send an email to connected-commu...@googlegroups.com.
> > To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/BC2F7A32-9118-46DE-8C78-CFC509B72673%40gmail.com.
> > For more options, visit https://groups.google.com/d/optout.
> >
> >
> > --
> > You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> > To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-h...@googlegroups.com.
> > To post to this group, send email to connected-commu...@googlegroups.com.
> > To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/CAGG-JB-KXh9cJS%3D_Esr9x4SoDAWZE8s2tyB8%3DT_yJVC7BwuvRQ%40mail.gmail.com.
> > For more options, visit https://groups.google.com/d/optout.
>
> --
> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-h...@googlegroups.com.
> To post to this group, send an email to connected-commu...@googlegroups.com.
> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/D7282D02-8950-47A3-902F-B4B62A9EADCA%40gmail.com.
> For more options, visit https://groups.google.com/d/optout.
>
>
> --
> You received this message because you are subscribed to a topic in the Google Groups "Connected Community HackerSpace" group.
> To unsubscribe from this topic, visit https://groups.google.com/d/topic/connected-community-hackerspace/UYO1QZMMmbo/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to connected-community-h...@googlegroups.com.
> To post to this group, send email to connected-commu...@googlegroups.com.
> --
> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-h...@googlegroups.com.
> To post to this group, send email to connected-commu...@googlegroups.com.
> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/CAGG-JB-3mUSgAfGtxPY6f6qhNH5vLGbgVYQHzQBxQWTcBrMATA%40mail.gmail.com.

damie...@gmail.com

unread,
Aug 10, 2016, 2:45:10 AM8/10/16
to CCHS

I'll de-lurk to ditto what Bharanee said. Thankyou, Clifford, for the interesting reading.

Cheers,
Damien


--
You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
To post to this group, send email to connected-community-hacke...@googlegroups.com.

Zac Faragher

unread,
Aug 10, 2016, 2:55:16 AM8/10/16
to connected-commu...@googlegroups.com
Something I'll add is that in cases where you're getting regenerative braking - i.e. the motor is dumping current/voltage into the positive rail - most low cost power supplies can't handle that. Best case is that the PS will fail into a safe state with no damage, likely case is that you could blow something in the PS.

Safest way is to use a battery unless you're certain you won't get regeneration, and even then it's better to be safe than buying a new PS.

-Zac F

--
You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsu...@googlegroups.com.
To post to this group, send email to connected-community-hackerspace...@googlegroups.com.

Clifford Heath

unread,
Aug 10, 2016, 3:16:38 AM8/10/16
to connected-commu...@googlegroups.com
On 10 Aug 2016, at 4:54 PM, Zac Faragher <elvis...@gmail.com> wrote:
> Something I'll add is that in cases where you're getting regenerative braking - i.e. the motor is dumping current/voltage into the positive rail - most low cost power supplies can't handle that.

Right, because they use a small storage capacitor, frequently
recharged (at SMPS switching frequency) from a high-voltage
rail.

The key point is that (up to) the total magnetic field energy
from the motor will get dumped into that capacitor; you can
use the numbers to figure out how much the cap voltage
will jump. For a PM DC motor, you might also recover
rotational energy (braking) - same problem, but at the
rotational frequency, not the switching frequency.

A secondary point is that this is happening at the bridge
commutation frequency, and the supply has its own switching
frequency. If those frequencies line up, it can mess up the
power supply's control algorithm and you can get all kinds
of crazy chaotic behaviour. This happens because the SMPS
samples the voltage on the cap, it doesn't average it over
several cycles. Basically it's unsafe to power any switching
supply from another one, unless you have a big enough
storage capacitor or filter network between them.

> Safest way is to use a battery unless you're certain you won't get regeneration, and even then it's better to be safe than buying a new PS.

A big enough storage capacitor can prevent those problems.

Or prevent regeneration by circulating the current through
FETs on the same side (commonly the low-side). Enable both
FETs and the current will simply flywheel. Note that one FET
has current flowing through it "the wrong way". You won't recover
any energy, but you won't lose much either.

Beware of doing this with a PM DC motor, because the
rotational energy translates into rapidly increasing current.
(and when the magnetic material "saturates", into *very*
rapidly increasing current!). This is how regenerative braking
works; short-circuit the motor to convert rotational energy into
a strong magnetic field (i.e. increasing current), then before
you over-current the FETs, quickly switch them around to
steer the current into the battery. Wait until enough energy
has been dumped (current has dropped), and repeat.
Basically you lock one low-side FET on, then commutate
the other half-bridge. A four-quadrant controller can do this
in both directions (braking in both forward and reverse).

Clifford Heath.
> > >>> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-h...@googlegroups.com.
> > >>> To post to this group, send email to connected-commu...@googlegroups.com.
> > >>> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/a1c97186-1286-4b87-bfad-1e346b82e99e%40googlegroups.com.
> > >>> For more options, visit https://groups.google.com/d/optout.
> > >>
> > >>
> > >> --
> > >> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> > >> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-h...@googlegroups.com.
> > >> To post to this group, send email to connected-commu...@googlegroups.com.
> > >> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/2acf9e9f-b57c-42ab-9d96-77d872ec4007%40googlegroups.com.
> > >> For more options, visit https://groups.google.com/d/optout.
> > >
> >
> > --
> > You received this message because you are subscribed to a topic in the Google Groups "Connected Community HackerSpace" group.
> > To unsubscribe from this topic, visit https://groups.google.com/d/topic/connected-community-hackerspace/UYO1QZMMmbo/unsubscribe.
> > To unsubscribe from this group and all its topics, send an email to connected-community-h...@googlegroups.com.
> > To post to this group, send an email to connected-commu...@googlegroups.com.
> > To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/BC2F7A32-9118-46DE-8C78-CFC509B72673%40gmail.com.
> > For more options, visit https://groups.google.com/d/optout.
> >
> >
> > --
> > You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> > To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-h...@googlegroups.com.
> > To post to this group, send email to connected-commu...@googlegroups.com.
> > To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/CAGG-JB-KXh9cJS%3D_Esr9x4SoDAWZE8s2tyB8%3DT_yJVC7BwuvRQ%40mail.gmail.com.
> > For more options, visit https://groups.google.com/d/optout.
>
> --
> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-h...@googlegroups.com.
> To post to this group, send an email to connected-commu...@googlegroups.com.
> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/D7282D02-8950-47A3-902F-B4B62A9EADCA%40gmail.com.
> For more options, visit https://groups.google.com/d/optout.
>
>
> --
> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-h...@googlegroups.com.
> To post to this group, send email to connected-commu...@googlegroups.com.
> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/CAPh9M%2BF6BEU%3Dg-K5TxwfcWc8xU2Pz04mrErDWHZwUttyL7gqNA%40mail.gmail.com.
>
> For more options, visit https://groups.google.com/d/optout.
>
>
> --
> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-h...@googlegroups.com.
> To post to this group, send email to connected-commu...@googlegroups.com.
> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/CAOX4-H5qmrgM0ssK8RhjXBt%2BXxxgThxhgYW4if7FDTBN1FOxdA%40mail.gmail.com.
> For more options, visit https://groups.google.com/d/optout.
>
> --
> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-h...@googlegroups.com.
> To post to this group, send email to connected-commu...@googlegroups.com.
> --
> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-h...@googlegroups.com.
> To post to this group, send email to connected-commu...@googlegroups.com.
> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/CAD3%3D5ZP%3DGCeqH0tkS8SQAdFTupicmqtocHrFf1t2BYTEYf4B2Q%40mail.gmail.com.

Jacob Martyr

unread,
Aug 10, 2016, 3:29:10 AM8/10/16
to connected-commu...@googlegroups.com
That makes sense, as I said earlier, I had it running previously, the problems started after I had to build a second one (an old dev board I had was damaged and output 5v into the logic of the original). But when I built the new one it had issues burning gate drivers and mosfets. It looked fine when testing with just a multimeter but after reading your initial posts I built a basic oscilloscope out of another dev board, output was erratic on the low side when viewed on the scope. So I think it was the situation you mentioned where the energy stored in the motor was being dumped back into vsupply via the mosfet reverse diode was causing the damage. I pulled it apart and found a buildup of flux residue under the adu7223 may have been preventing it making proper contact. I cleaned it all up and they appear to work correctly now when I feed in a PWM signal.

My plan to test it is to use low voltage supply and led lamp then supply a PWM signal to test each gate and driver individually to see if it can dim the led, turn it off and on etc. Would that be a reasonable way to test it?

> > >>> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
> > >>> To post to this group, send email to connected-community-hacke...@googlegroups.com.

> > >>> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/a1c97186-1286-4b87-bfad-1e346b82e99e%40googlegroups.com.
> > >>> For more options, visit https://groups.google.com/d/optout.
> > >>
> > >>
> > >> --
> > >> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> > >> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
> > >> To post to this group, send email to connected-community-hacke...@googlegroups.com.

> > >> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/2acf9e9f-b57c-42ab-9d96-77d872ec4007%40googlegroups.com.
> > >> For more options, visit https://groups.google.com/d/optout.
> > >
> >
> > --
> > You received this message because you are subscribed to a topic in the Google Groups "Connected Community HackerSpace" group.
> > To unsubscribe from this topic, visit https://groups.google.com/d/topic/connected-community-hackerspace/UYO1QZMMmbo/unsubscribe.
> > To unsubscribe from this group and all its topics, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
> > To post to this group, send an email to connected-community-hacke...@googlegroups.com.

> > To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/BC2F7A32-9118-46DE-8C78-CFC509B72673%40gmail.com.
> > For more options, visit https://groups.google.com/d/optout.
> >
> >
> > --
> > You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> > To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
> > To post to this group, send email to connected-community-hacke...@googlegroups.com.

> > To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/CAGG-JB-KXh9cJS%3D_Esr9x4SoDAWZE8s2tyB8%3DT_yJVC7BwuvRQ%40mail.gmail.com.
> > For more options, visit https://groups.google.com/d/optout.
>
> --
> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
> To post to this group, send an email to connected-community-hacke...@googlegroups.com.

> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/D7282D02-8950-47A3-902F-B4B62A9EADCA%40gmail.com.
> For more options, visit https://groups.google.com/d/optout.
>
>
> --
> You received this message because you are subscribed to a topic in the Google Groups "Connected Community HackerSpace" group.
> To unsubscribe from this topic, visit https://groups.google.com/d/topic/connected-community-hackerspace/UYO1QZMMmbo/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
> To post to this group, send email to connected-community-hacke...@googlegroups.com.

> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/CAPh9M%2BF6BEU%3Dg-K5TxwfcWc8xU2Pz04mrErDWHZwUttyL7gqNA%40mail.gmail.com.
>
> For more options, visit https://groups.google.com/d/optout.
>
>
> --
> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
> To post to this group, send email to connected-community-hacke...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to a topic in the Google Groups "Connected Community HackerSpace" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/connected-community-hackerspace/UYO1QZMMmbo/unsubscribe.
To unsubscribe from this group and all its topics, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
To post to this group, send an email to connected-community-hacke...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/5EF3ABC8-8E79-4CFB-8736-AF764772EDC6%40gmail.com.

Clifford Heath

unread,
Aug 10, 2016, 3:48:04 AM8/10/16
to connected-commu...@googlegroups.com
On 10 Aug 2016, at 5:29 PM, Jacob Martyr <devel...@varanidcs.com.au> wrote:
> My plan to test it is to use low voltage supply and led lamp then supply a PWM signal to test each gate and driver individually to see if it can dim the led, turn it off and on etc. Would that be a reasonable way to test it?

Sounds fair. Use a power supply with current limiting, so
there's not enough energy to blow things up, until you
verify the logic.

However, give serious thought to that inverter between
the driver inputs. It'll guarantee only one at a time,
regardless of the software state.
> > > >>> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-h...@googlegroups.com.
> > > >>> To post to this group, send email to connected-commu...@googlegroups.com.
> > > >>> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/a1c97186-1286-4b87-bfad-1e346b82e99e%40googlegroups.com.
> > > >>> For more options, visit https://groups.google.com/d/optout.
> > > >>
> > > >>
> > > >> --
> > > >> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> > > >> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-h...@googlegroups.com.
> > > >> To post to this group, send email to connected-commu...@googlegroups.com.
> > > >> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/2acf9e9f-b57c-42ab-9d96-77d872ec4007%40googlegroups.com.
> > > >> For more options, visit https://groups.google.com/d/optout.
> > > >
> > >
> > > --
> > > You received this message because you are subscribed to a topic in the Google Groups "Connected Community HackerSpace" group.
> > > To unsubscribe from this topic, visit https://groups.google.com/d/topic/connected-community-hackerspace/UYO1QZMMmbo/unsubscribe.
> > > To unsubscribe from this group and all its topics, send an email to connected-community-h...@googlegroups.com.
> > > To post to this group, send an email to connected-commu...@googlegroups.com.
> > > To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/BC2F7A32-9118-46DE-8C78-CFC509B72673%40gmail.com.
> > > For more options, visit https://groups.google.com/d/optout.
> > >
> > >
> > > --
> > > You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> > > To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-h...@googlegroups.com.
> > > To post to this group, send email to connected-commu...@googlegroups.com.
> > > To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/CAGG-JB-KXh9cJS%3D_Esr9x4SoDAWZE8s2tyB8%3DT_yJVC7BwuvRQ%40mail.gmail.com.
> > > For more options, visit https://groups.google.com/d/optout.
> >
> > --
> > You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> > To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-h...@googlegroups.com.
> > To post to this group, send an email to connected-commu...@googlegroups.com.
> > To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/D7282D02-8950-47A3-902F-B4B62A9EADCA%40gmail.com.
> > For more options, visit https://groups.google.com/d/optout.
> >
> >
> > --
> > You received this message because you are subscribed to a topic in the Google Groups "Connected Community HackerSpace" group.
> > To unsubscribe from this topic, visit https://groups.google.com/d/topic/connected-community-hackerspace/UYO1QZMMmbo/unsubscribe.
> > To unsubscribe from this group and all its topics, send an email to connected-community-h...@googlegroups.com.
> > To post to this group, send email to connected-commu...@googlegroups.com.
> > To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/CAPh9M%2BF6BEU%3Dg-K5TxwfcWc8xU2Pz04mrErDWHZwUttyL7gqNA%40mail.gmail.com.
> >
> > For more options, visit https://groups.google.com/d/optout.
> >
> >
> > --
> > You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> > To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-h...@googlegroups.com.
> > To post to this group, send email to connected-commu...@googlegroups.com.
> > To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/CAGG-JB-3mUSgAfGtxPY6f6qhNH5vLGbgVYQHzQBxQWTcBrMATA%40mail.gmail.com.
> > For more options, visit https://groups.google.com/d/optout.
>
> --
> You received this message because you are subscribed to a topic in the Google Groups "Connected Community HackerSpace" group.
> To unsubscribe from this topic, visit https://groups.google.com/d/topic/connected-community-hackerspace/UYO1QZMMmbo/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to connected-community-h...@googlegroups.com.
> To post to this group, send an email to connected-commu...@googlegroups.com.
> --
> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-h...@googlegroups.com.
> To post to this group, send email to connected-commu...@googlegroups.com.
> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/CAGG-JB8uk-D5FZtWrNz435zJeuBxibNzRtwEnzXe6UYF4JcZnw%40mail.gmail.com.

Brett Downing

unread,
Aug 10, 2016, 6:28:54 AM8/10/16
to connected-commu...@googlegroups.com

Hi guys
Brett from Perth here,
I posted interest in up-specing vedder's ESC on his forum a while ago and got a few bites but had to focus on other things.
Jacob, have you posted your design efforts anywhere? There are no less than three developers hacking on the same problem right now.

The flyback from fet turn off is normally either handled by conservative turn off speed, or by the body diode (or external flyback diode) of the complimentary fet.
In IGBTs, the transistor doesn't reverse conduct so flyback diodes are critical.

Brett Downing

unread,
Aug 10, 2016, 6:44:44 AM8/10/16
to connected-commu...@googlegroups.com

Clifford, I suspect that that particular gate driver is for inverter controllers that twiddle the dead-time cycle to cycle.
There are some cases where switch-on takes so long that you need to dial the dead-time all the way into negative at the logic side to get a clean handover fet-to-fet. It's important when you're using MOSFETs and seriously need to limit flyback noise.
There are also the cheapo atmega8 ESCs that have no hardware protecting against shoot through. (I've cooked plenty of those because of it)

> > > >>> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
> > > >>> To post to this group, send email to connected-community-hacke...@googlegroups.com.

> > > >>> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/a1c97186-1286-4b87-bfad-1e346b82e99e%40googlegroups.com.
> > > >>> For more options, visit https://groups.google.com/d/optout.
> > > >>
> > > >>
> > > >> --
> > > >> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> > > >> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
> > > >> To post to this group, send email to connected-community-hacke...@googlegroups.com.

> > > >> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/2acf9e9f-b57c-42ab-9d96-77d872ec4007%40googlegroups.com.
> > > >> For more options, visit https://groups.google.com/d/optout.
> > > >
> > >
> > > --
> > > You received this message because you are subscribed to a topic in the Google Groups "Connected Community HackerSpace" group.
> > > To unsubscribe from this topic, visit https://groups.google.com/d/topic/connected-community-hackerspace/UYO1QZMMmbo/unsubscribe.
> > > To unsubscribe from this group and all its topics, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
> > > To post to this group, send an email to connected-community-hacke...@googlegroups.com.

> > > To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/BC2F7A32-9118-46DE-8C78-CFC509B72673%40gmail.com.
> > > For more options, visit https://groups.google.com/d/optout.
> > >
> > >
> > > --
> > > You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> > > To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
> > > To post to this group, send email to connected-community-hacke...@googlegroups.com.

> > > To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/CAGG-JB-KXh9cJS%3D_Esr9x4SoDAWZE8s2tyB8%3DT_yJVC7BwuvRQ%40mail.gmail.com.
> > > For more options, visit https://groups.google.com/d/optout.
> >
> > --
> > You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> > To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
> > To post to this group, send an email to connected-community-hacke...@googlegroups.com.

> > To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/D7282D02-8950-47A3-902F-B4B62A9EADCA%40gmail.com.
> > For more options, visit https://groups.google.com/d/optout.
> >
> >
> > --
> > You received this message because you are subscribed to a topic in the Google Groups "Connected Community HackerSpace" group.
> > To unsubscribe from this topic, visit https://groups.google.com/d/topic/connected-community-hackerspace/UYO1QZMMmbo/unsubscribe.
> > To unsubscribe from this group and all its topics, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
> > To post to this group, send email to connected-community-hacke...@googlegroups.com.

> > To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/CAPh9M%2BF6BEU%3Dg-K5TxwfcWc8xU2Pz04mrErDWHZwUttyL7gqNA%40mail.gmail.com.
> >
> > For more options, visit https://groups.google.com/d/optout.
> >
> >
> > --
> > You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> > To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
> > To post to this group, send email to connected-community-hacke...@googlegroups.com.

> > To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/CAGG-JB-3mUSgAfGtxPY6f6qhNH5vLGbgVYQHzQBxQWTcBrMATA%40mail.gmail.com.
> > For more options, visit https://groups.google.com/d/optout.
>
> --
> You received this message because you are subscribed to a topic in the Google Groups "Connected Community HackerSpace" group.
> To unsubscribe from this topic, visit https://groups.google.com/d/topic/connected-community-hackerspace/UYO1QZMMmbo/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
> To post to this group, send an email to connected-community-hacke...@googlegroups.com.

> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/5EF3ABC8-8E79-4CFB-8736-AF764772EDC6%40gmail.com.
> For more options, visit https://groups.google.com/d/optout.
>
>
> --
> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
> To post to this group, send email to connected-community-hacke...@googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
To post to this group, send an email to connected-community-hacke...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/E4318B25-77BA-4496-9951-3AB5FC617BF1%40gmail.com.

ja...@varanidcs.com.au

unread,
Aug 10, 2016, 6:56:25 AM8/10/16
to Connected Community HackerSpace
I post on the VESC forum and visit their IRC channel from time to time. He was about to release a new version with 3 high side current sensors, a different board layout and a 9 axis gyro. But Benjamin disappeared the week he was going to upload the files. Hopefully hes not sick or dead.

I would have been able to fit 3x ADUM7223 in place of the drv8302 on that new design with out changing much however it's now been 6 weeks since he posted on his website, no one seems to know him in person or if he is ok. I have also discovered another problem, it looks as though STM made a revision to their STM32F4 chips that breaks compatibility with the VESC firmware but there's not really any documentation for the firmware and with Benjamin missing it's difficult to find the issue.

Clifford Heath

unread,
Aug 10, 2016, 7:31:57 AM8/10/16
to connected-commu...@googlegroups.com
Brett,

Thanks for weighing in.

I hadn't read the data sheet for the DRV8302 before.
What a great project! I wouldn't be a little bit surprised
if Benjamin suddenly landed in hospital though - I saw
peaks above 1200W on his long-board ride.

There doesn't seem to be any reason you couldn't use
bigger FETs with the vedder design, as long as you
reduce the commutation rate to keep the average gate
current below the 30mA average, limited by the internal
charge pump. For example, with Jacob's FETs that
have a 46nC gate charge, you couldn't operate faster
than 100KHz.

The very nice HIP4081 dual half-bridge driver also
has a limited internal bootstrap charge pump, but the
data sheet shows the use of an external bootstrap
diode to rapidly recharge the high-side bootstrap
capacitor during the negative swing. Essentially it's
a diode from a (say) 12V rail (top end of the low-side
driver) to the top end of the bootstrap cap. When the
low FET is on, this diode rapidly charges the bootstrap
capacitor, enabling very high-speed operation even
with large FETs. The internal charge pump maintains
the bootstrap for 100% duty cycle. The result is that
you can run quite large FETs above 400KHz.

I can't see any good reason why this wouldn't work
with the DRV8302. Have you seen any DRV8302
schematic that uses diodes from GVDD to BST_A,
BST_B and BST_C? If it works, you could use much
larger FETs at a very high switching frequency.

Regarding dead-time, whatever is created in software
is augmented in Jacob's design by the diode in the FET
gates. In parallel with the 82R resistor, it creates about
0.5us asymmetry in the switch-on vs switch-off time.
As I said, I'd use 10R in series with the diode as well,
calibrating the 82R to the gate charge and dead-time
required, and use an inverter to drive VIB from VIA.

With these high-current drivers, is anyone actually
using FETs large enough to need negative dead-time?

Clifford Heath.
> --
> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-h...@googlegroups.com.
> To post to this group, send email to connected-commu...@googlegroups.com.
> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/CAGzEurwkDTA8SQtM867-DCF%3DRLBGaiFDQQeieDRrABqiY7JJtg%40mail.gmail.com.

Clifford Heath

unread,
Aug 10, 2016, 7:37:58 AM8/10/16
to connected-commu...@googlegroups.com

> Benjamin disappeared the week he was going to upload the files. Hopefully hes not sick or dead.
> it's now been 6 weeks since he posted on his website

He pushed to github 28 days ago, see
<https://github.com/vedderb?tab=activity>

Most of Europe goes on vacation in August,
so I wouldn't worry yet.

Clifford Heath

ja...@varanidcs.com.au

unread,
Aug 10, 2016, 8:20:33 AM8/10/16
to Connected Community HackerSpace

The DRV8302 is always a headache for some reason, people running the VESC controller report it exceeding the 30ma limit and destroying itself when FOC commutation is used. It also often fails around 50V leaving fairly limited voltage ranges. The main reason I replaced it in the first place was myself and many others want to use it for electric unicycles. At the moment the only controllers you can get are poor quality chinese designs. We even tried asking the manufacturers if we could pay them to design a better one but they aren't interested. Due to the nature of their large direct drive hub motors they require 60-90V to reach desired RPM. A few chinese manufacturers decided to try and make higher top speed models by reducing the number of turns in the motor windings which then either decreases torque to the point it falls over or their control board burns out due to the increased current required to keep it upright.

This is an example of a "good" electric unicycle controller used in products sold for more than $1000 USD. They all pretty much have the same issues, cheap 2 layer PCB with TO-220 package mosfets, long traces with cheap drivers and no real heatsink. The design appears to be partially based on an old 250w ebike controller with various additions. Usually they overheat so they add more cheap high RDSon mosfets  only to find switching losses are making too much heat so they then drop the switching speed ending up with a noisy and unreliable drive. I think one brand has resorted to 7khz or 9khz switching. On top of that they generally cannot be reconfigured, so each controller must match certain batches of motors if you assemble or repair it yourself.

 

Brett Downing

unread,
Aug 10, 2016, 8:21:27 AM8/10/16
to connected-commu...@googlegroups.com

Clifford, the major limitation people are redesigning for is the 60v limit of the DRV ic.
I need a 120v supply rail with 200A sustain; that looks like 300v survivability, and I need to put it in the hands of students, so that goes up to 500v.

I'll almost certainly use bootstrap diodes, and if I want to support Vedder's complete feature set, I'll need a secondary supply like the charge pump.

Designs like Jacob's asymmetrical gate drive can sometimes force a large enough dead time to hurt. (Mostly important in low noise applications; radio astronomy facilities for example)

I'm actually planning on using entirely separate high and low side gate drivers, they're available with much higher isolation voltages. So while I may not have hardware guarantees on non-overlap, it's something that merits thinking long and hard about.

> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
> To post to this group, send email to connected-community-hacke...@googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-hackerspace+unsubscribe@googlegroups.com.
To post to this group, send an email to connected-community-hacke...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/F6A5D1C8-0325-46E9-9D76-F53F7EB23036%40gmail.com.

Clifford Heath

unread,
Aug 10, 2016, 8:49:41 AM8/10/16
to connected-commu...@googlegroups.com
On 10 Aug 2016, at 10:21 PM, Brett Downing <brett.d...@gmail.com> wrote:
> Clifford, the major limitation people are redesigning for is the 60v limit of the DRV ic.
> I need a 120v supply rail with 200A sustain; that looks like 300v survivability, and I need to put it in the hands of students, so that goes up to 500v.

You want to put 24kW in the hands of students?
Brave man. Is this for electric racing cars?

> Designs like Jacob's asymmetrical gate drive can sometimes force a large enough dead time to hurt. (Mostly important in low noise applications; radio astronomy facilities for example)

Of course. You need to tune the dead time to the rest
of the circuit.

> I'm actually planning on using entirely separate high and low side gate drivers, they're available with much higher isolation voltages. So while I may not have hardware guarantees on non-overlap, it's something that merits thinking long and hard about.

I'd be very happy to hear any refinements to anything
I wrote earlier. It seems you have a good deal of practical
knowledge in the area, while I'm definitely still learning.

Clifford Heath.
> > To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-h...@googlegroups.com.
> > To post to this group, send email to connected-commu...@googlegroups.com.
> > To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/CAGzEurwkDTA8SQtM867-DCF%3DRLBGaiFDQQeieDRrABqiY7JJtg%40mail.gmail.com.
> > For more options, visit https://groups.google.com/d/optout.
>
> --
> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-h...@googlegroups.com.
> To post to this group, send an email to connected-commu...@googlegroups.com.
> --
> You received this message because you are subscribed to the Google Groups "Connected Community HackerSpace" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to connected-community-h...@googlegroups.com.
> To post to this group, send email to connected-commu...@googlegroups.com.
> To view this discussion on the web, visit https://groups.google.com/d/msgid/connected-community-hackerspace/CAGzEurzYmGRmNGOPZ2Ybtui%3D6_6cqVyv4%2Bp6s1MJHHRSVhky8w%40mail.gmail.com.
Reply all
Reply to author
Forward
0 new messages