{Change Comments ***********************************************************}
{6/14/95, Updated for Catalyst v2.20 per Fanuc 10T MS [-] L001.85 Format, DWB}
{7/18/95, Added IF NOT LastFeat? at CkCRC sub, DWB}
{
Format: Fanuc 18T [-¨] L394.85.02
11/21/95
For: Tamshell
Arcs now output R's instead of IJK
Changed prog label ID from O to :
TH}
{12/11/95
Modified: Fanuc 18T [-¨] L394.85.02
For: Tamshell
Versions: ncCad 4.33.01/ncCAM 4.33.01/ncPost 4.33.08/Catalyst v2.28.08/Compost 4.21.34/1.0a
Changes made per Ron Knesal of Tamshell.
Deleted OpToolID LatheOffset at AppMove sub.
Deleted LOfstOff '00' at CheckOffset sub.
Deleted all support of ConstantSurfaceFeed at CheckOffset sub, FirstOperation, NewTool, common point
and end of Prog.
Deleted Preset Home MaxRPM at FirstOperation and NewTool.
Added Rapid CRCOff CSSOff 'G97' OpToolID LatheOffset Speed SpinOn block at FirstOperation and
NewTool.
Changed NewHome LOfstOff '00' to 'G28U0W0' at NewTool.
Changed FirstHome OpToolID '00' SpinOff to 'G28U0W0' at end of Prog.
DWB}
{7/8/96,
Created: Lxxx.85
changed to postive X values, MPK}
{2/11/97,
Initial: Fanuc 18T [+¨] L473.85m
Created: Fanuc 18T Ikegai [RS] Lxxx.85
Added support for CSS,
Deleted ReverseXZarcs,
added saftey blocks to FirstTool,
Added support for doing tool changes at home pos,
added 'V0' to 'G28U0W0' at tool changes,
MPK}
{6/19/97
Updated and Modified: Fanuc 18T Ikegai [REN] L562.85m
Created: Fanuc 18T Ikegai REN L562.85.1m
For: Gibbs & Associates/Virtual Mfg
Versions: Catalyst v3.33C/ComPost2 MSL 68K
Changes made per Pete Jackson.
Updated for Catalyst v3.33C per Fanuc 10T MS [-] L001.85.02d Format.
Rewrote handling of CSS at CheckOffset sub.
Rewrote CkCRC sub.
Changed ToolAngle to 'A' InFeedAngle# at CannedCycle Threading.
Changed SetMaxFeed for English Files from 12700/500 to 500/100 at setup and initializations.
Corrected output of G00 only block at end of Manual Thread Cycle.
Added IF LAST ThreadFeat? at ToolPath RapidFeat?
Forces Rapid.
Deleted forced Rapid at ToolPath ThreadFeat.
Added OR LAST Threading? at CheckRapid.
Added OR Threading? at end of Prog.
Modifications:
Added InFeedAngle# to FORMAT#2 at Prog Numeric Format Definitions.
Added StandardXZArcs at setup and initializations.
Broke up compund Boolean test for Preset MaxRPM at NewTool.
DWB}
{6/19/97
Copied: Fanuc 18T Ikegai REN L562.85.1m
Created: Fanuc 18T Ikegai REN L562.85.1
For: Gibbs & Associates/Virtual Mfg
Versions: Catalyst v3.33C/ComPost2 MSL 68K
Changes made per Pete Jackson.
Converted to English.
Changed Compost General Default Formats.
Changed Address F from ##.####;0. to #.#####;0.
Changed Addresses I, J, K, Q, R, X, Y and Z from #####.###;0. to ####.####;0.
Changed Canned Cycle Coordinate FORMATs from #####.###;0. to ####.####;0.
Changed Canned Cycle Depth of Cut FORMATs from ^##0 to ^###0
Changed Prog Numeric Format Definitions.
Changed Format#2 from ####.###;0. to ####.####;0.
Changed RestoreScale sub.
Changed IF NOT Metric? to IF Metric?
Changed SetScale argument from 25.4 to .03937007874
Switched English and Metric words in commented stuff.
Changed literal MILLIMETERS to INCHES at FirstOperation ProgComments.
Changed SetMaxFeed for English Files from 500/100 to 12700/500 at setup and initializations.
DWB}
{9/10/97
Initial: Fanuc 18T Ikegai REN L562.85.1
Created: Fanuc 18T [TIM] Lxxx.85
For: Timken
Changed output of X from diameter to radius.
CDH
}
{10/17/97,
Initial: Fanuc 18T R [TC] L639.85
Created: Fanuc 18T [TC] L639.85.1
For: Timken
Deleted all G28 calls.
Added if ConstantSurfaceFeed to common point.
Added CoolOff and 'T00' to NewTool.
Added CoolOn to AppMove.
Added 'G90' and 'G91' to Form in Origins and Values.
CDH}
{11/14/97,
Initial: Fanuc 18T [TC] L639.85.1
Created: Fanuc 18T [TC] L639.85.2
For: Timken
Added 'G92' MaxRPM line in FirstOp and NewTool. Will only output if
Constant Surface Speed.
CDH}
{1/19/98
Initial: Fanuc 18T R [TC] L639.85.2
Created: Fanuc 18T R [TC] L639.85.3
ForUser: Timken
Develop: ComPost2 1.1b3, Virtual 4.21.21
Comment: Modified per fax from Joe Madak
Moved Home line at beginning of program to after speed lines.
Changed 'G28' on FirstHome line at end of program to RapidC.
Jim Radcliffe}
{19Mar98
Original: Fanuc 18T R [TC] L639.85.3
Created: Fanuc 18T R [TC] L639.85.4
For: Timken
Changes made per: Joe Madak
Deleted old version numbers and comments e.g. {.62}, {commands}, {literals}, etc
Added Formatting for TurretX# and TurretZ in Prog Numeric Format Definitions
Added support for SetAddTools and SetAddToolsF to allow post to output correct tool offsets
Changed Home to 'X' TurretX# 'Z' TurretZ# in FirstOperation and NewTool.
Changed FirstHome to 'X' FIRST TurretX# 'Z' FIRST TurretZ# at end of Prog.
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(TurretX#,2)
FORMAT(TurretZ#,2)
FORMAT(Program#,3)
FORMAT(Operation#,3)
FORMAT(Tool#,3)
FORMAT(Dwell#,4)
FORMAT(FeedIPR#,5)
FORMAT(CalcEPRPM#,6)
FORMAT(RapidF#,7)
{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
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# ': ' ToolSize$ ' ' ToolType$ ' )' EOL
END
IF ToolComment?
'( ' ToolComment$ ' )' EOL
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
ApproachSP:
IF ApproachFace?
SeqLabC StockOnNoCan XSPC EOL
SeqLabC StockOff ZOpCPC EOL
StockOnNoCan
IF NotEqual? CycleStartZ# ZOpCP#
SeqLabC FeedNoCan ZSPC FeedRateNoCan EOL
END
ELSE { ODApproach/IDApproach }
SeqLabC StockOnNoCan ZSPC EOL
SeqLabC StockOff XOpCDC EOL
StockOnNoCan
IF NotEqual? CycleStartX# XOpCD#
SeqLabC FeedNoCan XSPC FeedRateNoCan EOL
END
END
RETURN
AppMove:
StockOff ThisOpEntryZCP CoolOn
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
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?
'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
END
END
DoPostScript
RETURN
FormatArc:
IF ArcCW?
CWArcC
ELSE
CCWArcC
END
MoveXC MoveZC
IF ArcIJFormat?
ArcIJC
ELSE
ArcRC
END
RETURN
CkCRC:
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:
EACHFeat
GetToolTip
IF LastFeat?
IF Drilling?
IF Tap?
SeqLabC SpinOff EOL
SeqLabC 'G4P2000' EOL
SeqLabC Speed InverseSpinOn EOL
ELSE
IF Dwell?
SeqLabC 'G4P' Dwell# EOL
END
END
ELSE
IF CannedCycle?
SeqLab
END
END
END
IF PointFeat?
SeqLabC MoveSXYC EOL
ELSE
IF RapidFeat?
IF LAST ThreadFeat?
Rapid
END
SeqLabC RapidC MoveXC MoveZC EOL
ELSE
IF LineFeat?
SeqLabC CkCRC FeedC MoveXC MoveZC FeedRateC EOL
ELSE
IF ArcFeat?
EACHQuadrant { Do not use NOT, LAST, FIRST or NEXT modifiers in this loop }
SeqLabC FormatArc FeedRateC EOL
NEXTQuadrant
ELSE
IF ThreadFeat?
SeqLabC 'G32' MoveXC MoveZC ThrdLead EOL
END
END
END
END
END
NEXTFeat
RETURN
CheckRapid:
CRCOffC
IF LAST CannedCycle? OR LAST Threading?
Rapid
ELSE
RapidC
END
RETURN
{Start of executable Prog **************************************************}
{setup and initializations}
InitProg
SetAbs
PosSideLathe
XsAreRadii
StandardXZArcs
SetMaxRPM('10000')
IF Metric?
SetMaxFeed('12700')
ELSE
SetMaxFeed('500')
END
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
':' Program# EOL
IF UseComments? AND ProgramNameComment?
'( ' ProgramName$ ' )' EOL
END
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
DoOpComments
DoPostScript
SeqLabC CSSOff 'G97' AbsOrInc
IF ConstantSurfaceFeed?
CalcRPM1
ELSE
Speed
END
OpToolID LatheOffset SpinOn EOL
IF ConstantSurfaceFeed?
SeqLabC 'G92' MaxRPM EOL
END
SeqLabC Rapid 'X' TurretX# 'Z' TurretZ# EOL
SetAddTools
Approach
ELSE
IF NewTool?
{Finish off last Operation}
StockOff
CheckRapid
IF LAST ApproachOD?
SeqLabC LAST OpExitXCPC CoolOff 'T00' EOL
ELSE
IF LAST ApproachID?
SeqLabC LAST XOpECDC CoolOff 'T00' EOL
END
END
SeqLabC LAST OpExitZCPC EOL
SetAddToolsF
DoEndOpPS
SeqLabC Rapid 'X' TurretX# 'Z' TurretZ# EOL
IF LAST ProgStop?
SeqLabC 'M00' EOL
ELSE
SeqLabC ProgStop EOL
END
' ' EOL
{Start new Operation}
DoOpComments
DoPostScript
SeqLabC CSSOff 'G97' AbsOrInc
IF ConstantSurfaceFeed?
CalcRPM1
ELSE
Speed
END
OpToolID LatheOffset SpinOn EOL
IF ConstantSurfaceFeed?
SeqLabC 'G92' MaxRPM EOL
END
SetAddTools
Approach
ELSE
IF SameTool?
{Start new Operation}
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 NOT SameTool?
IF ConstantSurfaceFeed?
SeqLabC CSSOn 'G96' Speed EOL
END
END
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 'PÅ‚' Tag# 'Q²' Tag# XStkLeft ZStkLeft CutDepth FeedRate EOL
'>' Tag# EOL
SeqLab StepMove StrtPos EOL
ELSE
IF RoughPatternShift?
SeqLabC LCycle 'PÅ‚' Tag# 'Q²' Tag# XStkLeft ZStkLeft XminusU ZminusW NumCuts 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 LCycle XatFinZ FinZ XTapAtZ CutMethod ThrdHeight CutDepth ThrdLead 'A' InFeedAngle# 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 'E' FeedIPR# EOL
SeqLabC SpinOff EOL
SeqLabC 'G04P2000' EOL
SeqLabC Speed InverseSpinOn EOL
SeqLabC ZSP EOL
ELSE
IF PeckChipBreaker?
SeqLabC LCycle ZDepth RLevel Dwell Peck Retract FeedRate EOL
SeqLabC DrillOff EOL
IF AutoFinish?
SeqLabC Feed ZDepth EOL
IF Dwell?
SeqLabC 'G04P' 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
IF Drilling? AND Tap?
SeqLabC SpinOff EOL
SeqLabC 'G04P2000' EOL
SeqLabC Speed SpinOn EOL
END
NextOp {loops back to EachOP until last Operation}
{End of program ************************************************************}
{finish last operation}
StockOff
CRCOffC
IF CannedCycle? OR Threading?
Rapid
ELSE
RapidC
END
IF ApproachOD?
SeqLabC OpExitXCPC EOL
ELSE
IF ApproachID?
SeqLabC XOpECDC EOL
END
END
SeqLabC OpExitZCPC EOL
SetAddToolsF
DoEndOpPS
SeqLabC CoolOff EOL
IF FIRST ToolChangeAtHome?
SeqLabC RapidC 'X' FIRST TurretX# 'Z' FIRST TurretZ#
ELSE
SeqLabC 'G28U0W0V0'
END
'T00' EOL
IF ProgStop?
SeqLabC 'M00' 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 18T MR12 L537 85Fanuc 18T [GPM] L720 85 1Fanuc 18T [ rCR] L518 85Fanuc 18T [AMB] L531 85 1Fanuc 18T [AMB] L531 85 1mFanuc 18T [WP] L698 85 1Fanuc 18T [PTT] L596 85Fanuc 18T Ikegai D&E L695 85 1Fanuc 18T Puma [FT] L777 85Fanuc 18T Dainichi NS L704 85 1Fanuc 18T [ r] L394 85 03mFanuc 18T Hardinge [CP] L786 85Fanuc 18T OT [UM] L447 85 6Fanuc 18T MS [ G54] L608 85Fanuc 18T MS [ G54] L608 85Fanuc 18T Dnch NS L704 85 1mwięcej podobnych podstron