You are not logged in.
Hi, I'm trying to simulate some basic milling on a B axis head on a mill/turn with fanuc control. Is there a simple way to accuarately simulate this as at present the tool is off the stock as it's reading the X values literally.
The post processor is set to output X values as diameter
G1 X340.0 Y52.596 B90.000 C0.000 F400.0
X175.634
yet the round stock is Ø178mm
Thanks in advance.
Paul
Offline
Under configuration -> word format -> scroll down to X and set multiply to yes and multiplier to .5
Offline
You can't simpy change the word format for X. If you add a multiplyer it will always be applied and you don't want this in turning.
The solution is to create a variable that you can set with the code that tells the machine to use radius instead of diameter.
So let's say M200 means X as radius, M201 means X as diameter
Under configuration > Word format > Add a variable xMultiply > format = Special > subformat = Variable name
(You can set a default value for this variable with Configuration > G-code processing > Events > Start of processing)
Under configuration > G-code processing > Word/Register > M-misc >
M200 > add variable xMultiply with an override value off 2
M201 > add variable xMultiply with an override value off 1
Under configuration > G-code processing > Word/Register > Registers >
X > Change the macro for * * XaxisMotion > Add a condition "AND VARIABLE xMultiply value= 2" > Xaxismotion > override value = $ / 2
X > add a second marco > condition ""AND VARIABLE xMultiply value= 1" > Xaxismotion
You can see this used in the default project that loads when launching Vericut (vericutm.vcproject)
the activator = DIAMON/DIAMOF, the variable = $P_GG[29]
Have fun
Patrick Delisse
KMWE Aerospace - https://www.kmwe.com
(Vericut V9.5, Siemens NX2206, Campost)
Offline
Thank you both for the replies. The first solution worked but as you say it will mess up if there was some turning to be simulated (which there is) so I'll have a play with variables etc etc
Thanks again,
Paul
Offline
Just a few remarks to fill this good solution...
The first remark is about the note:
"(You can set a default value for this variable with Configuration > G-code processing > Events > Start of processing)"
This was possible until V7.0.x, now the variable definition and initialisation can be done in these ways:
Menu > Configuration > Control Variables...
Or use the Initialization files (Control side or Machine side), Menu > Configuration > Control Settings, Initialization File, you can also see that in vericutm.vcproject
The second remark is about an alternative to the extra condition for X register:
You can use the macro "XAxisMultiplier" directly with M200 and M201 (from example above), this will avoid adding extra conditions with X register...
Mustapha
Offline