CAM Toolpaths for Sweeping Out a Bowl Shape

A CNC operator gets advice on programming his machine to scoop out a bowl in a butcher-block top. August 3, 2009

I would like to route a bowl pattern into a butcherblock top. The pattern would be approximately 18'' diameter by 3/4 deep. It would give the look of an integrated bowl into the 1 1/2'' thick top. Is there shareware or free software to help me with this? My version of Mastercam only permits me 2-D nesting patterns.

Forum Responses
(CNC Forum)
From contributor M:
The best free software to make 3-D meshes, capable of exporting as .stl would be Blender. Open the software, press the spacebar to add mesh, select UVsphere. Press keypad (3) for side view, keypad (.) to center sphere to screen then (tab) key to enter vertex edit mode. Press (b) key for box select and drag a selection box around half of the sphere. Press (x) to delete and there you have a hemisphere. Next press the (s) key to scale, then (z) key to lock in the z axis. Adjust the scale to desired depth. Next, go to file menu, then export as .stl and you should have a bowl or dished out area ready to cut on the CNC. There are tons of great tutorials to get you going with Blender and a huge enthusiastic user base so support is never far away.

From contributor M:
The only FOSS CAM package I know of is pyCAM. I dabbled in it a bit and it ought to be able to do what you need. You'd need Python installed. Either d/l directly from SourceForge or use subversion by "svn co.

From contributor W:
Did you say you have Mastercam? I too have only the 2.5D Mastercam router software and yes you can make bowl shapes in it. It is in the wireframe toolpaths called 2-D swept.

From contributor J:
I believe this is what you are asking. I did this in aspire.

Click here for higher quality, full size image

From contributor I:
In Mastercam from a front view, draw one half of your bowl shape. Then from a top view rotate a swept surface about the center of the bowl using your "half-shape" as the "across" and a full circle diameter as the "along". Then use a finish flowline toolpath. You should get exactly what you want.

From the original questioner:
I have Mastercam 8.0 mill version, do you still think I can do 2-D swept toolpaths?

From contributor W:
If you go into the "wireframe" option in toolpaths and select 2-D swept and nothing pops up, like "not available in mill 8.0 version" or something about needing an upgrade then you should be fine.

From contributor B:
Your seat of Mastercam v8 Mill Entry does not have the wireframe toolpaths that contributor I and contributor W are referring to. You would need Mill Level 1 or the Router (L1) product.

From contributor V:
I'd like to know the G-code command and if my 3 1/2 axis Morbidelli Author 504 using Xilog3 is capable of this move.

From contributor W:
There is no special G-code to do the bowl shape, just x,y and z moves with a ball nosed endmill.

From contributor W:
Ok, sorry for this being so long, but here is sample code for this type of thing as a 1" diameter bowl going 1/4" deep with passes at .01".

N10 G71 HC=1 LY=1.000P PLPZ=0.500P PCSG=0.000P FIL=5 BLO=0 ACC=0 RUO=0 PRS=0 PRL=1 PDM=0 PUOS=0 PPWQ=0 KA=5 LZ=(PLPZ+PCSG) LX=1.000P PVER=1
N40 G47 X0.303*25.4 Y0.000*25.4 TP1 PRF=-0.500*25.4 G40 L=PON M55 AX=X,Y,Z
N50 ZI0.596*25.4 G1 F4.0
N60 XI-0.606*25.4 R0.303*25.4 G5 F8.0

