Computer controlled machining
Intro
Two inspiring quotes from the beginning of this week:
"This week we make big things" - Neil
"Don't get killed" - Henk
Before getting started, this video is worth a watch. It gives a nice overview of using milling machines: How to Design Parts for CNC Machining.
Tasks
Here's Henk wearing the same t-shirt ~5 years apart (not on purpose).
The Sacrifical layer
(aka SL
) is MDF.
Below are three tables to follow when using the ShopBot CNC milling machine. One for setup and safety, V-Carve, and the Shopbot software.
Setup and safety
Step # | Type | Description |
---|---|---|
1a | Clean | Vacuum clean woodsplinters from the SL and surrounding areas |
2a | Clean | Check the step motor rails for any obstructions |
3a | Clean | Double check surrounding areas and machines |
Surroundings | Do assignments alone = less distractions | |
Surroundings | Never lean on the machine | |
Surroundings | Know where the exits are | |
Surroundings | Know where the fire exstinquishers are | |
Dustbags | Dustbags are dangerous | |
1b | Dustbags | Milling bit hits something metal (eg. screws into the sacricifcial layer - makes sparks) |
2b | Dustbags | Turn off dust collector if the bit hits metal / a screw |
3b | Dustbags | Watch the dust collector for a while if it has hit metal |
4b | Dustbags | Throw burning bag out the window |
Prep | Tie up long hair | |
Prep | Don't wear a tie / necklace | |
Surroundings | It's very noisy | |
1c | Setup | Key is attached to spindle-changing wrench |
2c | Setup | Lower the dust shoe at the butterfly bolt |
3c | Setup | Use the special wrench + wrench to pry spindle fixture free |
4c | Setup | Clear dust from nut |
5c | Setup | Choose collet type correctly to match the bit diameter |
6c | Setup | Re-assembly order: collet goes through the nut first, then the bit into the collet |
7c | Setup | Don't push bit in too far or too little (past the collet shelf/ledge) |
8c | Setup | Fasten spindle rig to the machine using special wrench + wrench |
9c | Setup | Fasten tight, but not so tight that it can't be undone |
Surroundings | Always put the tools back in the same place | |
10c | Setup | Put shoe back up and fasten it at the butterfly nut |
Computer | Computer on | |
Computer | ShopBot software tries to connect to machine -- make sure machine is on (red switch) | |
Note | Machine can be on without the spindle being on |
Our trusty, dusty vacuum bot:
This switch turns on the machine, not the spindle.
This key turns on the spindle. The machine should already be turned on.
Special wrench, for changing the collet or bit, in action:
Dusty nuts are no good! Clean them regularly (NSFW).
Make sure the collet size is correct for the diameter bit you're using.
Rule 7C -- be mindful about how far the bit is inside the collet:
These are called Woodies. They're fancy screws that we reuse to hold down material:
There's a butterfly bolt that needs undoing in order to maneuvre the shoe up and down.
This is where the key lives (attached to that wrench).
Refer back to point 4b:
ShopBot
Step # | Type | Description |
---|---|---|
0a | ShopBot | Turn red knob ON |
0ab | ShopBot | Flip the Move/Cut switch on (in software) |
ShopBot | Command = k (opens keypad for spindle navigation) |
|
ShopBot | Use arrows to control tool X and Y direction | |
ShopBot | Z-axis is controlled by pageup + pagedown |
|
1a | ShopBot | FIRST: Make sure Jog Speed is set to 40 x 40 |
2a | X-Y | FIRST ALSO: Press the Zero XY button -- NB. I got this wrong! Make sure to click the XY button |
X-Y | The tool is now at the Machine Home aka the home x and y positions -- **NB. This is not the same as X = 0 & Y = 0 |
|
1b | Z-level | Home the Z-axis, aka Z-levelling: move the tool into the middle of the SL |
2b | Z-level | Place metal plate under bit (from side of the tool) |
3b | Z-level | Tap the metal plate to the tip of bit and check if the Shopbot program reads the contact = inp |
4b | Z-level | Run Z calibration |
5b | Z-level | Remove plate |
1c | ShopBot | Now set the Job Home |
2c | ShopBot | Press k |
3c | ShopBot | Navigate the tool to the desired starting point of your job |
4c | ShopBot | Zero > set XY home -- X & Y axis should both = 0 |
3a | ShopBot | Path file load to add file with GCODE |
Setup | Make sure everything is on (vacuum, machine, and spindle) | |
Note | V74X machine (below the table) controls spindle rotation speed | |
Cutting | Goggles on! | |
4a | Cutting | Part file load screen > Start |
5a | Cutting | NOW STARTING pop-up > select OK |
6a | Cutting | Have finger hovering over the space bar to push it in case of emergency |
Note | Screw holes that will be used are placed in designs and exported as GCODE separate to main cutting files | |
1c | Screws | First cuts should always be for the fastening screws |
2c | Screws | Add material to SL |
3c | Screws | Choose screws that meet the SL but dont go all the way through it |
4c | Screws | Use the nice Woodies screws |
5c | Screws | Put force on plate when drilling to avoid the board being lifted |
Setup | Return to step X1 and start process with main cut |
0ab
1a
2a: Machine homing of the XY axis.
2a: Complete
3c & 4c: This is the outcome of Job homing the X & Y axis.
5c: Put pressure on board when screwing, or this can happen:
V-Carve
NB. 2a. Make sure the XY Datum position is set correctly.
Step # | Type | Description |
---|---|---|
1a | V-Carve | Open V-carve pro |
V-Carve | Add Job Size measurements - dimensions of the material material being cut |
|
V-Carve | Material Z - the piece's thickness |
|
2a | V-Carve | Select the XY Datum position - the starting point of the bit |
3a | V-Carve | Import vectors - dxf, pdf, dwg, eps |
4a | V-Carve | Generate toolpaths (can create several) |
5a | Drilling | Also create a toolpath for the drilling holes -- 5mm end drill bit |
Drilling | Select drill holes to a toolpath | |
Profile | Profile toolpath (cuts material away from both sides of the line) | |
Profile | Select line > Profile toolpath > Cut depth 18mm > machine vectors - outside > add tabs | |
Profile | Tabs not in corners, more makes it stronger | |
Pocket toolpath > CD 5mm > 2 passes | ||
Offset vs raster > no pocket allowance > no ramp plunge > no other settings | ||
V-Carve | Tool > edit > stepover = 4mm (splinters with no stepover -- higher stepover for finished piece) | |
V-Carve | Edit > Join vectors -- important for fills | |
1b | Toolpath | Select Toolpath order -- shift it with the up/down arrow |
2b | Toolpath | Preview toolpaths |
3b | Drilling | Place woodies at least 1cm outside of the design |
4b | Export | Save toolpath for drilling holes first, with other layers deselected |
5b | Export | Then save the other layers 'output all visible toolpaths to one file' |
6b | Export | Save as .sbp file |
Join vectors that are multiple lines or your shapes will be cut in odd ways.
NB. This happened to me.
Make sure to cut drill holes (important for placement / alignment).
Group assignment
Checking previous year's group projects was useful for figuring out how to set ours up:
Sako's lecture ended with a slide that also gave us direction on what to test during our group project.
What to test?
We ran a Conventional vs Climb test (the circles), Feeds & Speeds test (the lines), Offset test (the squares).
Climb milling (down milling) is often preferred for CNC machines due to better surface finish, lower heat generation, and extended tool life.
NB. The direction the mill rotates, with climb milling can potentially unscrew the bit.
Conventional milling is typically used on manual machines or older CNCs with significant backlash to prevent the tool from pulling into the work
"Speeds"
- Speed / cutting speed / surface speed
- How quick the bit is turning
- NB. Cutting speed needs time to accelerate/decelerate.
"Feeds"
Feed rate: How fast the tool moves around the workpiece
Pass depth
The maximum depth of material removed in a single pass of the cutting tool.
NB. Pass depth = half of the bit diameter.
Testing results
The VCarve software definitely takes some getting used to. We struggled to correctly choose our toolpath and mill settings.
There weren't any issues when milling (all issues came from VCarve). These were our results:
We misunderstood the Cut Depth
setting, and so our first attempt at cutting out our squares didn't go all the way through the wood (we had it set at 2.5mm and the wood was 12mm thick).
Offsets
We misunderstood the Allowance Offset
setting. All of our squares ended up having the same border size. So, we weren't able to fit any of them into our pocket cut square. Here's a great guide for understanding that:
A bit more about offset allowance:
Basically if you set an allowance your cut will be oversized or undersized by the amount you specify. So, if you make a square that is 1 x 1 inch and set an offset allowance of .125, your mill will be 1.125 inches.
Other considerations
Dog boning: We also learned that when you're adding dogbones that not only must you must add the fillet (dogbone), but also remove the inner corner/line.
Grain direction: Our tests looked pretty messy, and that's because we hadn't considered the grain direction of the material we were using. That is defniitely something to consider when cutting.
Unjoined vectors: Trying to fill cut on a shape with unjoined vectors is going to give back errors.
Individual project
My plan was to design a toilet lid with a Waag logo on it. The logo would be milled out of a different piece of wood that would be pressfit into the toilet lid.
My two main learning goals this week were to:
- Learn how to bevel (...the edges of the toilet): Chamfered edges V-Carve
- Pocket cut sharp edges (...of the Waag logo): Sharper pocket cuts
First I altered my toilet seat design from a few weeks previous:
(Side note) The recurring process I experienced during this week was:
- V-Carve
- Create toolpaths
- SBP exports
- Shopbot calibration
- Drill layer
- Main mill layer
Computer-aided manufacturing (CAM)
Fusion
First I cut the Waag logo out of the toilet lid by:
- creating a sketch
- import SVG
- finish sketch
- extrude as a cut
Once the toilet seat model was ready, I changed from the Design view to the Manufacture
view.
This tutorial was really helpful: Fusion CNC 3D Carving for Beginners.
Unfortunately, I didn't get a working toolpath from Fusion, and V-Carve turned out to be way easier to use.
But, if you'd like to read more about my Fusion failures, click here.
Fusion setup... attempt
- Fusion > Manufacture > Setup > New Setup > Operation type = Milling > Stock side offset (to leave space for screws) > Define stock point (mill head origin)
- Stock tab is where I input the material's dimensions.
- Mode = Fixed size box --> Set this up when I have the material size.
- Define tool that we're using. Manage > Tool Library > import tool library (download from manufacturer websites)
Adaptive
Adaptive clearing is the first milling cut that clears away the bulk of the material.
- 3D > Adaptive clearing
- Set Machining boundary so that the machine doesn't do lots of unecessary cutting
- Stock Definition > Remaining stock > From set up stock (for first cut -- 'from previous stock' for other cuts)
- Maximum roughing stepdown = milling bit diameter
- Stock to leave: how much to leave for finishing mills (make sure to turn off for finishing mills)
Parallel
This is the milling cut that provides a nice finish, with a lower diameter / round-nosed miling bit.
- 3D > parallel pass
- Set machining boundary.
- Set Rest machining to 'From previous operation'.
- Adjust stepover = 5-9% of milling bit diameter (8%)
- No stock to leave.
Contour
Cutting the piece out of the material. The boundary cut.
- 2D > Contour
- Contour selection > select bottom edge
- Add tabs
- Leave rest machining unselected as this is the last operation and doesn't depend on the previous two operations
- Passes > Multiple depths > 6mm (diameter of bit)
File export
Save the file so that the GCODE file is compatible with ShopBot.
- Actions > Post Process > select ShopBot
- Go to the operations tab > select only one layer > download > repeat
Export the three different files. And execute them with the milling machine.
Carbide Create
Here's another useful tutorial about Fusion CNC design.
It reintroduced me to Carbide Create: a software that gives you suggestions on settings for Feeds + Speeds.
I didn't have tons of time to mess around with, so I feel that this section is a bit incomplete.
NB. From the image below, it's apparent from the way that the toolpath looks that the vectors aren't joined (more on that later).
Monday morning milling (w/ V-Carve)
The three toolpaths were as follows (and how long it took to mill them):
- Toilet lid & Toilet seat (mill time: 10m)
- Toilet lid pocket cut (mill time: 20m)
- Toilet seat male part (mill time: 1h15m)
I added my PDF file to V-Carve. Added screw holes. Made toolpaths. Chose the correct offset for inside and outside edges:
- inside = -0.05 (makes inner object bigger)
- outside = -0.05
NB. Review the offset infographic from earlier if you're confused about this.
I made sure to add to add a toolpath that cut down the Waag logo by 13mm -- which would leave behind a 5mm Waag logo.
I had hoped to bevel the outer edges of the toilet seat. I opted to not do that though (due to time constraints).
NB. The Height and Width are defined based on how the board will lay on the SL (you can read about my mistake in a few sentences time).
The pocket cut and male part both had very sharp edges. Therefore I needed to add Dogbones, T-Bones, or fillets. I wasn't sure which one to choose for which, but V-Carve doesn't let you add options that wont work. Therefore, I used Dogbones.
When selecting a dogbone, I chose the ones that didn't create unusual cuts. Some of the dogbones made weird steps, or tiny extra corners. So, it's worth considering how much extra effort that's going to cost later.
Then, it was time to start using the machine.
This was the beginning of a comedy of errors
First, the dimensions of my material in V-Carve needed to match that of the entire board that I would be using. When that was updated, it was evident that the dimensions of my model were way too small.
Then, it turned out that I mistook the Job Home
setting for the Machine home
one. At the time I suspected that this was the reason why the Shopbot kept cutting off of the designated material layer.
After fixing that mistake though, the machine was still jumping off course.
Henk downloaded the GCode file, looked at it, and the X values were negative. But why?
Here's the bit about dimensions that I alluded to a few sentences earlier. It turns out that I had mistook my width and height settings.
I looked at the material standing upright against the wall. Therefore I set the height as the longer of the two dimensions. That's not how the Shopbot cuts.
Because I had flipped the X and Y axis, the CNC was cutting into the negative X.
My last issue that needed resolving was that the wood was quite heavily warped. The tool didn't move at a high enough Z-axis height, so it kept cutting the end of the wood that was sticking up.
The solve here: I just flipped the wood over.
Hero shot
Overall, this was a cool week. It was really intense. I don't think I'll use the CNC machine much, but it feels like an impressive skill to have in my repertoire.