Thermodynamics question - controller heat

MrDude_1

100 kW
Joined
Aug 17, 2012
Messages
1,016
Location
Charleston, SC
So I am trying to work out a math problem, but I have no Thermodynamics education other that what I have picked up here and there... Hopefully one of you engineers can help me out. Here’s what I am trying to solve:


I have a small ebike controller that can push 80amps, and then rolls back power as it heats up. In still air on the table, it stabilizes at 40a.
I am mounting it to a block of aluminum as a big heat sink. The controller bolts to this block, and then the block bolts to the aluminum case. The idea being the block will spread the heat from the controller out over a large area of the case. I have enough room to make a 3 inch by 4 inch block up to 2 inches thick. If possible, I would like the block large enough that it can keep the device at 80a capable for the entire battery run. We can assume I am running flat out all the time, with the only stops being for occasional intersections, and even then I am pulling away at full throttle.
The battery I have is 20ah (manufacturer rated) of 16s lipo, charged to 4.15 per cell (66.4v) and never discharged below 3.6.


So, I figure the simplest way to solve this is look at the wattage the controller is dumping as heat, and then see how long it would take to heat the block of aluminum, assuming it’s not losing any heat... so I was looking for some formulas. I decided to attack what I could.

Phase Wattage 80a - 40a
4736 - 2368 @ 3.7 * 16 (59.2)
5312 - 2656 @ 4.15 * 16 (66.4)

Let’s assume a worse case of controller is 80% efficient and always run at max voltage and full throttle.

So at the full 5312 watts of output, it may be making 1,062.4 watts of heat?
This seems oddly high, but things do get hot, so I'll go with it... now watts is an instantaneous unit of measure, I know I'll need time in there.

If I have a 20 amp hour battery, that means that pulling 80a from it (20/80=.25) so 15 minutes of time.

