📄 mill_canned.lyx
字号:
Dwell for the given number of seconds. \layout Standard3. Stop the spindle turning. \layout Standard4. Retract the Z-axis at traverse rate to clear Z. \layout Standard5. Restart the spindle in the direction it was going. This cycle is very similar to g82 except that it stops the spindle before it retracts the tool and restarts the spindle when it reaches the clearance value R.\layout SectionG87\begin_inset LatexCommand \index{G87}\end_inset \layout StandardThe G87 cycle is intended for back boring. \layout StandardThe situation is that you have a through hole and you want to counter bore the bottom of hole. To do this you put an L-shaped tool in the spindle with a cutting surface on the UPPER side of its base. You stick it carefully through the hole when it is not spinning and is oriented so it fits through the hole, then you move it so the stem of the L is on the axis of the hole, start the spindle, and feed the tool upward to make the counter bore. Then you stop the tool, get it out of the hole, and restart it. \layout StandardThis cycle uses I and J values to indicate the position for inserting and removing the tool. I and J will always be increments from the X position and the Y position, regardless of the distance mode setting. This cycle also uses a K value to specify the position along the Z-axis of the top of counterbore. The K value is an absolute Z-value in absolute distance mode, and an increment (from the Z position) in incremental distance mode. \layout Standard0. Preliminary motion, as described above. \layout Standard1. Move at traverse rate parallel to the XY-plane to the point indicated by I and J. \layout Standard2. Stop the spindle in a specific orientation. \layout Standard3. Move the Z-axis only at traverse rate downward to the Z position. \layout Standard4. Move at traverse rate parallel to the XY-plane to the X,Y location. \layout Standard5. Start the spindle in the direction it was going before. \layout Standard6. Move the Z-axis only at the given feed rate upward to the position indicated by K. \layout Standard7. Move the Z-axis only at the given feed rate back down to the Z position. \layout Standard8. Stop the spindle in the same orientation as before. \layout Standard9. Move at traverse rate parallel to the XY-plane to the point indicated by I and J. \layout Standard10. Move the Z-axis only at traverse rate to the clear Z. \layout Standard11. Move at traverse rate parallel to the XY-plane to the specified X,Y location. \layout Standard12. Restart the spindle in the direction it was going before.\layout Standard\added_space_top 0.3cm \added_space_bottom 0.3cm \align center \begin_inset Graphics filename G87pre.png\end_inset \layout StandardExample 6 - Backbore\layout StandardExample six uses a incremental distances from (0, 0, 0) so the preliminary moves look much like those in example five but they are done using the G87 backbore canned cycle.\layout StandardG91 G87 M3 S1000 X1 Y1 Z-0.4 R1.4 I-0.1 J-0.1 K-0.1\layout Standard\begin_inset Minipageposition 1inner_position 0height "0pt"width "60col%"collapsed false\layout StandardYou will notice that the preliminary moves shift the tool to directly above the center axis of the existing bore.\layout StandardNext it increments that location by the I and J values. I offsets X with a plus value being added to the current X. J does the same for the Y axis. \layout StandardFor our example block both I and J are negative so they move back from the hole axis along the path just made by the tool. The amount of offset required should be just enough that the tool tip will slide down through the bore.\end_inset \hfill \begin_inset Minipageposition 1inner_position 0height "0pt"width "40col%"collapsed false\layout Standard\added_space_top 0.3cm \added_space_bottom 0.3cm \align center \begin_inset Graphics filename G87s1.png width 2in\end_inset \end_inset \begin_inset Minipageposition 1inner_position 0height "0pt"width "60col%"collapsed false\layout StandardNext the canned cycle moves the tool down in z and at the bottom location represented in the block by the Z 0.4 value it moves the tool back to the center of the bore.\end_inset \begin_inset Minipageposition 1inner_position 0height "0pt"width "40col%"collapsed false\layout Standard\added_space_top 0.3cm \added_space_bottom 0.3cm \align center \begin_inset Graphics filename G87s5.png width 2in\end_inset \end_inset \layout StandardNow the g87 canned cycle turns the spindle on and moves back up into the bore at the programmed feed rate. This is the real cutting action of this canned cycle. With the proper tool in a boring bar this cycle will produce a chamfer on the bottom side of the bore. G87 can also be used to produce a larger diameter bore on the bottom side of the bore. \layout Standard\begin_inset Minipageposition 1inner_position 0height "0pt"width "60col%"collapsed false\layout StandardWhen the tool has reached the K position it is returned to the bottom location, the spindle is stopped and oriented and follows the earlier path back out of the bore to the initial position above. \end_inset \hfill \begin_inset Minipageposition 1inner_position 0height "0pt"width "40col%"collapsed false\layout Standard\added_space_top 0.3cm \added_space_bottom 0.3cm \align center \begin_inset Graphics filename G87s12.png width 2in\end_inset \end_inset \layout StandardThis canned cycle assumes spindle orientation which has not been implemented in the EMC to date. The proper alignment of the tool tip to the oriented spindle is critical to the successful insertion of the tool through the hole to be backbored.\layout SectionG88\begin_inset LatexCommand \index{G88}\end_inset \layout StandardThe G88 cycle is intended for boring. This cycle uses a P value, where P specifies the number of seconds to dwell.\layout Standard0. Preliminary motion, as described above.\layout Standard1. Move the Z-axis only at the current feed rate to the Z position.\layout Standard2. Dwell for the given number of seconds.\layout Standard3. Stop the spindle turning.\layout Standard4. Stop the program so the operator can retract the spindle manually.\layout Standard5. Restart the spindle in the direction it was going. It is unclear how the operator is to manually move the tool because a change to manual mode resets the program to the top. We will attempt to clarify that step in this procedure.\layout SectionG89 Cycle\layout StandardThe G89\begin_inset LatexCommand \index{G89}\end_inset cycle is intended for boring. This cycle uses a P value, where P specifies the number of seconds to dwell.\layout Standard0. Preliminary motion, as described above.\layout Standard1. Move the Z-axis only at the current feed rate to the Z position.\layout Standard2. Dwell for the given number of seconds.\layout Standard3. Retract the Z-axis at the current feed rate to clear Z. This cycle is like G82 except that the tool is drawn back at feed rate rather than rapid.\layout SectionG98 G99\layout Standard\begin_inset Notecollapsed false\layout Standardneeds a diagram or something to clear this up also compare with trunk\end_inset \layout StandardG98\begin_inset LatexCommand \index{G98}\end_inset - initial level return in canned cycles \layout StandardG99\begin_inset LatexCommand \index{G99}\end_inset - R value return in canned cycles \layout StandardThese codes are treated together because they behave very much alike.燳ou will recall that when Z is above R the preparatory move is from the current location to the X, Y values. If G98 is not specified, then the canned cycle will return to the R value rather than the Z value that was used on the approach.\layout Standard\begin_inset Minipageposition 1inner_position 0height "0pt"width "60col%"collapsed false\layout StandardN01 G0 X1 Y2 Z3 \layout StandardN02 G90 G81 X4 Y5 Z-0.6 R1.8 F10\layout StandardAdding G98 to the second line above means that the return move will be to the value of OLD_Z since it is higher that the R value specified.\end_inset \hfill \begin_inset Minipageposition 1inner_position 0height "0pt"width "40col%"collapsed false\layout Standard\added_space_top 0.3cm \added_space_bottom 0.3cm \align center \begin_inset Graphics filename G81ret.png width 2in\end_inset \end_inset \layout StandardNeither code will have any affect when incremental moves with a positive R value are specified because the R value is added to OLD_Z and that result is used as the initial level for a G98. The same value is the computed R value so G99 will also return to the same place. \layout Standard\begin_inset Minipageposition 1inner_position 0height "0pt"width "60col%"collapsed false\layout Standard\align left When the value of R is less than OLD_Z and incremental distance mode is turned on, G98 will return the tool to the value of OLD_Z. Under those conditions G99 will retract the tool to OLD_Z plus the negative R value. The return will be below OLD_Z.\end_inset \hfill \begin_inset Minipageposition 1inner_position 0height "0pt"width "40col%"collapsed false\layout Standard\added_space_top 0.3cm \added_space_bottom 0.3cm \align center \begin_inset Graphics filename G81g98d.png width 2in\end_inset \end_inset \layout SectionWhy use a canned cycle?\layout StandardThere are at least two reasons for using canned cycles. The first is the economy of code. A single bore would take several lines of code to execute.\layout StandardExample 1 above demonstrated how a canned cycle could be used to produce 8 holes with ten lines of nc code within the canned cycle mode. The program below will produce the same set of 8 holes using five lines for the canned cycle. It does not follow exactly the same path nor does it drill in the same order as the earlier example. But the program writing economy of a good canned cycle should be obvious. \layout Standard\begin_inset Minipageposition 1inner_position 0height "0pt"width "60col%"collapsed false\layout Standard\align left Example 7 - Eight Holes Revisited \layout Standard\align left \family typewriter \size footnotesize n100 g90 g0 x0 y0 z0 (move coordinate home) \layout Standard\align left \family typewriter \size footnotesize n110 g1 f10 x0 g4 p0.1 \layout Standard\align left \family typewriter \size footnotesize n120 g91 g81 x1 y0 z-1 r1 l4(canned drill cycle) \layout Standard\align left \family typewriter \size footnotesize n130 g90 g0 x0 y1 \layout Standard\align left \family typewriter \size footnotesize n140 z0 \layout Standard\align left \family typewriter \size footnotesize n150 g91 g81 x1 y0 z-.5 r1 l4(canned drill cycle) \layout Standard\align left \family typewriter \size footnotesize n160 g80 (turn off canned cycle) \layout Standard\align left \family typewriter \size footnotesize n170 m2 (program end)\end_inset \hfill \begin_inset Minipageposition 1inner_position 0height "0pt"width "40col%"collapsed false\layout Standard\added_space_top 0.3cm \added_space_bottom 0.3cm \align center \begin_inset Graphics filename Eight.png width 2in\end_inset \end_inset \layout StandardExample 8 - Twelve holes in a square \layout StandardThis example demonstrates the use of the L word to repeat a set of incremental drill cycles for successive blocks of code within the same G81 motion mode. Here we produce 12 holes using five lines of code in the canned motion mode. \layout Standard\begin_inset Minipageposition 1inner_position 0height "0pt"width "60col%"collapsed false\layout Standard\family typewriter \size small N1000 G90 G0 X0 Y0 Z0 (move coordinate home)\newline N1010 G1 F50 X0 G4 P0.1\newline N1020 G91 G81 X1 Y0 Z-0.5 R1 L4 (canned drill cycle)\newline N1030 X0 Y1 R0 L3 (repeat)\newline N1040 X-1 Y0 L3 (repeat)\newline N1050 X0 Y-1 L2 (repeat)\newline N1060 G80 (turn off canned cycle)\newline N1070 G90 G0 X0 (rapid home)\newline N1080 Y0\newline N1090 Z0\newline N1100 M2 (program end)\end_inset \hfill \begin_inset Minipageposition 1inner_position 0height "0pt"width "40col%"collapsed false\layout Standard\added_space_top 0.3cm \added_space_bottom 0.3cm \align center \begin_inset Graphics filename Twelve.png width 2in\end_inset \end_inset \layout StandardThe second reason to use a canned cycle is that they all produce preliminary moves and returns that you can anticipate and control regardless of the start point of the canned cycle.\layout CommentCredits \layout CommentThis page is a rather direct rip off of the relevant portion of the RS274NGC/RS274VGER documents from NIST. Thanks also to Dan Falck, Ron Wickersham, and Jon Elson for their comments on portions of this page. \layout CommentThis page is maintained by Ray Henry Your comments and criticisms are welcome.\the_end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -