Jump to content

Welcome to eMastercam

Register now to participate in the forums, access the download area, buy Mastercam training materials, post processors and more. This message will be removed once you have signed in.

Use your display name or email address to sign in:

Post issue with G02/03 Z moves


DeeB
 Share

Recommended Posts

Hi all

 

How can I get Mastercam to post out my "Arc" Lead in and Outs as line segments, I have tried all option but it still posts out with a G03/G02 move.

 

The reason that I want to post line segments is, I am programming for Mazak Variaxis I600 with smooth control and when in High Speed Machining mode the machine alarms when it sees a Z move in a G03/G02 line.

 

The other question I have is why is there a Z move in the below G03 lead in line, as the machine is already at the Z position in the line before, I know  that there is a slight difference but I don't understand why it needs that extra slight Z adjustment and I have not selected a ramp entry move? This line causes Mazak to Alarm!

 

G94 G01 Z5.506 F1500.

G03 X33. Y-222.325 Z5.505 I0. J-3. F2160.

G01 Y-222.519 Z5.506

 

Cheers

Link to comment
Share on other sites

The Control Definition sets the Arc output options. If you want no arcs, then you need to disable Arc support in the Control Definition. I don't think that is what you really want though. I think want you want is to not allow Helix motion (G2/G3 with a Z move). Helix support is also enabled/disabled in the Control Definition file.

 

The Z move you are getting on the line after the G03 entry is likely just a result of rounding. Check the Z depth of the actual geometry. (I'm assuming since you are using Lead In, that you are driving a Contour type tool path.) If necessary, use Xform > Project to move the depth of the geometry to an exact value (don't have the geo at Z 5.50555 for example.)

 

There is also a Command Variable that you can set in the post called 'round_opt$'. This variable is typically set to '1', '10', '11', or '21'. Different settings control how MP rounds the final digits of variable values. The background on 'round_opt$' is that MP typically calls a standard 'C' function to round the output of variables. When using the "Standard rounding" module from Microsoft, there are instances where .5 rounds "down", and .4 rounds "up". This can cause what you are seeing where the last digit oscillates between two numbers. (.005, .006, .005, .006, ect.) Using the 'round_opt$' tells the Post to use a different "rounding routine", that is better at giving you predictable and consistent rounding behavior.

 

Much of this "instability" in the MS rounding routine can be traced to the fact that your computer holds values in "Floating Point" format. This allows a trade off between range and precision to take place. All floating point values work by taking the significant number of digits (the significant), and scaling them using a base and exponent. The term floating point refers to the fact that a number's radix point (also called binary point or decimal point) can "float"; that is, it can be placed anywhere relative to the significant digits of the number. The position is indicated as the exponent component, and thus the floating-point representation can be thought of as a kind of scientific notation.

 

A floating-point system can be used to represent, with a fixed number of digits, numbers of different orders of magnitude: e.g. the distance between galaxies or the diameter of an atomic nucleus can be expressed with the same unit of length. The result of this dynamic range is that the numbers that can be represented are not uniformly spaced; the difference between two consecutive representable numbers grows with the chosen scale.

 

For that reason, when you type in a number, say 1.0000, that value is converted into a Floating Point value, where the precision depends on the length of the digit string, also called the Mantissa, which is signed, and the length of this string determines the precision to which numbers can be represented.

 

Most of what I just wrote is shamelessly plagiarized from Wikipedia:

 

https://en.wikipedia.org/wiki/Floating_point

  • Like 3
Link to comment
Share on other sites

Hi Colin

 

I tried changing to No Helix Allowed in the Control Definition and had no success.

 

The Z error can pop up anywhere on a depth cut, e.g. say I have a contour cut which goes 20.765mm deep and I want to cut at depths of 3mm and leave 0.25mm on the final depth cut, I may get half way through the cycle and then I get a rouge G03 X, Y "Z" move. I don't really want to get my calculator out to divide the depth cuts into even segments.

 

