Whether you are a serious 3D printing user or not, you have probably heard of Grasshopper, a popular add on of 3D modeling software Rhino. Grasshopper lets you use scripts and algorithms to create 3D models and generative designs. It is one of the quickest ways through which designers can get started with generative designs and lets you in a visual build things such as parametric designs or designs based on datasets. You may not yet be familiar with other features, however, recently outlined by University of Pennsylvania’s Hao Zheng in ‘Caterpillar – A GCode Translator in Grasshopper.’ Here, we learn more about a new plug-in Caterpillar and its ability to unleash full use of the three degrees of freedom of Computer Numerically Controlled (CNC) machines and non-traditional 3D printing. Caterpillar lets you generate Gcode from within Grasshopper. Your dataset or generative algorithm or existing model can now be quickly turned into Gcode that you can then optimize for 3D printing. This will enable people to quickly implement very creative and new 3D printing methods and techniques as well as enable the making of more non-traditional 3D printing processes.
Zheng points out what many of have noticed over time, as 3D printing users are simply not satisfied to stop and enjoy what has been supplied to them in terms of what is now traditional 3D printing in the layer-by-layer, bottom-to-top approach. For better control, Zheng postulates that users must be able to use ‘the three degrees of freedom’ – meaning X, Y, and Z and also go beyond them. More degrees of freedom and different ways of printing mean more applications are possible. The developers have added to conventional methods previously with accompaniments such as robotic arms, 3D printers that print on curved surfaces, as well as those that extrude alternative materials like wire.
For Caterpillar to do the necessary work, you must first give it the necessary data required. This means printers settings, to include many different parameters:
“Printer bed size (MM) contains three numbers (x, y, z), indicating the maximum printing size of the printer. Heated bed temperature (°C), extruder temperature (°C), and filament diameter (MM) are based on the printing material, which normally will not be changed once settled. Layer height (MM) and subdivision distance (MM) control the precision of the printing, while printing speed (%), moving speed (%), retraction speed (%), and retraction distance (MM) control how fast the printer will act when printing, moving without printing, and retracting materials. Extruder width (%) and extruder multiplier (%) together decide the width of the printed toolpaths.”
Most users can just go with their default settings to be safe, but there may be some cases where you want to customize without default restriction. Infill settings must be considered too if you are slicing the model to provide infill.
For slicer and toolpath generation, there are numerous options:
- Planar slicer
- Curved slicer
- Curved toolpaths for special use
- User-defined toolpaths
The workflow of the GCode generator then creates toolpaths based on points based on inputted curves, and optimization occurs:
“So before inputting the given curves to the dividing component, the program will detect and separate curved toolpaths and linear toolpaths, then divide the curved toolpaths as usual and extract the start and end points to represent the linear toolpaths.”
The GCode decoder then translates text files, assisting users in further design and control through keywords extraction and model rebuilding.
“In the future, non-conventional customized 3D printing will be highly developed for both educational and industrial purposes,” concludes Zheng. “Low-cost 3-axis 3D printers with extra toolkits can handle a variety of tasks, providing an alternative for expensive robotic fabrication.”
In 3D printing, the central theme is customization. Users can create on an infinite scale, whenever they want, rapidly and affordability. Hardware choices continue to expand with the needs of 3D printing enthusiasts around the world, as do materials. Changes and evolution in software tend to be even more sweeping—and desired—as computer programs allow us to design objects and then control printing processes. While add-ons, plug-ins, and updates are continually available, software programs drive innovations—whether in allowing more advanced bioprinting and tissue engineering, scanning, or simulation of other processes. Caterpillar makes is much easier to implement, design and develop completely new 3D printing techniques and we can not wait to see the impact that this will have.
What do you think of this news? Let us know your thoughts! Join the discussion of this and other 3D printing topics at 3DPrintBoard.com.
[Source / Images: ‘Caterpillar – A GCode Translator in Grasshopper]