This is a walk through on building the Rino Route. A CNC router of my own design who's purpose was to be the cheapest possible option for a 4' x 8' DIY off the shelf CNC router table. At a final cost of ~$2500 I believe I have succeeded in my endeavors. Over the first year I added some features which as it stands today should put the price near $3000.

More so than a how to build my machine, this Instructable should serve as a good intro to anyone looking to build a CNC machine. I have provided as many links as possible to my materials but I have also tried to give as much information as I could as to how and why I came to choose those particular options as well as viable alternatives. I would be happy to answer any questions from anyone. Additionally I would be happy to share any part files but until I get organized and update this build, you will have to ask for them.

For this build I designed the router in SolidWorks from the ground up. Only the Z-axis was a complete product purchased from openbuids.com. I have almost a full shop and had access to my friend's machine shop for this build. He charged me a small shop fee for use of his milling machine and for welding the aluminum. Both of those things I can now do at no charge to my self.

Money saving factors.

1. Belts - instead of ball screws or rack and pinions I chose to use glass fiber reinforced drive belts

2. Labor - I did 'almost' everything my self

3. Softened the precision - the cost of any machine will rise exponentially with a linear increase it's ability to be precise

4. The Ebay/China Factor - I took a risk ordering most of my stuff from Ebay/China including the linear rails and the spindle. It's easy to get caught with a DOA from a company with no customer service. The only way around this is to diligently read reviews and in the case of technical items, never buy anything that does not have a technical drawing included in the product page.

5. 3D printing - I have a 3D printer and I used it everywhere I possibly could. The notables here are some spacers, the belt mounting points, which double as tensioning devices, and the idler pulleys.

Step 1: Determine the Limits of the X and Y Axis by Choosing Your Linear Rail.

Since I wanted a table with a working area of at least 4ft x 8 ft I decided that I should decide on a set of linear rails and build from there. In order to make sure you have enough movement to cut a board that is 48"x96"' you have to take into account the fact that your support structure, also know as the gantry, will have some width. For example, if the plate that your linear ball bearings are mounted to is 6 inches, then you need to add six inches to the rail.

I settled on SBR20 linear rails from ebay. The Y-axis pair at 2750mm (108 inch) for $309.70 and a pair for the X-axis which were 1500mm (59 in) long and cost $216.60. I did a lot of shopping to find these, but in the end I figured out that many companies will cut them to what ever length you want. I chose these lengths prior to knowing that, and I chose the length that gave me enough extra that I was not concerned about running out of room.

You can see in the photo above my gantry plate is 209mm (8.2 in) wide, since my x-axis rail is 1500mm (59 in) this leave me with 1291mm (50.8 in) of movement. Take this into account on all your axis'.

Step 2: Pick a Gantry Beam

After choosing the size of your build, the strength of your machine comes next. Remember, having picked a length and width has given you the ability to choose your linear rails, but until you know what the gantry beam looks like, you won't be able to create your table since you still don't have an exact width, unless you wing it. While I have been know to wing it now and again, I do not condone that action in the building of precision machinery.

Your first consideration in choosing a gantry is material. I knew I wanted aluminum before I sat down because it's lighter than steel. The gantry moves back and forth pushed by stepper motors (or servos) and the more it weighs the harder your motors will have to work.

I am lacking in strict engineering skills and while I think I could have done the math, the idea of figuring out how much force my motors could generate and then determine an amount of deflection seemed very daunting and time is money. Additionally the material you have access to are somewhat limited so for the amateur the best bet is to look at as many examples as you can find on the internet, read their thoughts and then compare that to what you have available in your area, or what you want to order from the net. Remember, this is the heavy stuff and shipping is expensive. Raw aluminum and steel should be available somewhere near you so do your due diligence.

An additional thing to take into consideration here is how your linear rails will attach to your beam. You could choose C-beam or and I-beam (2nd photo) and bolt through it or in my case I choose a tube. Having the closed back should be stronger against twisting. One concern with aluminum is that it's not as strong as steel at holding threads. I considered opening up holes big enough to put nuts on the back of the bolts but I decided that since I would not be bolting and unbolting the rails, drilling and tapping would be sufficient. For the ends of the gantry beam I did use a heli-coil kit, which can be seen in step 7.

We have a fantastic aluminum supplier here in Denver (as seen in the 1st photo - ALRECO) and I had much to choose from. Taking into consideration that my linear rails are 2 inches wide each, I decided on a rectangular tube of 2" x 6" with a 0.25" thickness. (3rd photo) I welded quarter inch plates to the ends in order to create a bolting surface. (4th photo) You can see the raw beam in the 5th photo.

Step 3: Design Your Gantry Supports.

We are still working top down to determine how far apart the linear rail is for the y-axis, or the long axis. The x-axis beam has been chosen and it's the exact length of my rails (1500mm). For simplicity sake I decided a nice thick flat plate would do the job. The only thing to take into consideration is how far apart to put the linear bearing. If they are too close then you loose strength and can introduce play into the system and if they are too far apart then you start to loose overall movement.

Since I designed the entire thing in Solid Works before starting to build, that gave me a plenty of time to play with options and see it as a whole. In the end I decided to make the bit lean out slightly in front of the gantry as seen in the 1st picture. Take a look at the second picture. On the right you will see a shifted gantry support that you might want to consider. This would allow you to work off the end of the table. I have seen a couple good examples of this on youtube and this would allow you to do some cool stuff. I have already had two opportunities where I could have taken advantage of this, one was making dovetail joints and another was insetting a door hinge. Here is an amazing video of a very creative example of this.

Your gantry supports also determine the amount of vertical movement your machine will have. I decided to purchase a 3rd party Z-axis which I will discuss a few steps down the road. It is 250mm (9 in) but the width of the spindle plate limits this to something closer to 200mm (7in). I decided to give my self 6 inches of clearance. This turned out to be a good idea because the z-axis was not as strong as I wanted and it would not have spanned a greater distance. I have already made a small improvement which I will address at the end and I plan a large upgrade this year that will take advantage of the full movement of the z-axis.

One last thing to take into account with your gantry is side to side strength. Take a look at the 3rd image. The left half is my gantry support and the beam and the right portion you will see some dashed lines representing some possible ribs. The inner one would possibly interfere with your work material in extreme cases. The larger region on the outside would do the same job, better, and would not reduce you work area. I considered this possibility but I decided for simplicity sake to just get a nice thick plate.

With the Gantry designed, or at least roughed out, we now have every piece of data we need to start designing the table.

Step 4: Designing the Table

I have included a picture of the type of Linear Rail I used in case you have a hard time seeing what is what in the second picture, which is a front view. The Width of the table is the Width of the gantry beam minus two widths of the Linear Rail. For me this number is 1400.3mm (55.11 in). You can build your table to a different length than your linear rail, which I touched on in the previous step, but I decided to match them up. This means my table is 2750mm x 1400mm.

With our overall size determined it's time to pick a material. Some CNC tables move rather than moving the Gantry. This is quite rare in large format tables. Since mine will not be moving and my goal is money saving, I chose steel. Also at the time I did not have the ability to weld aluminum in house so this was also a decision made to keep things simple.

Once again we have come to a place where it is possible to do a ton of math to pick the perfect amount of material to reduce flexing. Knowing that my table would be sitting on a wood stand with 2x6 runners. I looked up some basic flex numbers for common steel tube and decided that a relatively thin wall would suffice. I chose 14G. A side note here, I did not know this number off the top of my head but I would have guessed correctly, however when I checked my cad file I had spec'd out 11G. I thought that sounded very thick so I went to check to verify it was 14G. The second image above is the wrong, thicker, tubing.

Lengthwise I knew I wanted to double up and this actually made a nice surface for my belt drive, which I will show in a later step. For the lateral bars I played with a few number options and settled on 8. Having built some roof racks and a few platforms that people are able to stand on, I had no worries that this would hold up. With those things decided its just the simple act of drawing it up. See image #3.

