Showing results for 
Search instead for 
Do you mean 

Post Builder :Rotary call issue



I have an issue that just popped up in one of our post for a horizontal. I was having trouble with the tool wanting to unwind when it hit the max A axis setting which was set to max 360 min 0. I changed the min value to -360 and that particular path posted and ran thru vericut just fine. The problem is some of the other paths now have problems that will violate the part. What im seeing is two solutions being output that in theory will work, but due to the controle on the mill cause the A axis to spin 360 deg while in the part.


Anyone seen this issue before? I have looked in the initial move and the rapid section and they all seem to have the same call of MOM_out_angle_pos(0)


Please see attached code and pic for example. please note the intial call of A80 deg, then it feeds into the part and outputs an alternet solution of A80 deg as A-280 causing the violation.


Thanks, Damian


G0 Z5.0179
G91 G28 Z0
G0 G90 G54
X.185 Y5.9863
G43 H#3026 Z4.7907
G1 X.1845 Y5.9818 Z.8887 A-280. F60.
X.1834 Y5.9699 Z.8468
X.1816 Y5.9509 Z.8077
X.1792 Y5.9254 Z.7724
X.1762 Y5.8943 Z.7421





Re: Post Builder :Rotary call issue

That's pretty nasty, not sure why the post would want to do that.  I'd report to GTAC.


Ugly fix

Add a "ROTATE/A axis/absolute/-280/(rotref-reference only)" (you may have to play a bit with the parameters) UDE

This "pre-positions" the A axis at -280, so it should start & stay there, and shouldn't do anything nasty


better fix

In postbuilder -> Machine tool tab -> Fourth axis item

What setting do you have chosen for "Axis Limit Violation Handling"

I'd suggest retract/re-engage (or if you're really into playing with posts, you could use "user defined")


I tend to leave my posts at 0-360 degrees, as we don't do much variable axis contouring (so we don't hit the limits)

I know others have posted here about adding a UDE to dynamically set limits (e.g. to +-9999.999) for specific operations

- you could add to a method, and set back to 0-360 at end of method

- if you keep track of operation type (mom_operation_type) you could do this automatically in the post for VASC operations


Ken Akerboom Sr CAx Systems Engr, Moog, Inc.
Production: NX10.0.3.5 MP5 + patch/TC11.2
I'd rather be e-steemed than e-diseaseled

Re: Post Builder :Rotary call issue

Thanks Ken.  it is set to retract / re-engage.  and yes we use 360 / 0 min max about 80% of the time. The parts are running now.  just had to use one post for all operations except the multi axis path and i used a copy of that post with min max set to 360 / -360 and posted that toolpath as a sub that was called from the main.  quick fix.... but now i need to fix the real problem.  i will look into the user defined option.  way over my head... but i enjoy learning.

Re: Post Builder :Rotary call issue

You might want to investigate what the values for all the *pos and axis limit variables are at the point where the "A80" is output and again where the "A-280" is output.

It could be "mom_prev_pos" or "mom_prev_out_angle_pos" or (?something) is changing between them, causing the issue.

Search here for the Moog_Show_Globals proc.

Figure out how to output the data at those 2 locations.

Save to different text files and compare using a text comparison utility (e.g. winmerge) to see what is changing.

Ken Akerboom Sr CAx Systems Engr, Moog, Inc.
Production: NX10.0.3.5 MP5 + patch/TC11.2
I'd rather be e-steemed than e-diseaseled

Re: Post Builder :Rotary call issue

Maybe you guys are beyond this but setting: set mom_kin_4th_axis_max_limit xxx set mom_kin_4th_axis_min_limit xxx MOM_reload_kinematics at any point should make the result of the next rotary decision stay within these limits.
Windows 7 Pro

Re: Post Builder :Rotary call issue

Update:  its somthing in the post that im not able to find.  what ever it is, its the error only shows up when min / max A axis limits are set to A360 / -anything greater than zero.  to make it a little stranger, i was able to get good code by setting all operations ( A0, A90, A270 ect ) to use CSYS in there MCS.  the one multi axis path had to be set to USE MAIN.  for somereason this did the trick.


Ken,  I have tried a few times in the past to get the MOOG_SHOW_VAR to work, but its above my skills.  but thanks for the sugestion.



Re: Post Builder :Rotary call issue

[ Edited ]

To get MOOG_Show_Globals to work make a cusom command in start of program and put the code there with uplevel #0{    } around it and call MOOG_Show_Globals when you want to see the global vars. You do need the MOOG_Show_Globals routine code which you can find in a search here.

Windows 7 Pro

Learn online

Solution Information