Jon Elson wrote: > > 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 [EMAIL PROTECTED] ************************************** 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 Addresses: FAQ: http://www.ktmarketing.com/faq.html FILES: http://groups.yahoo.com/group/CAD_CAM_EDM_DRO/files/ Post Messages: [EMAIL PROTECTED] Subscribe: [EMAIL PROTECTED] Unsubscribe: [EMAIL PROTECTED] List owner: [EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED] Moderator: [EMAIL PROTECTED] [EMAIL PROTECTED] [EMAIL PROTECTED] [Moderators] URL to this group: http://groups.yahoo.com/group/CAD_CAM_EDM_DRO OFF Topic POSTS: General Machining If you wish to post on unlimited OT subjects goto: aol://5863:126/rec.crafts.metalworking or go thru Google.com to reach it if you have trouble. http://www.metalworking.com/news_servers.html http://groups.yahoo.com/group/jobshophomeshop I consider this to be a sister site to the CCED group, as many of the same members are there, for OT subjects, that are not allowed on the CCED list. NOTICE: ALL POSTINGS TO THIS GROUP BECOME PUBLIC DOMAIN BY POSTING THEM. DON'T POST IF YOU CAN NOT ACCEPT THIS.....NO EXCEPTIONS........ bill List Mom List Owner Yahoo! Groups Links <*> To visit your group on the web, go to: http://groups.yahoo.com/group/CAD_CAM_EDM_DRO/ <*> To unsubscribe from this group, send an email to: [EMAIL PROTECTED] <*> Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/