Ok, enough planning.. let's make something. Time to fab up what we have so far.

Step 5: Build the Table and Stand

The cost of the 1" x 3" 14G rectangle tube was $243.32. My welder is a WeldPak 100 with a DIY Gas kit. The fabing here is relatively simple. The major challenge was getting precise cuts from an abrasive disc cut-off saw and finding a nice flat surface. The concrete I was working on has cracked and is not perfectly flat. But will a little shimming and a nice long level I was able to compensate and the end product was nice and Flat.

For the stand I just went for a simple wood frame on casters. At some point I will likely revisit it and add a shelf for the computer and other materials. The total cost of the stand was around $40.

Step 6: Attach the Y-axis Rails to the Steel Table

Since this tube was a relativly thin wall I had to bolt all the way through it and use a nut on the back side. This was very straight forward other than I had to move a couple bolts in order to avoid my cross beams. Remember to pay close attention to keeping your rail level/even with the table surface. The more clamps the better. One side of my table was just a bit low which is evident in the surfacing of the table and can be seen in one of the last steps. For the all the bolts on my linear rails I chose a button hex head to make sure they did not interfere with the movement of the linear bearings.

Step 7: Build the Gantry Beam

Originally my plan was to weld plugs in the end of the beam. You can see these two rectangles in the first picture of all the parts I had water jetted. This was mostly a cost saving device. I ensured the aluminum guys made a very precise and square cut because I was worried about my ability to do so if I needed to modify it. I took these to my buddy's machine shop. He informed me he did not think it was possible to do this and keep it strong and recommend I get two end caps, shorten the beam and then attach them. That meant using his shop to cut and square the ends which meant more money. He was giving me a fair rate but it was not free. He was right of course, I could see that immediately, so I got two end caps to match, and drilled and tapped them. We then shortened the beam and welded them on. One of these is shown in the 2nd picture.

The 3rd and 4th photos are a quick mock up I did to make sure everything was going to fit tight, sit level and plum. The attachment points for the gantry supports to the gantry beam would need to be very strong. Given the inherent weakness of aluminum for use in threads I opted to use a heli-coil kit which insured I could disassemble and reassemble the gantry with out fear of the threads getting worn out.

I mentioned before that I designed the entire router in CAD before but I am presenting this build and design in a more collated fashion. Here is a case where that breaks down. I have not yet addressed the x-axis gantry plate design but it was already done and I had it cut at the same time as my gantry supports. This was one of those times where I was super glad I did. In order to ensure that the spacing on the two rails being attached to my beam were perfect I bolted the rail bearings to the gantry plate and slid them on the rails while the holes were drilled and tapped. This ensured precise placement of the rails and a smooth operation of the X-axis.

The last picture is me squaring the ends of the X-axis rails. They were not cut to be perfectly identical so i used an angle grinder to get them as close as I could.

Step 8: Belts

It time to talk about my gantry plate design, but in order to do that I have to talk about belts. This whole project was the product of me having always wanted a CNC machine, my desire to build one, and the fact that I convinced my boss the company could justify the cost, which I stated I thought I could do for around $2500 in parts. He agreed to let me bid out the machine and see what was possible. When I started to shop for linear motion components it quickly became apparent that the drive options were going to be the driving factor in the design.

One thing you have to keep in mind is that you have two options for your Y-axis (the long one). You can have one drive element under your table in the center, and either move your table or have a second gantry beam under your table to attach to. You can have one drive element on the side but you will have to dramatically increase the strength of your gantry in order to handle the uneven load. Lastly, you can have a dual drive system. So your options are to dump a bunch of money into your gantry, or to double your drive cost. Here is an example of a center lead screw CNC machine. Notice that in order for the gantry to move back and forth the entire distance the table can only be supported on the ends instead of all the way around. This means your support structure must be that much stronger and more expensive. This if fine for a small machine but bigger machines start to have problems with this.

If you are not familiar with linear drive options they are as follows. Rack & Pinion (2nd Pic). Lead Screw with an anti-backlash nutblock (3rd pic), a ball screw (4th pic) and lastly belts (1st Pic). A ball screw is a more precise and lower friction version of the lead screw. When shopping for options I was immediately apparent that even finding a rack & pinion or lead screw in a 4' or 8' length was going to be difficult and the ones I found were very expensive. For example, at CNCRouterparts rack is $40/meter ($300 on my machine). The necessary accessories for Rack and pinon for my machine would have been $390. I spent ~$36 on 3 drive pulleys, $10 on 608 skate bearing and I 3D printed the rest of the parts. My Belt was $18/meter and I bought 8 meters so the total for my machine was $190

The Shapeko XXL is a good example of a small format machine with a dual belt drive. Notice how they only have one motor and run a shaft to the other side. Very smart.

Belts are rated by their pitch. This is the distance between ribs. Some examples of different belt profiles and pitches can be seen in the 5th pic. The larger the pitch the larger the minimum drive pulley size you can use. Given this I set out to try and find a good 3mm belt. I did a little bit of design with some of the specs and found that the most common belts were very narrow and I did not want to take any chances. OpenBuilds offers both GT2 and GT3 belts in 5 and 9mm widths. It's pretty easy to find GT3 belts in 15mm width but I wanted bigger. SDP/SI is another great place to shop for parts. Their website is top notch and you can see a ton of options in one place. 3M makes a very nice new GT3 belt in a wide format but it was incredibly hard to track down. The local 3M Belt drive distributor couldn't even get their hands on it even though I could find it in their catalog. I spent a long time pouring over charts of belts, their minimum drive pulley radius and power handling capabilities.

In the end I settled on an HTD5 belt with an 18 tooth pulley (the smallest possible for that belt), which meant that one turn of the pulley would move my gantry 90mm or 3.7in. A standard 200 step NEMA motor would yield a step resolution of .018 inches or 0.5mm. This is not acceptable for CNC. Fortunately Gear reduction is common in CNC, even on rack and pinion drives, it's not that expensive and I found a decent option that I will discuss later. With my belt chosen now it's time to design the drive components including the gantry plate.

Step 9: Belt Drive Design.

I have chosen to use belts, that belt and it's pulleys are also chosen. Now what to make it look like? There are two basic belt setups for the purposes of linear motion. The first is a mobile belt and fixed pulleys and the second is a fixed belt with the pulleys attached to the gantry where they move in concert. Take a look at the first photo for a quick illustration showing this. As I mentioned in the previous step the basic design was most likely influenced by the Shapeoko XXL which you can see in the 2nd picture. This is the fixed belt with moving motor model shown on the top of the 1st photo. I liked the idea of picking up the belt and then setting it back down and it melded well with the simple design I was seeking. Additionally i had a large flat surface on the top of my gantry beam that would do nicely for this, as is seen in the 3rd picture.

The idea is simple. Lay the belt across the length the beam attach it at the ends, the pulley on the stepper motor picks it up in the middle and two idler pulleys on both side keep the belt wrapped around the drive pulley for maximum grab. Given this the two possible options would be to have the stepper motor protrude towards the front or the back. Choosing front would cause and interferance with the z axis and would then require an offset. Given that I really like symmetry, I chose to the back as seen in the 4th pictures. After that it was just a simple operation of creating a gantry plate that laid against the rail bearings and provided mounts for the motor and the pulleys. This can be seen in the 5th picture in red.

A quick note about the idler pulleys. I designed and printed these my self using 608 skate bearings and the smallest possible radius allowed by the belt I chose. You can download the .STL here.

Step 10: Integrating the Belt Design Into the Y-axis

Using the same idea of laying the fixed belt flat against the frame and having the motor and pulleys attached to the gantry, Integrating was as simple as designing a plate to mount to the gantry plate. I mentioned earlier in the table step I doubled up the long rails and the second one made a perfect surface for running the belt over. I designed the plate to have allow for some movement of the component for the purposes of tensioning, added the holes to attach it to the gantry supports and modified the gantry supports to make room for the idler pulley bolts. This also aligned the motor vertically so as not to stick out from the machine.

