Hotend temp control
-
Thread split out from the firmware priorities discussion
-
Thanks Tony.
David:
Can your proposed modelling deal with the various hot end combinations such as Aluminium/brass and Alu/SS being the two most common.? -
Aussiephil, what does your host software say the "steady state" heater power is keeping your hot end up to temp? Multiply that PWM duty cycle by your heater power and let us know what you get.
As for modeling, don't forget the time delay in the heater cartridge itself. That's the largest lag / dead time component. Generated heat has to get through the ceramic potting around the coil (slow) then through a steel jacket (not very fast) and then across what is primarily an air gap to get into the aluminum hot block (not very fast). A typical setscrew style cartridge clamp only gets line-contact between the hot block and heater. The E3Dv6 style split clamp is significantly better but I couldn't tell you whether it's three-line contact or what. Probably depends on the exact cartridge and bore diameter.
I have a special heater cartridge that contains an internal thermocouple, and in a setscrew-clamp style hotblock it consistently runs about 2.5C per watt higher temp than the hot block. That's 100C hotter during preheating. This is a non-negligible quantity of stored heat to consider in the model, if you really want to be accurate with the physics.
For practical purposes, the heat conductivity through the aluminum hot block itself is almost infinite compared to the cartridge-block interface and block-sensor interface.
-
, it would seem at this point that filament melt related losses start to rule the equation especially as you approach max flow rates.
The math doesn't support that.
Max flow rate of an E3Dv6 is about 12mm^3/sec.
ABS has a density of 1 g/cm^3, specific heat of 1.3 J/g-K
12/1000 = 0.012 g/sec
Say you're heating it up 200C just to make the numbers all nice:
0.0121.3200 = 3.12J/s, better known as a watt.
3.12watts go into actually melting it. I think you'll find the duty cycle of a 30w heater to be around 50% in those conditions, so about 1/5th of the available heat is being spent actually melting the filament.
-
Agreed w/ elmoret, although do the equations for 30mm/s^3 PLA through a Volcano, and it starts to be a pretty meaningful portion of the total.
For practical purposes, the way everybody in the community is handling melt power is:
- Average melt power requirement is dialed in by the PID integral term (along with air losses etc)
- Short-term variation in melt power requirement (eg accel/decel transient) is buffered by the heat capacity of the hot block (<1sec effects)
- The resulting small-scale temp changes, if they affect measured temp, are partially damped by the PID derivative term (1-3sec effects)
- Medium-term heat balance issues (eg due to infill/perimeter flow rate differences) are corrected by the PID integral term (3-20sec effects
This works very well for hot blocks with a large ratio of hot block heat capacity to filament melt power requirement. But I have seen quite a few people report control issues with very small hot ends and with Volcano type hot ends.
-
I was planning the predictive algorithm to include inputs and calibration factors for extrusion rate, and also for print cooling fan speed in case the cooling air blows on the heater block.
-
As for modeling, don't forget the time delay in the heater cartridge itself. That's the largest lag / dead time component. Generated heat has to get through the ceramic potting around the coil (slow) then through a steel jacket (not very fast) and then across what is primarily an air gap to get into the aluminum hot block (not very fast). A typical setscrew style cartridge clamp only gets line-contact between the hot block and heater. The E3Dv6 style split clamp is significantly better but I couldn't tell you whether it's three-line contact or what. Probably depends on the exact cartridge and bore diameter.
How about copper "grease" to eliminate/replace the air gap? I was thinking of this http://www.molyslip.co.uk/copaslip.php. It's primarily an anti seize product but has pretty good thermal conductivity and unlike "normal" thermal paste is good for up to 1,100 deg C.
-
How about copper "grease" to eliminate/replace the air gap? I was thinking of this http://www.molyslip.co.uk/copaslip.php. It's primarily an anti seize product but has pretty good thermal conductivity and unlike "normal" thermal paste is good for up to 1,100 deg C.
Might work but I wouldn't bet much on it. The datasheet says the base oil flash point is 243C, which means it will cook off over time and just leave the metal powder behind.
-
We used to use it a lot in a previous life on things like spark plug threads and between brake pads and calipers (not on the face of the pad of course), both of which get seriously hot. It worked well in situations where "normal" grease would burn off but admittedly as an anti seize compound, not specifically as a thermal transfer paste. When it was time to replace the spark plugs, if you looked at the threads when you removed them (which was easy as they didn't seize), they looked as if they were coated in copper. Maybe the base oil is just a carrier to get the metallic particles to where they are needed? I think I'll give it a go an a heater cartridge and see if it works. A simple test to check warm up time with and without should do it. Then see if the warm up time drops off in use.
-
I don't think warmup time will be super sensitive to the change, since the heater is outputting the same power and the hot block has the same heat capacity. Where you're likely to see a difference is in deadtime and overshoot.
Need to run it for a while to confirm whether the grease cooks out. I've tried thermal grease before and it was initially successful but eventually turned to powder and was worse than nothing.
-
Fairly redundant with the other document, but I found another little auto-tune "white paper" I wrote a couple years ago: https://docs.google.com/document/d/1NhgKmadb-GhqncekIlJEBUHKlc-PzJY42-hhr58QJ9I/edit?usp=sharing
This one has air-loss calibration and melt power auto-calibration.
(Yes, I've been trying to convince firmware devs to implement feed-forward temp control for years.)