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]
======================================================================

Reply via email to