I'm trying to simulate a part which requires many turns of our 5th axis on a trunnion style machine setup. The 5th axis (C) stops rotating visually at ~10 000 degrees and I no longer maintain my tool axis so the tool tip runs underneath the part which is not what I want, of course. I have some examples below:
I don't know why the dynamic output G code uses C values of > 360. It posts out in program form just fine so why would it look differently when it dynamically posts out during simulation? I'm not sure how to set up my C axis to restart at C0 once it hits C360. My MCF file has my C axis as an Unlimited Axis. The kinematics chain rotary table is set up as below (also as Unlimited):
Is there a setting somewhere to increase the max rotary values of my 5th axis anywhere? I figured Unlimited would do it but I must be missing something.
Solved! Go to Solution.
Before starting with the discussion, please let us know which NX Version and which controller is used for your setup.
Question for clarification.
Do you expect the posted NC code output of the C axis should always be between 0 and 360 and the axis is positioning in shorted way?
I'm using Windows 7 x64 with NX 9.0.3 MP11 and it's a standard Fanuc control. The C values over 360 don't bother me too much because the posted code is correct but I just wonder if it is contributing to the C axis no longer rotating above 10 000 degrees. Thanks.
Would you see the simulation issue a limit warning at C10.000?
In that case set the soft limits to +/- 10000.
In NX9 you need to first switch axis type to rotary; set the limits, switch back to unlimited rotary. That you do not see the soft limits for unlimited rotary is fixed in NX10.0.3
I wasn't getting any warnings or errors when the C axis came close to 10 000. The "Details" window didn't say anything special. When I changed the C axis to Rotary, the hard and soft limits were both set to -572957795130823540000.0 to 572957795130823540000.0. I hit Ok, then went back in and changed it back to Rotary Unlimited, but it still stopped rotating at 10 360 (instead of 10 000). I also tried changing the History Buffer to Unlimited but that doesn't help either.
I haven't tried this in NX 10 yet (we are upgrading soon). Could that potentially fix the issue?
Still not 100% sure what your are targeting but see this:
Requirement: I do have NC Code larger than 360, but simulation should warn me if axis reaches C=10000 or similar.
Assign C axis as rotary and set limits to your C axis in the model e.g. minimum -10.000 maximum 10.000. That shoudl do it.
I don't know what the post will do when he gets these informtiaon, but tha tis another topic.
Ok there seems to be an issue with posting my code. When I post the program without the machine attached (using the posts in the MACH/resource/postprocessor location), I get good code. When I bring the machine in and post from there (using the same exact Postprocessor files), I get these high C values. The Simulation videos said the MCF limits aren't taken into account during IS&V so I imagine this has to do with the kinematics I set up. Please see my differing posted code (again, posted with the same exact Post files) below. This is the same section of code (note the same X and Y values). I also show my C_TABLE Axis setup in the machine kinematics.
Any idea on the different posted code?
On another note, I tried to simulate the correctly posted code using the Simulate Machine Code File under Tools and I still ran into the C axis no longer rotating at 10 000 degrees.
I appreciate your help on this one.
So there are two problems, let's make that clear. Mixing it up will make it harder to give solutions.
Posted output is different when using a kim model with unlimited C axis.
I am pretty sure there is a solution; need to talk to Post experts.
I wonder why that is a problem, because you state:
"The C values over 360 don't bother me too much because the posted code is correct...."
Question: If the good and correct code is the one with values NOT larger than 360 how to you can simulate C axis position of 10.000 and see if it is stopping?
I am pretty sure I misunderstood something here.
When you post with a machine model/kinematics loaded, the machine kinematics limits OVERRIDE the post axis limits.
First thing I would do in your case is change the machine kinematics to 0-360...
Note for Siemens:
This IS AN ISSUE!
Say I have a mill-turn (i.e. an Integrex)
For me, MOST of the time, I want the C axis limits to be 0-360, (actually 0 - 359.999) so there is only ONE valid C axis value for any orientation (e.g. for drilliing or 2.5 axis type milling operations) (especially when probing, I don't want to probe at C10, then C370, then at C730, then at C-350...)
But OCCASIONALLY, I want to open up those limits (e.g. if I am machining the groove for a ball screw that has 10 turns, I don't want to "retract/reposition C/re-engage" every 360 degrees (that's a great way to leave tool marks - just what you DON'T want in that kind of groove!) - I want to cut the whole thing in one cut, so (in the post) I want to "on-the-fly" change the C axis limits to +/- 9999.999 degrees (or whatever)
Currently, if there are machine kinematics loaded, there is no way I can do that (that I know of).
Production: NX10.0.3.5 MP5 + patch/TC11.2
I'd rather be e-steemed than e-diseaseled