Designing parts to fit perfectly together is hard. Whether it's the coarseness of our fabrication tools or that of the vendor selling us these parts, nothing is perfect. Engineering has cute word for it: tolerances. Maybe it's me: "I can drill that hole to 8 [mm] plus-or-minus 0.1[mm]" or some datasheet: "Thicknesses are plus-or-minus 0.05[in]." Either way, there's a penalty we pay by living in the real world, and that penalty is that none of our procedures (or even our measurement tools) are perfect.
Sometimes the tolerances very tight. For a dowel pin that needs to be press-fit into a hole drilled in aluminum, the difference in hole and dowel sizes is no more than 0.0005[in]! In other cases, they're pretty "meh--as long as there's a hole drilled in this metal tube, I should be able to string my kite cord through it and use it as a handle."
The laser cutter is a machine. It's supposed to produce parts repeatably and to a high enough degree of accuracy to satisfy my craving for mini plastic combat robot parts. I don't have any hard numbers for "good enough," but let's say that If I can nail the distance between two laser cut holes to within 0.005[in] repeatably, I'll be happy.
To design for a machine that's supposed to be precise and accurate, I'm using a trick that I discovered a couple years ago making smaller gantries: make parts with adustable set points. If the majority of my parts can be slid back-and-forth between a range of positions, one of which minimizes error, then I can just keep adjusting them until I'm satisfied. This design concept actually gives me a bit of "wiggle room," literally, in that I can machine/chop/3D-print parts, make a few mistakes, and still get a precise machine at the end of the day.
This idea isn't anything novel, and it's exactly why "alignment" of any metalworking machine is necessary before cutting parts out with it. What I'm doing is essentially pushing off the responsibility of holding tight tolerances off to my measurement equipment, which is far more accurate than any of my messy garage processes for making parts. Luckily, machinists have been operating under this idea too, so good-quality, measurement equipment is actually pretty widespread and, hence, affordable.
I'm almost certain that there's a name for this procedure; I just don't know it. For now, I'll call it "tunable design" since I can keep adjusting the positions of my parts and measuring them with my measuring tools until I'm satisfied.
This idea of "tunable design" shines in my belt tensioners. (I'm really happy with how well these turned out.) The Y-axis is driven with 2 open belts that are cut to length and then clamped to the moving axis with clamping plates. Since these are timing belts, the entire length of the belt can only be shortened/lengthened in discrete steps, about one belt tooth long. I could calculate the correct number of teeth needed to fix the belt in its final location on the gantry with the proper tension, but there are wayy too many other parts that will also need to measured and cut to exact lengths for the belt to truly fit correctly. Furthermore, the belt length might change ever-so-slightly with age, and my entire design is hosed if it can't accommodate for a belt that becomes marginally looser over time. Ok, it's "tunable design" to the rescue here!
Pulleys are installed in their own pulley blocks, but their final placement can be slid back and forth to accommodate for both the actual number of belt teeth and the amount of tension that I want to tighten them to. On these pulley blocks, I've affixed an aluminum plate to the back with threaded holes where I can install screws. Adjusting the tension is just a matter of rotating these screws from the back.
Now that my machine can be calibrated, it's starting to stray out of the world of hacks and into the world of engineering design! I'm pretty jazzed. Don't worry, though. There are plenty of hot-fix and hot-glue moments up ahead that'll keep this baby from being mass-produced and sold to the masses.