Now, at what temp does it start pulling power... I don’t know... but going off the "I don’t want my hand on it" amounts, I would say 180*F is pretty hot.
Going from 80*f (I live in a hot area) to 180f is a delta of 100 (if I am saying that right.

So my numbers would be 1,062.4 watts of heat for 15 mins to raise the temp 100*f

Looking online to try to find out what I need to know I found this:

from: http://farnam-custom.com/resources/engineer-talk/how-much-wattage-do-i-need/
Below are some good guidelines for heating different materials in different situations.

To calculate the wattage requirement to heat steel, use the following equation:

Watts = 0.05 x Lbs of Steel x ΔT (in °F) / Heat-Up Time (in hrs)

Example: To heat 50 lbs of steel by 250°F in 1 hour; .05 x 50 x 250 / 1 = 625 Watts. Using the same example, reaching temperature in 15 minutes (0.25 hrs); .05 x 50 x 250 / .25 = 2,500 Watts. This equation is suitable for mild and stainless steels. If you are heating a different material than steel, you can replace the 0.05 in the equation above with the following coefficients:

Brass: 0.053
Aluminum: 0.018
Copper: 0.056

Cool I figured I could find the weight of aluminum block that I would need, and then using its density I could figure out what thickness of a 3"x4" size I would need.

So plugging in my numbers I get:

1062 = .018 x Lbs of alum x (180-80) / .25

Using math I haven’t used since school I work out:

1062*.25=.018 x Lbs of alum x (180-80)
265.5 = .018 x Lbs of alum x 100
(265.5/.018)=Lbs of alum x 100
(265.5/.018)/100=Lbs of alum
147.50 = Lbs of alum


So 147.5lbs... will hit 180* by my controller in 15mins. Clearly I am an idiot that has no idea what I am doing.
So... can someone help me? Is my controller heating assumption too large? Or does air really cool that well? or is this what I should expect to have as a thermal heatsink that big?
Im limited in footprint to 3x4.. so at 1 inch thick thats 12 cubic inches of aluminum, or 1.176 pounds 2.352 if I go 2 inches thick.

Other than just saying screw the math and buying the largest block I can fit, is there any way to work this out?
 
Well, I don't know about the math part, but if you use a solid block of metal, it's only good for whatever heat it can soak up before thermal equilibrium with the device exhausting into it.


But if you give a *smaller* block lots and lots of surface area, with pins or fins or irregular surfaces, etc., and even a little airflow, you GREATLY increase the heat you can put thru it constantly.


There is a recent thread about controller cooling methods you might want to find and look at, for some ideas. (and there are also heatsink ideas/info in the hubmotor cooling methods / definitive tests thread)
 
well.. moving forward, I found the info I was looking for... looks like I need to keep the controller below 63*C (145*F)

justin_le said:
Is this peak or continues and does it feature smooth current cut back at high temperature?

Indeed there is onboard thermal rollback of the phase current as things heat up. Here's the graph from some of my testing on an earlier prototype unit, with tempreature probes on various parts of the controller innards. Measured battery current is the green graph on the bottom. Thermal rollback kicks in at just over 4 minutes when the controller is sitting still and the case and fets are around 80oC, and then once we put a fan nearby to simulate more realistic airflow then the temperatures start dropping immediately and the currents ramp right back up.

file.php
 
amberwolf said:
Well, I don't know about the math part, but if you use a solid block of metal, it's only good for whatever heat it can soak up before thermal equilibrium with the device exhausting into it.


But if you give a *smaller* block lots and lots of surface area, with pins or fins or irregular surfaces, etc., and even a little airflow, you GREATLY increase the heat you can put thru it constantly.

There is a recent thread about controller cooling methods you might want to find and look at, for some ideas. (and there are also heatsink ideas/info in the hubmotor cooling methods / definitive tests thread)

if you have a link to the controller cooling thread, I would love to read it.
also, how do you calculate the heat loss via air cooling?

The existing limit to that is vehicle design. Right now I have to get the heat from the controller to some thermal mass that will transfer that heat to the outside case (that is large and aluminum).
If I like how this all works out, I may make a new case out of carbon fiber (poor heat conductor, I know, however its easy to work with) but with the potted controller mounted on a finned heatsink OUTSIDE the case. or atleast air routed through that area of the case.
 
General discussion indicates a brushless motor controller would be around 98-99% efficient (they're pretty good).

If you're getting 80A for 15mins from your 16S battery (nominally 59.2V) that's 1184Wh. 2% of that is 23.7 Wh (94.7W of heating constant for 15 mins, which sound about right).

The specific heat capacity of aluminium is 910 J/kg K (910 joules to raise the temperature of 1kg of aluminium by 1 degree kelvin [=1 degree Celsius]).

1 joule is 1 W/s (1 watt for 1 second). 23.8 Wh is 1428J

If you need to keep the heat sink temperature below 63°C and you're starting at an ambient of 23°C then you have a 40-degree delta-T to play with.

1428 / 910 = 1.569 deg-K temp rise for a 1kg heatsink for a heat input of 1428J. You may have a 40 deg rise, so heatsink weight is 1kg / (40/1.569) = 1 / 25.5 = 0.039kg = 39g (a little more than an ounce), which isn't a lot (it's late so I could have made an error).
 
Heat in the controller is from a couple of sources, one is motor current squared times MosFET resistance at whatever temperature they are. The motor current travels through the FETs twice, so double the FET resistance for a 6 FET controller. Add to this motor current passing through the body diodes during the PWM off cycle which have a forward drop of a volt or more. That's harder to calculate since it changes with throttle and limiting by the controller. At high speed the back EMF drops the motor current way down, so the full current is only seen during acceleration peaks.

If you want to absorb a lot of heat use an ice bath or other material phase transition. Much better than a chunk of metal.
 
You really need surface area and air flow to dissipate the heat. One approach would be to make one side of your box with a piece of aluminum embedded in it. Controller can go inside, nice and dry, and bolt to the aluminum. On the outside, if there is a reasonable amount of air flow, you won't need fins. For more dissipation, a piece of finned heat sink could be attached to the outside.
 
Punx0r said:
1 joule is 1 W/s (1 watt for 1 second). 23.8 Wh is 1428J

23.8 watt-hours is 86400 joules, not 1428. Otherwise all your mass is correct, but taking this proper joule count into consideration you'd need 2.3 kg of aluminum mass to keep the heat rise within 40 degrees, rather than 39 grams. That illustrates how if you are doing sustained high power levels for more than a few minutes, the weight of your heatsink alone isn't going to keep things cool unless you have a pretty massive block. You're going to need good heat dissipation to the ambient airflow via a large exposed surface area.

Also, a quick back-of-the-envelope way to estimate controller heat generation is to look at the mosfet resistance, then do I^2 R with the phase current, then double it to account for it flowing through both high and low phase mosfets, and then double it again as an approximate fudge factor to account for switching losses and the increased mosfet resistance from the die being much hotter than ambient.

So if you have 80 amps through a 6 mosfet IRFB4110 (4mOhm) controller, I'd ballpark your heat generation is:

80A*80A*0.004Ohm*2*2 = 102 watts. Not far at all from the 95 watts you assumed in your above calculations using an arbitrary 98% efficiency figure.

-Justin

1428 / 910 = 1.569 deg-K temp rise for a 1kg heatsink for a heat input of 1428J. You may have a 40 deg rise, so heatsink weight is 1kg / (40/1.569) = 1 / 25.5 = 0.039kg = 39g (a little more than an ounce), which isn't a lot (it's late so I could have made an error).
Normally for an error of almost 2 orders of magnitude you'd hopefully notice something a little amiss in the results, even in a tired state. :p
 