*note The fourth pictures shows the pulleys out of alignment. This is because I am using the same assembly for my X and Y but the pulley is in a slightly different place for each. Aligning one, caused the other to become misaligned. In the interest of time and RAM I chose to ignore it.

Step 11: Affixing and Tensioning the Belts

I was surprised to find that the vast majority of belt clamps drilled right trough the belt. A nice space saving option and unless you make them out of metal you aren't going to have enough strength to pinch them with the bolts to the sides of the belt. I was trying to save money and printing them my self meant drilling through the belt.

The design is relatively simple. A top and bottom portion which bolts together by drilling through the belt. The nuts are held by insets in the clamp bottom. The clamped portion slides on two outer bolts shown in the 2nd and 3rd photos and that is adjusted by a tension bolt running through the center of both the top and bottom portion of the clamp. They are not currently shown, but I plan to remedy that shortly. The 4th photo highlight the center tension bolt holes and inset nut slots. These nuts are threaded onto the tension bolts. As the bolt turns it engages the threads on the nut and the nut moves further down the bolt pushing the the clamp away from the mount. In the 5th photo you can see a smaller nut inset in the clamp mount. This nut is smaller than the bolt and serves as a surface for the top bolt to press against. The aluminum face just below that is what the bottom bolt presses against.

In the interest of simplicity and repeat ability I opted to use the same part on every end of the belt. Looking back I think I over thought this a bit. One tension element is enough and my gantry plate remake will likely included a tensioner on the stepper motor instead of on the ends of the belt.

One last note. The more sleek looking aspect of this were due to the fact that I was relatively new to 3D cad at the time, I was trying to teach myself some new tricks and also reduce the amount of plastic in the model, there by reducing printing time. There are 6 of these assemblies on my machine. Remember when you print these to reduce the amount of empty space in your print, they need lots of internal strength.

Step 12: Finish the Gantry Supports

With everything designed I sent the files off to be water jet cut out of aluminum. Using the parts as patterns I drilled and tapped the holes in the bottom for the motor mount plate and in the top for the belt clamp mounts. The 4th photo is of the holes being inset so the bolts would not interfere with the belt clamps. Afterwards I bolted the plates on the bottom.

Step 13: Build the Gantry Plate

In the previous step you can see the picture of my parts cut on a water jet. I towed them down to my buddies shop and he welded them together for me. I now have the ability to weld aluminum and I am excited to remake this part because this was one of the biggest "learning" moments in the build.

Aluminum has tremendous amount of expansion and contraction when it goes from solid to liquid and back. It is super important to take this into account. My buddy had some very nice jigs for holding things at right angles but in the end it was not enough. In the 4th photo you can see a slit in the triangle piece that is not in 3rd picture. The contraction of metal closed that angle and the gantry plate pinched the belt against the gantry beam. I had to cut that slit to open it back up and then re-weld it. But even that did not work. It still sucked it back closed. I did not want to spend any more money in my friend shop so I made the decision to hack out a solution... literally.

The 6th photo is my solution. Using my drill press I manually hogged out the holes to become slots so I could slide the gantry plate up a bit on the bearings to release the belt. It was sloppy and I'm not proud of it but strangely it's still working.

Step 14: A Note on the Gantry Plate and Belt Tension

As you can see the top holes are all slotted. The top section is the motor mount and the angled slots are for the idler pulleys. On top of that I had belt tensioners on both sides of the belt. Based on my experience, it's not necessary to slot any of these. When I redo it I may slot the motor and put a tensioning element on it but the shape of the interface gives you very limited movement. The idler pulley slots were definitely a mistake and my next version will include supports for both sides of the bolt. Under tension the bolts pull back slightly leaving an uneven force on the belt. This pushed the belt to the outside of the pulley and it's slowly eating away the belt.

The humor here is that I ended up slotting the bottom holes manually, which I mentioned in the previous step, so every hole that is slotted didn't need to be and every slot that isn't now is.

Step 15: Assemble the Gantry

Bolt the slide bearings to the gantry plate. Slid the gantry plate and bearings onto the slide rails on the gantry beam. Bolt the slide bearing to the Gantry supports and slide the gantry supports on to the slide rails on the table. Bolt the gantry beam to the gantry supports.

Stand back and quietly giggle to your self that your project actually looks like something. Ignore the nagging voice in your head reminding you it's not even half way done yet.

Step 16: Design the Z Axis

If you are anything like me, at this point in the design process you are begging for a break. My brain was mush and it was time for someone else to do some work. My solution to this was to buy an axis. In my travel on the net as part of my research I was fortunate to have stumbled across OpenBuilds. OpenBuilds is an excellent resource of information on DIY CNC and offers a nice selection of parts specializing in a bunch of things to help you construct a machine of your own design. You can find all the technical drawings and CAD files to make integration into your design a dream. Their 250mm C-beam axis was just the thing I needed. The first two photos are the unboxing and the the last is the completed build. To see the thing built from the ground up you can view their video on their website or here.

In order to integrate the axis into my build I looked up the spacing of the grooves on the c-beam, and placed some evenly spaced holes on my gantry plate that lined up with these groves. The fourth picture is of the back of my gantry plate with hex head bolts through the holes securing the Z-axis to the plate. The last picture if of a T-nut. This is the attachment device used to secure aluminum extrusion beams with grooves.

Note. I did end up upgrading the axis. The plate on the axis has the wheels running along the inside of the rail and had hard plastic wheels. (6th pic) It was pretty obvious immediately that this was the weak link. For one, the axis was MUCH stronger on X movements but had quite a bit of slack in Y movements. This was apparent in the presence of chatter. I upgraded the plate to one that placed the wheels on the outside of the axis and upgraded the wheels to aluminum. (7th pic) This was a dramatic change. Previously, when I was cutting MDF, I was limited to 2mm depth cuts at a speed of 600mm/sec. After the upgraded the machine can cut a 5mm deep groove at 1100mm/sec. I intend to upgrade this axis again later this year in order to strengthen it further and to take advantage of the full amount of movement of this axis provides.

Step 17: Pick a Spindle

The first thing you need to consider when picking a spindle is what you are going to be doing, and what kind of material you plan to be cutting. The basic term we use to discuss what we are cutting and how fast is most often called "Feeds and Speeds". The basic idea here is that in order to keep your tooling sharp and to get nice clean cutting surfaces and edges you have to pay close attention to how deep a cut you are taking with the cutting surface of your tool. The faster your machine is moving the faster your bit will have to spin in order to take the same size cut. If your machine is moving too slow and your bit is spinning too fast, the blades will sweep past the material with out taking a cut or a very small cut and the friction will heat the bit and ruin the blades. This is never more obvious than when you are trying to cut plastic. If you are moving too slow or the blade is turning to fast the plastic will melt instead of cutting and it's obvious to watch. Here are some of the major considerations for choosing a spindle.

In a production environment you need a spindle that is going to run a LONG time without needing to be replaced or repaired. You will most likely be building a VERY strong machine in order to get a massive cutting speed from the machine. You will need a very beefy spindle that has the ability to run at a very high speed in order to keep up. The biggest spindles will run very hot and in order to mitigate this they will often have a water cooling ability. Additionally, the capability to repair, or send your spindle in for repair will be something to consider. The best will include a separate VFD (Variable Frequency Drive) controller and will cost between $2K and $10K.

