The way we got round this was to write a macro in the machine for Z RETRACT. This can be called by an M code. We use M80. So all you need do is output an M80 in the post at the required position and let the machine do the rest.
Here is a copy of the Z Retract Macro for a Fanuc control:- START % :9023(M80 Z RETRACT MACRO ) (#4111=STORES ACTIVE H OFFSET NUMBER) (#5023=STORES Z MACHINE POSITION) (#2001 - #2200 STORES THE OFFSET VALUE I.E. #2001=VALUE OF OFFSET 1, #2002=VALUE OF OFFSET 2 AND SO ON) #181=#[2000.0+#4111] #182=ABS[#5023+#181] G0G91Z#182 G90 M99 % By altering machine parameter No.9023 to 80 when you code the command M80 in your program this calls sub program :9023 I am not sure on other controls but this works fine with Fanuc 16,18,21i controls On Fanuc OMC/OTC use Parameter No. 233 On Fanuc 10/11/12/15 Series use Parameter No. 7083 cheers Andy -----Original Message----- From: Kevin Clark [mailto:[EMAIL PROTECTED]] Sent: 07 January 2003 13:36 To: DrFrye; mfg-smartcam Subject: Re: [mfg-smartcam] Indexing Clearance At 06:09 PM 1/6/03 -0600, DrFrye wrote: >How do you handle coding a clear point while indexing the pallet on a >horizontal machine? I suppose this would apply to a vertical with an >indexer also. Say I have the clear plane set to 1.0" which is my usuall >setting. When indexing, I may need 8 to 10 inches for clearance. Do I >modify the element's clear plane, hard code a clearance value in the .tmp >file, create a clear point and just hit it before I change workplanes? Is >there something in the .smf file to handle this? I have been just fixing >the code in the text editor...I prefer edit free code. > >thanks, >Dale Dale, You can modify your template. I don't know what type of controller you have. Some have a Z home code (GE2000 uses G52 Z). Here are some examples of what I use for Z clearance on pallet rotations. *GE2000** @TPINDX // #IF(#U5=0)< #IFCHG(#FXD)<#CALL(FXDZERO)> M01 #ONBLK G52 Z E00 M09 #EVAL(#U1=#INDXB) B#TABLE(HROT,#INDXB)// (debug: tpindx indxb #INDXB) #OFFBLK #MOV X#XPOS Y#YPOS Z#ZPOS S#SPEED E#TABLE(HOFFSET,#INDXB) Z#ZPOS> // // //(tpindx exit) Acramatic 900MC** @TPINDX // Created Jun 22 99 // #IFCHG(#FXD)<#CALL(FXDZERO)> #IF(#INDXB<>#U5)< #EVAL(#V7=#XPOS) #EVAL(#V8=#YPOS) #EVAL(#V9=#ZPOS) X240000 Y150000 Z160000 H0 M09 // Change Z to necessary clearance for rotation M01 B#TABLE(HROT,#INDXB) #MOV X#XPOS Y#YPOS Z#ZPOS H#TABLE(HOFFSET,#INDXB) S#SPEED< T#NTOOL> #TABLE(COOLNT,op(coolant))// swapped order Feb 15 99 #EVAL(#U5=#INDXB)> // Acramatic 950MC** @TPINDX // G0 X15.0 Y6.0 Z30.0 H0 // Change Z to necessary clearance for rotation #EVAL(#U1=#INDXB) G0 B#TABLE(HROT,#INDXB) M01 // Fanuc 11M @TPINDX G00 Z7.0 // Change Z to necessary clearance for rotation B#FMT(#V0,D4.1) You may be able to make your own from some of the examples given here. Hope this helps > Kevin Clark Programmer Abbott Workholding Inc. ====================================================================== To find out more about this mailing list including how to unsubscribe, send the message "info mfg-smartcam" to [EMAIL PROTECTED] ====================================================================== ====================================================================== To find out more about this mailing list including how to unsubscribe, send the message "info mfg-smartcam" to [EMAIL PROTECTED] ======================================================================
