One of the first observations I made after successfully mounting my desktop was how compliant in torsion it was. This error motion was previously a source of concern — I decided to make fibreglass-reinforced nylon brackets because it turns out the 12-gauge steel framing brackets I was planning on using would have yielded at the corners under full design load. Some preliminary testing with 20 lbs of dead weights on the edge of the desktop showed that the brackets were significantly less stiff than I expected.
Error in Analysis
Going back through my error budget spreadsheet, I realized that I had made the mistake of using material properties for fiberglass instead of the composite material, resulting in my modulus being off by a couple of orders of magnitude. Looking back, this is really a juvenile error — the Markforged printers lay down continuous-fiber reinforcement instead of extruding chopped-fiber filled polymer, so the resulting part stiffness really depends on how much reinforcing fiber you put into your print and where you put them. I should have taken more time to do a sanity check when designing this part.
Fortunately, I managed to finish my desk about a week before the demo, so there will be time to fix this. Simply making the same part out of aluminum would give me all the stiffness I need and more. The easiest way to do this would be to reproduce the sandwich structure by stacking two aluminum angle sections to give the two parallel projections. However, I didn’t like the aesthetics of this design, so I decided to machine my replacement brackets out of some scrap aluminum stock I found at the Makerworkshop. This is obviously not the most efficient way to manufacture these parts, but they are going to be highly visible, and this desk is going to be a onesie, so I decided to do it anyway.
Last week, I finished building the two linear motion axes and tested them individually. See this post for more on the repeatability test. After some quick work contouring the desktop and drilling the bolt hole pattern, it was time to assemble the desk. To ensure a nice fit and absorb dimensional errors built up from previous manufacturing steps, I dry fitted the desktop to the brackets and cut the cross ties to fit. In the photos above, I am using angle plates and the cast iron bed of the table saw to keep the two linear motion axes parallel to each other and vertical. The measured cross tie length was 3 mm shorter than my designed length. I think this kind of cut-to-fit approach is very useful for building small runs of precision products as the in-situ cutting/grinding/scraping work is more economical than having to hold much tighter tolerances elsewhere to allow interchangeable parts. The final assembly process went smoothly.
One of the risks of using two parallel axes is jamming due to unsynchronized motion. I decided to synchronize the axes using the stepper controller instead of coupling the two drive systems mechanically. If significant racking occurs with the desktop installed, large forces could be applied to the bearings and drivetrain. I didn’t want to risk damaging components so close to wrapping up the project, so I did my initial axis synchronization test with a spirit level placed on top of the brackets without the desktop bolted in. As expected, I had no problem keeping the two axes synchronized with the CNC controller and keeping the brackets level throughout the range of motion.
Desktop Clearance Issue
The final step after verifying that my linear axes sync up successfully with each other is to install my desktop. Unfortunately, I found that the desktop is running on the outer surfaces of the keeper rails at some points along the travel, causing it to bind up. The reason for this is that I had started off with 4/4 beech boards, which were approximately 20 mm thick instead of the 18 mm board thickness I originally designed the desk for. This is not a critical dimension (exterior faces of boxway) and the problem can be easily remedied by skimming off the excess on the planer. However, this does mean I have to break down the assembly to do that. Lesson learnt: be more careful with tolerance stack-up analysis in future!