MrDude_1 said:
if you have a link to the controller cooling thread, I would love to read it.
It should've been easy to find in the search with the terms given, but for those that can't:
http://www.endless-sphere.com/forums/viewtopic.php?f=3&t=70823
and the definitive test thread
http://www.endless-sphere.com/forums/viewtopic.php?f=2&t=48753
 
justin_le said:
1428 / 910 = 1.569 deg-K temp rise for a 1kg heatsink for a heat input of 1428J. You may have a 40 deg rise, so heatsink weight is 1kg / (40/1.569) = 1 / 25.5 = 0.039kg = 39g (a little more than an ounce), which isn't a lot (it's late so I could have made an error).
Normally for an error of almost 2 orders of magnitude you'd hopefully notice something a little amiss in the results, even in a tired state. :p

Yeah, it didn't seem right and undermined the point I was hoping to make - that dissipation not just storage is required if you want a sensibly-sized heatsink :oops:

Thanks for point out my mistake, it was pretty silly. For anyone following this, 23.8Wh x 60 = 1428 watt-MINUTES x 60 = 85680 watt-SECONDS (Joules). [some rounding on the 23.8Wh figure alters the final result a little].


This thread does touch on something of interest to myself as I plan to screw the mounting base on an "Infineon"/Xie chang controller to the interior of the aluminium side panel of my frame. I'm hoping/guessing there is an adequate thermal pathway from the fet-mounting bar to the case base?
 
Punx0r said:
I plan to screw the mounting base on an "Infineon"/Xie chang controller to the interior of the aluminium side panel of my frame. I'm hoping/guessing there is an adequate thermal pathway from the fet-mounting bar to the case base?
There is a pathway....but I don't know that it's "adequate", as that depends on how much heat it puts out and how well that will conduct out the side panel once it reaches it.

If you can keep the panel very cool then ti'll pull heat faster out of the controller, but only if there is a sufficient surface area to do that with.


Most of the controller cases I have here are not really flat on the large sides, and would need to be planed to fix that, before mounting to some other surface to pull heat from them.

If you have the option, you would be better off taking the whole case off, bending the FETs parallel with the board, and bolting the mounting/heat bar directly to your side panel, and then using plastic standoffs to bolt or secure the board to the panel so it doesnt' vibrate and break the FET legs.
 
Thanks for the input, that's what I was hoping to avoid, but may have to do. The side panel is very large and will be in the main airflow.
 
fechter said:
You really need surface area and air flow to dissipate the heat. One approach would be to make one side of your box with a piece of aluminum embedded in it. Controller can go inside, nice and dry, and bolt to the aluminum. On the outside, if there is a reasonable amount of air flow, you won't need fins. For more dissipation, a piece of finned heat sink could be attached to the outside.

This is what I am doing... I am building a scooter, and the entire "pan" under the board is aluminum. Its right there in the airflow, and will dissipate heat well, however it cannot spread and ransfeer a large concentrated amount quickly.
The idea with a large thermal mass directly on the controller will absorb the "spikes" of heat, and then let it spread out over a large area of the pan. This is also how the OEM controller worked, however it was much smaller and worked with 1/7th the peak power.
I think of it like a thermal flywheel of sorts.


