FreeCAD Path doesn't have a 4th Axis operation (yet) but certain kinds of things should still be possible. For example, engraving or pocketing on a cylindrical surface.
I've seen other software, both open-source and commercial, that allow the user to map a linear axis to a rotary axis. I decided to try writing a 'Dressup' for FreeCAD Path to do this.
The workflow looks like this:
- First the user models shape and sets up the CAM operations as though it was a 2.5D job
- Next, the user selects the operation and applies the dressup. The dressup currently has only two properties. First select the axis mapping. For example, to map the X axis to the A rotary choose (x->a). Configure the radius of the cylinder we're mapping onto.
- The dressup executes and re-processes the base gcode.
- It removes all G2 and G3 arcs and substitutes them with straight lines. The accuracy or 'deflection' will be another property soon.
- The dressup then substitutes the axis parameter for each G1 move. It calculates the rotational distance corresponding to the linear distance in the original move.
If the move is a pure rotary move, it also recalculates the feed rate and inserts a rotational velocity. If the move is a coordinated move of linear and rotoray, no change is made. The controller (at least linuxcnc) will handle the conversion internally and process the move as a coordinated move naturally.
FreeCAD can't render rotary moves in the A or B axis so the gcode backplot just looks like lines in XZ (or YZ) Otherwise, it's handled the same. Postprocessing spits out the final gcode for linuxcnc and it's ready to run. Here's a little video I did cutting the FreeCAD logo in PVC.
User Shaise has been doing some very cool stuff simulating Path operations. Check out the video to see an example
A lot of projects include multiple parts made from a single sheet of uniform material - like a sheet of plywood. This causes some trouble in a CAD/CAM application
- You want to keep your overall model/assembly intact, but the build assembly isn't the same as the cutting layout.
- You need to translate and rotate parts to maximize material usage
- You want to group operations to minimize tool changes on the machine.
For a while, I've been promising that we would include a solution to this in FreeCAD Path and now we're finally getting to it thanks to facilities in the Arch workbench - Panels!
Arch Panels are designed for exactly this purpose - designing parts from uniform sheet stock. In Arch, you can define a panel object and then create a 'Panel Cut' to represent the 2D cut pattern for that part. These 2D cuts can then be aggregated into a 'Panel Sheet' for cutting.
Is that confusing? Then just watch the video. It'll make sense, trust me. And for good measure, we now have a post-processor for smoothieboard, an exporter for linuxcnc tooltables, and improved tool handling. So there ya go.
This is a multi-part series that demonstrates how custom paths can be created using a python macro in FreeCAD
final macro: https://gist.github.com/sliptonic/c3b35a5a9f1afdf2d3f2b4886375dc33
Dogbone dressup modifies inside-corner cuts to remove material missed by a cylindrical cutter.
Mill Facing adds additional functionality to the FreeCAD Path Workbench.
For users of Path Workbench in FreeCAD, here's an introduction to the Contour Operation
I posted this week about getting my great-uncle's wagon as a gift. I also mentioned going to his wake and seeing many others like it in his workshop. My dad read that post and amazingly dug up some pictures that were taken that very day of that shop. I've never seen these pictures until now and looking at them is strange. My memories are both confirmed and enhanced. Details I'd forgotten suddenly rush back.
In the interest of full disclosure, there was another picture taken that day and this one is nothing like I remember at all. Seriously, I remember being the absolute height of fashion and damn handsome man.
Welcome to Throwback Thursday... Let's never speak of this again.
endured celebrated my fiftieth birthday. As a gift, my father gave me this wagon that he's had for many years. It was originally made by Dad's uncle, Art Nelson near Brainerd, Minnesota, sometime in the 60's. I used to look at it when I was a kid and it was one of my favorite things.
Art was a carpenter and making these was his hobby. When he passed away I was about 14. I remember going to the wake and the guys all gathered in Art's workshop. It was tidy and warm and there were dozens of wagons like this on shelves - all different. I have no idea what happened to them all.