Waiting for a heatbed to get up to 85˚C for a relatively small part got me wondering why beds aren't hardware/G-code configurable for what area is heated? I'm sure it would be an increase in parts costs and electronics, but it seems that being able to just heat an area a little larger than the part(s) being built would save in time and energy use.
I've wondered that myself a while ago and fact is that such beds or silicone heating pads do exist. Usually these are quite large (and expensive) and usually referred to as "dual zone heat beds/pads".
As far as energy consumption; less area to heat is faster heat up times (depending on the control) and less energy consumed. For small prints this may be beneficial. The price of such beds are very high, so to break even you would have to print a lot. An alternative to buying would be to etch your own bed.
The heated bed is a reasonably good thermal conductor, so the difference in energy between heating all or 10% of the bed (assuming a 3x3 grid split 1 and 8) isn't going to be that significant.
In terms of heating speed, 200W across the whole bed will heat it faster than 40W applied to the centre square, and will also be less likely to cause warming or heat cycling effects (unless PSU regulation is a problem).
If the bed is much larger, or has thermally separated zones, then there might be some justification in the increased control complexity.
As an example, although glass has a thermal conductivity around 1% of a metal, it is still 30x better conducting than air. Conductivity towards the unheated areas of even a solid glass bed will roughly match the surface loss - so best case you would reduce losses to somewhere 20%-50% of what heating the whole bed might cost (assuming the same 3x3 grid).
As the etched version is very impressive (thanks 0scar for that), there are other possibilities to build zones on the bed:
- Using resistance wire;
- Using a etched bed with zones.
The challenge with zones is mainly down to:
- When and how to switch on/off particular zone;
- Temperature control needs to be added to every zone to avoid over/under heat in the particular zone.
This last point brings even more challenges as that requires a PWM channel and a temp sensor (per zone), so standard RAMPS need some extensions in the wiring. One could overcome that using custom G-Code to set on/off zones and a double temp sensor for the main zone to follow the temperature changes.
In detail: a dedicated Arduino with PWM outputs that will read the temperature from a secondary temperature sensor in the main zone and follows it.
It makes more sense to insulate "unused" areas, since the heat conduction goes with the surface area. Heating the plate at some place (instead allover the area) makes no big difference (aluminium is a very good heat conductor, this is already mentioned). But insulation will do. I would propose a downside full insulation (5-10 mm) and some "windows-shaped" square silicone (other thin material?) mats to cover the unused areas (mostly on the outer side of the bed) on the top side. Beware of collisions and auto-leveling algorithms (starting very often at corners). Side effect: you may reach much higher temperatures at the uncovered areas (might be doubled if covering half of the surface).