Simple BLDC controller

Alan B said:
Congrats on a working board, Jeremy.

One feature of the RC ESC that I thing is a good idea is the "not starting until throttle is at zero" feature. Sounds like you are going to implement that. Also the "calibration of throttle range" to get the full range use of the throttle. Perhaps a smoother direction change would be a good idea as well so the rate of change would be moderated.

Thanks, Alan, I like that safety feature too. It's pretty easy to implement, as this controller can be completely controlled by three lines, an analogue throttle voltage from about 1.6V (zero throttle) to around 6.2V for full throttle (which could be direct PWM instead, at logic level, I think), a logic level output enable that shuts down the FET drives and a logic level motor direction line. If additional current sensing was required, then this can be pulled from the shunt, which gives 100mV for maximum current.

Interfacing this controller with a simple microcontroller seems easy and is probably the best way to get a really versatile controller. All sorts of features could be added fairly easily that way, without having to worry about any motor drive code. I sense another little task for one of my favourite little simple microcontrollers coming up.............

Jeremy
 
Jeremy Harris said:
The only snag with going for a SM version is the need to still use through hole parts like the capacitors and FETs, but it may be a pretty good idea for those who feel up to tackling a bit of SM soldering. I've just done a quick chip count, and I am reasonably sure that I could replace the MC33033 with 5 ordinary logic chips, at a total cost of around $2 to $3. You'd still need the driver chips, but this may be the way to go for those on a tight budget who don't want to go surface mount. I may build a really basic logic chip version just for kicks, as it seems to fit the 'back to basics' ethos of this little project. It wouldn't have the cycle-by-cycle limiting feature, but would pretty much do everything else.

If nothing else, building this has been a good learning experience. I'd never built anything like this before, or tackled the potentially iffy job of switching fairly high currents fairly quickly. So far I'm pretty pleased with the way it's going. One really nice thing is that I'm not having to second guess what the controller is doing, I know how it's working so should be able to fix it if I build it into a project and it ever goes wrong.

If anyone is interested in seeing how this controller reverses a motor on the fly, then I've just taken this little video that shows it switching direction at a modest speed. It's still a bit brutal, as the controller makes no attempt to slow the motor down before forcing it to go the other way, but would probably be ideal for driving a retro-direct gearbox: http://www.flickr.com/photos/22506359@N04/5261001192/

Jeremy

The MC33033 is only 2-3 bucks in volume anyway. I know most people won't be ordering them in volume, but If i had the choice of spending a couple extra bucks and soldering less components I would probably take that option.

The simplicity is what I love about it. Super easy to troubleshoot. I see this as a great tool for testing FETs if nothing else.
 
I just saw the video! So cool my friend! Congratulations!

I've got 10 of that same chip sitting here, and if I can get a free minute, I'm going to copy-cat you. :)

For something I personally use, I strongly abhor anything effecting/delaying the human/controller interface by delaying/skewing/retarding the throttle input. That soft-start "feature" is what made me throw away the first pair of highly modded 18fet infinion controllers when I realized it was in the programming and I couldn't change it. I could understand it being a feature if I were making something for my grandma to ride, but instant throttle response and instant full-torque should be one of the advantages over gasoline drive systems that electrics embrace the most, as it adds so much enjoyment to riding once the wrist is properly trained.

I guess all I'm saying is, make sure you layout the board so folks and simple jumper-out the throttle delay portion of the board if so desired. :)

Looks like it has very creamy smooth low RPM operation with good torque control at low speeds. Once again, great job my friend!

Best Wishes,
-Luke
 
liveforphysics said:
I just saw the video! So cool my friend! Congratulations!

I've got 10 of that same chip sitting here, and if I can get a free minute, I'm going to copy-cat you. :)

