Re: [CAD_CAM_EDM_DRO] emc g92
Posted by
Tom Hubin
on 2004-10-17 21:56:56 UTC
Jon Elson wrote:
Hello Jon,
I have seen no way to follow your procedure on a standard Sherline 5410
(metric 5400) mill.
I change drill chucks, drill bits, endmills, endmill holders, collets,
etc. often within a Gcode program. I have no automatic tool changer. I
have no way to control offsets.
With TurboCnc the operator follows the prompted instructions and
installs the specified bit in the appropriate chuck then jogs to barely
contact the appropriate reference surface. When the program resumes it
uses G92 to set the Z position to a useful and meaningful value.
This may seem amateurish to somebody who has production type equipment
but what I have is an amateur machine. The procedure I use with G92
works very well with TurboCnc. There appears to be no way to automate to
the same degree using EMC on a standard Sherline mill.
Below is a typical program of mine which runs well with TurboCnc 3.1a.
Some of my other Gcode programs use G92 to set Z to a nonzero value at
the reference surface. The case you describe using a spacer to protect
the finished surface would be one example of setting to a nonzero value.
How would you do this (ignore the subroutine stuff) with EMC on a simple
mill like my Sherline 5410 (one stepper motor for each of three axes,
manual spindle on/off and speed control, no limit or home switches,
common drill bits and endmills)?
Why does the use of G92 in EMC cause unpredictable behaviour like
crashing bits down into the workpiece or up to the top of the Z column?
BTW, this does not happen when the G92 block itself is encountered. It
happens when the program terminates with M02 if G92 is used somewhere
within the program.
Does anybody actually use G92 within a Gcode program using EMC? If so, I
would like to see and run that Gcode program. If not, I suspect that is
because G92 is dangerous because the EMC interpreter does things with
G92 that no mere mortal can predict. Any Gcode instruction that requires
experiments, observations, and a 20 page report on the results needs
some work.
Tom Hubin
thubin@...
**************************************
M00 ; File: Cube05\Cage\Bottom\Drill.cnc 15 July 2004
G90 ; absolute
G70 ; inches
M00 ; use approx 2.0 x 2.0 x 1.8 aluminum block
M00 ; ref corner is (right, back, top) = (+1.0, +1.0, 0.0)
M00 ; (0,0,0) is (center, center, top)
;**************************************************
M00 ; Load medium center drill and touch surface
G92 Z 0.0 ; define surface as z=0
G00 Z 0.040 ; raise the bit
M00 ; Tighten bit and start spindle 2800 RPM
; five 1/8" dowel holes
G00 X +0.100 Y +0.800
G81 X 0.000 Y +0.700 Z -0.040 R 0.040 F 2.0
G00 X -0.600 Y +0.100
G81 X -0.700 Y +0.000 Z -0.040 R 0.040 F 2.0
G00 X +0.100 Y +0.100
G81 X 0.000 Y +0.000 Z -0.040 R 0.040 F 2.0
G00 X +0.800 Y +0.100
G81 X +0.700 Y +0.000 Z -0.040 R 0.040 F 2.0
G00 X +0.100 Y -0.600
G81 X 0.000 Y -0.700 Z -0.040 R 0.040 F 2.0
; four tap 4-40 holes
G00 X -0.49055 Y +0.69055
G81 X -0.59055 Y +0.59055 Z -0.040 R 0.040 F 2.0
G00 X +0.69055 Y +0.69055
G81 X +0.59055 Y +0.59055 Z -0.040 R 0.040 F 2.0
G00 X -0.49055 Y -0.49055
G81 X -0.59055 Y -0.59055 Z -0.040 R 0.040 F 2.0
G00 X +0.69055 Y -0.49055
G81 X +0.59055 Y -0.59055 Z -0.040 R 0.040 F 2.0
G00 Z +0.2 ; raise the bit
G00 X +1.25 Y 0.0 ; position to change bits
;**************************************************
M00 ; Load #43 (0.089 inch) drill and touch surface
G92 Z 0.0 ; define surface as z=0
G00 Z 0.040 ; raise the bit
M00 ; Tighten bit and start spindle 2800 RPM
; four tap 4-40 holes
G00 X -0.49055 Y +0.69055
G82 X -0.59055 Y +0.59055 Z -0.175 R +0.040 F 8.473 #250
G00 X +0.69055 Y +0.69055
G82 X +0.59055 Y +0.59055 Z -0.175 R +0.040 F 8.473 #250
G00 X -0.49055 Y -0.49055
G82 X -0.59055 Y -0.59055 Z -0.175 R +0.040 F 8.473 #250
G00 X +0.69055 Y -0.49055
G82 X +0.59055 Y -0.59055 Z -0.175 R +0.040 F 8.473 #250
G00 Z +0.2 ; raise the bit
G00 X +1.25 Y 0.0 ; position to change bits
;**************************************************
M00 ; Load 7/64 drill and touch surface
G92 Z 0.0 ; define surface as z=0
G00 Z 0.040 ; raise the bit
M00 ; Tighten bit and start spindle 2800 RPM
; five 1/8" dowel holes
G00 X +0.100 Y +0.800
G82 X 0.000 Y +0.700 Z -0.114 R +0.040 F 10.412 #250
G00 X -0.600 Y +0.100
G82 X -0.700 Y +0.000 Z -0.114 R +0.040 F 10.412 #250
G00 X +0.100 Y +0.100
G82 X 0.000 Y +0.000 Z -0.114 R +0.040 F 10.412 #250
G00 X +0.800 Y +0.100
G82 X +0.700 Y +0.000 Z -0.114 R +0.040 F 10.412 #250
G00 X +0.100 Y -0.600
G82 X 0.000 Y -0.700 Z -0.114 R +0.040 F 10.412 #250
G00 Z +0.2 ; raise the bit
G00 X +1.25 Y 0.0 ; position to change bits
;**************************************************
M00 ; Load 0.120" endmill and touch surface
G92 Z 0.0 ; define surface as z=0
G00 Z 0.040 ; raise the bit
M00 ; Tighten bit and start spindle 2800 RPM
; five 1/8" dowel holes
G00 X +0.100 Y +0.800
G82 X 0.000 Y +0.700 Z -0.114 R +0.040 F 1.0 #250
G00 X -0.600 Y +0.100
G82 X -0.700 Y +0.000 Z -0.114 R +0.040 F 1.0 #250
G00 X +0.100 Y +0.100
G82 X 0.000 Y +0.000 Z -0.114 R +0.040 F 1.0 #250
G00 X +0.800 Y +0.100
G82 X +0.700 Y +0.000 Z -0.114 R +0.040 F 1.0 #250
G00 X +0.100 Y -0.600
G82 X 0.000 Y -0.700 Z -0.114 R +0.040 F 1.0 #250
G00 Z +0.2 ; raise the bit
G00 X +1.25 Y 0.0 ; position to change bits
;**************************************************
M00 ; Load 0.1260" flat reamer and touch surface
G92 Z 0.0 ; define surface as z=0
G00 Z 0.040 ; raise the bit
M00 ; Tighten bit and start spindle 400 RPM
; five 1/8" dowel holes
G00 X +0.100 Y +0.800
G81 X 0.000 Y +0.700 Z -0.114 R +0.040 F 12.0
G00 X -0.600 Y +0.100
G81 X -0.700 Y +0.000 Z -0.114 R +0.040 F 12.0
G00 X +0.100 Y +0.100
G81 X 0.000 Y +0.000 Z -0.114 R +0.040 F 12.0
G00 X +0.800 Y +0.100
G81 X +0.700 Y +0.000 Z -0.114 R +0.040 F 12.0
G00 X +0.100 Y -0.600
G81 X 0.000 Y -0.700 Z -0.114 R +0.040 F 12.0
G00 Z +0.2 ; raise the bit
G00 X +1.25 Y 0.0 ; position to change bits
;**************************************************
M00 ; Load 3/32 inch endmill and touch surface
G92 Z 0.0 ; define surface as z=0
G00 Z 0.040 ; raise the bit
M00 ; Tighten bit and start spindle 2800 RPM
; four tap 4-40 holes
G00 X -0.49055 Y +0.69055
G82 X -0.59055 Y +0.59055 Z -0.175 R +0.040 F 1.0 #250
G00 X +0.69055 Y +0.69055
G82 X +0.59055 Y +0.59055 Z -0.175 R +0.040 F 1.0 #250
G00 X -0.49055 Y -0.49055
G82 X -0.59055 Y -0.59055 Z -0.175 R +0.040 F 1.0 #250
G00 X +0.69055 Y -0.49055
G82 X +0.59055 Y -0.59055 Z -0.175 R +0.040 F 1.0 #250
G00 Z +0.2 ; raise the bit
G00 X +1.25 Y 0.0 ; position to change bits
;**************************************************
M00 ; Load #4 thread mill and touch surface
G92 Z 0.0 ; define surface as z=0
G00 Z 0.2 ; raise the bit
M00 ; Tighten bit and start spindle 2800 RPM
; four tap 4-40 holes
G00 X -0.49055 Y +0.69055
G00 X -0.59055 Y +0.59055
N210 M60 #2000 ; thread mill helix
G00 X +0.69055 Y +0.69055
G00 X +0.59055 Y +0.59055
N220 M60 #2000 ; thread mill helix
G00 X -0.49055 Y -0.49055
G00 X -0.59055 Y -0.59055
N230 M60 #2000 ; thread mill helix
G00 X +0.69055 Y -0.49055
G00 X +0.59055 Y -0.59055
N240 M60 #2000 ; thread mill helix
G00 Z +0.2 ; raise the bit
G00 X +1.25 Y 0.0 ; position to change bits
;**************************************************
M02 ; finished program Cube05\Cage\Bottom\Drill.cnc
;**************************************************
N2000 ; 0.080 inch threadmill helix for 4-40 holes
G00 Z -0.165 ; start just above bottom of hole
G91 ; start incremental mode
G01 X -0.0160 F 1.0 ; move to left side of hole
G73 X0 Y0 J0 I +0.0160 Z +0.025 ; helix to Z -0.015
G73 X0 Y0 J0 I +0.0160 Z +0.025 ; helix to Z -0.040
G73 X0 Y0 J0 I +0.0160 Z +0.025 ; helix to Z -0.065
G73 X0 Y0 J0 I +0.0160 Z +0.025 ; helix to Z -0.090
G73 X0 Y0 J0 I +0.0160 Z +0.025 ; helix to Z -0.115
G73 X0 Y0 J0 I +0.0160 Z +0.025 ; helix to Z -0.140
G73 X0 Y0 J0 I +0.0160 Z +0.025 ; helix to Z -0.165
G01 X +0.0160 ; move to center of hole
G90 ; restore absolute mode
G00 Z +0.2 ; exit the hole
M62 ; end of threadmill helix subroutine
>************************************************
> Tom Hubin wrote:
>
> >I gave up on EMC and use TurboCnc primarily because I have found no way
> >to reliably set the axis values from within a Gcode program.
> >
> >
> Maybe I should describe how I set up my tools on simple workpieces.
> I lower the tool ontil it is almost touching the work. I then slip a piece
> of paper that I know is .005" thick under the tool, and jog down until
> the paper is pinched. I then right click on the Z axis and type .005
> and hit the enter key. For X and Y, I use an edgefinder and jog over
> until the edgefinder deflects to the side, then I stop the spindle (F9).
> I right click on the axis, enter either .1 (the radius of the edgefinder)
> or -.1, depending on which side of the part I'm on. Then, hit enter.
>
> If I'm doing something that requires changing tools several times, I can
> put the offsets for the different tool lengths in the tool table, and set up
> the program to select the right tool offset with G43 H(tool #).
>
> Jon
Hello Jon,
I have seen no way to follow your procedure on a standard Sherline 5410
(metric 5400) mill.
I change drill chucks, drill bits, endmills, endmill holders, collets,
etc. often within a Gcode program. I have no automatic tool changer. I
have no way to control offsets.
With TurboCnc the operator follows the prompted instructions and
installs the specified bit in the appropriate chuck then jogs to barely
contact the appropriate reference surface. When the program resumes it
uses G92 to set the Z position to a useful and meaningful value.
This may seem amateurish to somebody who has production type equipment
but what I have is an amateur machine. The procedure I use with G92
works very well with TurboCnc. There appears to be no way to automate to
the same degree using EMC on a standard Sherline mill.
Below is a typical program of mine which runs well with TurboCnc 3.1a.
Some of my other Gcode programs use G92 to set Z to a nonzero value at
the reference surface. The case you describe using a spacer to protect
the finished surface would be one example of setting to a nonzero value.
How would you do this (ignore the subroutine stuff) with EMC on a simple
mill like my Sherline 5410 (one stepper motor for each of three axes,
manual spindle on/off and speed control, no limit or home switches,
common drill bits and endmills)?
Why does the use of G92 in EMC cause unpredictable behaviour like
crashing bits down into the workpiece or up to the top of the Z column?
BTW, this does not happen when the G92 block itself is encountered. It
happens when the program terminates with M02 if G92 is used somewhere
within the program.
Does anybody actually use G92 within a Gcode program using EMC? If so, I
would like to see and run that Gcode program. If not, I suspect that is
because G92 is dangerous because the EMC interpreter does things with
G92 that no mere mortal can predict. Any Gcode instruction that requires
experiments, observations, and a 20 page report on the results needs
some work.
Tom Hubin
thubin@...
**************************************
M00 ; File: Cube05\Cage\Bottom\Drill.cnc 15 July 2004
G90 ; absolute
G70 ; inches
M00 ; use approx 2.0 x 2.0 x 1.8 aluminum block
M00 ; ref corner is (right, back, top) = (+1.0, +1.0, 0.0)
M00 ; (0,0,0) is (center, center, top)
;**************************************************
M00 ; Load medium center drill and touch surface
G92 Z 0.0 ; define surface as z=0
G00 Z 0.040 ; raise the bit
M00 ; Tighten bit and start spindle 2800 RPM
; five 1/8" dowel holes
G00 X +0.100 Y +0.800
G81 X 0.000 Y +0.700 Z -0.040 R 0.040 F 2.0
G00 X -0.600 Y +0.100
G81 X -0.700 Y +0.000 Z -0.040 R 0.040 F 2.0
G00 X +0.100 Y +0.100
G81 X 0.000 Y +0.000 Z -0.040 R 0.040 F 2.0
G00 X +0.800 Y +0.100
G81 X +0.700 Y +0.000 Z -0.040 R 0.040 F 2.0
G00 X +0.100 Y -0.600
G81 X 0.000 Y -0.700 Z -0.040 R 0.040 F 2.0
; four tap 4-40 holes
G00 X -0.49055 Y +0.69055
G81 X -0.59055 Y +0.59055 Z -0.040 R 0.040 F 2.0
G00 X +0.69055 Y +0.69055
G81 X +0.59055 Y +0.59055 Z -0.040 R 0.040 F 2.0
G00 X -0.49055 Y -0.49055
G81 X -0.59055 Y -0.59055 Z -0.040 R 0.040 F 2.0
G00 X +0.69055 Y -0.49055
G81 X +0.59055 Y -0.59055 Z -0.040 R 0.040 F 2.0
G00 Z +0.2 ; raise the bit
G00 X +1.25 Y 0.0 ; position to change bits
;**************************************************
M00 ; Load #43 (0.089 inch) drill and touch surface
G92 Z 0.0 ; define surface as z=0
G00 Z 0.040 ; raise the bit
M00 ; Tighten bit and start spindle 2800 RPM
; four tap 4-40 holes
G00 X -0.49055 Y +0.69055
G82 X -0.59055 Y +0.59055 Z -0.175 R +0.040 F 8.473 #250
G00 X +0.69055 Y +0.69055
G82 X +0.59055 Y +0.59055 Z -0.175 R +0.040 F 8.473 #250
G00 X -0.49055 Y -0.49055
G82 X -0.59055 Y -0.59055 Z -0.175 R +0.040 F 8.473 #250
G00 X +0.69055 Y -0.49055
G82 X +0.59055 Y -0.59055 Z -0.175 R +0.040 F 8.473 #250
G00 Z +0.2 ; raise the bit
G00 X +1.25 Y 0.0 ; position to change bits
;**************************************************
M00 ; Load 7/64 drill and touch surface
G92 Z 0.0 ; define surface as z=0
G00 Z 0.040 ; raise the bit
M00 ; Tighten bit and start spindle 2800 RPM
; five 1/8" dowel holes
G00 X +0.100 Y +0.800
G82 X 0.000 Y +0.700 Z -0.114 R +0.040 F 10.412 #250
G00 X -0.600 Y +0.100
G82 X -0.700 Y +0.000 Z -0.114 R +0.040 F 10.412 #250
G00 X +0.100 Y +0.100
G82 X 0.000 Y +0.000 Z -0.114 R +0.040 F 10.412 #250
G00 X +0.800 Y +0.100
G82 X +0.700 Y +0.000 Z -0.114 R +0.040 F 10.412 #250
G00 X +0.100 Y -0.600
G82 X 0.000 Y -0.700 Z -0.114 R +0.040 F 10.412 #250
G00 Z +0.2 ; raise the bit
G00 X +1.25 Y 0.0 ; position to change bits
;**************************************************
M00 ; Load 0.120" endmill and touch surface
G92 Z 0.0 ; define surface as z=0
G00 Z 0.040 ; raise the bit
M00 ; Tighten bit and start spindle 2800 RPM
; five 1/8" dowel holes
G00 X +0.100 Y +0.800
G82 X 0.000 Y +0.700 Z -0.114 R +0.040 F 1.0 #250
G00 X -0.600 Y +0.100
G82 X -0.700 Y +0.000 Z -0.114 R +0.040 F 1.0 #250
G00 X +0.100 Y +0.100
G82 X 0.000 Y +0.000 Z -0.114 R +0.040 F 1.0 #250
G00 X +0.800 Y +0.100
G82 X +0.700 Y +0.000 Z -0.114 R +0.040 F 1.0 #250
G00 X +0.100 Y -0.600
G82 X 0.000 Y -0.700 Z -0.114 R +0.040 F 1.0 #250
G00 Z +0.2 ; raise the bit
G00 X +1.25 Y 0.0 ; position to change bits
;**************************************************
M00 ; Load 0.1260" flat reamer and touch surface
G92 Z 0.0 ; define surface as z=0
G00 Z 0.040 ; raise the bit
M00 ; Tighten bit and start spindle 400 RPM
; five 1/8" dowel holes
G00 X +0.100 Y +0.800
G81 X 0.000 Y +0.700 Z -0.114 R +0.040 F 12.0
G00 X -0.600 Y +0.100
G81 X -0.700 Y +0.000 Z -0.114 R +0.040 F 12.0
G00 X +0.100 Y +0.100
G81 X 0.000 Y +0.000 Z -0.114 R +0.040 F 12.0
G00 X +0.800 Y +0.100
G81 X +0.700 Y +0.000 Z -0.114 R +0.040 F 12.0
G00 X +0.100 Y -0.600
G81 X 0.000 Y -0.700 Z -0.114 R +0.040 F 12.0
G00 Z +0.2 ; raise the bit
G00 X +1.25 Y 0.0 ; position to change bits
;**************************************************
M00 ; Load 3/32 inch endmill and touch surface
G92 Z 0.0 ; define surface as z=0
G00 Z 0.040 ; raise the bit
M00 ; Tighten bit and start spindle 2800 RPM
; four tap 4-40 holes
G00 X -0.49055 Y +0.69055
G82 X -0.59055 Y +0.59055 Z -0.175 R +0.040 F 1.0 #250
G00 X +0.69055 Y +0.69055
G82 X +0.59055 Y +0.59055 Z -0.175 R +0.040 F 1.0 #250
G00 X -0.49055 Y -0.49055
G82 X -0.59055 Y -0.59055 Z -0.175 R +0.040 F 1.0 #250
G00 X +0.69055 Y -0.49055
G82 X +0.59055 Y -0.59055 Z -0.175 R +0.040 F 1.0 #250
G00 Z +0.2 ; raise the bit
G00 X +1.25 Y 0.0 ; position to change bits
;**************************************************
M00 ; Load #4 thread mill and touch surface
G92 Z 0.0 ; define surface as z=0
G00 Z 0.2 ; raise the bit
M00 ; Tighten bit and start spindle 2800 RPM
; four tap 4-40 holes
G00 X -0.49055 Y +0.69055
G00 X -0.59055 Y +0.59055
N210 M60 #2000 ; thread mill helix
G00 X +0.69055 Y +0.69055
G00 X +0.59055 Y +0.59055
N220 M60 #2000 ; thread mill helix
G00 X -0.49055 Y -0.49055
G00 X -0.59055 Y -0.59055
N230 M60 #2000 ; thread mill helix
G00 X +0.69055 Y -0.49055
G00 X +0.59055 Y -0.59055
N240 M60 #2000 ; thread mill helix
G00 Z +0.2 ; raise the bit
G00 X +1.25 Y 0.0 ; position to change bits
;**************************************************
M02 ; finished program Cube05\Cage\Bottom\Drill.cnc
;**************************************************
N2000 ; 0.080 inch threadmill helix for 4-40 holes
G00 Z -0.165 ; start just above bottom of hole
G91 ; start incremental mode
G01 X -0.0160 F 1.0 ; move to left side of hole
G73 X0 Y0 J0 I +0.0160 Z +0.025 ; helix to Z -0.015
G73 X0 Y0 J0 I +0.0160 Z +0.025 ; helix to Z -0.040
G73 X0 Y0 J0 I +0.0160 Z +0.025 ; helix to Z -0.065
G73 X0 Y0 J0 I +0.0160 Z +0.025 ; helix to Z -0.090
G73 X0 Y0 J0 I +0.0160 Z +0.025 ; helix to Z -0.115
G73 X0 Y0 J0 I +0.0160 Z +0.025 ; helix to Z -0.140
G73 X0 Y0 J0 I +0.0160 Z +0.025 ; helix to Z -0.165
G01 X +0.0160 ; move to center of hole
G90 ; restore absolute mode
G00 Z +0.2 ; exit the hole
M62 ; end of threadmill helix subroutine
Discussion Thread
ednass01
2004-10-16 22:03:08 UTC
emc g92
Jon Elson
2004-10-16 23:30:51 UTC
Re: [CAD_CAM_EDM_DRO] emc g92
ednass01
2004-10-17 04:34:14 UTC
Re: emc g92
Tom Hubin
2004-10-17 16:04:50 UTC
Re: [CAD_CAM_EDM_DRO] emc g92
Jon Elson
2004-10-17 17:46:36 UTC
Re: [CAD_CAM_EDM_DRO] emc g92
Jon Elson
2004-10-17 17:54:22 UTC
Re: [CAD_CAM_EDM_DRO] emc g92
R Rogers
2004-10-17 18:28:04 UTC
Re: [CAD_CAM_EDM_DRO] emc g92
Tom Hubin
2004-10-17 21:56:56 UTC
Re: [CAD_CAM_EDM_DRO] emc g92
Jon Elson
2004-10-17 23:04:47 UTC
Re: [CAD_CAM_EDM_DRO] emc g92
Alan Marconett
2004-10-18 10:14:14 UTC
Re: [CAD_CAM_EDM_DRO] emc g92
Geert De Pecker
2004-10-18 11:39:27 UTC
Re: [CAD_CAM_EDM_DRO] emc g92
Jon Elson
2004-10-18 18:44:19 UTC
Re: [CAD_CAM_EDM_DRO] emc g92
Alan Marconett
2004-10-18 19:06:01 UTC
Re: [CAD_CAM_EDM_DRO] emc g92
Tom Hubin
2004-10-18 21:04:42 UTC
Re: [CAD_CAM_EDM_DRO] emc g92
Tom Hubin
2004-10-18 21:04:45 UTC
Re: [CAD_CAM_EDM_DRO] emc g92
ballendo
2004-10-18 21:36:42 UTC
Re: emc g92
Jon Elson
2004-10-18 23:26:22 UTC
Re: [CAD_CAM_EDM_DRO] emc g92
Geert De Pecker
2004-10-19 13:52:54 UTC
Re: [CAD_CAM_EDM_DRO] emc g92
Alan Marconett
2004-10-19 14:18:12 UTC
Re: [CAD_CAM_EDM_DRO] emc g92
Alan Marconett
2004-10-19 14:26:56 UTC
Re: [CAD_CAM_EDM_DRO] emc g92
Jon Elson
2004-10-19 18:04:23 UTC
Re: [CAD_CAM_EDM_DRO] emc g92
John Dammeyer
2004-10-19 21:05:55 UTC
RE: [CAD_CAM_EDM_DRO] emc g92
Jon Elson
2004-10-19 22:43:34 UTC
Re: [CAD_CAM_EDM_DRO] emc g92
John Dammeyer
2004-10-20 09:55:52 UTC
RE: [CAD_CAM_EDM_DRO] emc g92
Jon Elson
2004-10-20 19:31:22 UTC
Re: [CAD_CAM_EDM_DRO] emc g92