plik


{ 9/14/88 } { Bridgeport IIA M131.54 for Barry Alexander } { literal Z1. with home pos. } { first tool to be in spindle } { slight chane to tool change & prog end sequence } { I & J commands are unconditional, use ArcIJ insted of ArcIJC } { only drilling supported on machine is FIRO & FIFO } { Jim Radcliffe } {10/24/88 .56 WFG} {changed ZDepthInc# to ZDepth# for drilling} {7/24/90, Added InitProg globally to posts with this remark, DWB} {11/9/90, Updated: BP IIA M131.57 to .76.1 format, JR} {4/03/91 Modified: BP IIA M131.76.1 For: Gibbs & Associates Updated to Version 4.0 per Fanuc 6M M001.80 Format. DWB} {Prog Numeric Format Definitions *******************************************} #1 = '#.00' #2 = '###.###;0.' #3 = '*###.###;0.' #4 = '####.####;0.' #5 = '########;0' #6 = '+####.####;0.' FORMAT(FileFeet#,1) FORMAT(FileMeters#,1) FORMAT(ToolDiameter#,4) FORMAT(Operation#,5) FORMAT(Tool#,5) FORMAT(Parts#,5) FORMAT(ZDepth#,6) {Prog Subroutines **********************************************************} DoOpComments: IF UseComments? SetScale('1') IF OperationIDComment? '( OPERATION ' Operation# ': ' OperationType$ ' )' EOL END IF OperationComment? '( ' OperationComment$ ' )' EOL END IF WorkGroupComment? '( ' WorkGroupComment$ ' )' EOL END IF ToolTypeComment? '( TOOL ' Tool# ': ' ToolDiameter# ' ' ToolType$ ' )' EOL END IF ToolComment? '( ' ToolComment$ ' )' EOL END IF Metric? {CAM file is in metric, tools and tool path} SetScale('.03937007874') { change to English, this is an English post} END END RETURN DoSubComment: IF UseComments? AND SubComment? '( CYCLE START )' EOL END RETURN DoPartSubComment: IF UseComments? AND SubComment? TagInc '( Part Number: ' Tag# ' )' EOL IF LastPart? TagInit END END RETURN PSInit: {reset flags} RotateF RETURN PSStuff: {revised.72} IF FourthCW? FORMAT(FourthDegree#,2) Seq 'A' FourthDegree# EOL FourthCWF {reset flag} END IF FourthCCW? FORMAT(FourthDegree#,3) Seq 'A' FourthDegree# EOL FourthCCWF {reset flag} END IF FifthCW? FORMAT(FifthDegree#,2) Seq 'B' FifthDegree# EOL FifthCWF {reset flag} END IF FifthCCW? FORMAT(FifthDegree#,3) Seq 'B' FifthDegree# EOL FifthCCWF {reset flag} END RETURN DoPostScript: PSInit EachPS Seq PostScript EOL {literals} PSStuff {commands} NextPS RETURN DoEndOpPS: PSInit EachEOPS Seq EndOpPS EOL PSStuff NextPS RETURN FormatArc: IF ArcCW? CWArcC ELSE CCWArcC END MoveXYZC IF ArcIJFormat? ArcIJ ELSE ArcR END RETURN ToolPath2: {for AutoCycle element moves} EACHFeat IF RapidFeat? IF XMove? OR YMove? OR ZMove? Seq RapidC MoveXYZC EOL END ELSE IF LineFeat? IF Decelerate? IF RoomToDecel? DecelMove1 Seq FeedC MoveXYZC FeedRateC EOL DecelMove2 END Seq FeedC MoveXYZC DecelFeed EOL ELSE IF XMove? OR YMove? OR ZMove? Seq FeedC MoveXYZC FeedRateC EOL END END ELSE IF ArcFeat? IF NOT XYPlane? Seq PLANE EOL END EACHQuadrant IF LastQuadrant? AND Decelerate? IF RoomToDecel? DecelMove1 Seq FormatArc ArcFeedC EOL DecelMove2 END Seq FormatArc DecelFeed EOL ELSE Seq FormatArc ArcFeedC EOL END NEXTQuadrant END END END NEXTFeat RETURN EntryMove: IF FeedEntry? Seq FeedC ZinC FeedEntC EOL ELSE Seq RapidC ZinC EOL END RETURN CutAutoCycle: SaveSubStatus {save tool position} SetPass1 {element cut moves} SetSRXYtoSP Seq IncValue EOL IF Repeats? AND ZshiftOnly? EachRep EntryMove ToolPath2 IF NOT FeedConnect? Seq RapidC PRIME ZCP2 EOL END NextRep Seq AbsOrInc RapidC ZCP2 EOL ELSE EntryMove ToolPath2 Seq AbsOrInc RapidC ZCP2 EOL END SetSRSubXY {restore tool position} SetSRSubMove ReSetPass2 {restore for positioning moves} RETURN ToolPath: EACHFeat IF PointFeat? Seq MoveSXYC EOL IF Peck? PeckManual ELSE IF AutoCycle? CutAutoCycle CalcACSRXY {calc tool position after sub call, CalcAutoCycleStatusRecordXY} END END ELSE IF RapidFeat? Seq RapidC MoveXYZC EOL ELSE IF LineFeat? IF Decelerate? IF RoomToDecel? DecelMove1 Seq FeedC MoveXYZC FeedRateC EOL DecelMove2 END Seq FeedC MoveXYZC DecelFeed EOL ELSE Seq FeedC MoveXYZC FeedRateC EOL END ELSE IF ArcFeat? IF NOT XYPlane? Seq PLANE EOL END EACHQuadrant IF LastQuadrant? AND Decelerate? IF RoomToDecel? DecelMove1 Seq FormatArc ArcFeedC EOL DecelMove2 END Seq FormatArc DecelFeed EOL ELSE Seq FormatArc ArcFeedC EOL END NEXTQuadrant END END END END NEXTFeat RETURN CheckPass: IF AutoCycle? {use the correct StrtPos} SetPass2 ELSE SetPass1 END RETURN InitProg NoIJKSigns ReverseYZArcs SetFlood SetMaxRPM('10000') {?} SetMaxFeed('500') {?} 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: may be capital and/or lower case letters. Separate commands with a space.' 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 ' 4thAxisCW(12.5), 4ACW(12.5) -' EOL ' generates a + A move of the value you specify' EOL ' 4thAxisCCW(22.5), 4ACCW(22.5) -' EOL ' generates a - A move of the value you specify' EOL ' 5thAxisCW(30), 5ACW(30) -' EOL ' generates a + B move of the value you specify' EOL ' 5thAxisCCW(22.5), 5ACCW(22.5) -' EOL ' generates a - B move of the value you specify' EOL END EachOp IF FirstOperation? EOR EOL IF ToolChangeAtHome? SetHome END IF UseComments? IF ProgramNameComment? '( PROGRAM: ' ProgramName$ ' )' EOL END IF ProgramComment? '( ' ProgramComment$ ' )' EOL END IF FormatNameComment? '( FORMAT: ' FormatName$ ' )' EOL END IF TimeComment? '( ' Date$ ' AT ' Time$ ' )' EOL END IF MovesComment? '( OUTPUT IN ' MoveType$ ' )' EOL END IF PartsComment? '( PARTS PROGRAMMED: ' Parts# ' )' EOL END IF StartToolComment? '( FIRST TOOL IN SPINDLE )' EOL END END OpenSub IF Metric? {CAM file is in metric, tools and tool path} SetScale('.03937007874') { change to English, this is an English post} END Seq Plane AbsValue Preset SpinOn Home 'Z1.' EOL IF MultipleParts? AND AllToolsOnePart? EachPart DoPartSubComment END IF MultipleParts? AND OneToolAllParts? AND FullUp? EachPart DoPartSubComment END DoOpComments DoPostScript CheckPass Seq Rapid StrtPos CoolOn EOL Seq 'M67' ZCP1 EOL IF MultipleParts? AND OneToolAllParts? AND ExitClearancePlane? EachPart DoPartSubComment IF NOT FirstPart? DoOpComments Seq Rapid StrtPos EOL END END ELSE IF NewTool? IF MultipleParts? AND OneToolAllParts? AND ExitClearancePlane? EOL NextPart ELSE 'M60' EOL END IF MultipleParts? AND OneToolAllParts? AND FullUp? NextPart END DoEndOpPS Seq Home 'Z1.' EOL Seq ToolChng EOL IF LAST ProgStop? Seq 'M00' EOL ELSE Seq ProgStop EOL END {Start new Operation} Seq PlaneC AbsValue Preset SpinOn Home 'Z1.' EOL IF MultipleParts? AND OneToolAllParts? AND FullUp? EachPart DoPartSubComment END DoOpComments DoPostScript CheckPass Seq Rapid StrtPos CoolOn EOL Seq 'M67' ZCP1 EOL IF MultipleParts? AND OneToolAllParts? AND ExitClearancePlane? EachPart DoPartSubComment IF NOT FirstPart? DoOpComments Seq AbsOrInc Rapid StrtPos EOL END END ELSE IF SameTool? EOL DoEndOpPS IF LAST ProgStop? Seq 'M00' EOL Seq SpinOn EOL DoOpComments DoPostScript CheckPass Seq PlaneC AbsOrInc Rapid StrtPos EOL Seq CoolOn EOL ELSE IF CoolOff? AND LAST NOT CoolOff? SeqC CoolOff EOL END DoOpComments DoPostScript CheckPass Seq PlaneC AbsOrInc Rapid StrtPos EOL IF NOT CoolOff? AND LAST CoolOff? SeqC CoolOn EOL END END END END END IF Milling? Seq ZCP2C EOL IF Repeats? IF ZshiftOnly? AND AutoCycle? {done in CutAutoCycle called from ToolPath} ELSE EACHRep DoSubComment IF NOT FirstCycle? Seq Connect StrtPos EOL IF NOT FeedConnect? Seq ZCP2C EOL END END END END IF NOT AutoCycle? EntryMove END ToolPath IF Repeats? IF ZshiftOnly? AND AutoCycle? {done in CutAutoCycle called from ToolPath} ELSE Seq CRCOffC IF NOT FeedConnect? RapidC PRIME ZCP3C END EOL NEXTRep END END Seq RapidC ZCP3C ELSE IF Drilling? Seq ZCP2C EOL IF Repeats? EachRep Seq StrtPos EOL END IF NOT Peck? GetCycle Seq Cycle 'Z' ZDepth# FeedEnt EOL END ToolPath Seq 'G80' EOL IF Repeats? NextRep END Seq RapidC ZCP3C END END {NEXTOp} {modified to prevent endless looping in ncPOST} IF MultipleParts? IF LastOp? IF OneToolAllParts? AND ExitClearancePlane? EOL NextPart ELSE 'M60' EOL END IF OneToolAllParts? AND FullUp? NextPart END DoEndOpPS IF FIRST ToolChangeAtHome? {.71.2 added FIRST modifier} Seq AbsOrInc Rapid FirstHome 'Z1.' EOL ELSE Seq AbsOrInc Rapid 'Z1.' EOL END IF ProgStop? SeqC 'M00' EOL END IF AllToolsOnePart? NextPart END ELSE IF ProgStop? SeqC 'M00' EOL END NEXTOp END ELSE NEXTOp 'M60' EOL DoEndOpPS IF FIRST ToolChangeAtHome? {.71.2 added FIRST modifier} Seq AbsOrInc Rapid FirstHome 'Z1.' EOL ELSE Seq AbsOrInc Rapid 'Z1.' EOL END END Seq EOP EOL Post EOR EOL Close IF UseComments? SetScale('1') 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:
BP IIA (HAC) M200 81
BP Boss 6 [G75] M497 79 1
Heidenhain 145C BP M215 79 1
Bandit IIA Shizouka M006 79
BP Series 1 (R2E4) M128 79
BP Series 1 Boss 5 M266 79
2009 03 BP KGP Niebieska karta sprawozdanie za 2008rid&657
p (79)
bp
BP SSEP wyklad5
en 79
BP Boss 1 6 M041 89 1
13 79 Pistons and connecting rods assembly
BP EZ Trak [WD] MX65 13
79 atyt
BP BTC [VT] M959 89 1

więcej podobnych podstron