For something I personally use, I strongly abhor anything effecting/delaying the human/controller interface by delaying/skewing/retarding the throttle input. That soft-start "feature" is what made me throw away the first pair of highly modded 18fet infinion controllers when I realized it was in the programming and I couldn't change it. I could understand it being a feature if I were making something for my grandma to ride, but instant throttle response and instant full-torque should be one of the advantages over gasoline drive systems that electrics embrace the most, as it adds so much enjoyment to riding once the wrist is properly trained.

I guess all I'm saying is, make sure you layout the board so folks and simple jumper-out the throttle delay portion of the board if so desired. :)

Looks like it has very creamy smooth low RPM operation with good torque control at low speeds. Once again, great job my friend!

Best Wishes,
-Luke

Don't worry, I'm not adding any throttle delay! The throttle processor will simply use the throttle voltage to trigger the 'output enable' pin, it won't be processed in any way and will still be directly connected to the controller. What I intend to do is just intercept the throttle voltage and apply some simple rules to give a safety interlock, along the lines of 'if powered up with the throttle open then inhibit output until throttle closed and re-opened' and 'keep output enable low until throttle voltage reaches 1.6V, then enable outputs'.

If you copy-cat this before I get around to updating the schematic, remember that you need to add three inverters into the hi side outputs from the MC33033. There is another way of getting around this bizarre mix of active high and active low outputs, which means changing the FET driver chips from NCP5181s to IRS2184 drivers and cross connecting the hi and lo side outputs, i.e. connect the lo side from the MC33033 to the hi side input of the IRS2184 and the hi side output (with a pull up resistor) to the lo side input of the IRS2184. The forward/reverse pin will work in the opposite sense, but that shouldn't matter as the performance is identical in both directions. The pin out of the IRS2184 is the same as the NCP5181, but can't be directly swapped because of the need to swap the inputs over. Here's a link to the datasheet: http://www.irf.com/product-info/datasheets/data/irs2184.pdf

I may make another board with the IRS2184 drivers and swap all the spendy parts over, but it may take a while for me to get the chips, probably after the holiday I expect. If I do this then I'll incorporate a better way of ensuring startup on to the board, too.

Jeremy
 
Jeremy Harris said:
...
I've never had boards made, but if anyone has any advice on sending artwork out and getting boards fabbed up on a small scale I'd find it useful. There seem to be lots of choices, but getting decent service and good value would be the challenge.
...

I'll send you a pm.

Nick
 
Many thanks, Nick, much appreciated.

I've completely solved the start up problem, with no need for adding one of those pesky microcontroller things............ :) It's not exactly foolproof in terms of safety, but does work very well indeed. I've discovered that a standard Chinese Hall throttle works perfectly with this controller, literally plug and play. The offset voltage that these throttles have matches the 'dead spot' at the start of the controller voltage range so well that you could almost believe they were designed to work together, plus the full throttle output nicely takes the controller into full block commutation, for 100% power.

The fix for the start up problem was to add one 8 pin chip and two resistors. The chip is an LM311 comparator, that senses the throttle voltage. If the throttle voltage is below about 1.2V (it sits at around 1V) then the comparator holds the 'output enable' pin low. As soon as the throttle voltage reaches 1.2V, just below the point where the motor starts to move, the output enable pin goes high, kick starting the controller into life. Throttle response on the Hall throttle is outstanding, better that the XieChang and much, much better than the old Infineon. Your going to really love this, Luke!

I'm just modding the circuit board to accept the IRS2184 gate drivers and to add the LM311 to the output enable circuit; I've found that Farnell have the drivers in stock so I should get them by Thursday. I'm leaving the MC33039 constant speed circuit in place, with a disable switch, because, although it seems to work well to hold the motor speed constant, with massive torque increases and little change in motor rpm under load, it does seem to slug the response down. This may purely be a function of having this type of control, but some may not want it so adding a couple of pads for a disable/enable switch seems sensible. I can see someone into technical trials riding loving it, as it will allow the bike to trickle along with no change in throttle and deal with lumps and bumps. It may not suit those wanting to do the drag away from the lights stuff though. Making it switchable is easy, just two wires and a switch.

