Kinematic toolpath. Yet another phrase that one rarely associates with love or other romantic notions. But, as I explained in another recent post, I became aware of how much Colin Gilchrist of Gilchrist Consulting Services values TopSolid 7 when he began releasing a series of blog posts sharing the 15 reasons he loves the TopSolid platform. Colin is a highly experienced CNC programmer who consults leading manufacturers, develops CNC training ciriculum and serves as a CNC instructor.
Colin’s posts impressed me. Of course, I liked his posts because he is fond of the TopSolid solution. But, I was mostly impressed by his insightful understanding of how TopSolid 7 meets the demands of today’s ever-increasing manufacturing complexity. In the end, we decided to collaborate to create an eBook which we titled “The Confessions of a Passionate CNC Programmer: The Top 15 Reasons I Love TopSolid.”
Below, I have shared his seventh reason for loving TopSolid. I hope you find it interesting and encourage you to download the full ebook – there are even three bonus reasons in addition to the primary fifteen primary reasons.
Reason #7 – Top 15 Reasons I Love TopSolid
With TopSolid, you begin by creating a kinematic assembly model of your machine. (Note that you don’t actually have to do this, you aren’t forced to use a machine definition while programming, but if you don’t capture the machine knowledge up-front, you won’t get all the benefits that TopSolid has to offer you during your programming process.)
Simply put, a kinematic model of a machine defines the linear and rotary axis, their travel limits, and their assembly relationship between each component. A kinematic model captures the layout of the machine, and is built as a physical representation of the machine at the machine home position. When you place a part to be machined on this model, TopSolid knows where the tool change positions are (we define that), how many pockets are in the tool changer, and the positions of the work offsets when we load a part on the machine table.
Because TopSolid lets you accurately define the kinematic motions of your machine, the developers did something really smart. Missler Software designed TopSolid to capture the kinematic capabilities of your machine, and use those capabilities during the creation of toolpaths. This is actually an incredible feat, as there around 220 different configurations of 5-axis milling machines on the market.
What was once a simple matter of knowing a few basic G-codes and M-codes is being changed as the lines between types of machines continues to blur. We now have turn mills, mill turns, lathes with multiple turrets, or heads, or tailstocks, or steady-rests, or some other unique features. And guess what? There is no such thing as “the same machine” anymore. At the shop where I work, we have a line of “identical” mill turn machine models. But at each machine, differences in the parameter bit switches radically alter the machine behavior for the different codes being read. Additionally, one of the machines was a demo model, so it is missing an option and behaves differently than the other machines sitting next to it.
Because TopSolid captures the kinematic knowledge of your machine up-front, they can use an engine in the background to present the available options for your machine during the toolpath creation. Why is that important?
Take something that would seem fairly simple at first glance – milling the outside contour of a part. You take a 2D end milling path, and you’ve got a path that cuts around the outside of your part. Now you get to the machine, only to realize you’ve run out of Y axis travel by .750. (This is a scenario that has happened to me countless times over my career; running out of travel, or needing to invoke some option on the machine at the operation level. Maybe it is turning on/off high speed, or turning on coordinate or plane potation…) Now you have to go back to the drawing board, and realize that you’ve got enough travel if you engage the C axis of the table. But how do you do that? In most CAM systems, you’ve got to do some complex math to take the linear/circular arc moves, break them up into tool vector positions, then feed those vectors to the part of the post engine that calculates linear/rotary position. This is a difficult process that only the most talented and mathematically inclined programmers understand or know how to implement. Once that logic is written into your post, it becomes a simple matter of setting a variable switch value, but it requires you to have a great post processor developer to implement. You are also locked into paying an exorbitant amount of money for a post processor.
Here is something that should upset you about your current CAM software. With TopSolid, post processors are inexpensive. This is because all the multi-axes math and rotary calculations are already done – you already paid for it. It is the kinematic awareness that is TopSolid. Why would you pay for the calculations twice? Most TopSolid post processors are free, with minimal changes needed. And yes, you can edit or build your own posts as well. The TopSolid posting engine is written in C#, a modern language based on the Microsoft.NET Framework, and gives you access to all the modern programming tools for writing a post processor.
Think about it. By knowing how to position your machine to cut a toolpath in your part material, TopSolid is calculating the actual tool orientation on the machine, using real machine coordinates. If the path does not position correctly, you catch it in simulation, go back into the toolpath, and change the angle/pair value for the rotary positions, and use the inter-link movement editor if necessary to control the retract/ approach moves. This means all of the machine movements are programmed inside of TopSolid, and the post processor is literally just formatting strings for text output.
TopSolid does things differently. Since the machine capabilities are known, you just need to enable a checkbox to switch from milling to turning mode, and this gives you C axis output while only moving the tool locally in XY, keeping the cutter tangent to your part shape as the table of the machine spins. This is all enabled for you. In fact, you can go into the “multi-axes” settings for any 2D or 3D toolpath, and essentially transform the output into complex 4X or 5X motion. Of tremendous additional value is the fact that machine knowledge is captured and made available to you for future use.
You can control the driven axis for rotary motion, enable different machining modes, pick the start/end angles for the operation, give the machine a different travel range and rotation unrolling limit (this keeps the cables from getting wrapped up during machining), and so much more. This knowledge of how your machine actually functions is presented to you during programming. You get to see the immediate results of making a parameter change in the integrated machine simulation. Giving you a what you see is what you get (WYSIWYG) result from posting the NC code after running it through simulation.
The simulation inside of TopSolid won’t do things like simulate an on-machine macro. For high-level simulation of NC code and machine processes, I would still recommend a software verification package like CGTech’s Vericut, but TopSolid will get you to a finished NC Program much faster than when using any other CAM system on the market.
Features like kinematic awareness, at the toolpath operation level, put TopSolid far above every other CAM system on the market today.
Using TopSolid 7 gives me a competitive advantage over everyone, since I spend more time programming toolpaths, and less time worrying about controlling my machine. When I need an option for controlling machine output, it’s just there.
Want to download the full Confessions of a Passionate CNC Programmer eBook? Click here.