Okuma OSP 5000 LB10 L351 82 2


{Change Comments ***********************************************************}

{5/23/95
Initial: Okuma OSP 5000 LC10 L235.82.2
ForUser: Braden / O&F
Control: Okuma OSP 5000
Machine: Okuma LB-10 / single 12 station turret
Develop: ComPost 4.21.26, ncCAD 4.33, ncCAM 4.33, ncPost 4.33.04
Comment: New Processor per readouts before and after edits and a list of notes.
Jim Radcliffe}

{Prog Numeric Format Definitions *******************************************}

#1 = '#.00'
#2 = '+####.####;0'
#3 = '#######0'
#4 = '###.##;0'
#5 = '####.####;0'
#6 = '#'

FORMAT(FileFeet#,1)
FORMAT(FileMeters#,1)
FORMAT(XCutDepth#,2)
FORMAT(ZCutDepth#,2)
FORMAT(Program#,3) {.72}
FORMAT(Operation#,3) {.72}
FORMAT(Tool#,3) {.72}
FORMAT(Dwell#,4) {.72}
FORMAT(Peck#,5)
FORMAT(RapidF#,6)

{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

Tab:
' '
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
SeqC PostScript EOL {literals}
PSStuff {commands}
NextPS
RETURN

DoEndOpPS:
PSInit
EachEOPS
SeqC EndOpPS EOL {literals}
PSStuff {commands}
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

ODApproachSP:
SeqC StockOnNoCan ZSPC EOL
SeqC StockOff XOpCDC EOL
StockOnNoCan
IF NotEqual? CycleStartX# XOpCD#
SeqC FeedNoCan XSPC FeedRateNoCan EOL
END
RETURN

IDApproachSP:
SeqC StockOnNoCan ZSPC EOL
SeqC StockOff XOpCDC EOL { for SameTool ApproachID }
StockOnNoCan
IF NotEqual? CycleStartX# XOpCD#
SeqC FeedNoCan XSPC FeedRateNoCan EOL
END
RETURN

FaceApproachSP:
SeqC StockOnNoCan XSPC EOL { for SameTool ApproachFace }
SeqC StockOff ZOpCPC EOL
StockOnNoCan
IF NotEqual? CycleStartZ# ZOpCP#
SeqC FeedNoCan ZSPC FeedRateNoCan EOL
END
RETURN

Approach: { NOT FOR TAILSTOCK, .82 }
Rapid RapidF# { RapidF# Forces FeedRate }
IF ApproachOD?
SeqC XOpCD StockOnNoCan ZSP EOL
ODApproachSP
ELSE
IF ApproachID?
SeqC XOpCD StockOnNoCan ZSP EOL
IDApproachSP
ELSE {ApproachFace}
SeqC StockOnNoCan XSP StockOff ZOpCP EOL
FaceApproachSP
END
END
RETURN

CheckOffset:
DoEndOpPS
IF LAST ProgStop?
SeqC 'M0' EOL
ELSE
IF CoolOff? AND LAST NOT CoolOff?
SeqC CoolOff EOL
END
END
IF ConstantSurfaceFeed?
IF LAST ConstantSurfaceFeed?
IF NotEqual? MaxRPM# LAST MaxRPM#
SeqC Preset MaxRPM EOL
END
ELSE
SeqC Preset MaxRPM EOL
END
END
SeqC
IF NewToolOffset?
OpToolID LatheOffset
END
IF LAST ProgStop?
CoolOn
ELSE
IF NOT CoolOff? AND LAST CoolOff?
CoolOn
END
END
IF ConstantSurfaceFeed?
IF LAST ConstantSurfaceFeed?
SpeedC
ELSE
CSSOn 'G96' Speed
END
ELSE
IF LAST ConstantSurfaceFeed?
CSSOff 'G97' Speed
ELSE
SpeedC
END
END
IF LAST ProgStop?
SpinOn
END
EOL
DoPostScript
RETURN

FormatArc:
IF ArcCW?
CWArcC
ELSE
CCWArcC
END
MoveXC MoveZC
IF ArcIJFormat?
ArcIJC
ELSE
ArcRC
END
RETURN

ToolPath:
EACHFeat
GetToolTip
IF LastFeat?
IF Drilling?
IF Dwell?
SeqC 'G4P' Dwell# EOL
END
END
END
IF PointFeat?
SeqC MoveSXYC EOL
ELSE
IF RapidFeat?
SeqC RapidC MoveXC MoveZC EOL
ELSE
IF LineFeat?
SeqC FeedC MoveXC MoveZC FeedRateC
IF LastFeat? AND Drilling? AND Tap?
Speed InverseSpinOn
END
EOL
ELSE
IF ArcFeat?
EACHQuadrant { Do not use NOT, LAST, FIRST or NEXT modifiers in this loop }
SeqC FormatArc FeedRateC EOL
NEXTQuadrant
ELSE
IF ThreadFeat?
SeqC 'G33' MoveXC MoveZC
IF Taper?
XTapAtZ
END
ThrdLead EOL
Rapid
END
END
END
END
END
NEXTFeat
RETURN

{Start of executable Prog **************************************************}

{setup and initializations}
InitProg
SetAbsOrInc
PosSideLathe
StandardXZArcs
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: 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?
'$'
ASCII('00')
Program# '.MIN'
ASCII('00') ASCII('00') ASCII('00') ASCII('00') ASCII('00') ASCII('00') ASCII('00') ASCII('00') ASCII('00') ASCII('00')
ASCII('00') ASCII('00') ASCII('00') ASCII('00') ASCII('00') ASCII('00') ASCII('00') ASCII('00') ASCII('00') ASCII('00')
ASCII('00') ASCII('00') ASCII('00') ASCII('00') ASCII('00') ASCII('00') ASCII('00') ASCII('00') ASCII('00') ASCII('00')
ASCII('00') ASCII('00') ASCII('00') ASCII('00') ASCII('00') ASCII('00') ASCII('00') ASCII('00') ASCII('00') ASCII('00')
ASCII('00') ASCII('00') ASCII('00') ASCII('00') ASCII('00') ASCII('00') ASCII('00') ASCII('00') ASCII('00') ASCII('00')
EOR EOL
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$ ' INCHES )' EOL
END
END
RestoreScale
OpenSub
StockOff {.71.2}
SetHome
DoOpComments
DoPostScript
Plane
IF ConstantSurfaceFeed?
SeqC Preset MaxRPM EOL
END
SeqC OpToolID LatheOffset CoolOn
IF ConstantSurfaceFeed?
CSSOn 'G96'
ELSE
CSSOff 'G97'
END
Speed SpinOn EOL
Approach
ELSE
IF NewTool?

{Finish off last Operation}

StockOff {.62}
RapidC
IF LAST ApproachOD?
SeqC XCPC EOL
ELSE
IF LAST ApproachID?
SeqC LAST XOpECDC EOL
END
END
SeqC ZCPC EOL
DoEndOpPS
SeqC NewHome
IF LAST Drilling? AND LAST TAP?
SpinOff
END
EOL
IF LAST ProgStop?
SeqC 'M0' EOL
ELSE
SeqC ProgStop EOL
END

{Start new Operation}

DoOpComments
DoPostScript
IF ConstantSurfaceFeed?
SeqC Preset MaxRPM EOL
END
SeqC OpToolID LatheOffset CoolOn
IF ConstantSurfaceFeed?
CSSOn 'G96'
ELSE
CSSOff 'G97'
END
Speed SpinOn EOL
Approach
ELSE
IF SameTool? {.62}

{Start new Operation}

StockOff
DoOpComments
IF LAST StraightConnect?
CheckOffset
RapidC
SeqC StockOnNoCan XSPC ZSPC EOL
ELSE
RapidC
IF ApproachOD?
IF LAST ApproachOD?
SeqC LAST XOpECDC EOL
ELSE {around}
IF LAST ApproachID?
SeqC LAST XOpECDC EOL
END
SeqC ZCPC EOL
SeqC XCPC EOL
END
CheckOffset
ODApproachSP
ELSE
IF ApproachID?
IF LAST ApproachID?
SeqC LAST XOpECDC EOL
ELSE
IF LAST ApproachOD? {around}
SeqC XCPC EOL
END
SeqC ZCPC EOL
SeqC XOpCDC EOL
END
CheckOffset
IDApproachSP
ELSE {ApproachFace}
IF LAST ApproachFace?
SeqC LAST ZOpECPC EOL
ELSE
IF LAST ApproachOD? {around}
SeqC XCPC EOL
ELSE {LAST ApproachID}
SeqC LAST XOpECDC EOL
END
SeqC ZCPC EOL
END
CheckOffset
FaceApproachSP
END
END
END
END
END
END {common point for all operations}
IF CannedCycle?
StockOff
IF Roughing?
TagInc
SetPass2
IF RoughContour?
SeqC 'G85NLAP' Tag# Tab CutDepth FeedRate XStkLeft ZStkLeft EOL
'NLAP' Tag# Tab LCycle EOL
ELSE
IF RoughPatternShift?
SeqC LCycle 'NLAP' Tag# Tab 'D'
IF ApproachFace?
ZCutDepth#
ELSE
XCutDepth#
END
FeedRate XStkLeft ZStkLeft EOL
'NLAP' Tag# Tab
IF ApproachFace?
'G82'
ELSE
'G81'
END
EOL
END
END
SeqC StepMove StrtPos EOL
ToolPath
SeqC 'G80' EOL
IF AutoFinish?
SeqC 'G87NLAP' Tag# EOL
END
SetAbs
SetPass1
TrackXNO# CycleStartX#
TrackZNO# CycleStartZ#
SetAbsOrInc
ELSE
IF Threading?
{ Face Threads require G72, ZTapAtX and W Address for XTapAtZ }
SeqC LCycle XatFinZ FinZ XTapAtZ
IF SingleEdgeCut?
ToolAngle
ELSE
'B0'
END
CutDepth ThrdHeight ThrdLead 'M32'
IF ConstantVolumeCut?
'M75'
ELSE
'M74'
END
IF Chamfer?
'M23'
ELSE
'M22'
END
EOL
IF AutoFinish?
SeqC 'G33' XatFinZ FinZ
IF Taper?
XTapAtZ
END
ThrdLead EOL
END
ELSE
IF Drilling?
SeqC
IF Tap? AND NOT CWSpindle?
'G78'
ELSE
LCycle
END
XCSP ZDepth Peck Retract
IF PeckFullRetract?
'L' Peck#
END
FeedRate Dwell EOL
END
END
END
ELSE
StockOn
SetPass1
ToolPath
IF AutoFinish?
IF NOT Drilling? AND NOT Grooving? AND NOT RoughSimple?
StockOff
IF Turning?
SetPass1
RapidC
IF ApproachFace?
SeqC ZOpECPC EOL
FaceApproachSP
ELSE
SeqC XOpECDC EOL
IF ApproachOD?
ODApproachSP
ELSE {ApproachID}
IDApproachSP
END
END
ELSE
SetPass2
SeqC RapidC XSPC ZSPC EOL
END
ToolPath
END
END
END
NextOp {loops back to EachOP until last Operation}

{End of program ************************************************************}

{finish last operation}
StockOff
RapidC
IF ApproachOD?
SeqC XCPC EOL
ELSE
IF ApproachID?
SeqC XOpECDC EOL
END
END
SeqC ZCPC EOL
DoEndOpPS
SeqC FirstHome EOL
IF ProgStop?
SeqC 'M0' EOL
END
SeqC EOP EOL
Post
EOR EOL
Close
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:
Okuma OSP 5000 LC10 L235 82 2
Okuma OSP 500L GTR L290 82 2
Okuma OSP 5020L [AT] L397 82 3
Okuma OSP 2200 LSN10 L089 82
Okuma OSP 5000 [NC] L606 85 1
Okuma OSP 3000 LC10 L069 82 1
Okuma OSP 5000 (IPR) C261 12 1
Okuma OSP 3000 LB20 L067 82
Okuma OSP 5000 LB15 SM L553 85m
Okuma OSP 2200 LC10 L058 82 1
Okuma OSP 5000 LC10 L235 85 1
Okuma OSP 5020L [PB] L604 85 1
Okuma OSP 5020M [GSI] M648 87
Okuma OSP 500L G L237 85 2

więcej podobnych podstron