Jeremy
 
You're working up a storm Jeremy - nice work!

For anyone looking for low cost, low volume PCB's, I went with Gold Pheonix PCB for my controller PCBs. I got 17 PCBs (2 layer) made for 100$US bucks, and they all *look* great (but only tested 15%-20% of total surface area of the batch so far). Seems to be very good value per surface area, but you'll either have to have a big PCB to make, or get a few copies made to get to the 1000cm^2 (155sq inches) total area for the 2 layer special. You also have a list of optional extras like thicker copper (up to 6oz!!), colors, etc.

The best of luck with your project!
Pat
 
Thanks Pat, I'm really pleased with the way things have gone so far. I was a bit worried that the high current stuff would be tricky, but either through beginners luck or maybe the fact that this stuff isn't as critical as it may seem that bit worked OK right from the start.
Thanks for the tip about the PCB source, too. These boards are quite big, 6" x 3.6", so it won't take many to get up to a minimum area requirement.

Jeremy
 
On this side of the pond www.olimex.com (in Bulgaria) seems popular on many electrnics forums. I only bought a devboard from them so far but that went very smoth.
 
Congrats jeremy
Are you going to drive the ixys hyperfets with this bord?
 
pelle242 said:
On this side of the pond http://www.olimex.com (in Bulgaria) seems popular on many electrnics forums. I only bought a devboard from them so far but that went very smoth.

Thanks for the heads-up, I'll check them out.


Arlo1 said:
Congrats jeremy
Are you going to drive the ixys hyperfets with this bord?

I'm certainly going to try. This first board has the FETs on the board, but the plan is to make a second version with the driver connections on the edge, so they match up to three of the big Ixys modules directly. There's enough drive current for the relatively slow Ixys modules.

Jeremy
 
Another good supplier of boards is mylydia.com 2 layer boards are 12 cents/square inch if you buy 2000 square inches. $120 setup. They can do heavier copper. Gold Phoenix can do really heavy (6 oz) copper.
 
Jeremy Harris said:
I'm leaving the MC33039 constant speed circuit in place, with a disable switch, because, although it seems to work well to hold the motor speed constant, with massive torque increases and little change in motor rpm under load, it does seem to slug the response down.
How much response delay does it introduce? Less than half a second I can probably live with.

I never tried that part of the circuit on mine, as I just wanted it open-loop, not even realizing it'd actually be better with closed-loop, for my purposes. I could then basically ignore the wind changes as I ride around (frequent on my way to/from work, due to the multiple direction changes I make, especially on the >1/2mile spend on the Metro Parkway oval that curves from nearly due east thru due north to nearly due west by the time I get off of it).

BTW, if you want them, I can take pics of that MC3303x based controller, front and back, after my camera battery recharges.
 
Jeremy Harris said:
I've discovered that a standard Chinese Hall throttle works perfectly with this controller, literally plug and play.

Great that it works and all Jeremy but, hall throttle suck balls as far as quality goes, any chance you will get it
working with a pot throttle such as the Magura? This would be a deal breaker form me if it wouldnt work with a Magura
I refuse to use those cheap plastic hall throttles they feel like they should be on some cheap kids toy not an e-bike.

Hope the rest of the refinement process goes well anywayz Mr Jeremy :)

KiM
 
AussieJester said:
Jeremy Harris said:
I've discovered that a standard Chinese Hall throttle works perfectly with this controller, literally plug and play.

Great that it works and all Jeremy but, hall throttle suck balls as far as quality goes, any chance you will get it
working with a pot throttle such as the Magura? This would be a deal breaker form me if it wouldnt work with a Magura
I refuse to use those cheap plastic hall throttles they feel like they should be on some cheap kids toy not an e-bike.

Hope the rest of the refinement process goes well anywayz Mr Jeremy :)

KiM