justin_le said:
Punx0r said:
1 joule is 1 W/s (1 watt for 1 second). 23.8 Wh is 1428J

23.8 watt-hours is 86400 joules, not 1428. Otherwise all your mass is correct, but taking this proper joule count into consideration you'd need 2.3 kg of aluminum mass to keep the heat rise within 40 degrees, rather than 39 grams. That illustrates how if you are doing sustained high power levels for more than a few minutes, the weight of your heatsink alone isn't going to keep things cool unless you have a pretty massive block. You're going to need good heat dissipation to the ambient airflow via a large exposed surface area.
Thank you! I do have a nice large exposed surface area (the entire bottom and lower sides of the scooter). I mostly needed to see the mass for my mental sanity and comparison. The OEM scooter controller used a big block to absorb heat spikes, and let it all spread to the scooter pan over a larger area. Since your controller could have much more power, I know it should be a bit bigger to work the same.
I found a block lastnight that should work... If you excuse the inch measurements, my new block is 3"x4"x1.5" so 18 cubic inches. @ .098 a cubic inch, its 1.764 pounds... converted to kg so that doesnt drive everyone else here nuts, its .80kg...
So if a 2.3kg block would work in still air for the entire battery, then I am sure a cooled block that is 3.5 times smaller the size should work well... even if it had no airflow, I should get 4 mins runtime flat out.

Still... I should have been more clear about the final thing I was working out. Thinking about it more, its not that I need the block to absorb ALL the waste heat, its that I need the block to absorb the peaks that cant be spread out across the pan fast enough.

justin_le said:
Also, a quick back-of-the-envelope way to estimate controller heat generation is to look at the mosfet resistance, then do I^2 R with the phase current, then double it to account for it flowing through both high and low phase mosfets, and then double it again as an approximate fudge factor to account for switching losses and the increased mosfet resistance from the die being much hotter than ambient.

So if you have 80 amps through a 6 mosfet IRFB4110 (4mOhm) controller, I'd ballpark your heat generation is:

80A*80A*0.004Ohm*2*2 = 102 watts. Not far at all from the 95 watts you assumed in your above calculations using an arbitrary 98% efficiency figure.

-Justin
This is cool to know for sure. I really had no idea how I should be calculating it.

justin_le said:
1428 / 910 = 1.569 deg-K temp rise for a 1kg heatsink for a heat input of 1428J. You may have a 40 deg rise, so heatsink weight is 1kg / (40/1.569) = 1 / 25.5 = 0.039kg = 39g (a little more than an ounce), which isn't a lot (it's late so I could have made an error).
Normally for an error of almost 2 orders of magnitude you'd hopefully notice something a little amiss in the results, even in a tired state. :p
yeah.. uhh, I knew 39g would not be the right answer. 2 paperclips does not a heatsink make.


made_in_the_alps_legacy said:
don't rely on heat storage as a mean of cooling, a heat sink is expected to transfer heat, not to store heat.

here a link with what seems to be a calculation file to estimate convective heat transfer from which you should be able to calculate a heat sink area not to exceed a choosen temp

Thanks for the link!

amberwolf said:
MrDude_1 said:
if you have a link to the controller cooling thread, I would love to read it.
It should've been easy to find in the search with the terms given, but for those that can't:
http://www.endless-sphere.com/forums/viewtopic.php?f=3&t=70823
and the definitive test thread
http://www.endless-sphere.com/forums/viewtopic.php?f=2&t=48753

You would think so, and I am pretty handy with a PC... however the search terms are used so often in so many threads that it made it difficult for me to find. lol.
Thank you for linking me. I am learning a lot today.... apparently you guys have given me my first lesson in thermodynamics. :lol:


