Turbocam Inc. has been cutting sophisticated turbine and impeller blade geometries on multi-axis computer numerically controlled (CNC) mills for more than 25 years. Over the years, its team has developed many specialized software modules to execute dozens upon dozens of specialized operations and toolpaths associated with this complex work. By 2007, this software, which had captured and encapsulated two decades of specialized manufacturing experience into a programming environment, became both a significant competitive advantage and a valuable corporate asset.
Software engineer Gary Longstreet, left, and Nick Dean, a mechanical engineer, collaborate on the ongoing development of Turbocam s proprietary CAM capabilities within the Mastercam X6 environment.
But Turbocam’s software development also reached a significant fork in the road. Its software infrastructure, based on a now-unsupported CAM platform, script-based coding and UNIX-based hardware and software, was becoming old and expensive to maintain. Support of the company’s current CAM software development and utilization environment was unsustainable.
“We were convinced that taking our proprietary software and transitioning it into a modern CAM programming environment was mission critical,” said Rob Bujeaud, Turbocam’s vice president of engineering. “We chose Mastercam as the back end for this major step forward because it is a solid and well-supported program that gives us the tools needed to get deep into the program and do whatever we want to do, exactly the way we want to do it. The primary thing for us was Mastercam’s openness.”
SDK and C-hooks
“It is not the usual thing for a manufacturing company to come to a software vender and say, ‘We really like your product and we want to take it apart and use the pieces to support our own manufacturing software,’” admits Nick Dean, Turbocam’s senior software developer. “However, our Mastercam reseller understood what we were looking to accomplish and jumped in to assist. They were instrumental in walking us through the Software Development Kit (SDK). When they couldn’t answer our question directly, they would find an expert at corporate Mastercam who would. For really specialized applications, Mastercam and our reseller even went as far as pointing out hidden functionality in the software that we wouldn’t have known about.”
Rebuilding a proprietary software infrastructure was not a trivial project. It would involve the porting of a myriad of scripts and algorithms that had been created over two decades, on an as-needed basis by various Turbocam engineers into a modern software development system, C++. These modules would then be organized into a coherent CAM software framework.
The interface does not look different from standard Mastercam, but most of the applications used by the CAM programmers are based on code written at Turbocam. They have been incorporated into Mastercam as C-hooks, which are proprietary modules that behave as part of the program but do not alter any of Mastercam’s underlying code. With this approach, C-hooks are used to pull geometry or a surface out of the Mastercam model, manipulate it, create a toolpath for it, and then plug it back into the Mastercam model.
Once the program has been completed, it is delivered to Turbocam’s postprocessor, TruePath by Camplete. Camplete performs crash detection and part verification based on the particular CNC machine’s unique kinematics. This approach has proven to be so accurate that today, 98% of all the parts manufactured by Turbocam are produced without doing a test piece. This has resulted in a substantial increase in productivity.
Extracting all of the valuable data from the old programming system and repackaging into a modern one based on C++, PC-based hardware, and a Mastercam CAM engine was an enormous task. Turbocam contracted two full-time software engineers to work on the project, and it took them two years to deliver the final product in 2009. Six months later, all of the five-axis CAM programming was being done within the company’s new proprietary CAM system.
Today, Turbocam has nearly 30 seats of Mastercam X6 (Multiaxis, Mill, Lathe, and Design) software. This software is used by more than 20 programmers who support approximately 150 CNC machining centers "mostly five-axis "in the United States, United Kingdom, Romania and India. Today, Turbocam has nearly 500 employees worldwide.
Dean, a mechanical engineer, and Gary Longstreet, a software engineer, continue to develop the proprietary CAM program. Dean and Longstreet have adjoining cubicles, and they collaborate with each other often on an hourly basis, each deferring to the other’s areas of expertise. The number of specialized C-hook applications in the programming environment has reached 135.
As much as Turbocam prides itself on the competitive advantages of its proprietary CAM system, out-of-the-box Mastercam functionality is starting to carry some of the load, too. Individual CAM programmers have access to all of Mastercam’s standard features and toolpaths. In some emerging markets where Turbocam’s engineering knowledge base is just beginning to grow, programmers have chosen to use it as a primary programming tool. In addition, Turbocam made Mastercam X6 Lathe as its primary software for CNC lathe programming.
Turbocam is also taking advantage of Mastercam’s Backplot and Verify features to simulate toolpaths before they are sent to the TruePath postprocessor. Full machine toolpath simulation can be a time-consuming process. If errors are detected while the program is still being written, it can dramatically reduce the number of times that parts are rejected by TruePath and sent back for reprogramming in Mastercam. This has streamlined the workflow and increased programming productivity for complex parts.
This year, Turbocam became an early adopter of Mastercam X6. Longstreet explains that his company likes to adopt new versions as quickly as possible.
“We made the change quickly,” he adds. “Everything we have been concerned with works fine. And now our programmers are free to evaluate all of the new program features at their own pace.”
This is not to say that the transition was an easy one for Longstreet. Mastercam X6 introduced 64-bit computing, which required changing to Microsoft’s Visual Studio 2010, which complies with the latest C++ coding specifications. To keep all of its software development components current, Turbocam also adopted Microsoft’s Team Foundation System, a product lifecycle management (PLM) application. None of this was theoretically challenging, but did require Longstreet to spend two mind-numbing weeks adjusting all the settings in the new software development products so that they performed seamlessly with Turbocam’s 135 Mastercam C-hooks.
Now Turbocam’s CAM software supports Mastercam X6 in both 32- and 64-bit configurations in Windows 7 and XP. In addition, the company has an even more powerful software development environment that supports emerging new technologies affecting processing speed, security and multi-threading. CAM programmers can take advantage of Turbocam’s proprietary software or the latest out-of-the-box Mastercam toolpaths.