I also have not found a hall sensor throttle that I feel comfortable trusting with my life.
Fortunately, it's just a few carefully selected resistors (and/or a zener or other diode) and you can make a magura throttle output the profile of a hall sensor.
 
AussieJester said:
Great that it works and all Jeremy but, hall throttle suck balls as far as quality goes, any chance you will get it
working with a pot throttle such as the Magura? This would be a deal breaker form me if it wouldnt work with a Magura
I refuse to use those cheap plastic hall throttles they feel like they should be on some cheap kids toy not an e-bike.

Hope the rest of the refinement process goes well anywayz Mr Jeremy :)

KiM

No worries, Kim, the video was shot with a 5k pot as the throttle, the same as the Magura. The only thing that would need to be added to make the feel better with the Magura would be a padding resistor at the lower end to get rid of the bit of dead movement at the start that it'd have otherwise.

You can substitute a Magura directly for any Hall throttle on any controller, BTW, the only issue being one of getting rid of excess travel at either end that doesn't do anything, but that's easy to fix with a resistor or two, or even by just undoing the screws on the throttle and moving the internal pot gear around slightly.

Jeremy
 
I made another PCB this morning, that includes the modifications I made to the Mk1 version to get it to work. This new board uses different FET drivers, IRS2184s, so that I've been able to dispense with the set of inverters on the high side drive. This has meant re-jigging the outputs from the controller chip, so that the lo side now feeds the hi side, and vice versa.

This has had the side effect of switching the commutation and PWM sides over, so now the PWM will be on the hi side and the commutation will be on the low side. I can't see any obvious reason why this shouldn't work as well as having them the other way around, but time will tell when I come to test it tomorrow.

Other changes include adding the comparator that I bodged on to the first prototype to switch the output enable line based on throttle setting.

If this works, then the final version that I'll build will be a board to directly drive the big Ixys half bridge modules I have, which should make for a controller capable of a few hundred amps at 100V, probably good enough for any motor I'm ever going to want to use.

Having seen the very fast, reverse on the fly, capability that this controller has, I'm quite keen to take a look at building a retro direct gearbox. Ultimately, I want to resurrect my Yamaha RD50 project bike, but make it much, much lighter than it was with the big brush motor and controller. I'm in two minds as to whether to use a single 7kW Colossus, or maybe two of them connected together on a common shaft. I have a feeling that a single motor, running at high voltage, with a 2 speed gearbox, might be OK; it'd certainly be easier to fit. I like the idea of being able to change ratio electronically, as it would be pretty straightforward to make the ratio change happen automatically, based on motor load. As soon as the current exceeds a given level at a given road speed, the system could automatically switch the motor direction to engage the lower ratio. Similarly, as road speed rises and current starts to decrease due to the easing of the torque load, the system could switch to the higher ratio.

Jeremy
 
Jeremy- Since those big IXYS modules certainly have the current over-head needed, you could wind each of the mini-colossus motors to be setup for ~40-45v, mount them on a common shaft (mechanically locked in-time), and run them in series from a single controller.
 
Jeremy Harris said:
Having seen the very fast, reverse on the fly, capability that this controller has, I'm quite keen to take a look at building a retro direct gearbox. Ultimately, I want to resurrect my Yamaha RD50 project bike, but make it much, much lighter than it was with the big brush motor and controller. I'm in two minds as to whether to use a single 7kW Colossus, or maybe two of them connected together on a common shaft. I have a feeling that a single motor, running at high voltage, with a 2 speed gearbox, might be OK; it'd certainly be easier to fit. I like the idea of being able to change ratio electronically, as it would be pretty straightforward to make the ratio change happen automatically, based on motor load. As soon as the current exceeds a given level at a given road speed, the system could automatically switch the motor direction to engage the lower ratio. Similarly, as road speed rises and current starts to decrease due to the easing of the torque load, the system could switch to the higher ratio.

Jeremy

