customvqct

Upload: camgz32

Post on 12-Oct-2015

46 views

Category:

Documents


0 download

DESCRIPTION

Haas custom VQC

TRANSCRIPT

  • CUSTOMIZING VQCN10(CATEGORY) (NAME SLOTS)N11(TEMPLATE) (NAME CIRCULAR SLOTS) (DIAGRAM) (DATUM [19,14]) (CIRCLE [19,14] 13) (CIRCLE [19,14] 9) (CCW [17,25][9,20]10)(CW [21,25][29,20]10)(LINE [17,26][17,24])(LINE [21,26] [21,24])(CCW [7,16] [8,9]10)(CCW [14,4] [24,4]10)(CW [31,16] [30,9]10)(ARROW [19,20] [19,23])(ARROW [19,18] [19,15])(LINE [5,31] [5,24]) (LINE [19,31] [19,28]) (ARROW [11,30] [5,30]) (ARROW [15,30] [19,30]) (END DIAGRAM) (PARAMETERS) (#ToolNo) (NO DECIMAL) (#WrkOfset) (NO DECIMAL) (#IR) (LABEL Inner Radius)(POSITION [15,19])(#OR) (POSITION [8,30])(LABEL Outer Radius)(#Slots)(LABEL # of Slots)

  • PRESS

    THREE TIMES TO GET TOTHIS PAGE

    (Continued onnext slide)

    Note:

    SLIDE LEGENDACTIONS INSTRUCTIONSKEYS INFORMATION OTHER INFORMATION

  • Visual Quick Code (VQC) comes with over 90 different templates to simplify the programming of simple parts. All that is required to create a program is to provide the part dimensions and speeds and feeds. VQC can also be customized, so that more unique parts , that are made in different sizes, can be easily programmed by the operator. This presentation will go through a process which will help you create your own custom VQC templates.VQC

  • There are some tools available to help you create templates. One is a PC version of VQC which you can use to check your work. Another is a spreadsheet that has the existing templates, shown on a grid, along with the code used to create the templates. There is also a detailed section in the Operators manuals (Lathe, Mill and Horizontal) on VQC. It is a good idea to read the section in the manual before completing this presentation. We will first take a look at making a minor modification of an existing template, then show how to make one from scratch.

  • TEMPLATE BUILDERThis shows one of the pages from the spreadsheet called Template Builder. It has the part drawn on the spreadsheet grid with the code shown in a text box on the right. You can scroll through the text box to see all the code for this template.

    Sheet4

    37

    36ArcInOut

    35I

    34XDist

    33h

    32g

    31a

    30

    29b

    28

    27

    26

    25

    24

    23

    22

    21

    10

    19c

    18

    17

    16f

    15YDist

    14

    13

    12

    11

    10

    9

    8

    7

    6

    5

    4

    3d

    2

    1e

    0

    012345678911111111122222222333333333

    02345678901234567890123456

    N1102 (TEMPLATE) (NAME O.D. Square W/Radiused Corners) (DIAGRAM)

    (LINE [0,0] [40,0]) (CENTER LINES) (LINE [0,0] [0,37]) (DATUM [19,17])

    (LINE [8,31] [30,31]) a(CW [30,31] [34,26] 4) b(LINE [34,27] [34,7]) c(CW [34,7] [30,3] 4) d(LINE [31,3] [8,3]) e(CW [8,3] [4,7] 4) (LINE [4,7] [4,27]) f(CW [4,27] [8,31] 4)

    (LINE [4,32] [4,34]) g(LINE [34,29] [34,34]) (LINE [32,31] [37,31]) (LINE [35,3] [37,3])

    (ARROW [16,33] [4,33]) h(ARROW [22,33] [34,33]) (ARROW [36,17] [36,31]) (ARROW [36,13] [36,3])

    (CCW [17,38] [17,32] 4) i(LINE [17,32] [17,33]) (LINE [17,32] [16,32])

    (CCW [21,32] [21,38] 4) (LINE [21,38] [22,38]) (LINE [21,38] [21,37])

    (END DIAGRAM)

    (PARAMETERS)

    (#ToolNo) (NO DECIMAL) (#WrkOfset) (NO DECIMAL) (#XPos) (#YPos) (#SpdleRpm ) (NO DECIMAL) (#DpthCut) (#XDist) (POSITION [8,34]) (#YDist) (POSITION [35,16]) (#ArcInOut) (POSITION [16,36]) (#Radius) (POSITION [28,29]) (#Feedrate)

    (END PARAMETERS)

    (GCODE)

    (T#ToolNo M06) (G00 G90 G#WrkOfset X#XPos Y[#YPos+#YDist/2+#ArcInOut]) (S#SpdleRpm M03) (G43 H#ToolNo Z1. M08) (G01 Z-#DpthCut F50.) (G01 G41 D#ToolNo X[#XPos-#ArcInOut] F#Feedrate) (G03 X#XPos Y[#YPos+#YDist/2] R#ArcInOut F#Feedrate) (G01 X[#XPos+#XDist/2-#Radius]) (G02 X[#XPos+#XDist/2] Y[#YPos+#YDist/2-#Radius] R#Radius) (G01 Y[#YPos-#YDist/2+#Radius]) (G02 X[#XPos+#XDist/2-#Radius] Y[#YPos-#YDist/2] R#Radius) (G01 X[#XPos-#XDist/2+#Radius]) (G02 X[#XPos-#XDist/2] Y[#YPos-#YDist/2+#Radius] R#Radius) (G01 Y[#YPos+#YDist/2-#Radius]) (G02 X[#XPos-#XDist/2+#Radius] Y[#YPos+#YDist/2] R#Radius) (G01 X#XPos) (G03 X[#XPos+#ArcInOut] Y[#YPos+#YDist/2+#ArcInOut] R#ArcInOut) (G01 G40 X#XPos) (G00 Z1. M09) (G28 G91 Z0 M05) (M30) (END GCODE) (END TEMPLATE)

    Sheet1

    37

    36

    35

    34

    33

    32

    31MajorDia

    30

    29

    28

    27

    26

    25

    24

    23

    22

    21

    20Xpos, Ypos = Center

    19

    18

    17

    16

    15

    14

    13

    12

    11

    10

    9ArcInOut

    8

    7

    6

    5

    4

    3

    2

    1

    0

    012345678911111111112222222222333333

    01234567890123456789012345

    N901 (TEMPLATE) (NAME I.D. Thread Milling)

    (DIAGRAM)

    (LINE [40,0] [40,1]) (CENTER LINES)(LINE [0,0] [0,1])

    (DATUM [19,14])

    (CIRCLE [19,14] 13)

    (LINE [23,15] [25,13]) (LINE [25,15] [23,13]) (LINE [29,15] [31,13]) (LINE [31,15] [29,13])

    (ARROW [20,14] [23,14])

    (CCW [30,16] [24,16] 4) (LINE [23,17] [24,16]) (LINE [24,16] [25,16])

    (CCW [24,12] [30,12] 4) (LINE [31,11] [30,12]) (LINE [29,12] [30,12])

    (LINE [5,31] [5,24]) (LINE [33,31] [33,24]) (ARROW [15,30] [5,30]) (ARROW [23,30] [33,30])

    (PRINT [13,20] XPos,YPos=Center)

    (END DIAGRAM)

    (PARAMETERS)

    (#ToolNo) (NO DECIMAL) (#WrkOfset) (NO DECIMAL) (#XPos) (#YPos) (#SpdleRpm ) (NO DECIMAL) (#ThrdDpth) (#Feedrate) (#ArcInOut) (POSITION [24,10]) (#MajorDia) (POSITION [16,31]) (#ThdPitch) (END PARAMETERS)

    (GCODE)

    (T#ToolNo M06) (G00 G90 G#WrkOfset X[#XPos+#MajorDia/2-#ArcInOut] Y#YPos) (S#SpdleRpm M03) (G43 H#ToolNo Z1. M08) (G01 Z-#ThrdDpth F10.) (G41 Y[#YPos-#ArcInOut] D#ToolNo) (G03 X[#XPos+#MajorDia/2] Y#YPos R#ArcInOut F#Feedrate) (G03 I-[#MajorDia/2] J0 Z[1./#ThdPitch-#ThrdDpth]) (G03 X[#XPos+#MajorDia/2-#ArcInOut] Y[#YPos+#ArcInOut] R#ArcInOut) (G01 G40 X[#XPos+#MajorDia/2-#ArcInOut] Y#YPos ) (G00 G80 Z1. M09) (G28 G91 Z0 M5) (M30) (END GCODE) (END TEMPLATE)

    Sheet2

    Sheet3

  • Lets say that you want a template like this one except that you would like to delete the rounding on the two upper corners. The red lines show the changes we will be making.

    Sheet4

    37

    36ArcInOut

    35I

    34XDist

    33h

    32g

    31a

    30

    29b

    28

    27

    26

    25

    24

    23

    22

    21

    10

    19c

    18

    17

    16f

    15YDist

    14

    13

    12

    11

    10

    9

    8

    7

    6

    5

    4

    3d

    2

    1e

    0

    012345678911111111122222222333333333

    02345678901234567890123456

    N1102 (TEMPLATE) (NAME O.D. Square W/Radiused Corners) (DIAGRAM)

    (LINE [0,0] [40,0]) (CENTER LINES) (LINE [0,0] [0,37]) (DATUM [19,17])

    (LINE [8,31] [30,31]) a(CW [30,31] [34,26] 4) b(LINE [34,27] [34,7]) c(CW [34,7] [30,3] 4) d(LINE [31,3] [8,3]) e(CW [8,3] [4,7] 4) (LINE [4,7] [4,27]) f(CW [4,27] [8,31] 4)

    (LINE [4,32] [4,34]) g(LINE [34,29] [34,34]) (LINE [32,31] [37,31]) (LINE [35,3] [37,3])

    (ARROW [16,33] [4,33]) h(ARROW [22,33] [34,33]) (ARROW [36,17] [36,31]) (ARROW [36,13] [36,3])

    (CCW [17,38] [17,32] 4) i(LINE [17,32] [17,33]) (LINE [17,32] [16,32])

    (CCW [21,32] [21,38] 4) (LINE [21,38] [22,38]) (LINE [21,38] [21,37])

    (END DIAGRAM)

    (PARAMETERS)

    (#ToolNo) (NO DECIMAL) (#WrkOfset) (NO DECIMAL) (#XPos) (#YPos) (#SpdleRpm ) (NO DECIMAL) (#DpthCut) (#XDist) (POSITION [8,34]) (#YDist) (POSITION [35,16]) (#ArcInOut) (POSITION [16,36]) (#Radius) (POSITION [28,29]) (#Feedrate)

    (END PARAMETERS)

    (GCODE)

    (T#ToolNo M06) (G00 G90 G#WrkOfset X#XPos Y[#YPos+#YDist/2+#ArcInOut]) (S#SpdleRpm M03) (G43 H#ToolNo Z1. M08) (G01 Z-#DpthCut F50.) (G01 G41 D#ToolNo X[#XPos-#ArcInOut] F#Feedrate) (G03 X#XPos Y[#YPos+#YDist/2] R#ArcInOut F#Feedrate) (G01 X[#XPos+#XDist/2-#Radius]) (G02 X[#XPos+#XDist/2] Y[#YPos+#YDist/2-#Radius] R#Radius) (G01 Y[#YPos-#YDist/2+#Radius]) (G02 X[#XPos+#XDist/2-#Radius] Y[#YPos-#YDist/2] R#Radius) (G01 X[#XPos-#XDist/2+#Radius]) (G02 X[#XPos-#XDist/2] Y[#YPos-#YDist/2+#Radius] R#Radius) (G01 Y[#YPos+#YDist/2-#Radius]) (G02 X[#XPos-#XDist/2+#Radius] Y[#YPos+#YDist/2] R#Radius) (G01 X#XPos) (G03 X[#XPos+#ArcInOut] Y[#YPos+#YDist/2+#ArcInOut] R#ArcInOut) (G01 G40 X#XPos) (G00 Z1. M09) (G28 G91 Z0 M05) (M30) (END GCODE) (END TEMPLATE)

    Sheet1

    37

    36

    35

    34

    33

    32

    31MajorDia

    30

    29

    28

    27

    26

    25

    24

    23

    22

    21

    20Xpos, Ypos = Center

    19

    18

    17

    16

    15

    14

    13

    12

    11

    10

    9ArcInOut

    8

    7

    6

    5

    4

    3

    2

    1

    0

    012345678911111111112222222222333333

    01234567890123456789012345

    N901 (TEMPLATE) (NAME I.D. Thread Milling)

    (DIAGRAM)

    (LINE [40,0] [40,1]) (CENTER LINES)(LINE [0,0] [0,1])

    (DATUM [19,14])

    (CIRCLE [19,14] 13)

    (LINE [23,15] [25,13]) (LINE [25,15] [23,13]) (LINE [29,15] [31,13]) (LINE [31,15] [29,13])

    (ARROW [20,14] [23,14])

    (CCW [30,16] [24,16] 4) (LINE [23,17] [24,16]) (LINE [24,16] [25,16])

    (CCW [24,12] [30,12] 4) (LINE [31,11] [30,12]) (LINE [29,12] [30,12])

    (LINE [5,31] [5,24]) (LINE [33,31] [33,24]) (ARROW [15,30] [5,30]) (ARROW [23,30] [33,30])

    (PRINT [13,20] XPos,YPos=Center)

    (END DIAGRAM)

    (PARAMETERS)

    (#ToolNo) (NO DECIMAL) (#WrkOfset) (NO DECIMAL) (#XPos) (#YPos) (#SpdleRpm ) (NO DECIMAL) (#ThrdDpth) (#Feedrate) (#ArcInOut) (POSITION [24,10]) (#MajorDia) (POSITION [16,31]) (#ThdPitch) (END PARAMETERS)

    (GCODE)

    (T#ToolNo M06) (G00 G90 G#WrkOfset X[#XPos+#MajorDia/2-#ArcInOut] Y#YPos) (S#SpdleRpm M03) (G43 H#ToolNo Z1. M08) (G01 Z-#ThrdDpth F10.) (G41 Y[#YPos-#ArcInOut] D#ToolNo) (G03 X[#XPos+#MajorDia/2] Y#YPos R#ArcInOut F#Feedrate) (G03 I-[#MajorDia/2] J0 Z[1./#ThdPitch-#ThrdDpth]) (G03 X[#XPos+#MajorDia/2-#ArcInOut] Y[#YPos+#ArcInOut] R#ArcInOut) (G01 G40 X[#XPos+#MajorDia/2-#ArcInOut] Y#YPos ) (G00 G80 Z1. M09) (G28 G91 Z0 M5) (M30) (END GCODE) (END TEMPLATE)

    Sheet2

    Sheet3

  • You will need to Delete the code for the two arcs. The first one is identified. You will need to locate the other.Notice that the curve indicated by the arrow has the letter b next to it. You will see a red b also in the lines of code. That line of code represents this arc. An arc is drawn by using a CW or CCW command with the start and end points of the arc and the arc radius.

    Sheet4

    37

    36ArcInOut

    35I

    34XDist

    33h

    32g

    31a

    30

    29b

    28

    27

    26

    25

    24

    23

    22

    21

    10

    19c

    18

    17

    16f

    15YDist

    14

    13

    12

    11

    10

    9

    8

    7

    6

    5

    4

    3d

    2

    1e

    0

    012345678911111111122222222333333333

    02345678901234567890123456

    N1102 (TEMPLATE) (NAME O.D. Square W/Radiused Corners) (DIAGRAM)

    (LINE [0,0] [40,0]) (CENTER LINES) (LINE [0,0] [0,37]) (DATUM [19,17])

    (LINE [8,31] [30,31]) a(CW [30,31] [34,26] 4) b(LINE [34,27] [34,7]) c(CW [34,7] [30,3] 4) d(LINE [31,3] [8,3]) e(CW [8,3] [4,7] 4) (LINE [4,7] [4,27]) f(CW [4,27] [8,31] 4)

    (LINE [4,32] [4,34]) g(LINE [34,29] [34,34]) (LINE [32,31] [37,31]) (LINE [35,3] [37,3])

    (ARROW [16,33] [4,33]) h(ARROW [22,33] [34,33]) (ARROW [36,17] [36,31]) (ARROW [36,13] [36,3])

    (CCW [17,38] [17,32] 4) i(LINE [17,32] [17,33]) (LINE [17,32] [16,32])

    (CCW [21,32] [21,38] 4) (LINE [21,38] [22,38]) (LINE [21,38] [21,37])

    (END DIAGRAM)

    (PARAMETERS)

    (#ToolNo) (NO DECIMAL) (#WrkOfset) (NO DECIMAL) (#XPos) (#YPos) (#SpdleRpm ) (NO DECIMAL) (#DpthCut) (#XDist) (POSITION [8,34]) (#YDist) (POSITION [35,16]) (#ArcInOut) (POSITION [16,36]) (#Radius) (POSITION [28,29]) (#Feedrate)

    (END PARAMETERS)

    (GCODE)

    (T#ToolNo M06) (G00 G90 G#WrkOfset X#XPos Y[#YPos+#YDist/2+#ArcInOut]) (S#SpdleRpm M03) (G43 H#ToolNo Z1. M08) (G01 Z-#DpthCut F50.) (G01 G41 D#ToolNo X[#XPos-#ArcInOut] F#Feedrate) (G03 X#XPos Y[#YPos+#YDist/2] R#ArcInOut F#Feedrate) (G01 X[#XPos+#XDist/2-#Radius]) (G02 X[#XPos+#XDist/2] Y[#YPos+#YDist/2-#Radius] R#Radius) (G01 Y[#YPos-#YDist/2+#Radius]) (G02 X[#XPos+#XDist/2-#Radius] Y[#YPos-#YDist/2] R#Radius) (G01 X[#XPos-#XDist/2+#Radius]) (G02 X[#XPos-#XDist/2] Y[#YPos-#YDist/2+#Radius] R#Radius) (G01 Y[#YPos+#YDist/2-#Radius]) (G02 X[#XPos-#XDist/2+#Radius] Y[#YPos+#YDist/2] R#Radius) (G01 X#XPos) (G03 X[#XPos+#ArcInOut] Y[#YPos+#YDist/2+#ArcInOut] R#ArcInOut) (G01 G40 X#XPos) (G00 Z1. M09) (G28 G91 Z0 M05) (M30) (END GCODE) (END TEMPLATE)

    Sheet1

    37

    36

    35

    34

    33

    32

    31MajorDia

    30

    29

    28

    27

    26

    25

    24

    23

    22

    21

    20Xpos, Ypos = Center

    19

    18

    17

    16

    15

    14

    13

    12

    11

    10

    9ArcInOut

    8

    7

    6

    5

    4

    3

    2

    1

    0

    012345678911111111112222222222333333

    01234567890123456789012345

    N901 (TEMPLATE) (NAME I.D. Thread Milling)

    (DIAGRAM)

    (LINE [40,0] [40,1]) (CENTER LINES)(LINE [0,0] [0,1])

    (DATUM [19,14])

    (CIRCLE [19,14] 13)

    (LINE [23,15] [25,13]) (LINE [25,15] [23,13]) (LINE [29,15] [31,13]) (LINE [31,15] [29,13])

    (ARROW [20,14] [23,14])

    (CCW [30,16] [24,16] 4) (LINE [23,17] [24,16]) (LINE [24,16] [25,16])

    (CCW [24,12] [30,12] 4) (LINE [31,11] [30,12]) (LINE [29,12] [30,12])

    (LINE [5,31] [5,24]) (LINE [33,31] [33,24]) (ARROW [15,30] [5,30]) (ARROW [23,30] [33,30])

    (PRINT [13,20] XPos,YPos=Center)

    (END DIAGRAM)

    (PARAMETERS)

    (#ToolNo) (NO DECIMAL) (#WrkOfset) (NO DECIMAL) (#XPos) (#YPos) (#SpdleRpm ) (NO DECIMAL) (#ThrdDpth) (#Feedrate) (#ArcInOut) (POSITION [24,10]) (#MajorDia) (POSITION [16,31]) (#ThdPitch) (END PARAMETERS)

    (GCODE)

    (T#ToolNo M06) (G00 G90 G#WrkOfset X[#XPos+#MajorDia/2-#ArcInOut] Y#YPos) (S#SpdleRpm M03) (G43 H#ToolNo Z1. M08) (G01 Z-#ThrdDpth F10.) (G41 Y[#YPos-#ArcInOut] D#ToolNo) (G03 X[#XPos+#MajorDia/2] Y#YPos R#ArcInOut F#Feedrate) (G03 I-[#MajorDia/2] J0 Z[1./#ThdPitch-#ThrdDpth]) (G03 X[#XPos+#MajorDia/2-#ArcInOut] Y[#YPos+#ArcInOut] R#ArcInOut) (G01 G40 X[#XPos+#MajorDia/2-#ArcInOut] Y#YPos ) (G00 G80 Z1. M09) (G28 G91 Z0 M5) (M30) (END GCODE) (END TEMPLATE)

    Sheet2

    Sheet3

  • Locate the coordinates of the starting point of the arc indicated. It starts at 4,27 (x and y location). By looking for the line of code that has the start and end points that you found, you can see how that line is created and will know what line of code to delete (or change). You can make these changes right in the spreadsheet and then save it as a different name.Locate the end point: 8,31. Delete the code which represents the arc: (CW [4,27] [8,31] 4)

    Sheet4

    37

    36ArcInOut

    35I

    34XDist

    33h

    32g

    31a

    30

    29b

    28

    27

    26

    25

    24

    23

    22

    21

    10

    19c

    18

    17

    16f

    15YDist

    14

    13

    12

    11

    10

    9

    8

    7

    6

    5

    4

    3d

    2

    1e

    0

    012345678911111111122222222333333333

    02345678901234567890123456

    N1102 (TEMPLATE) (NAME O.D. Square W/Radiused Corners) (DIAGRAM)

    (LINE [0,0] [40,0]) (CENTER LINES) (LINE [0,0] [0,37]) (DATUM [19,17])

    (LINE [8,31] [30,31]) a(CW [30,31] [34,26] 4) b(LINE [34,27] [34,7]) c(CW [34,7] [30,3] 4) d(LINE [31,3] [8,3]) e(CW [8,3] [4,7] 4) (LINE [4,7] [4,27]) f(CW [4,27] [8,31] 4)

    (LINE [4,32] [4,34]) g(LINE [34,29] [34,34]) (LINE [32,31] [37,31]) (LINE [35,3] [37,3])

    (ARROW [16,33] [4,33]) h(ARROW [22,33] [34,33]) (ARROW [36,17] [36,31]) (ARROW [36,13] [36,3])

    (CCW [17,38] [17,32] 4) i(LINE [17,32] [17,33]) (LINE [17,32] [16,32])

    (CCW [21,32] [21,38] 4) (LINE [21,38] [22,38]) (LINE [21,38] [21,37])

    (END DIAGRAM)

    (PARAMETERS)

    (#ToolNo) (NO DECIMAL) (#WrkOfset) (NO DECIMAL) (#XPos) (#YPos) (#SpdleRpm ) (NO DECIMAL) (#DpthCut) (#XDist) (POSITION [8,34]) (#YDist) (POSITION [35,16]) (#ArcInOut) (POSITION [16,36]) (#Radius) (POSITION [28,29]) (#Feedrate)

    (END PARAMETERS)

    (GCODE)

    (T#ToolNo M06) (G00 G90 G#WrkOfset X#XPos Y[#YPos+#YDist/2+#ArcInOut]) (S#SpdleRpm M03) (G43 H#ToolNo Z1. M08) (G01 Z-#DpthCut F50.) (G01 G41 D#ToolNo X[#XPos-#ArcInOut] F#Feedrate) (G03 X#XPos Y[#YPos+#YDist/2] R#ArcInOut F#Feedrate) (G01 X[#XPos+#XDist/2-#Radius]) (G02 X[#XPos+#XDist/2] Y[#YPos+#YDist/2-#Radius] R#Radius) (G01 Y[#YPos-#YDist/2+#Radius]) (G02 X[#XPos+#XDist/2-#Radius] Y[#YPos-#YDist/2] R#Radius) (G01 X[#XPos-#XDist/2+#Radius]) (G02 X[#XPos-#XDist/2] Y[#YPos-#YDist/2+#Radius] R#Radius) (G01 Y[#YPos+#YDist/2-#Radius]) (G02 X[#XPos-#XDist/2+#Radius] Y[#YPos+#YDist/2] R#Radius) (G01 X#XPos) (G03 X[#XPos+#ArcInOut] Y[#YPos+#YDist/2+#ArcInOut] R#ArcInOut) (G01 G40 X#XPos) (G00 Z1. M09) (G28 G91 Z0 M05) (M30) (END GCODE) (END TEMPLATE)

    Sheet1

    37

    36

    35

    34

    33

    32

    31MajorDia

    30

    29

    28

    27

    26

    25

    24

    23

    22

    21

    20Xpos, Ypos = Center

    19

    18

    17

    16

    15

    14

    13

    12

    11

    10

    9ArcInOut

    8

    7

    6

    5

    4

    3

    2

    1

    0

    012345678911111111112222222222333333

    01234567890123456789012345

    N901 (TEMPLATE) (NAME I.D. Thread Milling)

    (DIAGRAM)

    (LINE [40,0] [40,1]) (CENTER LINES)(LINE [0,0] [0,1])

    (DATUM [19,14])

    (CIRCLE [19,14] 13)

    (LINE [23,15] [25,13]) (LINE [25,15] [23,13]) (LINE [29,15] [31,13]) (LINE [31,15] [29,13])

    (ARROW [20,14] [23,14])

    (CCW [30,16] [24,16] 4) (LINE [23,17] [24,16]) (LINE [24,16] [25,16])

    (CCW [24,12] [30,12] 4) (LINE [31,11] [30,12]) (LINE [29,12] [30,12])

    (LINE [5,31] [5,24]) (LINE [33,31] [33,24]) (ARROW [15,30] [5,30]) (ARROW [23,30] [33,30])

    (PRINT [13,20] XPos,YPos=Center)

    (END DIAGRAM)

    (PARAMETERS)

    (#ToolNo) (NO DECIMAL) (#WrkOfset) (NO DECIMAL) (#XPos) (#YPos) (#SpdleRpm ) (NO DECIMAL) (#ThrdDpth) (#Feedrate) (#ArcInOut) (POSITION [24,10]) (#MajorDia) (POSITION [16,31]) (#ThdPitch) (END PARAMETERS)

    (GCODE)

    (T#ToolNo M06) (G00 G90 G#WrkOfset X[#XPos+#MajorDia/2-#ArcInOut] Y#YPos) (S#SpdleRpm M03) (G43 H#ToolNo Z1. M08) (G01 Z-#ThrdDpth F10.) (G41 Y[#YPos-#ArcInOut] D#ToolNo) (G03 X[#XPos+#MajorDia/2] Y#YPos R#ArcInOut F#Feedrate) (G03 I-[#MajorDia/2] J0 Z[1./#ThdPitch-#ThrdDpth]) (G03 X[#XPos+#MajorDia/2-#ArcInOut] Y[#YPos+#ArcInOut] R#ArcInOut) (G01 G40 X[#XPos+#MajorDia/2-#ArcInOut] Y#YPos ) (G00 G80 Z1. M09) (G28 G91 Z0 M5) (M30) (END GCODE) (END TEMPLATE)

    Sheet2

    Sheet3

  • Locate the code for the line indicated. Note that it is identified by the letter f. By looking for the line of code that has the start and end points that you found, you can see how that line is created and will know what line of code to delete (or change). Change the end point of the code (4,27) to the new corner point: 4,31.

    Sheet4

    37

    36ArcInOut

    35I

    34XDist

    33h

    32g

    31a

    30

    29b

    28

    27

    26

    25

    24

    23

    22

    21

    10

    19c

    18

    17

    16f

    15YDist

    14

    13

    12

    11

    10

    9

    8

    7

    6

    5

    4

    3d

    2

    1e

    0

    012345678911111111122222222333333333

    02345678901234567890123456

    N1102 (TEMPLATE) (NAME O.D. Square W/Radiused Corners) (DIAGRAM)

    (LINE [0,0] [40,0]) (CENTER LINES) (LINE [0,0] [0,37]) (DATUM [19,17])

    (LINE [8,31] [30,31]) a(CW [30,31] [34,26] 4) b(LINE [34,27] [34,7]) c(CW [34,7] [30,3] 4) d(LINE [31,3] [8,3]) e(CW [8,3] [4,7] 4) (LINE [4,7] [4,27]) f(CW [4,27] [8,31] 4)

    (LINE [4,32] [4,34]) g(LINE [34,29] [34,34]) (LINE [32,31] [37,31]) (LINE [35,3] [37,3])

    (ARROW [16,33] [4,33]) h(ARROW [22,33] [34,33]) (ARROW [36,17] [36,31]) (ARROW [36,13] [36,3])

    (CCW [17,38] [17,32] 4) i(LINE [17,32] [17,33]) (LINE [17,32] [16,32])

    (CCW [21,32] [21,38] 4) (LINE [21,38] [22,38]) (LINE [21,38] [21,37])

    (END DIAGRAM)

    (PARAMETERS)

    (#ToolNo) (NO DECIMAL) (#WrkOfset) (NO DECIMAL) (#XPos) (#YPos) (#SpdleRpm ) (NO DECIMAL) (#DpthCut) (#XDist) (POSITION [8,34]) (#YDist) (POSITION [35,16]) (#ArcInOut) (POSITION [16,36]) (#Radius) (POSITION [28,29]) (#Feedrate)

    (END PARAMETERS)

    (GCODE)

    (T#ToolNo M06) (G00 G90 G#WrkOfset X#XPos Y[#YPos+#YDist/2+#ArcInOut]) (S#SpdleRpm M03) (G43 H#ToolNo Z1. M08) (G01 Z-#DpthCut F50.) (G01 G41 D#ToolNo X[#XPos-#ArcInOut] F#Feedrate) (G03 X#XPos Y[#YPos+#YDist/2] R#ArcInOut F#Feedrate) (G01 X[#XPos+#XDist/2-#Radius]) (G02 X[#XPos+#XDist/2] Y[#YPos+#YDist/2-#Radius] R#Radius) (G01 Y[#YPos-#YDist/2+#Radius]) (G02 X[#XPos+#XDist/2-#Radius] Y[#YPos-#YDist/2] R#Radius) (G01 X[#XPos-#XDist/2+#Radius]) (G02 X[#XPos-#XDist/2] Y[#YPos-#YDist/2+#Radius] R#Radius) (G01 Y[#YPos+#YDist/2-#Radius]) (G02 X[#XPos-#XDist/2+#Radius] Y[#YPos+#YDist/2] R#Radius) (G01 X#XPos) (G03 X[#XPos+#ArcInOut] Y[#YPos+#YDist/2+#ArcInOut] R#ArcInOut) (G01 G40 X#XPos) (G00 Z1. M09) (G28 G91 Z0 M05) (M30) (END GCODE) (END TEMPLATE)

    Sheet1

    37

    36

    35

    34

    33

    32

    31MajorDia

    30

    29

    28

    27

    26

    25

    24

    23

    22

    21

    20Xpos, Ypos = Center

    19

    18

    17

    16

    15

    14

    13

    12

    11

    10

    9ArcInOut

    8

    7

    6

    5

    4

    3

    2

    1

    0

    012345678911111111112222222222333333

    01234567890123456789012345

    N901 (TEMPLATE) (NAME I.D. Thread Milling)

    (DIAGRAM)

    (LINE [40,0] [40,1]) (CENTER LINES)(LINE [0,0] [0,1])

    (DATUM [19,14])

    (CIRCLE [19,14] 13)

    (LINE [23,15] [25,13]) (LINE [25,15] [23,13]) (LINE [29,15] [31,13]) (LINE [31,15] [29,13])

    (ARROW [20,14] [23,14])

    (CCW [30,16] [24,16] 4) (LINE [23,17] [24,16]) (LINE [24,16] [25,16])

    (CCW [24,12] [30,12] 4) (LINE [31,11] [30,12]) (LINE [29,12] [30,12])

    (LINE [5,31] [5,24]) (LINE [33,31] [33,24]) (ARROW [15,30] [5,30]) (ARROW [23,30] [33,30])

    (PRINT [13,20] XPos,YPos=Center)

    (END DIAGRAM)

    (PARAMETERS)

    (#ToolNo) (NO DECIMAL) (#WrkOfset) (NO DECIMAL) (#XPos) (#YPos) (#SpdleRpm ) (NO DECIMAL) (#ThrdDpth) (#Feedrate) (#ArcInOut) (POSITION [24,10]) (#MajorDia) (POSITION [16,31]) (#ThdPitch) (END PARAMETERS)

    (GCODE)

    (T#ToolNo M06) (G00 G90 G#WrkOfset X[#XPos+#MajorDia/2-#ArcInOut] Y#YPos) (S#SpdleRpm M03) (G43 H#ToolNo Z1. M08) (G01 Z-#ThrdDpth F10.) (G41 Y[#YPos-#ArcInOut] D#ToolNo) (G03 X[#XPos+#MajorDia/2] Y#YPos R#ArcInOut F#Feedrate) (G03 I-[#MajorDia/2] J0 Z[1./#ThdPitch-#ThrdDpth]) (G03 X[#XPos+#MajorDia/2-#ArcInOut] Y[#YPos+#ArcInOut] R#ArcInOut) (G01 G40 X[#XPos+#MajorDia/2-#ArcInOut] Y#YPos ) (G00 G80 Z1. M09) (G28 G91 Z0 M5) (M30) (END GCODE) (END TEMPLATE)

    Sheet2

    Sheet3

  • Next, locate the code for the line identified by the letter a. This will change the top line (a) so that it extends from corner to corner, as shown in the next slide.Change both end points of the code to the new corner points on the right and left corners: 4,31 and 34,31. 4,31])

    Sheet4

    37

    36ArcInOut

    35I

    34XDist

    33h

    32g

    31a

    30

    29b

    28

    27

    26

    25

    24

    23

    22

    21

    10

    19c

    18

    17

    16f

    15YDist

    14

    13

    12

    11

    10

    9

    8

    7

    6

    5

    4

    3d

    2

    1e

    0

    012345678911111111122222222333333333

    02345678901234567890123456

    N1102 (TEMPLATE) (NAME O.D. Square W/Radiused Corners) (DIAGRAM)

    (LINE [0,0] [40,0]) (CENTER LINES) (LINE [0,0] [0,37]) (DATUM [19,17])

    (LINE [8,31] [30,31]) a(CW [30,31] [34,26] 4) b(LINE [34,27] [34,7]) c(CW [34,7] [30,3] 4) d(LINE [31,3] [8,3]) e(CW [8,3] [4,7] 4) (LINE [4,7] [4,27]) f(CW [4,27] [8,31] 4)

    (LINE [4,32] [4,34]) g(LINE [34,29] [34,34]) (LINE [32,31] [37,31]) (LINE [35,3] [37,3])

    (ARROW [16,33] [4,33]) h(ARROW [22,33] [34,33]) (ARROW [36,17] [36,31]) (ARROW [36,13] [36,3])

    (CCW [17,38] [17,32] 4) i(LINE [17,32] [17,33]) (LINE [17,32] [16,32])

    (CCW [21,32] [21,38] 4) (LINE [21,38] [22,38]) (LINE [21,38] [21,37])

    (END DIAGRAM)

    (PARAMETERS)

    (#ToolNo) (NO DECIMAL) (#WrkOfset) (NO DECIMAL) (#XPos) (#YPos) (#SpdleRpm ) (NO DECIMAL) (#DpthCut) (#XDist) (POSITION [8,34]) (#YDist) (POSITION [35,16]) (#ArcInOut) (POSITION [16,36]) (#Radius) (POSITION [28,29]) (#Feedrate)

    (END PARAMETERS)

    (GCODE)

    (T#ToolNo M06) (G00 G90 G#WrkOfset X#XPos Y[#YPos+#YDist/2+#ArcInOut]) (S#SpdleRpm M03) (G43 H#ToolNo Z1. M08) (G01 Z-#DpthCut F50.) (G01 G41 D#ToolNo X[#XPos-#ArcInOut] F#Feedrate) (G03 X#XPos Y[#YPos+#YDist/2] R#ArcInOut F#Feedrate) (G01 X[#XPos+#XDist/2-#Radius]) (G02 X[#XPos+#XDist/2] Y[#YPos+#YDist/2-#Radius] R#Radius) (G01 Y[#YPos-#YDist/2+#Radius]) (G02 X[#XPos+#XDist/2-#Radius] Y[#YPos-#YDist/2] R#Radius) (G01 X[#XPos-#XDist/2+#Radius]) (G02 X[#XPos-#XDist/2] Y[#YPos-#YDist/2+#Radius] R#Radius) (G01 Y[#YPos+#YDist/2-#Radius]) (G02 X[#XPos-#XDist/2+#Radius] Y[#YPos+#YDist/2] R#Radius) (G01 X#XPos) (G03 X[#XPos+#ArcInOut] Y[#YPos+#YDist/2+#ArcInOut] R#ArcInOut) (G01 G40 X#XPos) (G00 Z1. M09) (G28 G91 Z0 M05) (M30) (END GCODE) (END TEMPLATE)

    Sheet1

    37

    36

    35

    34

    33

    32

    31MajorDia

    30

    29

    28

    27

    26

    25

    24

    23

    22

    21

    20Xpos, Ypos = Center

    19

    18

    17

    16

    15

    14

    13

    12

    11

    10

    9ArcInOut

    8

    7

    6

    5

    4

    3

    2

    1

    0

    012345678911111111112222222222333333

    01234567890123456789012345

    N901 (TEMPLATE) (NAME I.D. Thread Milling)

    (DIAGRAM)

    (LINE [40,0] [40,1]) (CENTER LINES)(LINE [0,0] [0,1])

    (DATUM [19,14])

    (CIRCLE [19,14] 13)

    (LINE [23,15] [25,13]) (LINE [25,15] [23,13]) (LINE [29,15] [31,13]) (LINE [31,15] [29,13])

    (ARROW [20,14] [23,14])

    (CCW [30,16] [24,16] 4) (LINE [23,17] [24,16]) (LINE [24,16] [25,16])

    (CCW [24,12] [30,12] 4) (LINE [31,11] [30,12]) (LINE [29,12] [30,12])

    (LINE [5,31] [5,24]) (LINE [33,31] [33,24]) (ARROW [15,30] [5,30]) (ARROW [23,30] [33,30])

    (PRINT [13,20] XPos,YPos=Center)

    (END DIAGRAM)

    (PARAMETERS)

    (#ToolNo) (NO DECIMAL) (#WrkOfset) (NO DECIMAL) (#XPos) (#YPos) (#SpdleRpm ) (NO DECIMAL) (#ThrdDpth) (#Feedrate) (#ArcInOut) (POSITION [24,10]) (#MajorDia) (POSITION [16,31]) (#ThdPitch) (END PARAMETERS)

    (GCODE)

    (T#ToolNo M06) (G00 G90 G#WrkOfset X[#XPos+#MajorDia/2-#ArcInOut] Y#YPos) (S#SpdleRpm M03) (G43 H#ToolNo Z1. M08) (G01 Z-#ThrdDpth F10.) (G41 Y[#YPos-#ArcInOut] D#ToolNo) (G03 X[#XPos+#MajorDia/2] Y#YPos R#ArcInOut F#Feedrate) (G03 I-[#MajorDia/2] J0 Z[1./#ThdPitch-#ThrdDpth]) (G03 X[#XPos+#MajorDia/2-#ArcInOut] Y[#YPos+#ArcInOut] R#ArcInOut) (G01 G40 X[#XPos+#MajorDia/2-#ArcInOut] Y#YPos ) (G00 G80 Z1. M09) (G28 G91 Z0 M5) (M30) (END GCODE) (END TEMPLATE)

    Sheet2

    Sheet3

  • Finally locate the code for the line indicated as identified by the letter c. This completes the required changes for the template. You will now need to change some of the G-code. Change the end point of the code 34,27 to the new corner point : 34,31. 4,31])

    Sheet4

    37

    36ArcInOut

    35I

    34XDist

    33h

    32g

    31a

    30

    29b

    28

    27

    26

    25

    24

    23

    22

    21

    10

    19c

    18

    17

    16f

    15YDist

    14

    13

    12

    11

    10

    9

    8

    7

    6

    5

    4

    3d

    2

    1e

    0

    012345678911111111122222222333333333

    02345678901234567890123456

    N1102 (TEMPLATE) (NAME O.D. Square W/Radiused Corners) (DIAGRAM)

    (LINE [0,0] [40,0]) (CENTER LINES) (LINE [0,0] [0,37]) (DATUM [19,17])

    (LINE [8,31] [30,31]) a(CW [30,31] [34,26] 4) b(LINE [34,27] [34,7]) c(CW [34,7] [30,3] 4) d(LINE [31,3] [8,3]) e(CW [8,3] [4,7] 4) (LINE [4,7] [4,27]) f(CW [4,27] [8,31] 4)

    (LINE [4,32] [4,34]) g(LINE [34,29] [34,34]) (LINE [32,31] [37,31]) (LINE [35,3] [37,3])

    (ARROW [16,33] [4,33]) h(ARROW [22,33] [34,33]) (ARROW [36,17] [36,31]) (ARROW [36,13] [36,3])

    (CCW [17,38] [17,32] 4) i(LINE [17,32] [17,33]) (LINE [17,32] [16,32])

    (CCW [21,32] [21,38] 4) (LINE [21,38] [22,38]) (LINE [21,38] [21,37])

    (END DIAGRAM)

    (PARAMETERS)

    (#ToolNo) (NO DECIMAL) (#WrkOfset) (NO DECIMAL) (#XPos) (#YPos) (#SpdleRpm ) (NO DECIMAL) (#DpthCut) (#XDist) (POSITION [8,34]) (#YDist) (POSITION [35,16]) (#ArcInOut) (POSITION [16,36]) (#Radius) (POSITION [28,29]) (#Feedrate)

    (END PARAMETERS)

    (GCODE)

    (T#ToolNo M06) (G00 G90 G#WrkOfset X#XPos Y[#YPos+#YDist/2+#ArcInOut]) (S#SpdleRpm M03) (G43 H#ToolNo Z1. M08) (G01 Z-#DpthCut F50.) (G01 G41 D#ToolNo X[#XPos-#ArcInOut] F#Feedrate) (G03 X#XPos Y[#YPos+#YDist/2] R#ArcInOut F#Feedrate) (G01 X[#XPos+#XDist/2-#Radius]) (G02 X[#XPos+#XDist/2] Y[#YPos+#YDist/2-#Radius] R#Radius) (G01 Y[#YPos-#YDist/2+#Radius]) (G02 X[#XPos+#XDist/2-#Radius] Y[#YPos-#YDist/2] R#Radius) (G01 X[#XPos-#XDist/2+#Radius]) (G02 X[#XPos-#XDist/2] Y[#YPos-#YDist/2+#Radius] R#Radius) (G01 Y[#YPos+#YDist/2-#Radius]) (G02 X[#XPos-#XDist/2+#Radius] Y[#YPos+#YDist/2] R#Radius) (G01 X#XPos) (G03 X[#XPos+#ArcInOut] Y[#YPos+#YDist/2+#ArcInOut] R#ArcInOut) (G01 G40 X#XPos) (G00 Z1. M09) (G28 G91 Z0 M05) (M30) (END GCODE) (END TEMPLATE)

    Sheet1

    37

    36

    35

    34

    33

    32

    31MajorDia

    30

    29

    28

    27

    26

    25

    24

    23

    22

    21

    20Xpos, Ypos = Center

    19

    18

    17

    16

    15

    14

    13

    12

    11

    10

    9ArcInOut

    8

    7

    6

    5

    4

    3

    2

    1

    0

    012345678911111111112222222222333333

    01234567890123456789012345

    N901 (TEMPLATE) (NAME I.D. Thread Milling)

    (DIAGRAM)

    (LINE [40,0] [40,1]) (CENTER LINES)(LINE [0,0] [0,1])

    (DATUM [19,14])

    (CIRCLE [19,14] 13)

    (LINE [23,15] [25,13]) (LINE [25,15] [23,13]) (LINE [29,15] [31,13]) (LINE [31,15] [29,13])

    (ARROW [20,14] [23,14])

    (CCW [30,16] [24,16] 4) (LINE [23,17] [24,16]) (LINE [24,16] [25,16])

    (CCW [24,12] [30,12] 4) (LINE [31,11] [30,12]) (LINE [29,12] [30,12])

    (LINE [5,31] [5,24]) (LINE [33,31] [33,24]) (ARROW [15,30] [5,30]) (ARROW [23,30] [33,30])

    (PRINT [13,20] XPos,YPos=Center)

    (END DIAGRAM)

    (PARAMETERS)

    (#ToolNo) (NO DECIMAL) (#WrkOfset) (NO DECIMAL) (#XPos) (#YPos) (#SpdleRpm ) (NO DECIMAL) (#ThrdDpth) (#Feedrate) (#ArcInOut) (POSITION [24,10]) (#MajorDia) (POSITION [16,31]) (#ThdPitch) (END PARAMETERS)

    (GCODE)

    (T#ToolNo M06) (G00 G90 G#WrkOfset X[#XPos+#MajorDia/2-#ArcInOut] Y#YPos) (S#SpdleRpm M03) (G43 H#ToolNo Z1. M08) (G01 Z-#ThrdDpth F10.) (G41 Y[#YPos-#ArcInOut] D#ToolNo) (G03 X[#XPos+#MajorDia/2] Y#YPos R#ArcInOut F#Feedrate) (G03 I-[#MajorDia/2] J0 Z[1./#ThdPitch-#ThrdDpth]) (G03 X[#XPos+#MajorDia/2-#ArcInOut] Y[#YPos+#ArcInOut] R#ArcInOut) (G01 G40 X[#XPos+#MajorDia/2-#ArcInOut] Y#YPos ) (G00 G80 Z1. M09) (G28 G91 Z0 M5) (M30) (END GCODE) (END TEMPLATE)

    Sheet2

    Sheet3

  • Finally, click on the text box and arrow down to the G-code sectionFor this exercise, you will not need to change any Parameters.4,31])(LINE[4,31][34,31])

    Sheet4

    37

    36ArcInOut

    35I

    34XDist

    33h

    32g

    31a

    30

    29b

    28

    27

    26

    25

    24

    23

    22

    21

    10

    19c

    18

    17

    16f

    15YDist

    14

    13

    12

    11

    10

    9

    8

    7

    6

    5

    4

    3d

    2

    1e

    0

    012345678911111111122222222333333333

    02345678901234567890123456

    N1102 (TEMPLATE) (NAME O.D. Square W/Radiused Corners) (DIAGRAM)

    (LINE [0,0] [40,0]) (CENTER LINES) (LINE [0,0] [0,37]) (DATUM [19,17])

    (LINE [8,31] [30,31]) a(CW [30,31] [34,26] 4) b(LINE [34,27] [34,7]) c(CW [34,7] [30,3] 4) d(LINE [31,3] [8,3]) e(CW [8,3] [4,7] 4) (LINE [4,7] [4,27]) f(CW [4,27] [8,31] 4)

    (LINE [4,32] [4,34]) g(LINE [34,29] [34,34]) (LINE [32,31] [37,31]) (LINE [35,3] [37,3])

    (ARROW [16,33] [4,33]) h(ARROW [22,33] [34,33]) (ARROW [36,17] [36,31]) (ARROW [36,13] [36,3])

    (CCW [17,38] [17,32] 4) i(LINE [17,32] [17,33]) (LINE [17,32] [16,32])

    (CCW [21,32] [21,38] 4) (LINE [21,38] [22,38]) (LINE [21,38] [21,37])

    (END DIAGRAM)

    (PARAMETERS)

    (#ToolNo) (NO DECIMAL) (#WrkOfset) (NO DECIMAL) (#XPos) (#YPos) (#SpdleRpm ) (NO DECIMAL) (#DpthCut) (#XDist) (POSITION [8,34]) (#YDist) (POSITION [35,16]) (#ArcInOut) (POSITION [16,36]) (#Radius) (POSITION [28,29]) (#Feedrate)

    (END PARAMETERS)

    (GCODE)

    (T#ToolNo M06) (G00 G90 G#WrkOfset X#XPos Y[#YPos+#YDist/2+#ArcInOut]) (S#SpdleRpm M03) (G43 H#ToolNo Z1. M08) (G01 Z-#DpthCut F50.) (G01 G41 D#ToolNo X[#XPos-#ArcInOut] F#Feedrate) (G03 X#XPos Y[#YPos+#YDist/2] R#ArcInOut F#Feedrate) (G01 X[#XPos+#XDist/2-#Radius]) (G02 X[#XPos+#XDist/2] Y[#YPos+#YDist/2-#Radius] R#Radius) (G01 Y[#YPos-#YDist/2+#Radius]) (G02 X[#XPos+#XDist/2-#Radius] Y[#YPos-#YDist/2] R#Radius) (G01 X[#XPos-#XDist/2+#Radius]) (G02 X[#XPos-#XDist/2] Y[#YPos-#YDist/2+#Radius] R#Radius) (G01 Y[#YPos+#YDist/2-#Radius]) (G02 X[#XPos-#XDist/2+#Radius] Y[#YPos+#YDist/2] R#Radius) (G01 X#XPos) (G03 X[#XPos+#ArcInOut] Y[#YPos+#YDist/2+#ArcInOut] R#ArcInOut) (G01 G40 X#XPos) (G00 Z1. M09) (G28 G91 Z0 M05) (M30) (END GCODE) (END TEMPLATE)

    Sheet1

    37

    36

    35

    34

    33

    32

    31MajorDia

    30

    29

    28

    27

    26

    25

    24

    23

    22

    21

    20Xpos, Ypos = Center

    19

    18

    17

    16

    15

    14

    13

    12

    11

    10

    9ArcInOut

    8

    7

    6

    5

    4

    3

    2

    1

    0

    012345678911111111112222222222333333

    01234567890123456789012345

    N901 (TEMPLATE) (NAME I.D. Thread Milling)

    (DIAGRAM)

    (LINE [40,0] [40,1]) (CENTER LINES)(LINE [0,0] [0,1])

    (DATUM [19,14])

    (CIRCLE [19,14] 13)

    (LINE [23,15] [25,13]) (LINE [25,15] [23,13]) (LINE [29,15] [31,13]) (LINE [31,15] [29,13])

    (ARROW [20,14] [23,14])

    (CCW [30,16] [24,16] 4) (LINE [23,17] [24,16]) (LINE [24,16] [25,16])

    (CCW [24,12] [30,12] 4) (LINE [31,11] [30,12]) (LINE [29,12] [30,12])

    (LINE [5,31] [5,24]) (LINE [33,31] [33,24]) (ARROW [15,30] [5,30]) (ARROW [23,30] [33,30])

    (PRINT [13,20] XPos,YPos=Center)

    (END DIAGRAM)

    (PARAMETERS)

    (#ToolNo) (NO DECIMAL) (#WrkOfset) (NO DECIMAL) (#XPos) (#YPos) (#SpdleRpm ) (NO DECIMAL) (#ThrdDpth) (#Feedrate) (#ArcInOut) (POSITION [24,10]) (#MajorDia) (POSITION [16,31]) (#ThdPitch) (END PARAMETERS)

    (GCODE)

    (T#ToolNo M06) (G00 G90 G#WrkOfset X[#XPos+#MajorDia/2-#ArcInOut] Y#YPos) (S#SpdleRpm M03) (G43 H#ToolNo Z1. M08) (G01 Z-#ThrdDpth F10.) (G41 Y[#YPos-#ArcInOut] D#ToolNo) (G03 X[#XPos+#MajorDia/2] Y#YPos R#ArcInOut F#Feedrate) (G03 I-[#MajorDia/2] J0 Z[1./#ThdPitch-#ThrdDpth]) (G03 X[#XPos+#MajorDia/2-#ArcInOut] Y[#YPos+#ArcInOut] R#ArcInOut) (G01 G40 X[#XPos+#MajorDia/2-#ArcInOut] Y#YPos ) (G00 G80 Z1. M09) (G28 G91 Z0 M5) (M30) (END GCODE) (END TEMPLATE)

    Sheet2

    Sheet3

  • You will notice that there are 4 lines of code with a G02. These were for the 4 rounded corners of the original template. 4,31])(LINE[4,31][34,31])

    (GCODE)

    (T#ToolNo M06) (G00 G90 G#WrkOfset X#XPos Y[#YPos+#YDist/2+#ArcInOut]) (S#SpdleRpm M03) (G43 H#ToolNo Z1. M08) (G01 Z-#DpthCut F50.) (G01 G41 D#ToolNo X[#XPos-#ArcInOut] F#Feedrate) (G03 X#XPos Y[#YPos+#YDist/2] R#ArcInOut F#Feedrate) (G01 X[#XPos+#XDist/2-#Radius]) (G02 X[#XPos+#XDist/2] Y[#YPos+#YDist/2-#Radius] R#Radius) (G01 Y[#YPos-#YDist/2+#Radius]) (G02 X[#XPos+#XDist/2-#Radius] Y[#YPos-#YDist/2] R#Radius) (G01 X[#XPos-#XDist/2+#Radius]) (G02 X[#XPos-#XDist/2] Y[#YPos-#YDist/2+#Radius] R#Radius) (G01 Y[#YPos+#YDist/2-#Radius]) (G02 X[#XPos-#XDist/2+#Radius] Y[#YPos+#YDist/2] R#Radius) (G01 X#XPos) (G03 X[#XPos+#ArcInOut] Y[#YPos+#YDist/2+#ArcInOut] R#ArcInOut) (G01 G40 X#XPos) (G00 Z1. M09) (G28 G91 Z0 M05) (M30) (END GCODE)

  • One of the corners that we changed was in the +X and +Y quadrant of the part. This would be generated by the code indicated.The G01 lines mentioned will need to be changed by deleting the -#Radius.The other rounded corner was at a -X and a +Y. This would be generated by the line shown.You will need to delete these two lines and change the G01 lines preceding them.4,31])(LINE[4,31][34,31])

    (GCODE)

    (T#ToolNo M06) (G00 G90 G#WrkOfset X#XPos Y[#YPos+#YDist/2+#ArcInOut]) (S#SpdleRpm M03) (G43 H#ToolNo Z1. M08) (G01 Z-#DpthCut F50.) (G01 G41 D#ToolNo X[#XPos-#ArcInOut] F#Feedrate) (G03 X#XPos Y[#YPos+#YDist/2] R#ArcInOut F#Feedrate) (G01 X[#XPos+#XDist/2-#Radius]) (G02 X[#XPos+#XDist/2] Y[#YPos+#YDist/2-#Radius] R#Radius) (G01 Y[#YPos-#YDist/2+#Radius]) (G02 X[#XPos+#XDist/2-#Radius] Y[#YPos-#YDist/2] R#Radius) (G01 X[#XPos-#XDist/2+#Radius]) (G02 X[#XPos-#XDist/2] Y[#YPos-#YDist/2+#Radius] R#Radius) (G01 Y[#YPos+#YDist/2-#Radius]) (G02 X[#XPos-#XDist/2+#Radius] Y[#YPos+#YDist/2] R#Radius) (G01 X#XPos) (G03 X[#XPos+#ArcInOut] Y[#YPos+#YDist/2+#ArcInOut] R#ArcInOut) (G01 G40 X#XPos) (G00 Z1. M09) (G28 G91 Z0 M05) (M30) (END GCODE)

  • After you have completed your changes, highlight all the code in the spreadsheet, starting with the line number, and copy it to a text file. It does not matter what you name the file, but it should be 8 characters or less. Save the file in the same folder as your copy of VQC for PC. You can then use the PC version of VQC to check your work.%O09997N1100(CATEGORY)(NAME Custom Template)N1102 (TEMPLATE) (NAME O.D. Square W/ 2 Radius Corners)(DIAGRAM) (LINE [0,0] [40,0]) (CENTER LINES) (LINE [0,0] [0,37]) (DATUM [19,17]) (LINE [4,31] [34,31]) (LINE [34,31] [34,7]) (CW [34,7] [30,3] 4) (LINE [31,3] [8,3]) (CW [8,3] [4,7] 4) (LINE [4,7] [4,31]) (LINE [4,32] [4,34]) (LINE [34,29] [34,34]) (LINE [32,31] [37,31]) (LINE [35,3] [37,3]) (ARROW [16,33] [4,33]) (ARROW [22,33] [34,33]) (ARROW [36,17] [36,31]) (ARROW [36,13] [36,3]) (CCW [17,38] [17,32] 4) (LINE [17,32] [17,33]) (LINE [17,32] [16,32]) (CCW [21,32] [21,38] 4) (LINE [21,38] [22,38]) (LINE [21,38] [21,37]) . . . . . . Note: You will need to add % signs at the beginning and end of the file, add a program number and add a CATEGORY name. At the end of the file, you also need an END CATEGORY statement.

  • VQC for PCThe PC version of VQC works like that on the control, plus it has some extra features that help for checking custom templates.

  • There is a Template Checker included, which will check the format of your template. For instance, it will make sure that any variable names you have in your G-code section are also shown in the Parameter section. (Note: The Template Maker option is not yet functional)

  • You can enter the name of your file in the TEMPLATE NAME block or press F3 for a directory.Press .Template Checker

  • Scroll through the directory and find your file name.Press to select the file.

  • The file will now appear in the block for TEMPLATE NAME. Press to run the Checker.

  • If there is an error, it will show what the error is and the line number where it is located. It will not show all the errors at once. Make corrections with a text editor (there is a menu selection for one in the VQC for PC) and run the checker again.Before you run the checker again on an edited file, make sure you have closed the file in the text editor.

  • If everything is O.K. you will get this message. Close the window by pressing and return to the basic program.

  • Press to select your new template. Arrow down until you find it and press .

  • You should see your template name on the right.Press

  • Now you should see the screen with all the templates in the category. Press

  • You will now see your custom template. Verify that it looks like you want. Enter some values and verify that it will output the G- code. If everything looks good, you can put it on a Control and try it out using Graphics to test the output.

  • Prepared by Haas Automation Training Department Oxnard, CA 93030