Punx0r said:
This thread does touch on something of interest to myself as I plan to screw the mounting base on an "Infineon"/Xie chang controller to the interior of the aluminium side panel of my frame. I'm hoping/guessing there is an adequate thermal pathway from the fet-mounting bar to the case base?
its.. uhh.. not great. I know that. I put it to a nice 1/4" heat spreader, and stuck that to the pan of my scooter. it worked much better than when it was just screwed to the thin, small case, even though it has fins and is in the airflow. Now... clearly I dont have the thermo knowlege to know exactly why, but I suspect its because the case is so thin around the one flat spot that it bolts to, that the heat does not move across to the rest of the case fast enough. You can see the pics of how I mounted it here: http://endless-sphere.com/forums/viewtopic.php?f=35&t=67812&start=25
 
Alan B said:
Often a copper plate is used as a heat spreader and aluminum as the heat radiator.

I looked at that. I would have... but a block of copper the size I was going to use was $50 and no one just has one sitting around.... but copper conducts heat better, so I could go thinner... and make it only $30 or so.

However tons of people make things out of aluminum, and have a bit of aluminum bar left over.... So I bought scrap for $5 plus a couple bucks to drop it in the mail to me. :lol:
 
There's blocks of copper in quite a few PC CPU heatsinks. In the Imac G5 flatscreen 17", for instance, is a block the length of my hand and at least 1/4" thick, at least a couple inches wide, that is part of an assembly for heat to spread from the CPU into a wind tunnel the fans suck air thru. There's another block about half that size elsewhere in it.

Some of the higher end PC PSUs have copper heatsinks too.

Lots of this stuff is scrap in junkyards and sitting in closets unused due to various failures and just it's age / speed.
 
Simply get some good fresh air flow over the controller, especially side where the screws are that attach the heat spreader bar that goes to the mosfets where most of the heat is created. That is likely to be enough. If not, then 2 other easy steps are:
1. Grind down the heat sink fins on the case near the heat spreader bar and polish it nice and flat. Get some better more hefty sinks and lap their flat side smooth and flat to mate to the case for more thermal mass and better surface area and fins where it's needed the most.
2. Use a small 2W 12V centrifugal fan to draw fresh air through the case, which increases the surface area for cooling of the case itself by including the side inside the case. It also draws cool fresh air over the controller board and components to cool them directly.

I've never done #1, but I have done #2 to controllers mounted out of direct airflow with good results. I did include some airflow blockage to direct the flow toward the mosfet rail and prevent the airflow from taking the easiest pathway through the controller, which increased the temperature of the air coming out of the controller enough to feel the difference with my hand. #2 does take to planning to ensure that water and debris don't make their way into the controller.

These days I simply plan my controller mounting locations to get good air flow over the case, and spend extra effort to ensure water can't get into the controllers. The only way I would do something different is once I build a frame with a dedicated battery and controller bay. Then I will include a nice size heat sink in an area with good air flow as part of the surface area of the controller bay, and then mount the bare controller inside the frame directly to that heat sink plate.
 
John in CR said:
Simply get some good fresh air flow over the controller, especially side where the screws are that attach the heat spreader bar that goes to the mosfets where most of the heat is created. That is likely to be enough. If not, then 2 other easy steps are:
1. Grind down the heat sink fins on the case near the heat spreader bar and polish it nice and flat. Get some better more hefty sinks and lap their flat side smooth and flat to mate to the case for more thermal mass and better surface area and fins where it's needed the most.
2. Use a small 2W 12V centrifugal fan to draw fresh air through the case, which increases the surface area for cooling of the case itself by including the side inside the case. It also draws cool fresh air over the controller board and components to cool them directly.

I've never done #1, but I have done #2 to controllers mounted out of direct airflow with good results. I did include some airflow blockage to direct the flow toward the mosfet rail and prevent the airflow from taking the easiest pathway through the controller, which increased the temperature of the air coming out of the controller enough to feel the difference with my hand. #2 does take to planning to ensure that water and debris don't make their way into the controller.

These days I simply plan my controller mounting locations to get good air flow over the case, and spend extra effort to ensure water can't get into the controllers. The only way I would do something different is once I build a frame with a dedicated battery and controller bay. Then I will include a nice size heat sink in an area with good air flow as part of the surface area of the controller bay, and then mount the bare controller inside the frame directly to that heat sink plate.

I know exactly what you mean with the normal extruded aluminum housings.. but not all controllers are like that:

file.php

file.php
 
Back
Top