Showing results for 
Search instead for 
Did you mean: 

Post Builder --> 3Axis_Mill: Spindle Axis (0,1,0)


Hi to everyone,

(Post Builder Question; 3axis milling machine)


I tried, but without success, to set-up the axis of the spindle along the Y axis.

I sat down---> Post Builder: Machine Tool Tab: Initial Spindle Axis (0,1,0)

This setting did not have any effect.


3Axis Milling Machine (MAHO 1000 CNC432; two spindle settings)

1st setting (spindle 0,0,1) XZ Table, Z Spindle (horizontal),  (G17)

2nd setting(spindle 0,1,0)  XZ Table, Y-Spindle (vertical),  (G18)


Fot the 1st setting (Z-spindle Axis Horizontal) is quite simple;

For the 2nd setting (Y-spindle Axis vertical) I do not have idea.


Inside old NX MDFG (Machine Data file Generator) solution of that "problem" is very simple:

Machine Tool Motion Control -> Linear Motion -> Machine Coordinate Spindle Axis = Positive Y Axis

NX Planar tool path (XY plane) postprocesed (using GPM)  to XZ machine table and executed (cutting) with milling cutter along Y-axis.


But ... How to set the same configuration using Post Builder?

NX10 Help ---> MOM variables and procedures for kinematics:

Quote "Defines a vector that establishes the spindle axis of  the machine tool.  For three axis posts it is always (0,0,1). May be set to (1,0,0) or (-1,0,0) for mill  turns.  Otherwise it is set to (0,0,1).  Is used for  simulated cycles, rotary axis re-engage and mill  turns. "


For 3Axis Mill ALWAYS (0,0,1) ???  Why?

Is it possible MDFG has this option and the POST BUILDER does not have it?


Generally speaking, is it possible to set Spindle Axis along vector, diferent than (0,0,1) ?

Is it possible to set the main spindle vector e.g. (0.707, 0.707, 0) for 3Axis milling machine?

MAHO can set a fixed spindle in the direction of any vector from  (0,1,0) to (1,0,0)


Does anyone have an idea of how to solve this problem?
I beg for help.


Best Regrads











Re: Post Builder --> 3Axis_Mill: Spindle Axis (0,1,0)

Solution Partner Phenom Solution Partner Phenom
Solution Partner Phenom


I assume, head is positioned manually? and coordinate system stays untouched: Z-axis on the machine always points UP, doesn't matter how the real head is oriented?

And this machine also don't have any nc-functions to tilt working plane?


If yes, my guess is:
don't care about initial spindle axis in postprocessor and leave it as it actually is on the machine: 0,0,1.

And you will always get correct coordinates using mom_mcs_goto instead of mom_pos - doesn't matter how the head is oriented..

mom_mcs_goto - will output exactly the same coordinates as you can see in CLS


- I'm not sure about it, but this is what I would check first.


Marek Pawlus, NCmatic

Development: C#, Tcl/Tk, CSE

Re: Post Builder --> 3Axis_Mill: Spindle Axis (0,1,0)


Tnx Marek for express answer;

A couple of explanations: Machine working Table is always XZ; Y-Axis is alwas VERTICAL (point UP)

a) The spindle can be horizontal, spindle vector (0,0,1) Machine Mode G17

b) The spindle can change the orientation, the additional head can be turned to the vertical position (horizontal spindle inactive - blocked), spindle vector (0,1,0) Machine Mode G18

See Att. figure: MAHO_Hor-Vert.pngMAHO_hor_Vert

 I've postprocessed NX Tool Path (using OLD NX module GPM) Twice:


CLS file:

$$ centerline data


1st POSTPROCESSING for the HORIZONTAL (0,0,1) Spindle (Z-Axis)