If you intend to machine metal you will need a spindle that is capable of turning much slower without running out of power and this will require a more expensive spindle. After that you just need to find a happy medium between what you want and what you can afford. The first picture is a very cheap 600 watt spindle from china with a PWM (pulse width modification) power supply for computer speed control and a variable resister for manual speed control ($150-$200). The second is a standard dewalt router available at most hardware stores(~$150). (You might have noticed the Inventables.com mount. Inventables is another great resource for DIY CNC.) These are a good option for the average home CNC machine but often a standard hand router will not have the ability to change the RPM's. I highly recommend you have some way of changing the speed of your router. The third picture is a Mid level Chinese spindle with a VFD controller ($500 - $1500). The fourth pictures is of a mid-level UGRA spindle, arguably some of the best spindles available.

I chose the spindle pictured in the first picture. The biggest issue you need to consider when purchasing a Chinese spindle is the potential for a dead unit and not having any way to RMA your bad equipment. One way around this is to find a local supplier who has an inventory and is willing to warranty the equipment. Inventables is a good example of this. There are only two draw backs to this spindle. One is it's limited RPM speed. It will run at 13,000 RPM's which is sufficient for most jobs but when my Z-axis is fully upgraded my machine will be strong enough that I could probably make use of a spindle that is capable of twice that speed. The second drawback is it's a brush motor, and brushes wear out with time. It did come with a second set of brushes so I would not be surprised if if lasted another 4 years, and so far I would say it's very much worth the money.

Step 18: Integrate the Spindle in Your Design

My spindle included a mount. In order to get the mount to attach to the Z-axis plate I needed a separate adapter plate. It was also obvious the mount needed to be a little lower than the plate in order to guarantee that the spindle would sit low enough to reach down to the table. I designed a simple plate with matching holes and made another trip to my buddy's shop to machine it. I generated a technical drawing using my CAD file and took that with me and machined the party manually. The last picture is me face milling the thinner portion. The spindle mount bolts directly to the spindle plate, those 4 larger holes are tapped. The spindle plate mounts to the Z-axis plate using the 8 smaller holes. These bolts go through the spindle plate and thread into the Z-axis plate which is tapped.

Step 19: Mount the Spindle

This should be pretty self explanatory, this is just an opportunity to show these photos of the first time the spindle was mounted. I powered it up and manually pushed it through some OSB making grooves, as you can see. This was a very gratifying moment in the build.

Step 20: Choose Your Stepper Motors

This topic alone can take up an immense amount of your time. I highly recommend you do your research. Here is a quick run down on steppers at Adafruit. For my purposes I can only touch on a couple of things here.

The first thing I think I should mention is that stepper motors are not your only option, Servo Motors will also do the job. Servo motors will often provide information as to where they are which stepper motors do not. Separate devices that can provided this location data are called encoders. Feel free to google any of these terms as we will proceed under the assumption that stepper motors, the cheaper option, are your choice.

There are two primary variables to take into consideration when choosing a stepper motor. The first is the motor's turning strength or torque, usually measured in newton-meters. When shopping for stepper motors you will find that they are divided by size as prescribed by NEMA (National Electric Manufactures Association). You will find 8,11,14,16,17,23,24,34,42 sized motors with NEMA 23 being the most popular for this application. The larger the number the larger the motor is in width and strength. Each number also has subdivisions of strength as each one can be built longer.

The second primary variable is the number of steps the motor makes in one full rotation. Smaller motors will offer more steps and therefore more precision, but this is not possible as you get into stronger motors. The two most common options are 400 steps per revolution and 200 steps per revolution with 200 being, by far, the most common. This number is going to determine how far your machine will move per step, also known as step resolution. This is a very important concept which you should understand fully and includes the topic of micro-stepping. As you consider what option you want take into also remember the fact that electric motors have the most power at slower speeds and as they speed up they have a harder and harder time applying torque. It's going to take quite a bit of math to figure out how fast your motors need to turn in order to achieve your desired speeds as well as how accurate you can expect your machine to be.

I mentioned in previous steps that using belts was resulting in a low precision output of my machine, in order to compensate, I would need to gear down my stepper motors. There are some good options for gear boxes that attach to NEMA motors and I happened to find StepperOnline which offered multiple options for integrated gear boxes. They have a great website with the ability to compare large lists of motors and some good packages so you can buy your electronics in one spot. All of that convinced me to use them and based on my buying experience, I am happy I did.

In the end I looked at a lot of builds and then decided on a basic range of motor size that I assumed would be good enough for me. I did a little scanning of holding torques and assumed loads of certain cuts, but in the end I just picked something that looked like it would work based on the massive amount of DIY cnc machines out there. With a basic need established I searched among the available gear boxes and chose one with a motor in that range. This is the stepper I purchased. I would like to point out that the motors holding torque is 1.9Nm which then jumps to 7.2Nm when the gear box is attached.

Step 21: Choose Your Controller and Drivers

