Why buy a custom CNC post-processor?
CNC post-processors can do many other things besides translating CLDATA to NC machine codes. For example a CNC post-processor may summarize axes travels, feed and speed limits, job run-time and tool usage information, which enables better selection and scheduling of resources.
More sophisticated CNC post-processors may validate the program before it is run by the machine tool. There are many simple rules that a CNC post can follow, with warning messages displayed when these rules are violated. Some examples: Noting if a tool is not selected near the start of the program, warning when motions at feed rate are done with a stopped spindle, flagging long series of positioning moves, or conversely, flagging feed moves at or above the program clearance plane, or noting if diameter or length compensation switches are not changed when a tool is.
Beyond simple validation comes correction. There are many situations where a CNC post-processor can detect an error and correct it. Examples include: cycles left active during a tool change (they should be temporarily cancelled), selecting an incorrect or nonexistent spindle gear range (the post-processor should select a range that supports the speed), or specifying an unavailable coolant type (the CNC post should select the next best type).
The best CNC post-processors maintain a global picture of the entire job at all times, using upcoming events to help make decisions about current ones. The NC programmer uses this information to optimize the job without intervention. For example: pre-selecting the next tool as soon as physically possible, segmenting a tape at a tool change if the entire upcoming tool path will not fit on the current reel, selecting a spindle gear that best fits the current and subsequent speed requirements, or switching intelligently between parallel axes (Z and W) based on the types of upcoming operations and available travel limits.
CNC Post-processors can also work around limitations and bugs in the CAM system or in the machine tool. It is generally far easier to change the CNC post than it is to get a new revision of the CAM system, or a new executive revision for the NC controller.
The important point to be made here is that the NC programmer should not be concerned about machine tool or machine operator idiosyncrasies that do not directly affect the production of a job. Wherever possible, good CNC post-processors should hide these details within.
Standard CAM systems, standard NC machines, standard CLDATA and standard CNC post-processor vocabulary can not all be mixed together to instantly produce a working system. There are too many variables in the real world, and standards are too restricted in scope, to achieve integration with off-the-shelf components.