N70 XI0.606*25.4 R0.303*25.4 G5
N80 XI-0.006*25.4 G1
N90 ZI0.008*25.4 G1 F4.0
N100 XI-0.594*25.4 R0.297*25.4 G5 F8.0
N110 XI0.594*25.4 R0.297*25.4 G5
N120 XI-0.006*25.4 G1
N130 ZI0.007*25.4 G1 F4.0
N140 XI-0.582*25.4 R0.291*25.4 G5 F8.0
N150 XI0.582*25.4 R0.291*25.4 G5
N160 XI-0.007*25.4 G1
N170 ZI0.008*25.4 G1 F4.0
N180 XI-0.568*25.4 R0.284*25.4 G5 F8.0
N190 XI0.568*25.4 R0.284*25.4 G5
N200 XI-0.007*25.4 G1
N210 ZI0.007*25.4 G1 F4.0
N220 XI-0.554*25.4 R0.277*25.4 G5 F8.0
N230 XI0.554*25.4 R0.277*25.4 G5
N240 XI-0.007*25.4 G1
N250 ZI0.007*25.4 G1 F4.0
N260 XI-0.540*25.4 R0.270*25.4 G5 F8.0
N270 XI0.540*25.4 R0.270*25.4 G5
N280 XI-0.007*25.4 G1
N290 ZI0.007*25.4 G1 F4.0
N300 XI-0.526*25.4 R0.263*25.4 G5 F8.0
N310 XI0.526*25.4 R0.263*25.4 G5
N320 XI-0.007*25.4 G1
N330 ZI0.006*25.4 G1 F4.0
N340 XI-0.512*25.4 R0.256*25.4 G5 F8.0
N350 XI0.512*25.4 R0.256*25.4 G5

