Saturday, July 22, 2017

UMMD 3D Printer Bed Design

After messing around with glass in my first printer and having the usual problems getting prints to stick, I did a lot of research and experimenting, and came to understand a few things about 3D printer beds.  Specifically, they should have the following characteristics:
  • the surface should be flat
  • the bed should be thermally conductive for even heating
  • the bed should have a surface that molten plastic likes to stick to
  • the bed should have adequate heater power so it heats up quickly
  • the bed should be mounted on a system that lets it tilt so it can be leveled
  • the support system should be physically stable so the bed doesn't require re-leveling
What I found works very well is cast aluminum tooling plate, on a 3 point leveling system, with a thin layer of PEI on the surface, and a heater that delivers at least 0.4 W/cm², and lastly, solid printer frame construction.

When I designed UMMD, I stayed with what works and used 8 mm thick MIC6 tooling plate.  It sits on a unique 3 point leveling system described below, has a 30 mil layer of PEI on the top surface, and a 750 W line powered heater on the underside.  The printer's frame is made of 40 x 40 mm t-slot extrusion.

If you live in the Milwaukee or Minneapolis area and you want cheap cast aluminum tooling plate, you're in luck.  The MIC6 bed plate material was purchased from the random rack at Howard Precision Metals in Milwaukee for $2 per lb.  The plate started out about 15" x 13.5" and cost $15.  I used a lot of other cast tooling plate throughout the printer since it is available so cheaply.

Thermal Expansion of Aluminum

Like almost everything, aluminum expands when heated, by about 24 𝜇m/m-K.  The 300 mm square print bed expands by about 0.576 mm when heated from 25°C to 105°C.  The leveling system has to allow for the expansion without creating lateral forces that may cause the bed to lift, drop, or bow.

Kinematic Leveling System

In my last printer, Son of MegaMax (SoM), I did a lot of testing, measuring, and experimentation with the leveling system.  That bed moves in the Y axis, and to ensure mechanical stability, I mounted it on three flat head screws that went through countersunk holes in the plate.  It worked OK, but it always bothered me that the leveling screws were anchored in fixed positions on a much cooler piece of aluminum than the bed plate.  The bed plate expands when heated, putting a lot of lateral force on the the screws.  This could lead to problems with the plate lifting or dropping or bowing.  After all the experimenting with new undercarriage designs, I came to the conclusion that it works OK as originally designed- there's enough margin in the build to accommodate the expansion.

In UMMD, the bed moves in the Z axis, so there's no need to worry about it getting thrown back and forth at print speed, so no need for screws to go through the plate to keep it under control.  I stole an idea from an optical table lens mount and adapted it to UMMD's bed support structure.  It is called a kinematic mount.

The whole bed plate is anchored to the support structure by springs that pull the plate down onto the leveling screw heads instead of pushing it up against the underside of the heads.  Two of the screws, the reference and pitch adjuster, are lined up along the X axis of the printer and the third, the roll adjuster, is located on the parallel edge of the bed.

The reference and pitch adjuster screws have spherical heads.  The reference adjuster sits in a chamfered (conical) hole in the plate.  The plate can't move in X or Y at the reference, but can rotate or swivel around the screw head and can only move in Z if the screw is turned.  The pitch adjuster sits in a chamfered X-parallel slot in the plate.  The plate can't move in the Y direction (which prevents rotation around the reference screw) but is free to expand in the X direction when heated.  Those two screws sitting in their hole and slot in the bed plate allow the bed to roll around the X axis and to expand without putting any lateral forces on the screws.  The roll adjuster is just a flat screw that touches the flat bottom side of the plate.  It controls the roll around the X axis while allowing the bed to expand in both X and Y.

The chamfers were made using countersink drill bits chucked in the milling machine.that I used to drill the hole and cut the slot in the bed plate.

Reference adjuster hole on underside of bed plate.  The chamfer was made using a counter-sink drill bit.

Pitch adjuster slot on underside of bed plate.  The chamfer was made using a counter sink drill bit on the milling machine.
The adjuster screws are anchored in Teflon blocks that grip the screws tightly and prevent wobble while ignoring the heat transferred to them from the bed plate through the screws.  The Teflon blocks are in turn screwed to a tee made from 40 x 40 mm t-slot extrusion.

The reference adjuster is just used to set the vertical height of the bed plate above the support structure and doesn't have to be adjusted when leveling the bed, so leveling the bed just requires two screw adjustments.  First, the pitch adjuster sets the bed's center line parallel to the X axis in the XZ plane, then the roll adjuster puts the plate parallel to the printer's XY plane (defined by the linear guides in the XY stage).  Changing the roll does not affect the pitch, so adjustment is quick and easy. 

