post processor, feedrate adjust command
post processor, feedrate adjust command
(OP)
In the post builder, there is a custom command, as follows..
#
# This custom command allows you to modify the feed rate number
# after it has been calculated by the system
#
global mom_feed_rate_number
set mom_sys_frn_factor 1.0
if [info exists mom_feed_rate_number] {
return [expr $mom_feed_rate_number * $mom_sys_frn_factor]
} else {
return 0.0
}
I've added this to a post, but nothing changes?
What i'd like to do is have a line at the start of the program where the operator can enter a percentage value which the posted feed will be factored to.
The controller is Fanuc, so pretty standard stuff.
Can anyone explain how to use this custom command or point me in the right direction?
#
# This custom command allows you to modify the feed rate number
# after it has been calculated by the system
#
global mom_feed_rate_number
set mom_sys_frn_factor 1.0
if [info exists mom_feed_rate_number] {
return [expr $mom_feed_rate_number * $mom_sys_frn_factor]
} else {
return 0.0
}
I've added this to a post, but nothing changes?
What i'd like to do is have a line at the start of the program where the operator can enter a percentage value which the posted feed will be factored to.
The controller is Fanuc, so pretty standard stuff.
Can anyone explain how to use this custom command or point me in the right direction?





RE: post processor, feedrate adjust command
What versions of NX and Post Builder are you using?
When you create a custom command there needs to be something in the post to trigger the procedure. Usually a user defined event.
Have you ever create a UDE or added one to a Post?
I have attached a presentation I did a couple of years ago on this topic.
Hope this helps
John Joyce
Tata Technologies
1675 Larimer St.
Denver, CO
www.myigetit.com
RE: post processor, feedrate adjust command
I'm using NX6.
Unfortunately i don't have powerpoint, i'll see if i can find somewhere to open it.
I had to add a user defined event once to force a rotation of B axis, but otherwise have no experience with them, any help much appreciated..
I just had a play, and added a "user defined" --- user defined event, into a toolpath, which read "feed_rate_number", but all this did was add that text in brackets into the posted prog.
I'm missing something, the factor must also be output, outside of brackets.
RE: post processor, feedrate adjust command
You can edit the post to change the FRN factor for what you need.
John Joyce
Tata Technologies
1675 Larimer St.
Denver, CO
www.myigetit.com
RE: post processor, feedrate adjust command
Various feeds have been output, F8.085, F25, F5.24, F83.333, F100, F76.394 etc.
I'm still unclear as to how the operator can alter the feed factor, and what controls these varying feeds ??
RE: post processor, feedrate adjust command
John Joyce
Tata Technologies
1675 Larimer St.
Denver, CO
www.myigetit.com
RE: post processor, feedrate adjust command
Are you actually trying to output inverse time feed?
If you are dealing with "3 axis" or "3 and a half axis" motion, you do not want inverse time.
FRN (inverse time) is used to co-ordinate the simultaneous motion of linear and rotary axis.
I think you are looking for a programmable way to duplicate the "feed override" knob on the front of the machine, am I correct?
RE: post processor, feedrate adjust command
The feed override knob works fine if your feed is in the ball park, but if it's way off you have not much control.
RE: post processor, feedrate adjust command
In a fanuc control, you need to specify a feedrate as some type of value. i.e. "F10.0". This cannot be changed. It needs to have some value in there.
The only way to have an adjustable feed, it to specify it as a variable. i.e. "F#100"
SO, you need a BASE feedrate, the one that you choose, one per tool. These need to be assigned to variables.
#Let's say #101 to #110 (ten tools)
You also want a factor,
If you want an individual factor for each tool, you need 10 variable locations OR if you want one global factor, you only need one. Either way, the method is the same.
Let's go with ONE factor for all.
#100 is the factor
Lastly, you will need 10 variable locations(one per tool) for the "adjusted feeds"
#we'll use #111 to #120
At the beginning of the program, you will need to set up all your variables. Something like this.
O1234;
(set feeds);
#101=10.0(tool 1 base feed);
#102=5.55(tool 2 base feed);
#103=25.6(tool 3 base feed);
etc.
You also need to define the "factor"
#100=.75(feed adjust factor);
Last but not least, calculate the new feeds and store them in the correct variables.
#111=#101*#100(adjusted tool 1);
#112=#102*#100(adjusted tool 2);
#113=#103*#100(adjusted tool 3);
etc.
We are now ready to cut.
OK. So, the code for your program will be as follows.
N1 M6T1
N2 G01X45.Y20F#111
...
N20 M6 T2
N21 G01 X2 Y90 F#112
...
N50 M6 T3
N51 G01 X67 Y654 F#113
Thats it. This procedure will allow you to easily edit all programmed feedrates at the machine by editing ONE variable. It also allows you to factor the entire program up or down by changing ONE variable.
Some considerations:
-The 100 series variables are NON HOLDING. This means if you press reset, they are ALL GONE. you need to run the "setup" section of your program each time you reset.
-The 500 series of variables will keep their value after a reset or power off.
-Some of these variables may be used by other functions i.e. probing routines etc. Be VERY VERY careful choosing your variables.
-I assume no responsibility if you choose to play with variables.
All that being said, It's probably easier to spend some time to calculate better feedrates to start with, and if adjustment is required, update your NX database and repost the program until you have code the machinists are happy with.
Good luck,
J
RE: post processor, feedrate adjust command
Thanks for your reply, I'll give this a go and see if this is easier than re-posting, but your'e right, the best way is building a library.