I also had a look at the post butI cannot find  'round_opt$' anywhere?

So if you have any more ideas, please send them my way.

 

Cheers

Link to comment
Share on other sites

Hi Colin

 

I tried changing to No Helix Allowed in the Control Definition and had no success.

 

The Z error can pop up anywhere on a depth cut, e.g. say I have a contour cut which goes 20.765mm deep and I want to cut at depths of 3mm and leave 0.25mm on the final depth cut, I may get half way through the cycle and then I get a rouge G03 X, Y "Z" move. I don't really want to get my calculator out to divide the depth cuts into even segments.

 

I also had a look at the post butI cannot find  'round_opt$' anywhere?

So if you have any more ideas, please send them my way.

 

Cheers

 

How did you change the CD settings? If you only went through the CD Manager, then the changes didn't make it into your current "File copy" of the CD, stored inside your Machine Group Properties. Just to be sure, make sure you do a "Replace" on your Machine Definition. That will force Mastercam to load the Library copy of your CD.

 

Also, the tool paths must be regenerated for that setting to take effect. You need to have the changes made to the NCI file, and that only happens if your force a regeneration.

 

'round_opt$' isn't in the post at all, by default. It is a command variable you would have to add. Go to the top of your post, and make a new line. Make sure you start in the very first column and add the following:

round_opt$ : 11

 That's it. If a setting of '11' doesn't do it, try '21'. You can also try '0', and '1', just to test the output. This may not work for you, it really depends on the values that are being written to the NCI file. This isn't a "user documented" function. It is more like "secret decoder ring style"...

  • Like 1
Link to comment
Share on other sites

Colin, nice post.  What do the '1', '10', '11', or '21' signify in the round_opt$ variable?  Digits of precision?  Are they the only values that can be used?  I can remember a problem with V9 in the past when I had a pocketing toolpath, that when depth cut settings were applied the Z axis would oscillate through the pocket on the final depth cut.  I always knew it was a rounding issue, I just could not wrap my head around it at the time.  This makes a lot more sense.

Link to comment
Share on other sites

The variable is a "license plate" variable, meaning that it can be 1 digit, or 2 digits, or more. I'm sorry I don't know what each individual "bit" does in the scheme. I just remember investigating this issue for a customer, and being told about this super secret decoder ring variable that you could add to the customer's post, and one of the settings would fix the issue. I wish I had more info to give you. That's why I recommended trying it with the different 'round_opt$' values, and seeing if that does anything to help fix the issue.

 

I will try and dig through my documentation to see if I've got anything that might shed some light...

Link to comment
Share on other sites

How did you change the CD settings? If you only went through the CD Manager, then the changes didn't make it into your current "File copy" of the CD, stored inside your Machine Group Properties. Just to be sure, make sure you do a "Replace" on your Machine Definition. That will force Mastercam to load the Library copy of your CD.

 

Also, the tool paths must be regenerated for that setting to take effect. You need to have the changes made to the NCI file, and that only happens if your force a regeneration.

 

'round_opt$' isn't in the post at all, by default. It is a command variable you would have to add. Go to the top of your post, and make a new line. Make sure you start in the very first column and add the following:

round_opt$ : 11

 That's it. If a setting of '11' doesn't do it, try '21'. You can also try '0', and '1', just to test the output. This may not work for you, it really depends on the values that are being written to the NCI file. This isn't a "user documented" function. It is more like "secret decoder ring style"...

 

Thanks for sharing that Colin and hope you see where I do consider that kind of inside information worthy of the secret decoder ring tag. Other times I hope you see just me trying to be funny, but you have to admit there are things going on that only someone who has worked at CNC in the post department would have knowledge of that others like myself may never have. :unworthy: :unworthy: :unworthy:

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.

Join us!

eMastercam - your online source for all things Mastercam.

Together, we are the strongest Mastercam community on the web with over 56,000 members, and our online store offers a wide selection of training materials for all applications and skill levels.

Follow us

×
×
  • Create New...