Vorsprung
Plastic
- Joined
- Feb 7, 2014
- Location
- BC, Canada
Advance warning - not an experienced machinist.
I'm trying to program up an ellipse to be milled using a FLAT end mill in a cross mill holder on a Nakamura lathe (Fanuc 0i controller). There are a few reasons we're using a cross mill holder not a face mill holder - part is too long to cut from the face, and all our axial/face milling live tool holders are already taken up with other tasks.
If we have commands that operate in X, Y and C axes all at the same time, do we need to somehow tell the machine to shut up and not interfere by trying to calculate interpolated/virtual values, or should it work fine without that? For example, if you are face milling in XY/G17 with the C axis fixed, if you go below a certain X value (zero or something just below zero I believe) it will flip the C axis 180 degrees and continue from there with both X and Y values run in the opposite directions to the "true" command (ie U-1.000 command becomes a U1.000 movement of the turret), correct? But what if I don't want it to do that, I just want it to move each axis exactly to the absolute position I tell it to go to, is there some command that tells it to shut up and let me dictate C, X and Y values without it doing that?
Reason I ask is that we have created a script (separate to the control or CAM) to generate outputs in X, Y and C simultaneously. However, on the machine (both in simulation and when actually cutting) it is generating some weird toolpath loops that i don't think should be there, and I'm not sure if it's because we haven't selected the correct plane or something (have tried in G17/18/19 with no difference). It seems to be somehow trying to interpolate a value that isn't the absolute value we're giving it. No G112 or anything is being used, no cutter comp, and I wonder if it's even as simple as a syntax problem, like the C axis commands have to be on a separate line to the X and Y.
Is there some issue with moving/commanding in both Y and C axes at the same time that the machine doesn't like or doesn't interpret? Or is there a command I need to enter to have it avoid some kind of interpolation?
The motions we're trying to generate can be seen in the video here Wikisend: free file sharing service
The idea is that the tool should be normal to the surface of the ellipse (co-linear with the green dotted line basically). The X commands output by the script are double the length of the green dotted line that moves normal to the surface in that clip (since X is diameter on our lathe), and the Y commands are 1.0x the length of the pink dotted line that is perpendicular to the green. C axis commands are represented by the angle between the horizontal axis of the graph and the green line. The exact error we have is happening around C90./270. degrees where the X value is smallest.
I have also attached a photo of the toolpath it's giving us.
Sample of the movement code is something like this (with far finer increments usually):
X34.000 Y0.000 C0.000;
X33.988 Y0.345 C2.000;
X33.952 Y0.689 C4.000;
X33.892 Y1.031 C6.000;
X33.808 Y1.370 C8.000;
X33.701 Y1.706 C10.000;
X33.570 Y2.036 C12.000;
X33.417 Y2.361 C14.000;
X33.241 Y2.679 C16.000;
X33.043 Y2.989 C18.000;
X32.824 Y3.291 C20.000;
X32.584 Y3.582 C22.000;
X32.324 Y3.863 C24.000;
X32.045 Y4.132 C26.000;
X31.747 Y4.388 C28.000;
X31.432 Y4.630 C30.000;
X31.101 Y4.856 C32.000;
X30.755 Y5.066 C34.000;
X30.395 Y5.258 C36.000;
X30.021 Y5.431 C38.000;
X29.637 Y5.583 C40.000;
X29.242 Y5.715 C42.000;
X28.840 Y5.823 C44.000;
X28.430 Y5.907 C46.000;
X28.016 Y5.965 C48.000;
X27.598 Y5.996 C50.000;
X27.179 Y5.999 C52.000;
X26.761 Y5.972 C54.000;
X26.346 Y5.914 C56.000;
X25.937 Y5.823 C58.000;
X25.534 Y5.700 C60.000;
X25.142 Y5.542 C62.000;
X24.762 Y5.348 C64.000;
X24.396 Y5.120 C66.000;
X24.048 Y4.855 C68.000;
X23.719 Y4.555 C70.000;
X23.413 Y4.221 C72.000;
X23.131 Y3.852 C74.000;
X22.876 Y3.451 C76.000;
X22.651 Y3.020 C78.000;
X22.456 Y2.562 C80.000;
X22.294 Y2.080 C82.000;
X22.166 Y1.579 C84.000;
X22.074 Y1.062 C86.000;
X22.019 Y0.536 C88.000;
X22.000 Y0.000 C90.000;
I'm trying to program up an ellipse to be milled using a FLAT end mill in a cross mill holder on a Nakamura lathe (Fanuc 0i controller). There are a few reasons we're using a cross mill holder not a face mill holder - part is too long to cut from the face, and all our axial/face milling live tool holders are already taken up with other tasks.
If we have commands that operate in X, Y and C axes all at the same time, do we need to somehow tell the machine to shut up and not interfere by trying to calculate interpolated/virtual values, or should it work fine without that? For example, if you are face milling in XY/G17 with the C axis fixed, if you go below a certain X value (zero or something just below zero I believe) it will flip the C axis 180 degrees and continue from there with both X and Y values run in the opposite directions to the "true" command (ie U-1.000 command becomes a U1.000 movement of the turret), correct? But what if I don't want it to do that, I just want it to move each axis exactly to the absolute position I tell it to go to, is there some command that tells it to shut up and let me dictate C, X and Y values without it doing that?
Reason I ask is that we have created a script (separate to the control or CAM) to generate outputs in X, Y and C simultaneously. However, on the machine (both in simulation and when actually cutting) it is generating some weird toolpath loops that i don't think should be there, and I'm not sure if it's because we haven't selected the correct plane or something (have tried in G17/18/19 with no difference). It seems to be somehow trying to interpolate a value that isn't the absolute value we're giving it. No G112 or anything is being used, no cutter comp, and I wonder if it's even as simple as a syntax problem, like the C axis commands have to be on a separate line to the X and Y.
Is there some issue with moving/commanding in both Y and C axes at the same time that the machine doesn't like or doesn't interpret? Or is there a command I need to enter to have it avoid some kind of interpolation?
The motions we're trying to generate can be seen in the video here Wikisend: free file sharing service
The idea is that the tool should be normal to the surface of the ellipse (co-linear with the green dotted line basically). The X commands output by the script are double the length of the green dotted line that moves normal to the surface in that clip (since X is diameter on our lathe), and the Y commands are 1.0x the length of the pink dotted line that is perpendicular to the green. C axis commands are represented by the angle between the horizontal axis of the graph and the green line. The exact error we have is happening around C90./270. degrees where the X value is smallest.
I have also attached a photo of the toolpath it's giving us.
Sample of the movement code is something like this (with far finer increments usually):
X34.000 Y0.000 C0.000;
X33.988 Y0.345 C2.000;
X33.952 Y0.689 C4.000;
X33.892 Y1.031 C6.000;
X33.808 Y1.370 C8.000;
X33.701 Y1.706 C10.000;
X33.570 Y2.036 C12.000;
X33.417 Y2.361 C14.000;
X33.241 Y2.679 C16.000;
X33.043 Y2.989 C18.000;
X32.824 Y3.291 C20.000;
X32.584 Y3.582 C22.000;
X32.324 Y3.863 C24.000;
X32.045 Y4.132 C26.000;
X31.747 Y4.388 C28.000;
X31.432 Y4.630 C30.000;
X31.101 Y4.856 C32.000;
X30.755 Y5.066 C34.000;
X30.395 Y5.258 C36.000;
X30.021 Y5.431 C38.000;
X29.637 Y5.583 C40.000;
X29.242 Y5.715 C42.000;
X28.840 Y5.823 C44.000;
X28.430 Y5.907 C46.000;
X28.016 Y5.965 C48.000;
X27.598 Y5.996 C50.000;
X27.179 Y5.999 C52.000;
X26.761 Y5.972 C54.000;
X26.346 Y5.914 C56.000;
X25.937 Y5.823 C58.000;
X25.534 Y5.700 C60.000;
X25.142 Y5.542 C62.000;
X24.762 Y5.348 C64.000;
X24.396 Y5.120 C66.000;
X24.048 Y4.855 C68.000;
X23.719 Y4.555 C70.000;
X23.413 Y4.221 C72.000;
X23.131 Y3.852 C74.000;
X22.876 Y3.451 C76.000;
X22.651 Y3.020 C78.000;
X22.456 Y2.562 C80.000;
X22.294 Y2.080 C82.000;
X22.166 Y1.579 C84.000;
X22.074 Y1.062 C86.000;
X22.019 Y0.536 C88.000;
X22.000 Y0.000 C90.000;