N999015 (MAHO - Spindle = Z-Axis)
N10 G17
N11 G52 T1 M67
N13 G90 G71 G0 Z30.
N14 X10.171 Y43.617
N15 Z23.
N16 G1 Z20. F250.
N17 G3 X16.34 Y48.301 I7.68 J53.301
N18 G1 X32.68 Y76.603
N19 G2 X67.321 Y76.603 I50. J66.603
N20 G1 X100. Y20.
N21 G2 X82.68 Y-10. I82.68 J10.
N22 G1 X17.321
N23 G2 X0. Y20. I17.321 J10.
N24 G1 X16.34 Y48.301
N25 G3 X17.312 Y55.986 I7.68 J53.301
N26 G1 Z23.
N27 G0 Z30.
N30 M30



2nd POSTPROCESSING for VERTICAL (0,1,0) Spindle (Y-Axis)

N999013(MAHO- Spindle = Y-Axis)
N10 G18
N12 G52 T1 M67
N13 G90 G71 G0 Y30.
N14 X-10.171 Z43.617
N15 Y23.
N16 G1 Y20. F250.
N17 G3 X-16.34 Z48.301 I-7.68 K53.301
N18 G1 X-32.68 Z76.603
N19 G2 X-67.321 Z76.603 I-50. K66.603
N20 G1 X-100. Z20.
N21 G2 X-82.68 Z-10. I-82.68 K10.
N22 G1 X-17.321
N23 G2 X0. Z20. I-17.321 K10.
N24 G1 X-16.34 Z48.301
N25 G3 X-17.312 Z55.986 I-7.68 K53.301
N26 G1 Y23.
N27 G0 Y30.
N30 M30


Both Output CNC Code is corect, obtained from the same CLS !


Everthing is corect using OLD NX module GPM (Graphics Postprocessor Module); Postprocessor definition is generated using MDFG (Machine Data file Generator).


The problem is,  these modules have been retired (Last instalation inside NX6).
These modules do not exist in NX10, NX11, ...

I would get the same output using Post Builder!


How to define Spindle Axis (0,1,0), for 3-Axis milling machine,  inside Post Builder?

is it Possible?


thanks in advance

Best Regards










Re: Post Builder --> 3Axis_Mill: Spindle Axis (0,1,0)

I am pretty sure I don't understand what problem you are having - but I started an NX10 3 axis generic post and a part - in the post set "Initial Spindle Axis" to 0,1,0. I put one generic motion op along the MCS Y with a circle and got this when posting. Are you asking that the post put coordinates out without regard to MCS? Without looking close at it - I am not sure what the problem is (other than the G18 needing to come out earlier for the G43.) % N0010 G40 G17 G90 G70 N0020 G91 G28 Z0.0 N0030 T01 M06 N0040 G00 G90 X-1. Z1. S0 M03 N0050 G43 Y2. H01 N0060 G18 G03 Z-1. I0.0 K-1. F600. N0070 M02 %
Windows 10 Pro

Re: Post Builder --> 3Axis_Mill: Spindle Axis (0,1,0)

N0010 G40 G17 G90 G70
N0020 G91 G28 Z0.0
N0030 T01 M06
N0040 G00 G90 X-1. Z1. S0 M03
N0050 G43 Y2. H01
N0060 G18 G03 Z-1. I0.0 K-1. F600.
N0070 M02
Windows 10 Pro

Re: Post Builder --> 3Axis_Mill: Spindle Axis (0,1,0)

Gears Phenom Gears Phenom
Gears Phenom

I do one test.

I set initial spindle axis 001.


Bez názvu.png

I think output is good - XY-Z and XZ-Y.

#♫ PB, 5ax, itnc, nx, vericut ♫ #

Re: Post Builder --> 3Axis_Mill: Spindle Axis (0,1,0)


Thank you for your express response!

Your CNC output looks OK; i need to know how to looks like your input Tool Path (CLS).

I'll try to simplify the question.

Inside NX generate simple tool path (planar or 3D; does not matter)

