Creating a 5-Axis Mill Postprocessor
In this NX A to Z article, we are essentially going to talk about what the differences are between a typical 3 axis mill postprocessor and a 5 axis mill postprocessor. We are going to use the generic 5-axis table-table postprocessor that comes with NX.
So, fire up Post Builder and open m5actt.ui. This is one of the postprocessors that comes with NX and if you installed NX in the default directory, it will be in C:\Program Files\UGS\NX 7.5\MACH\resource\postprocessor. The m5actt stands for mill, 5-axis, A and C are the rotational axes and it is a table-table machine.
The General Parameters page doesn’t have anything specific to a 5-axis machine, so we will start with the Fourth Axis page. By the way, you decide the type of machine (table-table, head-table, etc.) when you create the postprocessor.
On the Fourth Axis page, other than the standard rotary axis settings, the important setting is the Machine Zero To 4th Axis Center. Typically, this is set to 0, 0, 0 and the G54 (or whatever offset you’re using) on the machine is located where the rotational axes intersect (keep in mind the Home Position on the General Parameters page will not be zero in this case). So if you have an A, C table-table machine, then G54 correlates to the point where the A and C axes of rotation intersect. The axes of rotation will not intersect perfectly, and most machines specify the distance between the axes of rotation and you put this number in the 4th Axis Center to 5th Axis Center setting on the Fifth Axis page as shown below. You will only have one value, so if your 4th axis rotates about X and your 5th axis rotates about Z, then you would put the 4th axis to 5th axis distance in Y.
The last thing that you have to do configuration wise is specify the axis leaders and the planes of rotation. You do this by clicking Configure on the Fourth Axis or Fifth Axis page (both buttons bring up the same dialog) and setting the configuration options as shown below.
One thing to note, if one of your axes does not rotate in one of the principal planes, you would select Other in the Plane of Rotation menu and then punch in the IJK components for the plane normal.
For the most part, all you have to change in the program is add the 4th and 5th axis leaders to the blocks where you want them to move. So if you have a block in the Program Start Sequence that homes everything, makes sure the A and C axes are in the block. Obviously, you also need the rotary axes in the Linear Move and Rapid Move blocks as shown below.
In the Machine Control section of the Program, you need to set up the Feedrates. So click on Feedrates and you’ll see the dialog below. Typically, you’ll use IPM for the Linear Only moves and FRN for everything else. You use FRN (inverse time federate) because if you use IPM or DPM and the move contains both linear and rotary movement, then the speed will be tied to either the rotary or linear axes and you will not get the desired surface speed – not only that, but the surface speed could potentially change during the ratio of linear movement to rotary movement changes. Using FRN ensures a constant surface speed.
One last thing unique to a 4 or 5 axis post is the clamp/unclamp commands. These are not included in the list of standard M codes and therefore are Custom Commands. So if you look at the Custom Commands, you’ll see Clamp Unclamp for each rotary axis. Often times, the Unclamp command is required by the machine in order to move a rotary axis while cutting. You just need to check the Custom Commands to make sure the M codes are right.
That's it. Have fun.