SketchUp to CNC CAM software guide
-
Here is a guide for using SketchUp with CNC dxf to g code software.
Recent updates:
-deleted useless information.This guide is applicable to situations where you want to use Sketchup with CAM software that generates g-code off of .dxf file formats. I assume you are using Sketchup as your primary part generation workspace. It was written based on experience with a 3 axis Thermwood CNC router. With those CNC machines, you can export a .dxf directly to the machine control cabinet where g code is generated with auto written tool changes, nesting, flip operations, sheet changes, pop up pins and other efficiency lending features.
Cautionary note:
All of this information is based on internet research, testing, my version of software, and my general ignorance; which are all important factors in its accuracy and error. Using these techniques I have made over 700 different parts in 2 1/2 years, with most pencil drawing to router cut times of about 2-3 hours for complex text cut outs and 5-10 min for simple shape forms. Real testing with your particular situation and ample professional caution is the only way to avoid injury to yourself and your machine. The obvious is obvious but problems with drawings are not.
Outline:
SKETCHUP TO THERMWOOD CNC (or sketchup to dxf/g-code converting program) .
CARVING TEXT, TEXT SHAPES
LINES
DRILL HOLES
CIRCLES
ARCS
BEZIER SPLINES
POLYGON
DXF EXPORT TIPS
DXF DRAWING CHECKING TIPS
CUTTING TECHNIQUES FOR COMPLEX OR SMALL PARTS ON A VACUUM TABLE
WORKSPACE AND EFFICIENCY TIPS
SKECHUP PLUGINS
..
ADOBE ILLUSTRAITOR TO SKETCHUP TO CNC VIA .DXF FILES
SKETCHUP TO MASTERCAM TO CNC VIA .IGES FILES##############
SketchUp Pro--->.dxf --> Thermwod CNC These techniques work for a Thermwood Qcore supercontroller and probably for other CAM software packages but obvious testing is needed.CARVING TEXT, TEXT SHAPES_____________________________________________
To load new fonts into Sketchup: Download a TTF. (True Type Font) font from the web, in the windows file folder (see web for location of this folder on your system) right click context menu and select install. Next time you select a font in sketchup, it will appear in the sketchup list. It uses the same font folder as the rest of the computer. Only True-Type Fonts.To get single line fonts:
Here are some True Type Fonts that I use for on-part labeling in Sketchup/CNC and some basic fast signage around the shop.
http://www.mrrace.com/CamBam_Fonts/
I mostly have to manually draw them over imported fonts due to many rare fonts that get sent to me, especially if my text is below 1 inch height.To increase segment count in a curve to make it smoother cutting on machine and image better:
BZ_toolbar plugin.
https://extensions.sketchup.com/en/content/bezier-curve-tool
Select segments or curve, right click to get to the BZ-CONVERT in the context, CONVERT TO CATMULL SPLINE. The curve will turn high resolution (100-400 line segments) This technique also works for cleaning up bad Illustrator fonts. This technique works for single curves but not around intentionally tight corners like in the letter "D" You will have to select only the curves your want smoother, not the intersecting desirably flat lines. To get the line segment back down to something reasonable for small things, see tip below. Generally speaking, depending on your G-Code tangency factors ( for thermwood CNC: GG09f8, to G09f15) smooth cutting means the machine doesn't ramp down in speed and ramp up when it comes to light to moderate changes in angle between lines.To reduce high element count load times:
Explode curves.
Use Plugin Curvizard, Make Curves (Weld) to combine a large number count segment curve. This pre-organizes the lines in the file so the CAM software doesn't have to work so hard.To go from high segment count curves to low segment count curves.
This is often the case when you have to reduce a bezier curve at 600 segments that is a mere 1" long to something more reasonable.
Plugin: BZ_Toolbar
Click curve, right click for BZ_Convert to, Polyline Segmentor for Animation.
This will give you criteria to choose how the line is chopped. Select Max of .04"
You can also use BZ_Convert To, polyline divider. I use this one for contours to make rectangular mesh surfaces.To increase line segment count in fonts and smooth in Adobe Illustrator:
Note: Most CNC cam allows you to directly import from illustrator. This tip is to aid if you need to do some work/joints/hole locations etc.
In Illustrator: (This is a modified procedure from http://sketchucation.com/forums/viewtopic.php?f=15%26amp;t=6675)- First go to object-path-simplify measure. Make sure straight lines starts off unchecked
- Select all
- Go to Type-Create Outline
- Select all
- Go go Object – Path –add anchor points
Do step #5 multiple times to divide and subdivide the curves. For 3” text = 4 repeats of step #5, For 10” tall text needs about 6 or 8 repeats of step #5. - Select all
- Object-Path-Simplify check the straight lines box, make sure angle threshold is at 0
- Export dxf
This should bring into Sketch up pro a very dense drawing with many many line segments. The curves will come out well. Remember that line segments below 0.060 inch cut smoothly and 0.100 segmented curve lengths tend not to dependent on some machine acceleration settings.
To outline complex curves so to use a center-line to command a bit around:
Plugin: Tig-Smart-offset (a far more intelligent offsetting tool, it works 90% of the time, but like the native outline tool it can not offset a series of lines that has a .005" rats nest sitting in one corner of an otherwise fine seeming drawing)
http://sketchucation.com/forums/viewtopic.php?t=49624
To command the machine to do exactly the type of pass you want use the "centerline d0p### z0p###" layer applied to a offset line.LINES-
A line carries both its layer name and the layer name of the group of entities it has been grouped together with. As grouping together lines is essential to SU drawings, keep all your group names on layer zero.To organize complex cut paths you can lift them up into the z axis, it is ignored on dxf export because it only looks at the xy to get it's cut information. For 3d carved surfaces exported out of sketchup into programs like MasterCam, see below.
DRILL HOLES –
At least on Thermwood Machines, if there are lines among a DXF circle on the "Drill z0p###" layer it will correctly self pocket and carve using smaller bits for larger cut holes.
-Draw the desired radius circle off part in open space somewhere, layer name it, Drill z0p486 (example), group it, component it, then move it into position on the desired surface. Copy paste as needed across part making multiple holes. Keeping drill holes as components helps tremendously to change drill diameter changes across large projects.- Remember that if you hover over an edge of the circle, the auto snap will activate the center of the circle.
- A circle drawn in Sketchup Pro will export as a true DXF equation of a circle so long as it is NOT stretched or exploded or drawn in such a way that one of its edges touches a geometry (the native auto- weld feature of Sketchup is annoying in this one regard).
CIRCLES-
-Advanced circle tools are available from other plugins. This advice is for the native shape generation:- A circle exported with Sketchup Pro as a .dxf export as true equations of a circle and so will cut as an equation in the G-code. The circle can intersect other geometry making it a curve of constant radius (see arcs below).
-Right after you select to draw a circle, the number of segments desired will be in the lower left of the screen. If you plan on keeping the circle intact (not scaling, or making it intersect a line) this can be ignored. This value will be remembered and come up as a changeable default every time you draw a circle.
-you can change the resolution of the circle by simply clicking ENTITY INFO.
-If you plan on stretching a circle into an ellipse start with a high enough segment count. - You can increase the circles’ segments until the individual segment length is low (0.06), then explode. The resulting high number of segments in the shape of a circle (100 for about 3” diameter, 600 for about 30” diameter) will cut smoothly with little distortion.
ARCS-
See the section above on carving text on how to modify an already drawn and exploded arc to increase its line segments or other such operations necessary for smooth carving on the CNC.-
Arcs as simply drawn in Sketchup’s abbreviated polygon fashion will leave a large segmented appearance and will cut on the machine that way unless you change the arc segments. In SU when you first use the arc tool, a segment number option is available.
-
The Didier Bur Arc Circles plugin has a center and 2 point selection tool that works quite well for when you are compounding centerline moves among bits. i.e. in a tight corner where you want a 0.125" dia bit to follow the outer cut path left by a 0.375 bit, the 0.125" bit will need a radius specific arc in the tight corner (0.375/2)-(0.125/2) = radius of arc.
BEZIER SPLINES-
-Fredo6 BEZIER plugin is amazing and youtube videos can be seen to illustrate its use.
-Basically with this plugin you can take any jumble of lines, turn them into a polyline, and smooth them out along various mathematical curve fits of either the same number of elements or an increased number of segments.
-The Bezier curve function native to Sketchup, like circles, has a number of segments option right when you select the tool. 3-400 element Bezier curves that exist as 2foot long curves seem to cut well.POLYGONS-
-If the polygon draw tool is used to draw a triangle early in a drawing must be exploded after you are happy with the segment count. Explode these types of shapes as they do not export well.DXF EXPORT TIPS:
-Export dxf only with top view, camera parallel projection mode. ALWAYS (sorry for the caps but yea…) All parts on x,y plane clearly separated for easy hide, unhide for individual part export.
-Always have the layer list open, and the layer name selection box on the toolbar available. Cycle through individual layer names to hide them to check to see that you have given all the cut paths the correct layer name and thereby cut depth and tool.- To export a single part that shares the workspace with all the other parts of the assembly, hide, make hidden hot keys to toggle between parts prior to exporting the dxf. I hide all, then unhide one part at a time, zoom extents, then export. This has the following advantages to workflow: the zoom extents checks for window problems of stray lines/unhidden undesired parts, as each part is exported separately, it gives you a pause to name the parts. Each part gets its own exported name for use by the nesting software and essential for troubleshooting.
-When exporting .dxf using the SketchUp Pro export option found under File -->Export -->3d model. Entities, surfaces, and their layer names are exported using only the 3d export option, the 2d export option does unknown things.
-Groups have a layer name just like lines do. This can lead to confusion among some CAM software packages. Keep groups on layer zero, entities inside the groups at their correct respective g-code specific actions.
-The non-global xyzaxis that exists within a group is ignored. The larger axis is used as the part reference axis for the file export is the one seen by the machine. If you loose track of the proper global axis orientation, click on axis, reset or simply cut and paste a cube from a fresh file and match the axis to that.
-In sketchup lines can be hidden in visible groups but visible lines can not be seen in hidden groups.
-Global Axis color code RGB=xyz
-You can have both the disassembled or cut path view and the assembled object on the same Sketchup drawing. It requires that each part of the assembly be a grouped component. This is useful. This is particularity useful for complex joints were adjustments are made on the assembly, and the flattened parts auto-update and are easy to export.
SKETCHUP DRAWING CHECKING SUGGESTIONS_______________________________________
-Use the offset tool on any chain of entities you want to check for 1. Consistency, 2. Connection, and 3. Stray lines that intersect the loop that shouldn’t. The offset tool will fail on any shape that has stray single lines jutting out at an edge. This is useful as a check for instances where the machine does not accept a dxf when there is spotty geometry on the critical outline layer entities.
-Use the layer visibility to check that proper layer names are applied to the right entities. Again, groups should always be called Layer 0 so the entities within can be tested using this method.
-Use the fact that S.U. auto surfaces any looped line segments to check for a tiny break in a surface by subdividing by crossed lines, the open spaces will point the part of the geometry with problems. There is a plugin for this, I can't remember what it is.
-Using the styles, architect view for a drawing allows you to see segment ends easier.
-If a stubborn file refuses to import and the shape is dramatic, take the 2d shape, push pull it. This will reveal errors in lines. If that doesn't indicate the problem you can also take a large rectangle and intersect it with the push pulled form, making a self-healing continuous loop.
-if you need a way to get a side of a shape to lay flat, use the unfold plugin tool, or there is a way to apply the rotate tool (not the group move handle plus marks) to any axis. There are tutorials on this on the web.SUGGESTIONS FOR CUTTING OF SMALL PARTS OR COMPLEX PARTS ON A VACUUM TABLE:
-UL MDF –Clean edges, 0.375 helix rough leaving 0.015 on walls and 0.025 on floor, 0.25 straight single flute finish pass and freeing part pass makes a nice looking circular saw quality clean edge.
-UL MDF tiny parts (smallest I have ever cut was 1”x1” square out of 0.75 thick porus LDF on a vacuum table) All cuts done down to 0.030 skin, final part free cut done with 0.125 two flute straight bit as the cutting forces are very low.
-For Finish laminate or finish sanded Maple board. All penetrating passes with 0.375 helix up cut are preceded by a 0.125 2 flute straight pass at 0.035 depth. The tiny 1/ 8” bit has next to no cutting forces to tear or rip up the material so using it first on outer part edges is great. This method works for all laminates where tear out is a concern typically a compression bit would work well but a chip clearance pass seems out of the question.
-Large parts, thin picture frame: Partial cut down to .035 throughout all of shape (inside and outside). Cut outside first then inside.
-Small parts, thin picture frame: Cut inside free, then outside.
-Long thin parts, select cut order so last pass along a line cuts part free from the larger uncut mass.Open frames on vacuum tables where there is next to no surface area to hold parts. Cut order that works well:
- All non-penetrating surface detail (dados, blind holes, text carve etc)
- All inside features down to 0.035
- All outside loops down to 0.025
- All through holes to table
- All inside loops to table
- All outside loops to table. (part is free)
WORK SPACE AND EFFICIENCY SUGGESTIONS__________________________________
Have the following toolbars visible: (go to view, toolbars to activate)
-edit, fredo6 tools, layers, measurements, principal, bz_toolbar, views, Tig.smart offset, round corner
Have the layers list open, keep layer 0 as your active layer, check mark hidden layers as needed
Keep your non-mouse using hand on the keyboard and make shortcuts for all the keys it can reach easily. So one hand is the drawing input, and the other is the task/operation input. As your non-mouse hand learns the keys you will be able to draw like a Boss!
The following hotkeys work for a left hand on the keyboard (go to model, preferences, shortcuts to program them in by typing in the search term, then pressing the key and clicking on the plus symbol to add it)
c for draw/shapes/circle
h for view/hidden geometry
k for view/edge style/back edges
w for camera/zoom extents
f2 for tools/push/pull
f3 for tools/rotate
f5 for tools/scale
f6 for tools/offset
f7 for file/export 3d model (dxf option that is best for exporting to cnc software)
a for draw/arc
b for draw/bezier curve
-Use camera, parallel projection mode when drawing as it helps in showing what the top view (along blue axis looking down to xy red/green) contains.
-Depending on your drawing style, I find it easiest to work with 'Layer 0' as the active layer and draw everything at one layer 0, then selectively apply layer names to very specific lines to title the cut paths.IMPORTANT SKETCHUP PLUGINS
DIDIER BUR ARC CIRCLES plugin - for some nice arc tools that solves some situations that the native arc and circle tools do not have or are awkward to use.
There are more to be found on line, but here are my favorite and most used:
FREDO6 BEZIER SPLINE (Amazing Illustrator level curve line management tools including the BZ-convert to Catmull spline and the polyline segmentor increase tool, provides the opposite to explode curve)
ROUND CORNER (makes square edges round)
SELECTION TOY (can select a large network of lines or faces)
TIG SMART OUTLINE (smart offset line tool, can do multiple shapes at once so that one cutpath can be distributed among many parts at once)
EXPORT STL (good for 3d printing and export to mastercam)
EXPORT IGES (good for exporting 3d carving surfaces to mastercam)For more complex 3d sculpting:
Slicer (good for aircraft style frame design and building)
CURVILOFT (drafts 3d skins between multiple shapes with a selection of math curve fit profiles)
FREDO6 JOINT PUSH PULL ( Allows shell creation and complex TIN manipulation)
FREDO6 FREDO SCALE (Allows scaling skews, sheer shifts, 3d part twisting/licorice twists of shapes, and full shape bends)##########################
Adobe Illustrator --> Sketchup --> Thermwood CNC router
Most CAM takes Illustrator files directly. I use this procedure for text importing of Adobe Illustraitor into Sketch Up to make densely segmented curves for smooth CNC cutting.In Illustrator: (This is a modified procedure from http://sketchucation.com/forums/viewtopic.php?f=15%26amp;t=6675) We are going to add anchor points, then simply them
- First verify a check marked box is unchecked: object-path-simplify measure Make sure straight lines starts off unchecked
- Select all
- Go to Type-Create Outline
- Select all
- Go go Object – Path –add anchor points
Do step #5 multiple times for 3” text = 4 repeats of step #5, For 10” tall text needs about 6 or 8 repeats of step #5). Do more of these as needed to increase the segments aka reduce segment size so the cnc machine can interpolate between the points. - Select all
- Object-Path-Simplify check the straight lines box, use the slider bar, make sure angle threshold is at 0 check your to see it worked.
- Export dxf
This should bring into Sketch up pro a very dense drawing with many many line segments. The downside of this is that Text fonts with very simple lines have hundreds, but curves come out well. Remember that line segments below 0.060 inch cut smoothly and 0.100 segmented curve lengths tend not to.
#######################
SketchUp --->.iges-->Mastercam
For 3d carved surfaces
Procedure:
Mastercam skips the .dxf drawing gcode processing on the Thermwood router console and instead, drops g-code direct to the machine.In SketchUp: (not sure if Pro is required for this?)
Explode all surfaces, no groups, no reversed surfaces (in SketchUp vew style should be default to see reversed surfaces as blue), no surfaces inside shapes, no stray non-surfaced lines hanging out. Any drills should be unexploded circles extruded into material with no tops.
standard axis orientation with big parts setting with their long axis on the x axis (10 foot tables).
To make it easy on the offsets to keep track of, place the part as if it is on a table where 0,0,0 on screen= the cnc table 0,0,0. See the Thermwood CNC manual for details on the table size.
You can export more than one part from S.U to Mastercam at a time, as long as they are on same xy plane.
Using the SketchUp export with tools-'IGES EXPORT' plugin:
iges_export V0.7
http://sketchucation.com/forums/viewtopic.php?t=43307
it will produce a file without a .type naming convention, open the folder where it is located and manually rename it with a “.iges” ending.
In Mastercam:
-open up Mastercam normally,
file, file merge pattern, (select your newly renamed ###.iges file)
Pop up: "Scale current part to metric?" -no
Alt-f8, at bottom "current:" select default from pull down, it will "scale current part to english" -yes The part should appear, check to see that the origin is correct. Check the dims of the part by going to stock setup and select bounding box. The origin that appears on the screen will be the default machine table origin unless offsets are applied in mastercam or at the machine offset table at the cnc console.
Here the curved (albeit) polygon meshes import as carvable surfaces by any of the many 3d contour, rough, finish and high speed toolpaths.For future shapes where you like the same cut paths but need them applied to a different geometry you can save as, delete all the geometry on the screen (your cut paths will get red error symbols) Then file, file merge pattern, follow the earlier steps for bringing in a geometry(this allows the lifting of already developed cut paths to transfer to a new part if you already have some cut paths on your screen that you like the settings on)
Notes:
-The rough or finish contour cut path is useful for basic quick machining.
Mastercam is its own creature of a program. The Solids feature that it comes with is not necessary. Post-processor written by someone with experience is. If you need some tips on how Mastercam works it is tough to find this info for free. Books with examples are the cheapest and being a student somewhere helps with access to the 6 mo. cheap version.End
-
Excellent work and much appreciated! I am using an SCM machine with Genio and Xilog I suspect that much of what you contribute can be applied to my workflow. Thank you
-
Hello piratebrian,
Wondering if you might be able to help me out.
I have a Thermwood router. I am trying out some new cabinet software (Mozaik). Mozaik works in conjunction with SketchUp. Mozaik will optimize the cabinet parts and create a nest. For each sheet that is nested it will create 1 DXF file for each sheet. I can create a DXF using Mozaik or thru SketchUp. When Mozaik creates the DXF the Layers are simple an easy to edit. When Sketchup creates the DXF I have a lot of layers to sort thru and not so easy to edit the layers names / get everything on the correct layer.
I understand that I need to rename the layers of the DXF according to Thermwood naming convention.
As of now this is my main problem. When I load the DXF at the control the parts are not being placed correctly on the bed of the router and on the screen at the control. I have the sheet to be cut in the DXF at 0,0 (x,y). I can create my own DXF with just some basic squares using TurboCad and load the file at the machine and it works.
I notice that Mozaik and SketchUp makes the DXF with depth (z). I am using TurboCad to remove the z depth to 0. Not sure if I am even doing this right or if I need to.
Thermwood Control Nesting documentation indicates that I should save the DXF with AutoCAD Version 13. The TurboCad I have goes only back to 14. Not sure if that is a problem.
Any ideas would be greatly appreciated.
-
jjenks2006,
I believe that your issue may be that Mozaik is creating a layered DXF with all the components already nested. What the Thermwood Control Nesting is looking for are the individual DXF files for each part. It then uses the OUTLINE layer to nest each part and it's other associated operations into the sheet.
Since you are loading a DXF with multiple OUTLINE layers, it is probably grabbing the first one, using it to nest and the others are being "dragged along" for the ride. Since they are not being considered in the optimization, the geometry/operations for the other parts are ending up off the sheet.
That is my guess.
Contact the Mozaik people and see if you can export/save the parts/operations as individual DXF files.
Brad
-
Hey jjenks2006
Sorry I just saw your question. You probably have solved the problem by now. Most of my parts I send to my Thermwood control nesting on the machine have multiple layers extending up into the z axis simply because it allows me to side view all the parts and quick administer the bulk layer naming by window selecting. As bmcintosh mentioned each part has it's outer edge as "outline z0p471" In Sketchup, as long as the camera is on parallel projection and the top view is selected everything exported as a 3d file type dxf out of sketchUp pro comes up as normal cut path individually nestable parts. An outline layer on a 3d dxf part should only be the bottom (or top) face outer edges viewable from top view (blue axis on). I'll have to take a look at that Mosaic Sketchup interface program. You can send a 61.998 by 120.998 dxf to the machine and have it placed on a 62" by 121" table and material so long as the long side of the form is along the x axis and the collar and part clearances are at 0.001. Being able to edit all the part collar and part spacing clearances on the control nesting software on the machine I find easier. This is due to cut problems that can arise on a large job where one warped material/bad drawing can crop up. Being able to quickly identify the bad parts that need re-cut or redrawn and re-nested as additions to the remainder of the 20 sheet job is quite easy with this method. Often on a 10-30 sheet job 3-4 parts need recut/redrawn by the time I reach sheet 7. Que-ing them up for the next sheet is easy so long as 1. you know what you cut (see the printout option on control nesting for a running list of all the parts cut on each material sheet) 2. total of what you want (already listed on the file import of dxf screen). 3. what and how many parts need re-cut. Any re-drawing activity and control nesting them can be done outside of the super controller's activities running the g-code. Going back to cad every time will be tough as it requires a separate inventory scenario.
Advertisement