with fixed Tool Axis (0,0,1); NX generate  ---> GOTO/x,y,z,0,0,1

Postprocesing for 3Axis Mill ---> XYZ (Spindle along Z-Axis) is trivial.

Postprocessing for 3axis Mill ---> XYZ (Spindle along Y-Axis) is probem for me.

This is a very realistic problem in the production facility.
The same workpiece, the same tool path generated on the NX for vertical 3Axis milling machine,

1st) postproces for "regular" XYZ (Z spindle, vertical) milling machine

2nd) postproces the same Tool Path (GOTO/x,y,z,0,0,1) for XYZ (Y spindle, vertical) milling machine.

I need conversion from GOTO/x,y,z,0,0,1 to

N## G01 X###.### Y###.### Z ###.### but Y is Spindle Axis .

NX Path x_coord ----> -X_coord on milling machine (minus X)

NX Path y_coord ----> Z_coord on the milling machine

NX Path z_coord ---> Y_coord on the milling machine (Spindle in Vertical position; spindle vector 0,1,0)


postprocessing from NX path GOTO/x,y,z,0,1,0 to G01 X_ Y_ Z_ (Y spindle Axis) is quite clear; inside PB settings "Initial Spindle Axis 0,1,0; generate corect output.


Question is How to postprocess GOTO/x,y,z,0,0,1 to G01 X_ Y_ Z_ (Y spindle Axis) ?

Settings inside PB "initial spindle Axis 0,1,0"  ---> has no efect for tool path GOTO/x,y,z,0,0,1


Best Regards







Re: Post Builder --> 3Axis_Mill: Spindle Axis (0,1,0)


Tnx for quick response!

Your output is correct but your input is not.

Left side of the Figure; your Spindle vector is 0,1,0.

Tool Path on the Left side looks like GOTO/x,y,z,0,1,0

Tool Path on the Right side looks like GOTO/x,y,z,0,0,1


My question is: Is it possible to convert tool path GOTO/x,y,z,0,0,1 for Vertical Milling 3Axis machine with spindle along Y-Axis?

I need postprocesig

from GOTO/x,y,z,0,0,1

to N## G01 X###.### Y###.### Z###.### but Y is spindle Axis

NX Path x_coord ---> -X_coord (minus X) on Milling machine

NX Path y_coord ---> Z_coord

NX Path z_coord ---> Y_Coord (Vertical spindle; spindle vector 0,1,0)


Postprocessing Tool Path GOTO/x,y,z,0,1,0 to XYZ (Y vertical spindle) is not complicated.

I dont know how to convert NX Tool Path GOTO/x,y,z,0,0,1 to XYZ (Y vertical spindle)


Best Regards




Re: Post Builder --> 3Axis_Mill: Spindle Axis (0,1,0)

Gears Phenom Gears Phenom
Gears Phenom


sorry if I dont understand it well, but If you have Y spindle axis, vertical and output is this:

N0040 G00 G90 X-55.417 Z74.997 S650 M03
N0050 G43 Y-100.03 H00
N0060 Y-68.

 what is wrong?


2. if you want do do postprocess from the same part where is ZM + vector pointing up and you want Y in code - spindle moving in Z direction.


...there I see problem now


maybe reseting the adress leaders + change expresion in adresses/ mom_pos



#♫ PB, 5ax, itnc, nx, vericut ♫ #

Re: Post Builder --> 3Axis_Mill: Spindle Axis (0,1,0)

PLM World Member Phenom PLM World Member Phenom
PLM World Member Phenom

Instead of customizing the post why not use a Head ?


This will change to output for you.  Thisis what I used to use in GPM and it works well in Post Builder withou having to do a lot of customization to the post.


John Joyce, Manufacturing Engineer,
Senior Aerospace

NX Vericut 8.0.3 - Statements and opinions are mine alone and do not reflect
the opinion of my employer or any other member of the human race

Learn online

Solution Information