The reference adjuster screw sitting in the chamfered hole in the bottom of the bed plate.
The pitch adjuster sitting in it's chamfered slot in the bottom of the bed plate.  The plate is free to expand in the X direction when heated.
The roll adjuster is just a flat screw contacting the flat underside of the bed plate.  The plate is free to expand in both X and Y without pushing against the screw.

The sturdy, well designed support structure, the solid construction of the Z axis, and the rigidity of the printer's frame ensure that the bed generally doesn't need to be re-leveled once set up.  Auto leveling is not needed.  I have driven this printer back and forth between home and the makerspace, laying on its back in my car, several times and have not had to readjust the bed leveling.

Bottom of the bed and support structure assembly.  The heater is a Keenovo 750 W line powered unit.

Thermal cut-off mounted on the edge of the print bed plate, protects against a failed SSR.  The TCO will open, cutting power to the bed plate heater, at 184C.  The body of the TCO is "hot" so it is wrapped in a layer of 5 mil kapton to electrically isolate it from the print bed plate.

Bed plate and support structure viewed from the top.  The brown color is due to the 30 mil (about 0.7 mm) thick PEI layer that is taped to the bed plate.  This assembly weighs 3.2 kg.
The heater is line powered and gets hot, so safety is essential.  Power is switched to the heater via an SSR that is driven by the controller board.  Accidents can happen, parts can fail, and things can get weird, so I put an electrical fuse in series with the power to the heater and mounted a thermal cutoff on the bed plate.  The electrical fuse will protect against fires and other unsafe conditions if wires come loose (of course, they are secured mechanically, too).  The thermal cutoff will protect against the controller going crazy or the SSR failing in a shorted state (that's how they fail!).  When the bed temperature gets to 184°C, the TCO will open and shut off power to the heater.  The TCO will allow the bed to be operated as high as 160°C without causing problems.  They are one-shot devices, so I bought a couple spares to store on the printer, just in case.

About the spring hold-downs...

Some people have pointed out that if a heavy print were offset from the center of the bed, near the back edge, it might cause the bed plate to tilt by stretching out the spring hold-down at the roll adjuster.  It's unlikely such a heavy print would end up near the back edge of the bed plate, but if one did it is theoretically possible to tilt the bed.  OTOH, if this sort of thing proves to be a problem, I can always put a stronger spring at the roll adjuster.  I haven't measured the mass required to tilt the bed that way with the current spring, but it is definitely more than a few kg, so I'm not worried about it.

Some people asked why I put the "ears" for the reference and pitch adjusters at the center of the bed instead of putting them off of the back edge.  I wanted the adjusters to be located as close as possible to the Z axis bearing blocks for maximum stability.


  1. I'm not sure what you mean by the Teflon blocks no being affected by the heat. Teflon has a much higher linear coefficient of thermal expansion than aluminum. It's about four times higher at 100um/m*K. However I don't this would affect the bed level so much as create a really tight interference fit.

    1. What I meant is that the Teflon blocks won't melt or deform at bed temperatures, so bed level settings will remain stable. This has proven to be the case in practice.

  2. How well is the bed grounded?

    it looks like your bed might move, so the grounding won't be the best through the bearings, make sure the bed is properly grounded.

    I don't want someone to copy the thermal cut out and have issues with the kapton which causes the bed to be live.

    1. The printer's frame is grounded to the power line ground lead, and the 24V supply negative connects to the frame. The bed plate gets grounded through the three springs that hold it down against the leveling screws (and through the bearings in the linear guide bearing blocks)- probably not up to UL standards, but it works. It would probably be best to run a dedicated ground wire to the bed plate - I'll look into adding one.

      The TCO is wrapped with 5 mil (0.005") thick Kapton tape to electrically isolate it from the bed. If someone were to crank the bolts on it down so tightly that the metal penetrated the kapton, the short would cause the bed power fuse to open.

      I am currently replacing the bed plate in SoM and have implemented a kinematic mount for it. I will be installing a TCO on it, but this time the TCO will be attached to the bed heater using high temperature silicone instead of being bolted to the plate. That way, if the heater adhesive lets go of the bed, the TCO will stay with the heater and still be able to do its job.


Leave comments or a questions here and I'll try to post a response as soon as I can, if I can figure out how to get it working...