Introduction: CNC Machining: Tips and Tricks
Machining for precision takes more than clicking some buttons: surprised?
Over the summer, I operated a CNC mill (tabletop MDX-40 by Roland) to create prototypes and testbeds for a medical device. It was a truly trial-and-error, learn-as-you-go experience since my mentor had gone on vacation, so I overcame my steep learning curve with marathon sessions of machining videos, in addition to learning what not to do, i.e. ruining little pieces and examining each situation for nuggets of wisdom (because what else are mistakes good for?). I had kept a comprehensive notebook on all this knowledge so while I was typing them up for my long-term use, I decided to turn them into an instructable for other people as well.
In machining for precision, I've learned that it's important to account for different manufacturing processes (burrs, direction of extrusion), fluctuating caliper readings, alignment dowels for flipping, and more. I'll also share quick tips on saving time without damaging the accuracy of cuts for your piece. This instructable assumes that you've never done CNC milling before, but for the most part it won't go over HOW to machine (because there are great tutorials already out there): just sharing tips and tricks to achieve better precision cuts. Warning: this is a very dense tutorial with lots of text, but I just wanted to include as much detail to make things clear. The titles of each step should be fairly descriptive, so you can easily choose to skip some steps if you'd like. I've also tried to bold the key details so they would stick out when you skim through.
These tips are not absolute rules to abide by: they're just suggestions from what I found helpful. Not all mills are created equal, but these tips are general enough to apply for most machining jobs. Please leave comments on other tips you've come across: I'm always open to learning more!
Step 1: What Is CNC Milling?
Milling is a subtractive process for fabrication in which you begin with a solid block of your stock material and cut away at it to reveal your final desired object. CNC stands for computerized numerical controlled, and together CNC milling defines a computer-controlled method in which you can model your object using specialized software and send it to a machine that cuts material according to automized toolpaths.
Milling uses similar looking "blades" as a drill, but whereas drills use drill bits, milling uses end mills. These are different in that for drilling, the drill bit moves up and down along the axis of the rotating tool, but in milling the end mill advances perpendicular to the axis of the rotating tool (so the cutting occurs mainly on the circumference and bottom end of the end mill). These end mills come in many flavors, which will be explained in step 11, or these links here and here (second is a lot of technical detail) are great resources too.
The actual entire mill comes in many flavors as well in order to handle different machining jobs. For example, there's the smaller tabletop one that I used (image above), but there's also industrial-sized behemoths. Different axis systems exist as well: the one I used supported translation in 3 axes so the end mill could be moved up and down in the Z axis and laterally in the XY plane too. Additional axes refer to rotational axes: 5 axis milling machines, for example, can be moved in the XYZ directions in addition to two rotary axes so that the end mill can approach the block of material from almost any direction. This is especially helpful for achieving better surface finishes since the tool can move tangentially on the surface.
The bare-bones workflow for milling: attach your stock material (can go from soft polypropylene to stainless steel and upwards, depending on your mill's power) to the mill's stage/work table using tape or dowels, use the mill to cut out your desired geometry, and carefully detach your finished piece. The next steps guide you through tips as you go along those generalized steps of machining, and finish with post-processing for machined metal parts.
Step 2: Before Milling: 3D Modeling
In order to get perfectly defined geometry from machining, it's important that you have a perfectly defined 3D model first. For example, there's something called chordal tolerance because models approximate circles with a large number of line segments rather than an actual curved arcs. This page here is a great resource on this issue. Commonly-used softwares include Inventor, Autodesk Fusion 360, Crea, SolidWorks, and Blender.
Once you have the perfect (or at least as perfect as you need) model, it's usually exported as an .stl or .obj or similar into a software that interfaces between your design and the milling machine. The particular driver depends on your particular mill, but for the one I used it was called Modela Player 4. Here's a link for a quick rundown of how this software (and similar programs) works.
Step 3: Setting Up the Mill [for Success]
When you're setting up your mill's sacrificial block (material that you place on the stage that you are fine with damaging in case you cut too deep and such) on the work table, try to use heavy plates/blocks to minimize vibrations in the system. For example, the MDX-40 that I used came with some hard plastic plate, but we replaced it with an aluminum block in order to increase the mass and thus minimize vibrations. This might interfere with over-cutting, which means you cut deeper than necessary to ensure that you fully cut the bottom out so you don't have to worry about cutting and filing away raw edges later. For over-cutting, you'd want your to-be-machined material to be the same as your sacrificial block's material, so since we used aluminum it'd be bad if we were cutting acrylic. For that reason, we also put an acrylic block on top as the final sacrificial block: the aluminum still minimizes vibrations, but the acrylic is the final sacrificed material.
Step 4: Design With Tolerances and Error in Mind
If your software provides a preview for the cuts you've programmed in, it's always a good idea to check them to see an estimate of your final product! For the Roland mill that I used, the Modela Player 4 software provided previews which you see in the blue images above. Just upload your .stl, program your planned cuts, and see how it would turn out so you can go back to redesign your model if needed.
In the first image of the Star Trek icon, I selected a ball end mill roughing in this specific cut, so you can see the raised grooves that the ball end leaves behind. Even a finishing step by the ball end will leave these stripes on flat surfaces, so be sure to finish up flat surfaces with a square end mill.
In the corners you can also see the there's a slight fillet instead of a fully sharp corner that the star trek emblem should have. That's because the end mill has a finite radius that can never fully resolve inside corners (exterior corners are fine -- see sixth picture above). Sharp vertical inside corners as shown in the sixth picture above can't be fully resolved since end mills will have some finite radius, no matter how small (1/32" end mills will make nice corners, but still not exactly sharp). If you have a piece designed to fit in a pocket like this, you'll have to fillet the edges of both this pocket cut and the piece that fits inside (plus, make the fillets of the pocket slightly smaller (~0.05mm) to oversize it--because smaller fillet means longer lines--and help the piece fit in). If your software doesn't have a preview option, you could just add fillets in your model with the radius of your prospective end mill in order to see an estimate.
Sometimes it's a good idea to scale up your project if you can spare the material and still meet your job's purpose. See the second and third images above: the second image has a larger end mill cutting out the design, so the valor Pokemon design isn't fully defined, but it'd take 1.5 hours. The third image uses a smaller end mill to finish up more of the finer details, but it would take about 3 hours -- you can see this trade-off between getting more details for the price of longer mill times (would wear out your end mill faster). If you scale up your design, bigger end mills can reach in and clear out more of the details, and faster (actually, slightly debatable but you can tell which side I'm on).
The fourth image showcases some machining marks left behind on your material. It shows off the difference between square and ball end mill, plus other things: just click on the picture and read the notes for more information (pretty long). The fifth image also points out an anomaly that you might see: weird marks at the edges of your material when surfacing.
Step 5: Designing for Best Alignment
When you have alignment dowel holes in your model in order for it to perfectly fit and align to another machined piece, you want the important features milled on the same surface as the alignment holes. This is because even flipping your material or changing end mill introduces possibilities of error, so it's safer to just use the same end mill (as much as possible) to mill out the alignment holes and important features in one go so you can be sure that they are correctly positioned relative to each other.
In the model pictured above, the four alignment holes are extruded on the top surface, but don't go all the way through since it's not necessary (dowels inserted from the top). The center circle is the "important feature", and it's an extruded cut from the bottom of the block. The second and third pictures (top and bottom of piece, respectively) show this better.
The problem with this design is that the alignment holes and the important feature are on opposite sides of the plate, which means that I'd need to flip the material over to mill out both. This flipping introduces error when I flip to do the other side, which is never good. Thus, I decided to make the four alignment holes through-hole cuts (see last image above): this way, I can mill the alignment holes and the center feature without flipping the piece. Making them through-hole wasn't necessary for the function of the piece, since it just needs to fit about 3mm of a dowel to connect to another plate with the same alignment holes, but it was necessary for the machining of the piece. This scenario (and other similar cases) demonstrates why you must design not only for the purpose, but for the manufacturing as well.
Step 6: Tabs and Dowels for Small And/or Thin Pieces
When you have thin pieces, the end mill's torque is more effective in potentially kicking off your material because it's lower and closer to the material's center of mass. Also for small objects, there's little adhesion keeping the bottom surface in place, raising the likelihood of the mill throwing the object off. Thus, it's important to design your piece with this in mind.
To address this concern, you have two main options: adding dowels to affix your material in place on the sacrificial block, or adding tabs to keep the object connected to the rest of your material.
Dowels go through your block of material and prevent it from moving laterally on the sacrificial block as the end mill cuts. They usually come in imperial units, at least in the US. They're a great, secure option but they're a bit more work: you need to mill holes (dowel diameter+0.01-0.03mm to make them slip fit, easier to push in) for them to go through your material in addition to corresponding holes on the sacrificial block aligning with those dowel holes. (more on how to do this in the next step)
I suggest the tabs option for thinner pieces, especially if you don't want to drill dowel holes and go through that process. You just add protrusions to your piece as shown in the second picture above. When you do your bounding box for roughing, don't fully select the entire protrusion: again, you don't want to fully cut them out. As you can see in the fourth image above, the tab isn't fully cut out so it connects the desired machined piece to the rest of the material. This adds extra adhered material to keep the piece in place.
Step 7: Flipping Your Material With Alignment Dowels
For flipping, you need dowels that go into the bottom of your material (i.e. top of material, before you flip, so that becomes the new bottom after flip) and also into the top of your sacrificial block.
IF YOUR ALIGNMENT HOLES ARE SYMMETRIC IN BOTH THE X AND Y AXES (so they're perfectly centered on your material, at the four corners or something similar): do the holes (dowel diameter+0.01-0.03mm to make them easier to push in) in your material first before removing it from the stage (be sure that all your features have been milled out on the block before you remove it!). Rezero your end mill to the top of the sacrificial block, and cut the exact same holes (MAKE SURE that the total depths of your holes will fit your dowel -- for example, if you program in 3mm cuts for both, you can only fit a 6mm long dowel, max. You can only use the exact same holes (so you can use the same .stl file) if your alignment holes are symmetric... (capital words at beginning of this paragraph).
If you have diagonal dowel holes like in the fourth image above, this is NOT symmetric in both X and Y axes. You'll need to FLIP the dowel holes that you mill on the acrylic (so the holes will be on the top RIGHT and bottom LEFT instead of the original top LEFT and bottom RIGHT). That's because flipping the piece for matching up the dowel holes essentially needs mirror images. The best way to avoid worrying about this is to make an .stl file of a rectangular block with the same XY origin (bottom left corner) and same dowel hole positions -- then you can use this model to do your dowel holes in both your material before flipping and in your sacrificial block. See the next step for how this works.
Step 8: Making a Guide for Dowel Holes
This guide for dowel holes makes it so that you don't need to worry about making mirror images for dowel holes that aren't symmetric in both X and Y axes as mentioned in the previous step. Essentially, you'd use this file for cutting the dowel holes in your sacrificial block (just use as imported, no need to flip vertically in Z direction), and for cutting the dowel holes in your actual material, DO flip vertically in Z direction since you're milling out holes on the bottom of the material.
In a new sketch, make a rectangle that's tangent to the object on all sides. In the same sketch, be sure to add the dowel holes in the correct positions (you can use the "convert entities" option to copy them into your sketch easily). Extrude that rectangle up to encompass all of your object -- taller is fine, as long as it covers all of your object. You should have a rectangle that has the exact same XY origin (bottom left corner -- VERY IMPORTANT because then you can keep the same origin) as your object. It should also have extruded cuts for the dowel holes, wherever they are. Save this as a separate .stl file that you'll use.
Just as a side note: be sure to change your material setting in the milling software when you mill this file, since sometimes your block material is aluminum but sacrificial block is acrylic (switch end mill if necessary too).
Now that your model (and guide, if needed) is finally done, let's grab your material and mill!
Step 9: Fluctuating Caliper Readings
You use calipers to measure the thickness of your stock material in order to surface it down to the correct height. For example, if my final shape is 5.4mm high, I'd probably use 1/4" thick material (I use mm in my models since the rest of the manufacturing world works with metric, but in US material is usually sold in imperial units) to give me some margin. Then I'd surface that material down to 5.4mm (so 1/4"-5.4mm is how deep I'd cut) BUT FIRST use calipers to get the actual thickness of your material (since even manufacturers supplying your material have tolerances of error).
Even with calipers, you'll get fluctuating caliper readings since some parts of the material might be thicker or thinner than other parts. Deciding on which reading to use is up to the accuracy your job requires: you can be conservative or go for the middle ground. I usually stay on the conservative side instead of surfacing down more and losing material (by conservative, I mean that I use the smallest reading to lose less material and thus have a bit excess). To do this, measure your material in both axes (X and Y) at multiple places and record the SMALLEST reading. Subtract your final height from this in order to get the depth that you should surface for a conservative machining job: your final height will be a little bigger than the desired dimensions, and you'll end up with a slight excess of material.
Step 10: Taping Material Onto Stage
Once you're finished with the calipers, it's time to tape the material to the sacrificial block. BUT BEFORE THAT:
If you have material that was cut down to the correct size (sometimes you buy 2' long material that won't fit in your mill so you cut it down to what you need only, like 5"), there will be some jagged burring at the cut edges. This burring might interfere with your tape's surface contact between the material and the milling stage (since they will slightly raise the edge) so you should use a file to get rid of them.
You can still use lightly damaged surfaces (see engraved surface in third image above) that you might otherwise throw away. This piece of acrylic happened to be engraved ~0.2mm down, but I knew that I would surface it down at least 0.5mm so the extra design would disappear later on. I avoid using materials damaged on both sides if I can't guarantee adequate adhesion with tape on either side. If I try to surface down my material, the tape might not hold it in place and the block might be kicked away by the end mill's torque.
As much as possible, apply tape all over the bottom surface for optimal adhesion. Use extra tape and cut off excess if needed! Also, try to keep your tape symmetricon the bottom surface so that your block won't be slightly slanted (see fifth image above for what I mean): remember than your tape has finite thickness too.
If possible, align your material's extrusion direction perpendicular to the X-axis. This applies for extruded materials like polyethylene and aluminum, but not for acrylic since that's usually casted. For the aluminum in the sixth picture above, the direction of extrusion is along the long axis of the rectangle (look closely the faint lines) so I put the long axis parallel to the Y axis. This is because I like to do the surfacing step in the X direction since the stage will be more stable (the stage only moves in Y so it has no freedom to move in X; if the end mill surfaces the block in X, there will be minimal vibrations and shifting of the stage), and variations in the material is generally perpendicular to the extrusion direction (warping like dog boning and bowing generally happens along the axis perpendicular to extrusion).
Once your material is arranged on the sacrificial block, PRESS IT DOWN. HARD. You want to maximize adhesion so jump up and down, do whatever it takes to provide more pressure on the tape (just don't jostle the stage and ruin your XY position). If your material is clear (think acrylic) you can actually see how well your tape is working: see the last image above. Dark parts are where the tape is actually sticking the acrylic block to the bottom material, and light spots are where tape isn't in full contact. It's fine if you can get all the corners fully adhered, but best if you can get the center adhered too.
Side note: if you need dowels, don't forget to push them in!
Step 11: Cutting Fluid, Goo Gone
Before cutting harder materials like aluminum (depends on your mill's power: some mills consider aluminum soft...), sometimes it's a good idea to apply a thin layer of cutting fluid. This provides lubrication for the mill to more easily chip away at the block, and it also acts as a cooling agent so that heat doesn't build up. Ironically, if you use a lot of fluid it can also lead to chip build-up, which traps heat close to where you're milling. That's one reason not to overuse cutting fluid: use soap to remove any excess (and remove it from the sacrificial block if it drips down, since as a lubricant it interferes with adhesion of the tape). In the image above, you can see that the use of cutting fluid caused the chips to clump up and trap heat around the milling location. This is usually not too big of a concern unless temperature rises up enough to shatter your end mill or material, which is very unlikely for small jobs like this.
Goo gone is used to remove sticky residue from your tape (mainly left behind when your end mill cuts too deep and hits the tape, tearing it up) on the sacrificial block or even your end mill. It's great to remove the residue, but be careful not to overdo it: if you put a lot of goo gone, it'll be harder to clean off, making it harder for tape to stick down in future applications. Hot water and soap are best for washing off goo gone, since it's organic, but in any case: always be sure that you wipe down the sacrificial block THOROUGHLY to remove all goo gone. If your subsequent pieces keep getting kicked off the mill since it isn't stuck down hard enough, it's possibly because there's goo gone residue (or dull end mill).
Step 12: Choosing Your End Mills
When you choose your end mills, you want to consider a lot of factors: time you can spare, how much precision the job requires, how dull your end mill might be, etc. See here for associated vocabulary of end mills.
Different brands indicate their specs differently, but they're generally listed on the end mill's plastic casing and on the website that you buy them from. In the first picture I have a 3/32" end mill. The first part, 3/32, indicates in inches the diameter of the end mill. The next part, 3/8, is the cutting depth in inches (how far up the flutes go so how far down you can cut). The last number 1-1/2 is the total length of the end mill in inches. The other end mills in the second and third images above have their specs listed out differently: I included what the specs correspond to for the second image, but I've forgotten what they are for the third image (1/32" end mill) so if anyone can lend some insight, please do! I couldn't find info online on how to read the tubes; I just know them from asking my mentor.
Knowing the specs of the end mills you might use, consider how far down you need to cut in your model. Some end mills can only cut so deep until there are no more flutes for cutting, so this may be a problem if you have deep holes. There are exceptions: when using the 1/8" end mill, for example, the cutting depth is 3/8" but the shaft is the same diameter as the fluted regions so you can continue cutting beyond 3/8" as long as you don't need to cut vertically and are only roughing down a surface. You can't do this for end mills whose fluted regions are smaller in diameter than the shaft because the program for the tool paths doesn't account for this, so the taper of your end mill might run into your material (since the program usually assumes the shaft's diameter is the same as the fluted region). This is also a problem when you are milling out tall objects: the taper and/or collet connected to your end mill might run into your material since the shaft is only so long. See the fourth image above for more info: when I was milling that block of polyethylene, I realized that I couldn't just rough completely down because the remaining material (tall parts that you see) might interfere and ram into the collet connecting to the shaft. Thus, I had to go back and drag my bounding box to encompass this excess material so that they would get roughed down also.
For harder materials than your typical plastic, you might want to consider using coated end mills (see last image above). Usually the coating might be titanium, but in any case the coating hardens the end mill to be more resilient and last longer while cutting those hard materials. They don't come without a heftier cost, though...
Once you've chosen end mills, let's attach them to the machine.
Step 13: TIghtening Collets Easily
Once you've chosen your end mill, it's time to put it in the collet and use wrenches to fasten them onto the machine.
Righty-tighty, lefty-loosy, right?
I don't know about you, but such a simple adage is pretty hard to keep straight when it comes to tightening the collet (the piece that you insert your end mill into before final attachment to the CNC mill). I just remember the position of the wrenches for tightening it:
The second image above has the wrench on the right on top of the wrench on the left. If you pull these wrenches in this position TOWARD EACH OTHER then that will tighten your collet onto the machine.
The third image above has the wrench on the left on top of the wrench on the right (swapped from before). If you pull these wrenches in this position TOWARD EACH OTHER then that will loosen your collet so that you can remove it from the machine.
With that headache over, time to program in the tool paths.
Step 14: Surfacing Vs. Roughing Vs Finishing Vs Drilling
When it comes to setting up tool paths of the mill, there are three main processes: surfacing, roughing, and finishing (and drilling is another, generally less-used option).
Surfacing refers to simply cutting down the surface of your material so that it's an even, flat plane relative to your end mill. This is usually used to get an even surface to better adhere your material to the stage or to get your material down to a target height. Surfacing your material before final adhesion for cutting is especially important for extruded materials such as aluminum and polyethylene. The block of aluminum in the second image above has a dog-boned cross-section from its extrusion process (you can see that when I ran a file across it, the scratches are at the outer edges so the edges are more raised than the center. Because the piece is dog-boned, it'll be hard to get good, full surface contact with tape and your milling stage when you attach the stock down for milling. When you surface one side of the material, it'll ensure an even surface so that when you adhere it to the stage with tape, it'll be in full contact for better adhesion so that the end mill's torque when cutting is less likely to kick the material off. Thus, you'd surface one side of the aluminum before flipping it over, taping the surfaced side, and continuing with your final milling job. Surface both sides of your material if you're concerned with having two near-perfectly parallel faces; I occasionally skipped this step to save time.
Roughing refers to cutting your material to get a rough outline of the desired shape that you uploaded into the software. It has a finishing margin (see first image above for specs) that varies with which end mill you use, so this step doesn't fully define your shape yet: just cuts away most of the material before the next step, finishing, comes and polishes over the material for a nice, well, finish. These processes usually have predefined feed rates and step sizes, but you can adjust them to save time if you'd like: more on this in the next step.
Step 15: Strategic Partial Cuts to Save Time, Pseudo-roughing
In general, you want to use the largest end mill that can fit into the crevices of your piece. This saves you lots of time compared to if you were to use a thinner end mill. However, sometimes your bigger end mills can't fully resolve all of your geometry (remember the finite radius of the end mill) so you would swap out that end mill (after completing roughing and finishing) for a thinner end mill that CAN resolve your geometry -- you just don't have to cut away as much of the material, just focus on the part that's not fully defined. I say that you should completely rough and finish with the bigger end mill too instead of roughing with the big one and finishing with the smaller one is because the finishing margin for the bigger end mill's roughing might be too much for your thinner end mill to handle: the software must underestimate how much material is left and cause the end mill to ram into that excess of material remaining.
Swapping end mills is a key to saving time also: consider the shape in the pictures above. It has grooves that are 1mm narrow, so only a 1/32" end mill can fit inside. However, if I were to use a 1/32" end mill to rough out the circular shape too, it would take many hours. That wouldn't be great for the end mill, since the vibrations and fatigue stress might cause the end mill to snap (*gasp*). Thus, you could use a bigger end mill to do the outside before using partial bounding boxes to select only the inside for roughing and finishing the grooves with the thinner end mill. For the bigger end mill, you can drag your bounding box to fit the entire shape: since the finer details can't fit the bigger end mill inside the grooves, the end mill will just trace the circle to cut out the shape. Then for the smaller bit, keep your bounding box inside the circle so that it won't retrace the circle (wastes time since it's already fully resolved).
Another way to save times is to do outline-only cuts. Sometimes you don't need to polish your surface with a finishing steps, and you only want to fully define the vertical walls. In this case, you'd select outline-only for your contour cut (see third image above). I believe this is an option only with finishing cuts, not roughing.
Another thing: roughing forces you to remove whole blocks of material when you might not need to (in the first image above, I only want a circle but a square chunk is removed too). If you won't want to waste time milling the excess material too, you can make a pseudo-roughing step by changing the parameters of a finishing step. Finishing steps only trace the material assuming a finishing margin (so most material is removed) so it won't do the square around the circle. Thus, you can program a finishing step but change the feed rate and cutting depth to match the parameters for a roughing step, plus add the finishing margin.THIS IS FOR EMERGENCIES: you don't want to do this all the time because the end mill will plunge down into the material instead of removing it gradually by tracing around a contour (finishing assumes there's little material there, but since this trick replaces a roughing step, there is full material where the end mill is cutting).
Step 16: Roughing: How Far Down to Go
When choosing how far down to go with the cutting (roughing and finishing steps), I usually set the starting height to -0.01mm because if you set it to just 0mm, the end mill will skim the surface, not really cutting. I also set the end height to final-0.01mm so that I technically don't surface all the way down. This is because I avoid damaging the sacrificial block as much as possible: if I mark it up all the time, the tape adhesion will be weakened since there are gashes and holes on the surface. Also, I might cut into the tape, and that will get sticky residue on my end mill -- not great for cutting.
Step 17: Going Against the Machine's Presets
Usually I go with the machine's preset feed rates and speeds for the tool paths, but they aren't always the best for the material in question. For the image above, I was machining polyethlyene and the chips built up on the end mill, interfering with its ability to cut well. With optimal feed rates, this effect would be minimized. If you don't have time to experiment, you can just stop the machine every so often to remove the chips, but that's tedious...
Also, you can increase your feed rates and cut depths to save time on your projects. It really depends on your machine's power and how your experimentation goes, but for plastics like polyethylene, I could increase feed rate and cut depth without any detrimental effects in the machining job. This is risky for your end mills, since increased cut depths are harsher on your end mill (more to cut each time), but I was able to cut down a job that usually took 8 hours down to 3 hours. For the polyethylene, I found that I could adjust roughing and finishing parameters: I'd increase cut depth by 25-50%, and feed rate by 25% (more didn't have a good finish). Do the increase in speeds incrementally -- don't jump to a 50% increase without confirming 10% and so on, since your end mill might not handle it well.
Next, before you can finally send the tool paths to the machine, you have to calibrate the positioning system.
Step 18: Zeroing in X, Y
With your material on the sacrificial block, the end mill now has to calibrate itself to know its position and thus where it should cut. To zero your end mill in the XY plane, you choose the spot on your material that will become your model's bottom left corner. This usually involves another software that allows you to move your end mill with up/down/left/right buttons on the computer screen (unless the mill has them built in, in which case use that).
When zeroing in XY, remember that the (0,0) point will technically be the center of the end mill, not the outer edges of the end mill's radius. You'll also likely want a little margin of error/excess material (so shift your end mill slightly north east of the bottom left corner) so that you don't need to worry about running out of material in the X and Y directions (since though the end mill assumes that your corner is perfectly perpendicular to its intrinsic XY axis, your material might be slanted so that the corner doesn't line up to that perfect XY axis).
When you have material that has a slanted corner, be careful with how you arrange it because your slant should not interfere with what your end mill thinks is the XY axis. What do I mean? -- see the second picture above. If you position the corner of your material like this, (I have black lines roughly outlining where a near-perfect rectangle would be arranged), the end mill assumes that there is material in the gap between the slanted edge and the horizontal black line (which marks what it assumes to be the X axis). However, there isn't material there, so if your model has any geometry in that region, it won't be machined because, you know, there isn't anything there to machine from. Now if you position your material like in the third picture above, there is excess material going past the assumed X axis, which is better than not having any material there.
NOTE: this zeroing in XY assumes that the top face is your final top face, meaning that you'll just surface, rough, and finish on this face downward (so no flipping because that would ruin your XY axis).
Step 19: Zeroing in Z
To zero in the Z axis, slowly lower your end mill until it's very close (~5mm) to your material, and insert a shim piece (I use 0.05mm -- thinner is better so you're closer to your material) under the end mill before continuing downward. Keep advancing downward and test the fit with the shim until you feel the end mill catching onto the shim. How far downward you go after touching the shim is subjective, but I usually go for a slightly snug fit (subjective... you get a feel for it with experience) before removing the shim and doing a spindle check.
For the spindle check, turn on the spindle and advance downward. Listen closely for the first signs of the end mill cutting into the material. Stop immediately after you hear that and go up one increment before setting that position to Z zero.
Check the four corners (or if there are other prominent corners, do all of them) and the center since these are the "problem areas" that are most likely to have fluctuating Z readings. Once you've checked all corners, use the LARGEST reading (so that'd be the highest point) to have a conservative machining job and end up with excess material rather than over cutting and cutting into your sacrificial block.
Once you've zeroed your origins, go ahead and cut!
Step 20: Emergency Stops or Premature Removal From Stage: Rezeroing
Your cut's been going well for half and hour when suddenly you hear the heart-wrenching sound of your end mill running into something and you run over to hit the big, red emergency stop button. NOOO....
When you do an emergency stop, your XY origin inevitably gets ruined. I've had the origin shifted by as much as 1.5mm in both directions, which matters more than you might intuitively think. Even if you rezero using the technique I'll describe below, you might have an error of roughly +/- 0.05mm (assuming your piece is fairly rectangular and perpendicular to the axes), which might not be a chance you're willing to take, in which case I'd suggest you start over. But if it's not too precise of a machining job that you're doing, read on:
To obtain the X zero position, do a spindle check with your end mill to the left of your machined piece (first image above). Once you hear the slight buzz of the end mill touching the object, stop the spindle and set that to X zero. HOWEVER you also need to subtract the radius of the end mill (not diameter!) in order to get the true X zero, since the center of the end mill is considered the origin. You will have some error, since you can't be sure that the spot you did the spindle check is exactly on your X axis (the edge could be slanted relative to the axis), but it's the best you can do.
To obtain the Y zero position, do a spindle check with your end mill in front of your machined piece (second image above). Once you hear the slight buzz of the end mill touching the object, stop the spindle and set that to Y zero. HOWEVER you also need to subtract the radius of the end mill (not diameter!) in order to get the true Y zero, since the center of the end mill is considered the origin.
Once you've done that, just set your Z origin as usual, and you should be good to go (though not as perfect as without emergency stop, but it's the best you can do, at least to my knowledge).
Step 21: Removing Objects From the Stage
Once your job is done, time to remove it from the machine and put it to good use. Since you've used lots of tape and plenty of pressure to ensure good adhesion between your material and the stage, it's quite difficult to remove it. Most people just use chisels to pry the two layers apart, but even this has a specific strategy:
When you remove objects, ALWAYS push your chisel/spatula/etc. along the axis perpendicular to the direction that your stage moves in. This is because the stage usually only allows movement in one direction (along Y axis for the MDX-40 I used) so if you apply pressure perpendicular to it, you won't push the stage along that free direction and possible shift your XY origin. You can see in the image above that I also tend to target the corners, since they're easier to pry up, but I still insert from the left or right (perpendicular to Y axis, remember) and push along the X axis.
Step 22: Post-processing: Polishing
When working with metals, sometimes machined finishing isn't good enough. That's when the Dremel knows that it's time to shine.
I have to admit to have little knowledge on polishing metals, but here's what worked for what I've tried so far:
I used a Dremel bit with steel wool, and this does a great job on making the dull aluminum color more clear and shiny. Also, I had better results (at least subjectively) when I polished in the direction of the metal's extrusion lines, since there were some smaller spaces that I couldn't reach with the bit and thus it looked natural to have all the faint lines in the same direction.
I also used something called Mothers polish. I just used a rag (microfiber is best) to rub some of that thick substance onto the metal, and it kind of oxidizes/turns black upon application for a few minutes. Then I used a cloth Dremel bit to wipe off the polish and buff the metal, and it turned out amazingly shiny -- all machined marks were gone, including the lines and scratches from the steel wool that I used earlier. It also made the aluminum piece softer -- it's hard to describe the feeling, but edges seemed more rounded off, and the surfaces were just... softer and more pleasant to touch.
And that's all I have for now. Hope I didn't scare you too much with all the text (you should check out my actual notebook... much more dense). If you have any more advice (or corrections -- critique my work), please comment below, as my learning is still very much in progress!