Lab Equipment‎ > ‎4 Axis GPU-CNC‎ > ‎

G Code Snippets

Random code for future reference

Using a Subroutine to Drill Holes

This example uses a subroutine (o100) and named parameters

%
M3                    ;Turn spindle clockwise (n/a)

; Move to hole and drill it - presumes last state was safe height
; #1 = X 
; #2 = Y
o100 sub
  #<drill_depth> = -20
  #<drill_feed_rate> = 50
  #<move_feed_rate> = 200
  #<safe_height> = 10
  G01 X#1 Y#2   
  F#<drill_feed_rate>   ;Set Feed Rate Slow
  G01 Z#<drill_depth>   ;Drill hole, Coordinated motion ("Straight feed")
  F#<move_feed_rate>    ;Set Feed Rate Fast
  G01 Z#<safe_height>   ;Go up to safe height
o100 endsub

; drill holes
o100 call [-12.34] [7.125]
o100 call [-12.34] [-7.125] 
o100 call [0] [14.25]
o100 call [0] [-14.25]
o100 call [12.34] [7.125] 
o100 call [12.34] [-7.125]

; return to zero
G00 X0 Y0                
M5
%

Using a Subroutine to Cut Circle

%
; From centre X/Y cut a hole of Radius R - presumes last state was safe height
; #1 = X 
; #2 = Y
; #3 = R
o100 sub
  #<drill_depth> = -4
  #<drill_feed_rate> = 50
  #<move_feed_rate> = 200
  #<safe_height> = 5
  G01 X#1 Y#2 Z#<safe_height>
  G02 X#1 Y#2 I#3 J0
  ; F#<drill_feed_rate>   ;Set Feed Rate Slow
  ; G01 Z#<drill_depth>   ;Drill hole, Coordinated motion ("Straight feed")
  ; F#<move_feed_rate>    ;Set Feed Rate Fast
  ; G01 Z#<safe_height>   ;Go up to safe height
o100 endsub
o100 call [0.0] [0.0] [15.0]
%
Comments