That's awesome. Seems like quite a mechanical challenge to make happen. I keep saying that I think we'll look back at this time as the dark ages when we weren't using transmissions on electric drivetrain.

What is the PN for the IXYS modules you're talking about? I would like to lay something out with a couple of different FET footprints for flexibility. Thinking about making it a batchPCB kind of thing... What do you think? That way anyone could order them really cheaply if they wanted it.
 
liveforphysics said:
Jeremy- Since those big IXYS modules certainly have the current over-head needed, you could wind each of the mini-colossus motors to be setup for ~40-45v, mount them on a common shaft (mechanically locked in-time), and run them in series from a single controller.

That's pretty much what I'm thinking, it's like you've read my mind...............

I can get two of these motors (funny old thing, I happen to have two of them.....), connected end to end, with the drive coming from a toothed belt in the centre, to just fit inside the space on the frame where the airbox/tool box used to be. The gearbox, or maybe just an intermediate drive shaft, could be right at the back of the area where the engine/box used to sit, which would improve the chain line, by getting the drive sprocket closer to the swing arm pivot. It'd also open up loads of space in the frame for batteries. I could easily get 50 to 60Ah of LiPo in there at 14 to 15S, which would make for reasonable performance, I think, especially if I can keep the total bike weight down to it's original figure of about 90kg or maybe less.

For the Ixys version I need to work out the best way to fit the caps to the bus bars. Did you manage to find any low ESR screw fitting caps during your testing, by any chance? It'd be easier to use screw fit caps than have to faff about soldering radial lead caps.

Jeremy
 
Jeremy Harris said:
For the Ixys version I need to work out the best way to fit the caps to the bus bars. Did you manage to find any low ESR screw fitting caps during your testing, by any chance? It'd be easier to use screw fit caps than have to faff about soldering radial lead caps.

Jeremy

Yes, I bought about a hundred of them (all the ebay seller had) for just a few bucks each on a cap that digikey chargers $34/each. It requires making some bus systems to mount them though.
 
grindz145 said:
That's awesome. Seems like quite a mechanical challenge to make happen. I keep saying that I think we'll look back at this time as the dark ages when we weren't using transmissions on electric drivetrain.

What is the PN for the IXYS modules you're talking about? I would like to lay something out with a couple of different FET footprints for flexibility. Thinking about making it a batchPCB kind of thing... What do you think? That way anyone could order them really cheaply if they wanted it.

The Ixys FETs that LFP, Arlo, myself and a few others have are obsolete parts, I think. Ixys seem to have only ever put these into limited production - maybe demand wasn't great enough. The part number is VMM 650-01F. They are half bridge modules rated at 680A, 100V, with an Rdson of 1.8mohm. They have big bolt on tabs for the heavy current connections, so will bolt directly to big bus bars. I've attached a copy of the data sheet. They are as close as we are likely to get to FETs that we can't physically blow with the amount of energy we have available in an ebike battery; it's likely that even a fuse would be able to protect these FETs from damage.................

Jeremy

View attachment L401 Hiperfet.pdf
 
liveforphysics said:
Jeremy Harris said:
For the Ixys version I need to work out the best way to fit the caps to the bus bars. Did you manage to find any low ESR screw fitting caps during your testing, by any chance? It'd be easier to use screw fit caps than have to faff about soldering radial lead caps.

Jeremy

Yes, I bought about a hundred of them (all the ebay seller had) for just a few bucks each on a cap that digikey chargers $34/each. It requires making some bus systems to mount them though.

Do you happen to have the details, I can do some digging around this side of the pond to see if I can find some at a better price. I'd hope the bloody things were gold plated for $34 each..............

Jeremy
 
Jeremy,

I find it interesting that you actually can build a controller that may work better than a Chinese one. I admire your work, to bad I can't learn everything I want in detail. Do you think this controller can drive different mosfets? Since you want to use it at some very big mosfets? If so, this may be one really good controller for all the guys trying to get the rc motors going.

Ratking
 
Back
Top