N360 XI-0.007*25.4 G1
N370 ZI0.007*25.4 G1 F4.0
N380 XI-0.498*25.4 R0.249*25.4 G5 F8.0
N390 XI0.498*25.4 R0.249*25.4 G5
N400 XI-0.008*25.4 G1
N410 ZI0.006*25.4 G1 F4.0
N420 XI-0.482*25.4 R0.241*25.4 G5 F8.0
N430 XI0.482*25.4 R0.241*25.4 G5
N440 XI-0.008*25.4 G1
N450 ZI0.007*25.4 G1 F4.0
N460 XI-0.466*25.4 R0.233*25.4 G5 F8.0
N470 XI0.466*25.4 R0.233*25.4 G5
N480 XI-0.008*25.4 G1
N490 ZI0.005*25.4 G1 F4.0
N500 XI-0.450*25.4 R0.225*25.4 G5 F8.0
N510 XI0.450*25.4 R0.225*25.4 G5
N520 XI-0.008*25.4 G1
N530 ZI0.006*25.4 G1 F4.0
N540 XI-0.434*25.4 R0.217*25.4 G5 F8.0
N550 XI0.434*25.4 R0.217*25.4 G5
N560 XI-0.008*25.4 G1
N570 ZI0.006*25.4 G1 F4.0
N580 XI-0.418*25.4 R0.209*25.4 G5 F8.0
N590 XI0.418*25.4 R0.209*25.4 G5
N600 XI-0.008*25.4 G1
N610 ZI0.005*25.4 G1 F4.0
N620 XI-0.402*25.4 R0.201*25.4 G5 F8.0
N630 XI0.402*25.4 R0.201*25.4 G5
N640 XI-0.009*25.4 G1
N650 ZI0.005*25.4 G1 F4.0
N660 XI-0.384*25.4 R0.192*25.4 G5 F8.0
N670 XI0.384*25.4 R0.192*25.4 G5
N680 XI-0.008*25.4 G1
N690 ZI0.005*25.4 G1 F4.0
N700 XI-0.368*25.4 R0.184*25.4 G5 F8.0
N710 XI0.368*25.4 R0.184*25.4 G5
N720 XI-0.009*25.4 G1
N730 ZI0.005*25.4 G1 F4.0
N740 XI-0.350*25.4 R0.175*25.4 G5 F8.0
N750 XI0.350*25.4 R0.175*25.4 G5
N760 XI-0.009*25.4 G1
N770 ZI0.005*25.4 G1 F4.0
N780 XI-0.332*25.4 R0.166*25.4 G5 F8.0
N790 XI0.332*25.4 R0.166*25.4 G5
N800 XI-0.009*25.4 G1
N810 ZI0.004*25.4 G1 F4.0
N820 XI-0.314*25.4 R0.157*25.4 G5 F8.0
N830 XI0.314*25.4 R0.157*25.4 G5
N840 XI-0.009*25.4 G1
N850 ZI0.004*25.4 G1 F4.0
N860 XI-0.296*25.4 R0.148*25.4 G5 F8.0
N870 XI0.296*25.4 R0.148*25.4 G5
N880 XI-0.009*25.4 G1
N890 ZI0.004*25.4 G1 F4.0
N900 XI-0.278*25.4 R0.139*25.4 G5 F8.0
N910 XI0.278*25.4 R0.139*25.4 G5
N920 XI-0.009*25.4 G1
N930 ZI0.004*25.4 G1 F4.0
N940 XI-0.260*25.4 R0.130*25.4 G5 F8.0
N950 XI0.260*25.4 R0.130*25.4 G5
N960 XI-0.009*25.4 G1
N970 ZI0.003*25.4 G1 F4.0
N980 XI-0.242*25.4 R0.121*25.4 G5 F8.0
N990 XI0.242*25.4 R0.121*25.4 G5
N1000 XI-0.010*25.4 G1
N1010 ZI0.003*25.4 G1 F4.0
N1020 XI-0.222*25.4 R0.111*25.4 G5 F8.0
N1030 XI0.222*25.4 R0.111*25.4 G5
N1040 XI-0.009*25.4 G1
N1050 ZI0.003*25.4 G1 F4.0
N1060 XI-0.204*25.4 R0.102*25.4 G5 F8.0
N1070 XI0.204*25.4 R0.102*25.4 G5
N1080 XI-0.010*25.4 G1
N1090 ZI0.003*25.4 G1 F4.0
N1100 XI-0.184*25.4 R0.092*25.4 G5 F8.0
N1110 XI0.184*25.4 R0.092*25.4 G5
N1120 XI-0.009*25.4 G1
N1130 ZI0.002*25.4 G1 F4.0
N1140 XI-0.166*25.4 R0.083*25.4 G5 F8.0
N1150 XI0.166*25.4 R0.083*25.4 G5
N1160 XI-0.010*25.4 G1
N1170 ZI0.003*25.4 G1 F4.0
N1180 XI-0.146*25.4 R0.073*25.4 G5 F8.0
N1190 XI0.146*25.4 R0.073*25.4 G5
N1200 XI-0.009*25.4 G1
N1210 ZI0.002*25.4 G1 F4.0
N1220 XI-0.128*25.4 R0.064*25.4 G5 F8.0
N1230 XI0.128*25.4 R0.064*25.4 G5
N1240 XI-0.010*25.4 G1
N1250 ZI0.001*25.4 G1 F4.0
N1260 XI-0.108*25.4 R0.054*25.4 G5 F8.0
N1270 XI0.108*25.4 R0.054*25.4 G5
N1280 XI-0.010*25.4 G1
N1290 ZI0.002*25.4 G1 F4.0
N1300 XI-0.088*25.4 R0.044*25.4 G5 F8.0
N1310 XI0.088*25.4 R0.044*25.4 G5
N1320 XI-0.010*25.4 G1
N1330 ZI0.001*25.4 G1 F4.0
N1340 XI-0.068*25.4 R0.034*25.4 G5 F8.0
N1350 XI0.068*25.4 R0.034*25.4 G5
N1360 XI-0.010*25.4 G1
N1370 ZI0.001*25.4 G1 F4.0
N1380 XI-0.048*25.4 R0.024*25.4 G5 F8.0
N1390 XI0.048*25.4 R0.024*25.4 G5
N1400 XI-0.009*25.4 G1
N1410 ZI0.001*25.4 G1 F4.0
N1420 XI-0.030*25.4 R0.015*25.4 G5 F8.0
N1430 XI0.030*25.4 R0.015*25.4 G5
N1440 XI-0.010*25.4 G1
N1450 ZI0.001*25.4 G1 F4.0
N1460 XI-0.010*25.4 R0.005*25.4 G5 F8.0
N1470 XI0.010*25.4 R0.005*25.4 G5
N1480 ZI-0.750*25.4 G0
N1490 L=POFF

From contributor V:
"There is no special G-code to do the bowl shape, just x,y and z moves with a ball nosed endmill." You're stepping it? I was hoping to learn a command for an arc in the z axis.

From contributor W:
Yes, the Mastercam 2-D swept toolpath will step it, as for arcs in Z that will look something like this.

N40 G46 X0.000*25.4 Y0.000*25.4 TP1 PRF=-0.100*25.4 G40 L=PON M55 AX=X,Y,Z
N50 X0.000*25.4 Y0.000*25.4 Z0.000*25.4 G1 F4.0
N60 X1.000*25.4 Y0.000*25.4 Z0.000*25.4 I0.500*25.4 J0.000*25.4 K-0.375*25.4 G9 F8.0
N70 ZI-0.100*25.4 G1 F4.0