This is a pretty good run down on how stepper motors work. It's extremely advisable to become very familiar with these concepts, obviously. In the simplest terms the stepper motor has multiple windings that can energize sequential pieces of the the armature causing it to advance to the next step. It's a lot like a gears where magnetism causes the gear to advance by attracting the next tooth and repelling the previous. This energizing is done by pulses sent from a controller and then amplified by a device called the driver (3rd pic). I believe it is possible to drive a stepper motor straight from an Arduino or Pi board (don't quote me on that), but with out a separate amplifying device the current would overwhelm the controller and fry it. This is your primary factor in choosing your drivers. Your stepper motors are chosen based on how much force you will need to exert on your machine and work piece. This force will determine the amount of current needed to run your motors at max output and you will need to choose your driver to be able to deliver this amount of current at a voltage the motor is designed for. That is relatively simple.

The complex part is that there are a lot of configurations for controllers and drivers and you have to wade through them to get to something that fits what you want. At the top of the configuration is the controller. This will either be a computer or a Motion Controller. A motion controller is essentially a simpler computer designed to do only this one task. Rasperry Pi and Arduino (2nd pic) are very simple versions of a motion controller. They take the G-Code File and directly interpret it into movements of the motors. Most people will use a computer as the controller and will need what is called a Break Out Board (4th pic) to deliver the signals to the driver. Break out boards can be connected to the computer via parallel port, USB and Ethernet. USB and Ethernet boards are not as prevalent because parallel has dominated CNC for so long, but they are options. For an excellent place to see lots of options from a retailer in the US who will still answer the phone, has an internet support forum and will provide detailed user manuals with their products I highly recommend PMDX.

I chose a parallel break out board because I am not trying to re-invent the wheel and I knew I would be using Mach3, more on that later. There are Break out boards that have the drivers integrated (1st pic), which makes the build simpler, but if one thing were to fail then you have to replace the whole board instead of one component. For this reason I chose all separate components. In my research I had come across the M542 made by Leadshine many times so when my chosen retailer offered it the decision was easy. It had plenty of power in case I ever needed to upgrade my motors, it offered many options for Microstepping, and it was proven. I chose the break out board offered by the same retailer for simplicity but was confident because it's one of the only ones you find everywhere.

Step 22: Power Supplies and Wire and the Last Details

Now that the major physical components are designed and the major electrical components are chosen it's time to hammer out the final electronic details.

In the last step I discussed break out boards and my choice to use a parallel port break out board. This means you will need a PC with a parallel port. Parallel ports were largely phased out about the same time Windows XP became outdated. Part of my job is I.T. so I have lots of computers laying around. I found an old dell with a parallel port and installed Windows 7 on it. I also have an exact duplicate as a back up.

Your electronics will require power and this will come from power supplies. My steppers and drivers run on 36V. I purchased a 36V power supply in a package with my steppers and drivers. Just make sure you power supply meets the power requirements of your machine. They are very easy to find.

My break out board runs on 12V and I decided to integrate some cooling fans for my control box. I used some old 40mm computer case fans. These run off the 12V as well. As part of this I decided I wanted to have a fan speed controller. Given the simplicity of these I would recommend you find it on Ebay. I had not done an electronics project for some time and we had just built the electronics bench so I decided to take an afternoon, research a simple design and build it. It came out fine but unless you are in it for the fun of it, just buy this type of thing. Your spindle may or may not include a power supply so don't forget to include this in your design. Mine was included.

Safety is always a good idea and you will see that most CNC machines have an Emergency Stop button (E-Stop) and limit switches. The E-stop is a button you can hit to bring the machine to a immediate stop in the event of an emergency. As far as I know all software/controllers will require you to have one. It's a simple device and it just interrupts or complete an electronic circuit. The controller detects this and stops the machine. Limit switches do the same thing but instead of the user triggering the stop, the machine moving too far in any direction triggers the switch. These are simply mounted to your frame in a way that the switch is contacted before the machine runs out of room. I bought my E-Stop and limit switches off of ebay and while the E-Stop works great my cheap limit switches were a constant nuisance and I was forced to disable them until such time as I can full research and fix the problem.

Everything connects with Wire. You will need to run wire to all your components on the machine and outside the box. The wire will need to be a large enough gauge to carry the current as rated by your components. I chose some 4 conductor 14G speaker wire that we had laying around for the signal cables to my stepper motors, 2 conductor 20G for my limit switches and E-Stop, and an assortment of wire that I had laying around for the internals of my box.

Don't forget you will need power to your box. I bought I standard EC309 Power port (standard computer power cable) off of ebay to take advantage of the pile of power cords I have laying around. I also bought some 4 pin quick disconnect so that I could swap out the stepper motors with out cutting any wires if the need arose. I also purchased a wide around of colored shrink wrap in order to color code my wiring.

This is not needed but after some research I decided to include smoothing capacitors. Basically they act as a power reserve for heavy draw moments. For example if all your motors all needed max power in the same instant, it's possible for your voltage to drop to a point where your stepper motors do not have enough power to hold and they may slip a tooth. At this point your coordinates would be off and your part would be ruined. I found some online calculators for smoothing capacitors to determine how much capacitance I needed and then went to my local electronics re-cycler (now closed - RIP JB Saunders) and found the closest match. This turned out to be two 10,000 uF 100V capacitors. BIG CAPACITORS are DANGEROUS. Please know what you are doing.

My last little detail was the power switch. I had decommissioned a large pile of computers earlier that year and one was this ancient giant box that must have been a 286 or older. It had this massive power switch that reminded me of the first computer my dad brought home. It was big and red and had a wonderful action to it. I had saved it for something special and this was it.

Step 23: Design Your Electronic Schematic.

Here is a direct link to this image.

It is critical to be organized, especially when you get to the wiring phase. As such I decided to sit down and plan out this portion of the build to the utmost extent. Knowing that I would eventually get around to publishing this I decided to make this as usable as possible. The colors of the wires in this schematic match the actual color of the wires in my build.

I don't know how much I can say here. The schematic should answer most question and honestly building it your self will provide you with the most useful experience. When you go to build your control box you will find the build much much easier.

I will make one note and that is some break out boards provide a space for every limit switch. This break out board expects them all to be tied together in one chain. All of the them must be attached identically, either "normally closed" or "normally open" and then that setting can be chosen in your control software.

If you have any questions please ask.

Step 24: Get Organized

The Frame is complete and now you have a big pile of parts that your are ready to attach to it. It's time to get organized. I took everything I had and set it on my work space including all the tools I thought I would need. This is a great time to stare at your build for many hours until you remember that one thing you are forgetting. You are always forgetting something.

Step 25: Build Your Control Box 1/3

I decided to take it up a notch and get a little fancy with my control box. The box is built small enough to fit in a rack mount server case we had laying around. I put it on ball bearing drawer slides and made the top and ends with clear plexi so that everything is viewable. The next step will be finished photos to show this off.

The first step is to grab all your major components and test arrangements until you find something that works. My capacitors and my power supplies needed mounts so I designed and printed those. The stepper drivers, the spindle driver and the break out board had mounting tabs built into their chassis. Note, if you are using a metal box you should pay close attention to the grounding. Stepper drivers send something similar to an audio signal and it is susceptible to noise. Ground loops are the major source of noise. My box is wood and thus eliminates this concern. I should say I chose wood because it's what I had, the previous upshot was unintentional.

IMPORTANT: This is probably the last time you will have access to your drivers and thus is the last time you will have easy access to the dip switches that set the hold strength and the micro step settings. (shown in the last photo) I don't remember exactly what I chose in regards to micro stepping but I kept it pretty low. These drivers allow up to 25,600 steps per revolution but this is a misnomer. The ability to adhere to this precision is based entirely on the quality of your stepper motor and most motors will not be able to hold themselves in between steps no matter how nice your drivers are. I believe I chose 1/8 micro stepping which means for every one step in my motor (200) the driver would divide each step into 8 sub-steps effectively taking my resolution up to 1600 steps per revolution.

Once a basic layout of your major components is achieved a basic idea of the physical wiring layout is needed. My box has four different sets of voltages in it: 120V wall voltage including a earth ground, 36V power for the steppers and drivers, 12V for the Break out board and Fans, and a 5V power on signal from the break out boards to the drivers. I decided to use bus bars to create central points to deliver the voltage to their respective components. I mounted these buss bars on the walls and began the wiring. I wired the 120V first and ran it along the bottom. (anyone paying attention will see a relay in the photos that I realized was not needed because the break out board has a relay built in)

Once the 120V was run, I ran the 5 volt, then I ran the 12V then I ran the 36v. I included two fuses in this build, one for the 120V and one for 36V. The driver wiring can be a little confusing given that there are (typically) four wires and your motors may have different labels than your drivers. The 5V buss also took some analyzing since having all the +5V leads coming from the same place is counter intuitive and then that leaves you to decode the -PUL, -DIR, and -ENA. Fortunately for me everything worked on the first try.

Step 26: Build Your Box 2/3

With the internals now organized and wired it's time to finish the box by routing the external wiring out of the box. The front of my box had a fan, the power switch and the fan speed controller knob and the spindle speed knob poking through it. The rear had the parallel port, a fan, the power port, the wires for the steppers, limit switches and the stop switch. All the holes we cut with a dremel tool. For the wires I cut out a rectangle and 3D printed a detachable panel with holes in it so that I could yank all the wiring at once if the need arose. This can be seen in the last two pictures.

Step 27: Build Your Box 3/3 - the Finished Product.

See it in Action

As you can see in the pictures above I also included a bus bar for all my ins and outs. This enables me to both easily test my leads and I can remove the control box with out having to cut any wires. The box also locks to prevent tampering.

The 3rd picture shows that I used a bit of left over cable tray to accommodate the fact that the box slides in and out of it's case.

I also labeled everything since the top is clear. It makes for a nice show piece.

Step 28: Let's Run Some Wires 1/2 - Cable Trays

I mentioned earlier I had initially intended to print my cable tray (drag chain), but upon a few test prints is was immediately obvious that the internet was waaay cheaper. I chose two different sizes. A very big one for the Y-axis and medium one for the X-Axis. I custom designed mounts and supports for both. The blue bracket above is the support for the X-Axis. It's some what discolored due to an acetone test. The supports I printed for the Y-Axis (barely visible in the 4th photo) were weak and I kept snapping them off as I walked around the table. I opted to make them out of wood (6th photo) and have replaced them as they have broken. I should have done this from the start since they are many times stronger and faster to make. My big drag chain has little doors that open to allow you to lay the wire into the tray. I can not recommend this enough. I had to pull the wire into the medium chain and it was an incredible pain. It did not help that I was using wire that was many times bigger than what I needed and came with a very thick sheath.

The first three pictures are cable chain mounts. All my mounts and and supports were attached to the metal frame by drilling and tapping. The replacement wooden supports are screwed into the wood base.

Step 29: Let's Run Some Wires 2/3 - Limit Switches

Limit switches are separated into two categories. Home switches and limit switches. Home switches are located at the zero points, or minimum of your axis'. This is know as your home location, hence the name. Limit switches are located in such a way as to detect when your machine has reached the maximum distance away from home, they establish a limit in the movement of your machine, hence the name. Both home and limit switches establish a limit to the movement of your machine but home switches also detect when your machine has reached zero and then allow your controller to remember where home is. When you tell your controller to go to home it will move each axis one at a time until each home switch is triggered one by one, each time setting the axis to zero.

On my break out board the home and limit switches have individual places to tie to the board. Some break out boards will have a tie in for every switch. These switches can be run in parallel or in series. If they are in series then they need to be run through the "normally closed" pin. If they are run in parallel then use the "normally open" pin. Setting in your controlling software will have to be changed to reflect this.

About half of my limit switches needed brackets to attach them to the machine. I 3D printed these. The other half were attached directly to the machine by drilling and tapping holes. Both examples are seen in the above photos. All of my connections are soldered and then shrink wrapped with color coded tube. In the above pictures yellow is a limit and blue is a home.

*note. My switches were incredibly buggy. I think it was because they were very cheap. Vibration or static constantly set them off. It was impossible to walk away from the machine. They are currently disabled now that I am confident in the operation of my machine and no longer worried it will tear it's self apart.

Step 30: Let's Run Some Wire 3/3 - Motors

All of my stepper motors are connected with Molex 4 pin connectors to make them quick disconnect. All joints are soldered and shrink wrapped with color coded tubing to indicate the axis. The spindle is also connected via quick disconnects as shown.

Step 31: The Computer and Software

The brains of this whole operation is the computer. I decided to go the tried and true route of Mach3 software running on a machine with a parallel port. Mach3 is the most popular software for home DIY CNC because it has a wide user base and with that a large pool of knowledge to pool from. There is a newer version, Mach4, which is a complete rewrite from the ground up. It is designed to be splintered into sub-versions which will target the intended use, such as home or Industrial. The big difference is that it it has native support for USB or Ethernet connected machines, while Mach3 does not and requires plug-ins.

My CPU is an old Dell that initially came with Windows XP. I have an identical box for parts as shown in the photo. It's been a while but given that I have a stack of RAM I imagine I stuffed as much as would fit or I could find in the box and put Windows 7 on it. There was a little bit of trouble with the installation of Mach3 because it was written before Vista, but it installs in compatibility mode without too much trouble. There are drivers that will install with the software as well. The resulting installation will have 4 possible start up icons. The one you use will be based on the configuration of your machine. The vast majority of people will use Mach3Mill.

Step 32: Setup Your Machine in Mach3

Setting up Mach3 to work with your machine is a lengthy subject and there fore it's own tutorial. Here is a manual.Here is a video. There does not seem to be an instructable at this time which is a shame but I will run through the basics real quick.

DISCLAIMER. Do not expect it to be this easy or simple. It took my a couple days and a hundred tries to get everything working correctly.

  1. If prompted, choose the parallel port. If multiple options are not detected it might not even ask.
  2. Choose Metric (mm) or Imperial (inch) units
  3. Enter setup by choosing "ports and pins" and begin by configuring ports in the first tab.
  4. Choose the "motor outputs" tab. Associate the correct pin number on your break out board to the correct motor/axis in your machine. The RiNo Route has two motors working in tandem to run the Y-axis and you will have to not in the setup that those pins are "slaved" and need to be reversed. A forward turn of the primary will result in a backwards turn in the slave.
  5. Choose the "inputs" tab. Correctly associate the pin your limit switches and home switches are attached to. Do the same for your E-stop button. The active low box is the switch between whether it is detecting the closing of the circuit or the opening of the circuit. There is an automated setup that can tell you if it detects the signals coming from your break out board. Exit the setup
  6. Calculate the expected distance your machine will move in one step using your chosen units. This may differ from axis to axis. My X and Y are identical and my Z is different because the first are on belts while the later is on a lead screw.
  7. Enter the "motor tuning" set up page and enter the expected movement number you just calculated. Enter a maximum acceleration and maximum speed for the axis. Save the axis and then repeat for the remaining axis'.
  8. Test the movements of your machine by clicking the midi tab and telling it to move the axis a desired amount. This is done using G-Code. Example using mm: If you want the axis to move 100 units first zero the X-axis. Then type in the input box G01 X100 F100. G01 is the type of movement in this case a basic movement. X100 is the axis you want to move and the place where you want it to move to. F100 is the speed. in this case mm per second. If you tell your machine to move 100 units and it move something other than that then you can fine tune it by entering the settings tab and clicking the "Set Steps Per Unit" button. It will ask you which axis to move and how far. Upon confirmation it will move the axis. When it is done it will ask you how far it moved. When you enter the number it will change the steps/revolution number in the settings. Repeat for all.
  9. Renter the "ports and pins" setup window. Click the "outputs" tab. Configure the outputs for your spindle. Mine is a simple on and off configuration because I am not currently using the PWM (pulse width modified) settings. I choose the speed of my spindle manually.
  10. Move your axis to the home positions and set them as zero. Click the "machine limits" and zero them. Go to Config/Homing Limits. Enter in the cutting area dimensions for your Router. You may want to move your router to it's limits after zeroing to find this maximum distance. Here is an instructable dealing with this specific step

Now your machine should be all set up.

Step 33: Vaccum Extraction

I designed and printed my own vacuum extraction nozzle for my CNC. It's a simple design that clamps onto the base of the spindle using a hose clamp. The other side was sized to fit the end of my vacuum hose perfectly. The ring has a slot in it to which I chopped up a broom and glued the bristles in by hand. I made a long and short version. The long version was too long and the short version works in most applications except where I need to make many passes to achieve deep cuts.

The Blue air nozzle is attached using bailing wire. Having an air nozzle is one of the most important things you can do for your cnc machine. It enabled me to dramatically speed up my machine for cutting operations where the previous cut would need to be cleared of chips.

I also built a small dust collection setup using a Dust Deputy purchased from Amazon, a bucket and my Wet/Dry Vac. This works quite well. Fine dust still makes it into my vacuum and because I'm not using a super fine filter some super fine dust does excape the vacuum. I have a 4" vent fan clearing the room and I blow the exhaust from the vacuum directly into the vent. This keeps the room quite breathable. I can definitely tell the difference when the fan is not on.

I did a decent amount of research and building a dust collection systems and building one that would pass OSHA standards is no small task. Dust, especially from composite materials is no joke and you should always wear protective equimpment in the event that your dust collector is not top notch. If you have the opportunity always vent it outside. Every couple jobs I empty my bucket and shake out my filter.

Step 34: Add Your Table Surface

I waited till my machine was working so that I could use it to cut out the table top ensuring pervect right angles and smooth edges. My table is bigger than a piece of 4x8 MDF in both directions. This that meant in order to deck the maximum area I would need 3 pieces. I divided the table up into the pieces ensuring that the two seams would fall on the frame rails. Drew up the files and used the machine to cut them out. I welded tabs onto the frame rails at even intervals and drilled holes in these tabs. I then secured the pieces down to my table by screwing into the table top through the tabs.

I surfaced my table, which is the next step, but during that operation I realized that there was a noticeable amount of vibration in the table and this was creating a lot of noise as the table top was rapidly vibrating against the frame. I decided to caulk the surface to the frame which solved this issue. In the 3rd photo you can see that I ran out of clear and switched to white.

Step 35: Surface Your Table

The chances that your table top is perfectly level with respect to your gantry is practically zero. That is why the first thing you do after affixing your table top is to plane it with your machine.

First you need to determine, if you have not already, the absolute maximum extents of your table surface. Move your spindle to home and set everything to zero. Then move it to the furthest reaches of X and Y and note those figures.

Next, using the machine, determined the highest and lowest points on the table by moving the spindle around the table and touching it to the table noting the height value registered on the computer. I set the lowest point to zero (Z-xis) and then moved it back to zero

Using your cam program generate a G-Code file which cuts a pocket operation to the limits of your movement, using the distance from the lowest point on your table to the highest as the depth of cut. If your variance is extreme you may have to do this in more than one cut. I cut mine running back and forth on the X-axis and then repeated the action this time moving back and forth in the Y-axis to ensure a nice smooth surface. My total variance was about 5mm.

The first photo shows the place in my table which was the lowest and required almost no cutting. The second photo shows the highest point on my table which required the most amount of cutting.

Step 36: Securing Your Workpiece

Your machine will need some way to attach your work piece to the table top. There are lots of option for this. The best option is building a vacuum table, which I will do eventually. The first two photos show an example of a simple version and a very complex version. Most milling machines have T-slots in them that have clamps that can slide around inside these slots allowing your piece to be bolted down to the table, showing in the 3rd picture. A lesser version of this is seen in the 4th photo with a simple clamp that can slide in a t-slot. This is the best option for a good compromise between price and usability. The 5th photo is an example of the cheap option of having a bunch of holes in your table which you can bolt down into using holding clamp.

I went the cheap way deiced to use flange nuts shown in the 6th photo. My table has about 100 holes which was a number I picked hoping it would be enough. I would now recommend twice this number. I laid out the holes in my CAD software taking careful consideration that they would not interfere with the frame rails below. Using a CAM program, I then created a drilling operation to drill all these holes using my machine. Each hole was filled with a flange nut in each hole and using a washer and a bolt, bolted the nut tight in order to affix it to the wood. I did cut out some clamps copying a design I found on the net. They are similar to the ones shown in the 5th photo. They work at their most basic but I am not going to show them because I do not like them.

For full sheets of wood I use the clamps but a large percentage of the time I just screw the work piece directly to the table top. I discuss bits shortly but as a note some bits have an up cut verses a down cut. Plastic often responds well to up-cuts but this tends lifts the piece off the table creating a variety of issues. This is where a vacuum table would be the most useful. A vacuum table is also the best option for cutting with a drag knife.

Step 37: Using a CNC Router 1/2 - Tooling

There is a large body of knowledge required for successful operation. The first thing is tooling. This is the proper selection and use of bits in your machine. Obviously a different shaped bit will create a different shape grove in your work piece but this is only a very small piece of the whole story. Let's hit the basics.

The spindle holds onto the bit using a type of chuck know as a collet. There are many different kinds of collets and they have different names. For example Mine is an ER16 collet. The 16 denotes the width of the collet in mm. This restricts the maximum shaft size the collet can hold, in this case 11mm. I use bits with 1/8" and 1/4" shafts. When I upgrade my spindle this will change. When ever you buy a bit you will need to pay attention to the shaft size to ensure you can use it with your machine.

Bits will have a number of properties. Shape, length, width, number of flutes and up-cut or down-cut. This blade is called a flute. A bit may have one or many flutes. Usually 2 or 4, but 1 or 3 is not uncommon. A bit with 2 flutes means your bit will take out two bites, or produce two chips for every revolution.

The most important things you will need to learn in relation to your bits is called Feeds & Speeds. The Feeds refers to the speed at which the bit is traveling in your material. The Speeds refers to the speed at which your bit is turning. The combination of this determine the chip size, or bite, which your bit takes out of the material every time the flute interacts with the material. Let's make the math really simple here. Lets say your bit has two flutes and is moving 1 inch per minute and it turns 1 time in a minute.This means your bit will take two bites in that minute with each chip consisting of 1/2 an inch of material. The goal of this calculation is to ensure that you do not take to small or two big a bite. Too big and you will break your bit, too small and you will create excess heat which will dull your bit. Proper adherence to Feeds & Speeds will ensure long tool life.

Feeds & Speeds should be recalculated for every bit and every material. Harder material require smaller bites and softer material require bigger. When you are working with wood the key is to make sure the machine is producing chips instead of dust. In plastic you want your machine to produce chips, if it's moving to slow it will melt the material rather than cut it.

Equally important for the same reasons is depth of cut. The deeper the cut you want to make the faster you are going to want your bit to spin and the stronger you will need your bit and machine to be. Cutting too much material will result in deflection in the machine, inaccurate cuts and poor surface quality. When I first built my machine the Z-axis had some slop in it, this will often also be called play or wiggle room. As the pressure built up against my bit it would suddenly take a big bite and release the pressure and then the process would repeat. This happens very fast and results in what is called chatter. It's very loud and restricts your ability to make deep clean cuts greatly. After my first upgrade to the machine I was able to increase my cut depth with a 1/8 bit from 2mm to 5mm and it's much much quieter.

Next let's look at Step-Down and Step-Over. If you are able to make a cut that is 5mm deep but you need a total depth of 15mm you will need to make 3 passes. This is called the step down. The step over is the amount your bit can move laterally each pass during a clearing operation such as creating a void in your work piece. This is usually set as a percentage of the width of the bit. I have a 1 inch end mill and I usually only do 50% step over meaning it cuts 1/2 an inch every pass. If I am making a very shallow cut I can increase this but the idea is there is a maximum amount of wood you can remove each turn of the bit and that needs to remain the same to avoid damage to your bit or machine.

The last little bit of info to cover here is Conventional vs. Climb milling. Please refer to the last photo to see the difference. There are reasons you would choose either and to explore that you can read this. In my experience with mostly wood there is little difference in the two. It's a bit more obvious in plastic and would likely be quite visible in the resulting surface quality of metal. Experiment on a case by case basis for your own knowledge.

Step 38: Using a CNC Router 2/2 - Work Flow

This is an important point for people who are new to CNC. There are basically three software environments required for taking an idea from a concept to a real piece. This is CAD, CAM, and Control. For the hobbyist, this will be one of your largest hurdles as you try and obtain a solution for all three with out breaking the bank.

CAD stands for Computer Aided Design. You are likely familiar with this. Popular options are SolidWorks, Sketchup and the Auto Desk suit. These are the tools you use to create your 3D model. I won't get into specifics but I use SolidWorks because I am designing mostly technical parts. A person might choose something else if their intended use something else such as art.

CAM stands for Computer Aide Manufacturing. This is the tool you use to turn your 3D model into instructions for your machine. This instructions are called G-Code. The CAM program is where you choose what bit you will use and set the properties such as step-over, step-down and milling direction. Some CAD programs will include a CAM option or will have a couple CAM options that can be purchased and run inside your CAD program. SolidCam is the best example of this for Solidworks. It's VERY expensive because it's everything anyone would ever need to run any machine. It offers a visual component to see the tool path and allows many options for editing the tool path. There are some cheap option such as EZ cam and I have seen an older version included with Mach3. I use ArtCam, which was recently purchased by AutoDesk. It's base option (~$150) will get the job done but machining a complex part will often take many more steps and lots of inernal visualizing to complete. Other notables are MeshCAM, DolphinCam, and CamBam

At this point it looks like the best option is Fusion 360 by Autodesk. It's both CAD and CAM and it's free for students and hobbyists. I tired it once last year but I had a conflict with my video card.

The output from CAM software is G-Code. You can also write the G-code by hand in a text editor. This will take a long time of familiarizing your self with G-Code. I use a program called G-Wizard editor to visualize and edit G-Code directly for complex operations where I know my CAM software has included many unnecessary moves which will drive up the amount of time to produce the piece. CNC cookbook makes this software and they also produce MeshCam, mentioned above.

The Control software interprets the G-Code into pulses which turn your stepper motors. This is what Mach3 is doing. Finding control software on a budget is usually reasonably easy. For DOS, there is TurboCNC, CNC Pro, and CNC Zeus. For Win98, there is KCAM. For Linux, there's EMC2. Then there are more expensive options like WinCNC, Indexer LPT, and Camsoft.

Step 39: Make Something!

Well, you should now have a working CNC machine and enough knowledge to produce something. Here are a couple of mine.

<p>Very thorogh instructable excellent presentation especially in the presentation of the tradeoffs that one has to make in any technical project of this scope.</p><p>The links will be helpful. Iam envious of the aluminum shown at the dealers yard. New is an option but that place seemed to have an amazing assortment of odds &amp; ends.</p><p>The one likely problem with the limit switches is electrical noise pickup especially if the limit / home switch runs are bundled with the motor cables. </p><p>I would recommend running the limit switch wiring in shielded cable with two internal conductors. Tie shield to ground at the control box and let the shield float at the switch end.</p><p>I hope this helps. </p><p>Thank you,</p><p>Neil</p>
<p>Excellent advice. I'll add that to the instructable. Thanks!</p>
Another thought is the idea of reducing radiation by twisting the wiring going to the steppers using a variable speed drill. This will help with inductive radiation. These ideas have helped on 3d printers I have built. With a machine as large as the one you built, the runs are much longer so the capacitive and inductive coupling has more &quot;plate&quot; area or more turns through which to couple inductive noise.<br>Best,<br>Neil
<p>Awesome job and your presentation is the best by far for me and you have settled most of my concerns I have on my build which is only about 1/3 the size of yours and for that alone I give you admiration and respect. Keep up the good work, it is invaluable for old newbies such as myself.</p>
<p>Thanks! looking forward to seeing it!</p>
<p>Nice. You beat me to it. I am planning a belt in belt driven router for some time now. My Y Axis will be center driven with one motor though. <br>Still playing with ideas...here are some of them.</p><p>http://www.imagebam.com/gallery/ksww5izphxb4tys36d46ppdw4mdatgje</p><p><br>Which motors are you using? </p>
<p>Nice. If you remember send me the link here. motors are linked in step 20.</p>
Thanks. I will let you know if I find the time to finally build the thing.<br><br>Another idea was to run 2 parallel 15mm belts on each side with two pinions which are slightly offset or one pinion with offset belts to help with backlash if there was any (in the style of a split pinion rack drive).<br><br>How did you choose the motors. Are you satisfied with the speed of your machine? Are you running at 36V?<br>I read that speed is related to inductance. Just got this motor some days ago.<br><br>http://www.thanksbuyer.com/23hs7442-1-8-degree-4-2a-2-31v-1-2mh-150n-cm-brushless-stepping-motor-for-cnc-43482#tab-description<br><br>Here's a calculator for rpm I found.<br>http://www.allaboutcircuits.com/tools/stepper-motor-calculator/<br><br>I am really having a hard time obtaining strong, 4 wire, low inductance motors. CNC router parts got a 420oz 3mH motor. I did track down the model number but you just can't buy it elsewhere. <br> http://www.cncrouterparts.com/420-oz-in-30-mh-nema-23-stepper-motor-38-shaft-p-188.html<br><br>You see I am more of an armchair builder...Planning is like 80% of the fun/work for me. :)
<p>Speed for me is limited by the play in the machine. If you go too fast it deflects significantly. Also my spindle only turns at 13,000 rpm so I am limited by that. A good spindle could do double that.</p>
<p>Another question on your drive system. You are using 1600 microsteps and a 4:1 transmission.</p><p>Thats 6400steps per rotation on the (20 teeth?) pulley.<br>One rotation on the pulley (20*5mm) is 100mm. Thus your resolution is 0,015625mm?<br>Is that enough or can you see the steps when cutting diagonally or circles? </p>
<p>I have never seen any evidence of the resolution in my pieces, no.</p>
<p>Very impressive build and one of the most well-written instructables I've come across. Keep doing great work!</p>
<p>Thank You.</p>
<p>Bruce told me about this, I'm impressed! We have one of these in our wood shop here in the art department at CSU. I've not used it but I have been using the laser printer to do some printing on leaves and plexi. Nice job on this, you must have or have access to a great space.</p>
<p>Thank you very much!</p>
<p>Nice build.. I'm jelly..</p>
<p>Most impressive. Terrific photos &amp; discussion, and useful for building any CNC, not just this one. Plenty of useful links, too. Altogether an excellent instructable.</p>
<p>Really interesting read, thanks so much for sharing this. I have loads of questions, but here's one: when you are taking heavy cuts across the width of the table (what I would call the y axis - though people seem to switch up terms here), do you notice the gantry end plates flexing at all? I wonder because although the triangular shape would make them strong in the X direction, they are essentially just flat plates in the y? I ask because I am in the process of Al casting some gantry end plates... </p><p>Thanks again for an awesome write up :) </p>
<p>Remember they only have to be as strong as what ever is making contact with your work piece. For me... 95% of the time that is a 1/8 inch bit. That being said I am more than satisfied with the lateral strength of my machine. I can't really budge it by leaning on it. I don't think my motors are strong enough to induce any deflection.</p>
<p>Thanks for the reply sevenmead. As a minimum the end plates may only have to be as strong as the cutting bit, but.... If you are trying to reduce chatter and increase accuracy, <em>stiffness</em> is more important than ultimate strength. If the end plates flexed as happily as a 1/8 inch bit during cut, they would increase deflection significantly because they are so much longer than the cutting bit. </p><p>Imagine cutting with even a 1/2&quot; bit that was stuck out as long as your z travel (more than 200mm)... That's going to increase inaccuracy a lot in all but the lightest of cuts! </p><p>Now in reality cutter length is only one factor (of many) contributing to deflection at the cut. We obviously limit the stick out length of cutting bits to minimise it. Even then, cutter flex isn't easy to mitigate, where as inaccuracy coming from the gantry beam, frame elements, linear guides, belts or ballscrews etc. <em>is </em>something we can usually work on to reduce deflection.</p><p>Either way if you can tug on it without deflection, sounds like it is ample for your requirements, which is all that matters in the end. Thanks again for sharing.</p><p>PS. I like your bling sliding electronics enclosure. <i style=""> </i> </p>
<p>Hi there, a good explanation of how to build a CNC machine, one thing I did not agree with is the way you said :-</p><p> (These switches can be run in parallel or in series. If they are in series then they need to be run through the &quot;normally open&quot; pin. If they are run in parallel then use the &quot;normally closed&quot; pin.)</p><p>which would mean to get a response from a a switch run in series you would have to have all of the switches lifted which is backwards, if they are run in series you have to use the normally closed pin on all switches then if one is operated there is a change at the end and if they are run in parallel then you have to use the normally open pin so any switch is operated there is a change.</p><p>Regards Poppy Ann.</p>
<p>Oh yep. Nice catch.. fixing. Thank you.</p>
<p>Wouaw! What a great CNC machine! This is definitely quite impressive. If one day I build a such large CNC, I will let myself be inspired by your work! Excellent job!</p>
<p>Can't wait to see it, you do good work.</p>
<p>Thanks for the great instructable and all the valuable information you've put in it!</p>
<p>Thank you.</p>
<p>Great machine and great instructable, very detailed!</p><p>For CAM software, maybe you could give a try to Estlcam, it's a free software which, in my opinion, performs pretty well.</p>
<p>WOW amazing!! gr8 job!! maybe u could add a video though..</p>
<p>Thanks! The video walk-through is getting added tonight.</p>
Hi there, excellent work and a great instructable! Good to follow, background info added, and your thought proces as a reference make this a wonderful read. There is no Pulitzer price for instructables yet, but I would nominate you! Thanx
Wow, very nice compliment, thank you.
<p>Nice work up. will eventually get mine going and with this gude it might be sooner than later.</p>
Thank you.
<p>Beautiful work!!!. Note:Mach3 is usable with USB smoothstepper and other USB and Ehternet controllers.</p>
Excellent, Thank you for the info. I have a few more updates to do today and I'll included this in the revision. Driving around last night I realized I have completely omitted the decking and surfacing.

About This Instructable




Bio: I'm a maker in Denver CO.
More by sevenmead:Rino Route Belt Drive Large Format CNC Router 
Add instructable to: