Fanuc 0T Puma 8S [MA] L574 85 3


{Change Comments ***********************************************************} {9/2/92 Copied & modified: Fanuc 0T Miyano (CES) L109.82 For:Bizal Manufacturing Control: Fanuc 0T Machine: Puma Updated to .82ż format No Bar puller, changed bar puuer stuff to turrest set up stuff at beginning of output. Changed to use Preset Hame at the beginning of each tool. RoughContour CannedCycle: Added "'R' CutDepth#" to 1st LCycle line it is the pull off amount for each pass. Changed StrtPos to StrtPosC. Deleted the decimal point from the 1st G76 threading line. Jim Radcliffe} {6/10/94 Modified: Fanuc 0T Puma [BM] L271.82 For: Rick Meide / Bizal Mfg Moved tool index & CoolOn to Preset line. Go directly to CSS at beginning of operation and stay in at end, no G97 is CSS operation! Jim Radcliffe} {12/11/95 Initial: Fanuc 0T Puma [BM] L271.82.1 Created: Fanuc 0T [Superior] Lxxx.82.1 ForUser: Superior Tire & Rubber Corp Develop: ComPost 4.21.33, Catalyst68K v2.30.18C Comment: Changed to R-Format Arcs. Jim Radcliffe} {1/12/96 Initial: Fanuc 0T DP [ST] L403.82.1 Created: Fanuc 0T DP [ST] L403.85.2 ForUser: Superior Tire & Rubber Corp Control: Fanuc 0T Machine: Puma Develop: ComPost 4.21.33, Catalyst68K v2.30.22C Comment: Modified per marked up readout and conversation with Tim Rowles Deleted turret set up routine from beginning of program. SetMaxRPM to 5000 Added SetMinRpm to 50 Moved tool and offset call to line by itself in main. Moved tool offset offset cancel to line byitself before home move. Changed to R format arcs. SpinOff before reversing spindle. Updated to .85 format per Fanuc 10T MS [-] L001.85.01.01 Jim Radcliffe} {8/8/96 Inital: Fanuc 0T DP [ST] L403.85.2 Created: Fanuc 0T DP [HP] L497.85 For User:Howard's Precision Removed "Home" commands form Tool chnages JM} {8/15/96 Modified: Fanuc 0T DP [HP] L497.85 Created: Fanuc 0T DP [HP] L497.85.1 For: Howard's Precision Machine: Daewoo Puma 8HC Control: Fanuc 0T-C/F..136986C Versions: Catalyst v3.05.03C/Compost 4.21.37/v1.0b1 Changes made per Howard Altis of Howard's Precision, fax and phone call Updated for Catalyst v3.05C per Fanuc 10T MS [-] L001.85 Format. Moved CoolOn from FirstOperation and NewTool to Approach sub. Deleted Spindle Direction check at CheckOffset sub. Spindle Direction is Tool dependant, not Operation dependant. Added OpToolID '00' CRCOff at FirstOperation and NewTool. Moved OpToolID LatheOffset to SpinOn block at FirstOperation and NewTool. Deleted LOfstOff '00' at NewTool. Deleted OpToolID '00' at end of Prog. DWB} {3/20/97 Copied: Fanuc 0T DP [HP] L497.85.1 Created: Fan 0T Puma 8S [MA] Lxxx.85.1 For: Machine Arts per Jeffrey Sipress Machine: Daewoo Puma 8S Control: Fanuc 0T-C Created new post per customer sample and FAX. Joe Cusimano} {3/21/97 Modified: Fan 0T Puma 8S [MA] Lxxx.85.1 Created: Fan 0T Puma 8S [MA] Lxxx.85.2 For: Machine Arts per Jeffrey Sipress Modifications per customer sample Part. Note that this post uses Flags 1 & 2 to track output of CoolOn and Rapid; ( Flag 1 is necessary because the customer doesn't want CoolOn until the first Feed move, and Flag 2 is used to track output of Rapid at 'Finish Last Op' section of NewTool so that G0 doesn't show up on line by itself between ToolPath and the Exit Clearance moves.) Also, if the user creates a grooving or Cut-Off type of operation using a Groove tool or Cut-Off tool with AutoClearance on, selecting the Cut-Off button will result in the AutoClearance pullout move being a Rapid instead of Feed move. Joe Cusimano} {5 Oct97 Original: Fanuc 0T Puma 8S [MA] L574.85.2 Created: Fanuc 0T Puma 8S [MA] L574.85.3 For: Machine Arts Changes made per: Jeffrey Sipress Deleted old version numbers and comments e.g. {.62}, {commands}, {literals}, etc Changed Tap Cycle from G33 to G32 in MachSpec Deleted IF Drilling AND Tap Boolean in ToolPath Deleted IF Drilling AND Tap Boolean at the end of the Common Point Added a Tapping Canned Cycle at IF Drilling in the Common Point Added doOpCommentType Sub. Outputs the correct ToolType$ description if a TAP is used. Changed 'TOOL' to 'T' and deleted 2 hyphens in DoOpComments to shorten the line of text. Charles Winston} {Prog Numeric Format Definitions *******************************************} #1 = '#.00' #2 = '###.####;0.' #3 = '#######0' #4 = '###^##0' #5 = '#.######;0.' #6 = '###0' #7 = '#' FORMAT(FileFeet#,1) FORMAT(FileMeters#,1) FORMAT(MUL#,2) { Non-Canned Threading AutoFinish } FORMAT(InFeedAngle#,2) FORMAT(FirstMoveEPZ#,2) FORMAT(CutDepth#,2) FORMAT(Program#,3) FORMAT(Operation#,3) FORMAT(Tool#,3) FORMAT(Dwell#,4) FORMAT(FeedIPR#,5) FORMAT(CalcEPRPM#,6) FORMAT(RapidF#,7) FORMAT(Tag#,6) FORMAT(Recall#,2) {Prog Subroutines **********************************************************} RestoreScale: IF Metric? {CAM file is in Metric, tools and tool path} SetScale('.03937007874') { change to English, this is an English post} END RETURN doOpCommentType: IF Tap? 'Tap' ELSE OperationType$ {Contour, Rough etc.} END RETURN DoOpComments: IF UseComments? SetScale('1') IF OperationIDComment? '( OPERATION ' Operation# '-- ' doOpCommentType ' )' EOL END IF WorkGroupComment? '( ' WorkGroupComment$ ' )' EOL END IF NOT SameTool? IF ToolTypeComment? '( T' Tool# ' ' ToolSize$ ' ' ToolType$ ' )' EOL END IF ToolComment? '( ' ToolComment$ ' )' EOL END END RestoreScale END RETURN PSInit: {reset flags from last Op, .70} RETURN PSStuff: RETURN DoPostScript: PSInit EachPS SeqLabC PostScript EOL PSStuff NextPS RETURN DoEndOpPS: PSInit EachEOPS SeqLabC EndOpPS EOL PSStuff NextPS RETURN StockOnNoCan: IF NOT CannedCycle? StockOn {need stock for SP positioning, if not a canned cycle} END RETURN FeedNoCan: IF NOT CannedCycle? FeedC END RETURN FeedRateNoCan: IF NOT CannedCycle? FeedRateC END RETURN GetCoolOn: IF NOT SameTool? IF Flag?('1') IF NOT EmptyLine? CoolOn SetFlagF('1') END END END RETURN ApproachSP: IF ApproachFace? SeqLabC StockOnNoCan XSPC EOL SeqLabC StockOff ZOpCPC EOL StockOnNoCan IF NotEqual? CycleStartZ# ZOpCP# SeqLabC FeedNoCan ZSPC FeedRateNoCan GetCoolOn EOL END ELSE { ODApproach/IDApproach } SeqLabC StockOnNoCan ZSPC EOL SeqLabC StockOff XOpCDC EOL StockOnNoCan IF NotEqual? CycleStartX# XOpCD# SeqLabC FeedNoCan XSPC FeedRateNoCan GetCoolOn EOL END END RETURN AppMove: StockOff ThisOpEntryZCP SpinOn RETURN Approach: { NOT FOR TAILSTOCK, .82 } Rapid RapidF# { RapidF# Forces FeedRate } IF ApproachOD? SeqLabC ThisOpEntryXCP AppMove EOL ELSE IF ApproachID? SeqLabC XOpCD AppMove EOL ELSE {ApproachFace} SeqLabC StockOnNoCan XSP AppMove EOL END END IF ConstantSurfaceFeed? SeqLabC CSSOn 'G96' Speed EOL END ApproachSP RETURN CheckOffset: DoEndOpPS IF LAST ProgStop? SeqLabC 'M0' EOL ELSE IF CoolOff? AND LAST NOT CoolOff? SeqLabC CoolOff EOL END END IF NewToolOffset? SeqLabC OpToolID LatheOffset EOL END CSSOff IF ConstantSurfaceFeed? IF LAST ConstantSurfaceFeed? IF NotEqual? MaxRPM# LAST MaxRPM# SeqLabC Preset MaxRPM EOL END IF LAST ProgStop? CSSOn 'G96' Speed ELSE IF NotEqual? SpeedRPM# LAST SpeedRPM# CSSOn 'G96' Speed END END ELSE SeqLabC Preset MaxRPM EOL CSSOn 'G96' Speed END ELSE IF LAST ConstantSurfaceFeed? 'G97' Speed ELSE IF LAST ProgStop? {OR NewGear?} 'G97' Speed ELSE IF NotEqual? SpeedRPM# LAST SpeedRPM# 'G97' Speed END END END END IF LAST ProgStop? SeqLabC {SpeedC} SpinOn EOL SeqLabC CoolOn EOL ELSE IF NOT CoolOff? AND LAST CoolOff? SeqLabC CoolOn EOL ELSE SeqLabC EOL END END DoPostScript RETURN FormatArc: IF ArcCW? CWArcC ELSE CCWArcC END MoveXC MoveZC IF ArcIJFormat? ArcIJC ELSE ArcRC END Save# Num#('1') EPX# Save# Num#('2') EPZ# RETURN CkCRC: { 4.2 } IF XMove? OR ZMove? { Approach Length Feature and Multiple Pockets } IF LastFeat? CRCOffC { Exit Length Feature } ELSE CRCOnC { Entry Length Feature } END END RETURN ToolPath: SetFlag('2') { track output of Rapid } EACHFeat GetToolTip IF LastFeat? IF Drilling? IF Dwell? SeqLabC 'G4P' Dwell# EOL END ELSE IF CannedCycle? SeqLab END END END IF PointFeat? SeqLabC MoveSXYC GetCoolOn EOL ELSE IF RapidFeat? IF LastFeat? IF Drilling? SeqLabC RapidC MoveXC MoveZC CSSOff 'G97' CoolOff EOL ELSE SeqLabC RapidC MoveXC MoveZC EOL END SetFlagF('2') ELSE SeqLabC RapidC MoveXC MoveZC GetCoolOn EOL END Save# Num#('1') EPX# Save# Num#('2') EPZ# ELSE IF LineFeat? IF LastFeat? AND NOT FirstFeat? IF AutoClearance? AND Cut-Off? SeqLabC RapidC MoveXC MoveZC FeedRateC EOL SetFlagF('2') ELSE SeqLabC CkCRC FeedC MoveXC MoveZC FeedRateC GetCoolOn EOL END ELSE SeqLabC CkCRC FeedC MoveXC MoveZC FeedRateC GetCoolOn EOL END Save# Num#('1') EPX# Save# Num#('2') EPZ# ELSE IF ArcFeat? EACHQuadrant { Do not use NOT, LAST, FIRST or NEXT modifiers in this loop } SeqLabC FormatArc FeedRateC GetCoolOn EOL NEXTQuadrant ELSE IF ThreadFeat? SeqLabC 'G32' MoveXC MoveZC ThrdLead GetCoolOn EOL Save# Num#('1') EPX# Save# Num#('2') EPZ# IF LastFeat? Rapid ELSE IF NEXT ThreadFeat? { DON'T output rapid if next Feat is Thread Feat } ELSE Rapid END END END END END END END NEXTFeat RETURN CheckRapid: CRCOffC IF LAST CannedCycle? Rapid ELSE RapidC END RETURN CheckRapid2: CRCOffC IF LAST CannedCycle? IF Flag?('2') SetFlagF('2') Rapid END ELSE IF Flag?('2') SetFlagF('2') RapidC END END RETURN CheckRapid3: CRCOffC IF CannedCycle? IF Flag?('2') SetFlagF('2') Rapid END ELSE IF Flag?('2') SetFlagF('2') RapidC END END RETURN {Start of executable Prog **************************************************} {setup and initializations} InitProg SetAbs PosSideLathe StandardXZArcs SetMaxRPM('5000') SetMinRPM('50') SetMaxFeed('500') SetFlag('1') { Flag for tracking output of CoolOn } SetFlag('2') { Flag for tracking output of Rapid } IF PSComment? AND UseComments? 'PostScript:' EOL ' Literals: put between single or double quotes.' EOL ' Separate commands and literals with at least one space.' EOL ' A CR ( RETURN key ) will start a new line.' EOL ' Commands: must be all capital letters when typed in.' EOL ' ENDOP -' EOL ' all literals and commands before an ENDOP command' EOL ' will appear at the beginning of the operation. All ' EOL ' literals and commands after an ENDOP command will appear' EOL ' at the end of the operation. ' EOL END EachOp {Start of post processing *********************} GetLCycle IF FirstOperation? EOR EOL ProgID1 IF UseComments? AND ProgramNameComment? '( ' ProgramName$ ' )' END EOL IF UseComments? IF ProgramComment? '( ' ProgramComment$ ' )' EOL END IF FormatNameComment? '( FORMAT-- ' FormatName$ ' )' EOL END IF TimeComment? '( ' Date$ ' AT ' Time$ ' )' EOL END IF MovesComment? '( OUTPUT IN ABSOLUTE INCHES )' EOL END END RestoreScale OpenSub StockOff SetHome Plane DoOpComments DoPostScript SeqLab IF UseComments? IF OperationComment? '( ' OperationComment$ ' )' END END IF EmptyLine? ' ' END EOL SeqLabC Rapid CRCOff 'G99' Preset IF ConstantSurfaceFeed? MaxRPM ELSE 'S5000' END EOL SeqLabC CSSOff 'G97' IF ConstantSurfaceFeed? CalcRPM1 ELSE Speed END OpToolID LatheOffset EOL Approach ELSE IF NewTool? {Finish off last Operation} StockOff IF LAST ApproachOD? IF Equal? LAST OpExitXCP# Recall# Num#('1') { suppress move } ELSE SeqLabC CheckRapid2 LAST OpExitXCPC EOL END ELSE IF LAST ApproachID? IF Equal? MUL# LAST ClearancePlane3# Num#('2') Recall# Num#('1') { suppress move } ELSE SeqLabC CheckRapid2 LAST XOpECDC EOL END END END IF LAST Drilling? SeqLabC LAST OpExitZCPC EOL ELSE SeqLabC CheckRapid2 LAST OpExitZCPC CSSOff 'G97' CoolOff EOL END DoEndOpPS SeqLabC 'G30U0W0' EOL IF LAST ProgStop? SeqLabC 'M0' EOL ELSE IF CWSpindle? AND LAST NOT CWSpindle? SeqLabC SpinOff EOL ELSE IF LAST CWSpindle? AND NOT CWSpindle? SeqLabC SpinOff EOL END END SeqLabC ProgStop EOL END {Start new Operation} SetFlag('1') DoOpComments DoPostScript SeqLab IF UseComments? IF OperationComment? '( ' OperationComment$ ' )' END END IF EmptyLine? ' ' END EOL SeqLabC Rapid CRCOff 'G99' Preset IF ConstantSurfaceFeed? MaxRPM ELSE 'S5000' END EOL SeqLabC CSSOff 'G97' IF ConstantSurfaceFeed? CalcRPM1 ELSE Speed END OpToolID LatheOffset EOL Approach ELSE IF SameTool? {Start new Operation} SetFlag('1') StockOff DoOpComments IF LAST StraightConnect? CheckOffset CheckRapid SeqLabC StockOnNoCan XSPC ZSPC EOL ELSE CheckRapid IF ApproachOD? IF LAST ApproachOD? SeqLabC LAST XOpECDC EOL ELSE {around} IF LAST ApproachID? SeqLabC LAST XOpECDC EOL END SeqLabC LAST OpExitZCPC EOL SeqLabC LAST OpExitXCPC EOL END ELSE IF ApproachID? IF LAST ApproachID? SeqLabC LAST XOpECDC EOL ELSE IF LAST ApproachOD? {around} SeqLabC LAST OpExitXCPC EOL END SeqLabC LAST OpExitZCPC EOL SeqLabC XOpCDC EOL END ELSE {ApproachFace} IF LAST ApproachFace? SeqLabC LAST ZOpECPC EOL ELSE IF LAST ApproachOD? {around} SeqLabC LAST OpExitXCPC EOL ELSE {LAST ApproachID} SeqLabC LAST XOpECDC EOL END SeqLabC LAST OpExitZCPC EOL END END END CheckOffset ApproachSP END END END END {common point for all operations} IF CannedCycle? StockOff IF Roughing? IF RoughSimple? StockOn SetPass1 SeqLabC LCycle IF ApproachFace? 'Z' FirstMoveEPZ# XatFinZ ELSE XatFinZ FinZ END XTapAtZ FeedRate EOL SimpleRough ELSE TagInc SetPass2 IF RoughContour? SeqLabC LCycle CutDepth 'R' CutDepth# EOL SeqLabC LCycle 'PÅ‚' Tag# 'Q²' Tag# XStkLeft ZStkLeft FeedRate EOL '>' Tag# EOL SeqLab StepMove StrtPosC EOL ELSE IF RoughPatternShift? SeqLabC LCycle XminusU ZminusW NumCuts EOL SeqLabC LCycle 'PÅ‚' Tag# 'Q²' Tag# XStkLeft ZStkLeft FeedRate EOL '>' Tag# EOL SeqLab Rapid StrtPos EOL END END ToolPath '<' Tag# EOL IF AutoFinish? SeqLabC 'G70' 'PÅ‚' Tag# 'Q²' Tag# EOL END SetPass1 TrackXNO# CycleStartX# TrackZNO# CycleStartZ# END ELSE IF Threading? IF Chamfer? SeqLabC 'M23' EOL END SeqLabC 'G76P030060Q0015R00005' EOL SeqLabC LCycle XatFinZ FinZ XTapAtZ CutMethod ThrdHeight CutDepth ThrdLead ToolAngle EOL IF AutoFinish? SeqLabC 'G92' XatFinZ FinZ XTapAtZ ThrdLead EOL END IF Chamfer? SeqLabC 'M24' EOL END ELSE IF Drilling? IF Tap? SeqLabC LCycle ZDepth 'F' FeedIPR# GetCoolOn EOL SeqLabC LCycle ZSP InverseSpinOn EOL SeqLabC CoolOff EOL ELSE IF PeckChipBreaker? SeqLabC LCycle ZDepth RLevel Dwell Peck Retract FeedRate GetCoolOn EOL SeqLabC DrillOff EOL IF AutoFinish? SeqLabC Feed ZDepth EOL IF Dwell? SeqLabC 'G4P' Dwell# EOL END SeqLabC Rapid ZSP EOL END END END ELSE IF Grooving? StockOn SetPass1 SeqLabC StrtPos EOL ToolPath END END END END ELSE StockOn SetPass1 ToolPath IF AutoFinish? { .82.1c } StockOff IF Turning? IF ApproachFace? SeqLabC RapidC ZOpECPC EOL ELSE SeqLabC RapidC XOpECDC EOL END ApproachSP SeqLabC StockOff StrtPosC EOL ToolPath ELSE IF Roughing? AND NOT RoughSimple? SetPass2 SeqLabC RapidC XSPC ZSPC EOL SeqLabC StockOff StrtPosC EOL ToolPath SetPass1 ELSE IF Threading? SeqLabC 'X' MUL# Num#('2') ADD# FinishXRadius# Taper# EOL SeqLabC 'G32' IF Taper? XatFinZ END FinZ ThrdLead EOL SeqLabC Rapid XSP EOL SeqLabC ZSP EOL END END END END END NextOp {loops back to EachOP until last Operation} {End of program ************************************************************} {finish last operation} StockOff IF ApproachOD? IF Equal? OpExitXCP# Recall# Num#('1') { suppress move } ELSE SeqLabC CheckRapid3 OpExitXCPC EOL END ELSE IF ApproachID? IF Equal? MUL# ClearancePlane3# Num#('2') Recall# Num#('1') { suppress move } ELSE SeqLabC CheckRapid3 XOpECDC EOL END END END SeqLabC OpExitZCPC EOL DoEndOpPS SeqLabC CoolOff EOL SeqLabC 'G30U0W0' SpinOff EOL SeqLabC UnTool '00' EOL IF ProgStop? SeqLabC 'M0' EOL END SeqLabC EOP EOL Post EOR EOL Close Retag IF UseComments? SetScale('1') {restore scale for comments} Reopen IF FileBytesComment? '( FILE LENGTH-- ' FileBytes# ' CHARACTERS )' EOL END IF FileFeetComment? '( FILE LENGTH-- ' FileFeet# ' FEET )' EOL END IF FileMetersComment? '( FILE LENGTH-- ' FileMeters# ' METERS )' EOL END Close END

Wyszukiwarka

Podobne podstrony:
Fanuc 0T Puma 8S [WT] L637 85
Fanuc 0T 3T Miy [GNR] L344 85
Fanuc 6T Puma 10 [LW] L526 85
Fanuc 0T DP 6S [BC] L796 85
Fanuc 0T Miy BNC 34T L312 85
Fanuc 0T 3T Miy [DWA] L830 85
Fanuc 0T DP [TTT] L567 85
Fanuc 0T Nak [BMR] L767 85
Fanuc 0T DP [HP] L497 85 1
Fanuc 0T Supermax [WA] L788 85
Fanuc 18T Puma [FT] L777 85
Fanuc 0T 3T Miyano L008 85

więcej podobnych podstron