{Change Comments ***********************************************************}
{10/11/88
Created: Generic GE 1050
For: Varec
Machine: Manarch TC-1 Lathe
Control: GE 1050T
No Canned Cycles supported.
Lathe has 2 Turrets.
Upper Turret: Tools 1 - 8, PosSideLathe, StandardXZArcs, SpinForward = M03, Offsets T0100 - T0800.
Lower Turret: Tools 1 - 8 ( 21 - 28 in ncCam Tool List ), NegSideLathe, ReverseXZArcs,
SpinForward = M04, Offsets T1000 - T8000.
JR}
{11/7/88
Deleted XsAreRadii, Lathe Xs are Diameter.
Deleted NegSideLathe and ReverseXZArcs for Lower Turret.
Both are PosSideLathe, StandardXZArcs and SpinForward = M03
JR}
{5/10/90, Updated: GE 1050T Monarch L074.56 to .69.4 format, JR}
{7/24/90, Added InitProg globally to posts with this remark, DWB}
{12/12/91
Modified: GE 1050T Monarch L074.70
For: Gibbs & Associates
Updated to Version 4.1 per Fanuc 10T MS [-] L001.82 Format.
Rapid is not used, RapidF and FeedRate instruct the control.
DWB}
{5/6/93
Copied & modified: GE 1050T Monarch L074.82
For: Braden Eng / Twigg Aerospace Components
Control: GE1050T
Machine: W&S 242 VFR Vertical Turret Lathe
5 station turret, each can hold 2 tools that can work on either + or - X axis.
Modified GetToolNum for this special handling of tool number and axis output.
Modified ToolTypeComment to reflect actual turret and tool
Added 'M17' tool change command.
Changed G01, G02, G03 to G21, G22, G23
Changed to output decimal point format without leading or trailing zeros.
Added XsAreRadii to initializations to output radius values for X.
Modified GearRange to output M50(low) & M51(High) with change over at 80 RPM.
Updated to .82ż format.
Jim Radcliffe}
{10/27/93
Modified: GE 1050T W&S 242 VFR L284.82
For: Braden Eng / Twigg Aerospace Components
Deleted XsAreRadii to get Diameter output.
Jim Radcliffe}
{11/18/93
Modified: GE 1050T W&S 242 VFR L284.82.1
For: Braden Eng / Twigg Aerospace Components
Added XsAreRadii to get Radius output, the only diameter value is the Home line.
Modified the Home lines to get a diameter value.
Changed 'G4X1.' to 'G04X2.'
Added leading zeros to G, M & N codes.
Deleted SpinOff from end of program.
Deleted G95 from very beginning of operation, read further for implementation.
Deleted M58, it is not used on this machine.
Modified GearRange to change over at 150 RPM.
Output M80 to set Rapid, M81 to set feed. Modal.
Output G94 (IPM) for Rapid, G95 (IPR) for Feed. Modal.
Jim Radcliffe}
{8/13/95
Initial: GE 1050T W&S 242 VFR L284.82.2
Created: GE 1050T W&S 242 VFR L284.85
ForUser: CNCCS / Twigg
Control: GE 1050T
Machine: Gray W&S
Develop: ComPost 4.21.32, Virtual v.2.20
Comment: Modified Processor per marked up readout from Dalton Harwell.
Changed default format N, sequence numbers, to show 4 digits.
Changed default format S, spindle speed, to show 4 digits.
Deleted T code from Home lines.
Deleted GetLastToolNum sub as it is now no longer used.
Updated to .85 format per Fanuc 10T MS [-] L001.85.01
Jim Radcliffe}
{8/24/95
Initial: GE 1050T W&S 242 VFR L284.85
Created: GE 7542 Monarch TC75 L000.85
ForUser: Pace-Tech / Weirton Steel
Control: GE 7542
Machine: Monarch Turn Center 75
Develop: ComPost 4.21.32, Virtual v.2.20
Comment: New Post Processor per marked up readout and conversations with Paul Beatty
Deleted G70 from beginning of tools.
Deleted M17 tool change command.
Changed default format T to one places
Deleted M80 and M81
Changed to leading zeros
Changed G21/G22/G23 to G01/G02/G03
Deleted GearRange
Added Speed Codes, Changed speed output to TABLE, CSS not supported!
Changed Preset to Home.
Changed ToolTypeComment back to standard stuff.
Changed GetToolNum to OpToolID, deleted GetToolNum sub.
Jim Radcliffe}
{9/11/95
Initial: GE 7542 Monarch TC75 L000.85
Created: GE 7542 Monarch TC75 L000.85.01
Comment: Changed format of ThrdLead to have 1 place before the implied decimal position.
Jim Radcliffe}
{11/21/95
Initial: GE 7542 Monarch TC75 L000.85.01
Created: GE 7542 Monarch 220 L000.85
ForUser: Pace-Tech / Weirton Steel
Control: GE 7542
Machine: Monarch Chucker Series 220 Model 1214
Develop: ComPost 4.21.33. Catalyst68K v2.30.18C
Comment: Changed Rapid Feed to 275. Added GearRange. Modified Speed Chart.
Jim Radcliffe}
{Prog Numeric Format Definitions *******************************************}
#1 = '#.00'
#2 = '0#^####'
#3 = '#######0'
#4 = '0##^##'
FORMAT(FileFeet#,1)
FORMAT(FileMeters#,1)
FORMAT(ADD#,2) { Non-Canned Threading AutoFinish }
FORMAT(Dwell#,2) {.72}
FORMAT(Program#,3) {.72}
FORMAT(Operation#,3) {.72}
FORMAT(Tool#,3)
FORMAT(RapidF#,4)
{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
SeqC PostScript EOL {literals}
PSStuff {commands}
NextPS
RETURN
DoEndOpPS:
PSInit
EachEOPS
SeqC EndOpPS EOL {literals}
PSStuff {commands}
NextPS
RETURN
CheckG94: { Called before Rapid blocks }
IF Flag?('1')
{ We are already in G94 Rapid }
ELSE
SeqC 'G94' EOL { Set to IPM for Rapid moves }
SetFlag('1')
END
RETURN
CheckG95: { Called before Feed blocks }
IF Flag?('1')
SeqC 'G95' EOL { Set to IPR for Feed moves }
SetFlagF('1')
Rapid {no output, unconditional interpolation command needed after G95 blocks}
ELSE
{ We are already in G95 Feed }
END
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?
SeqC StockOnNoCan XSPC EOL
SeqC StockOff ZOpCPC EOL
StockOnNoCan
IF NotEqual? CycleStartZ# ZOpCP#
CheckG95
SeqC FeedNoCan ZSPC FeedRateNoCan EOL
END
ELSE { ODApproach/IDApproach }
SeqC StockOnNoCan ZSPC EOL
SeqC StockOff XOpCDC EOL
StockOnNoCan
IF NotEqual? CycleStartX# XOpCD#
CheckG95
SeqC FeedNoCan XSPC FeedRateNoCan EOL
END
END
RETURN
AppMove:
StockOff ThisOpEntryZCP RapidF
RETURN
Approach: { NOT FOR TAILSTOCK, .82 }
CheckG94
Feed
IF ApproachOD?
SeqC ThisOpEntryXCP AppMove EOL
SeqC CoolOn EOL
ELSE
IF ApproachID?
SeqC XOpCD AppMove EOL
SeqC CoolOn EOL
ELSE {ApproachFace}
SeqC StockOnNoCan XSP AppMove EOL
SeqC CoolOn EOL
END
END
ApproachSP
RETURN
CheckOffset:
DoEndOpPS
IF LAST ProgStop?
SeqC 'M00' EOL
ELSE
IF NewGear?
SeqC SpinOff EOL
END
IF CoolOff? AND LAST NOT CoolOff?
SeqC CoolOff EOL
END
END
IF NewToolOffset?
SeqC OpToolID '00' EOL
SeqC OpToolID LatheOffset EOL
END
IF NewGear?
SeqC GearRange EOL
END
SeqC
IF NotEqual? SpeedRPM# LAST SpeedRPM#
TABLE(1,SpeedRPM#,1)
END
IF LAST ProgStop?
SpinOn EOL
SeqC CoolOn EOL
ELSE
IF NewGear?
SpinOn EOL
ELSE
EOL
END
IF NOT CoolOff? AND LAST CoolOff?
SeqC CoolOn EOL
END
END
DoPostScript
RETURN
FormatArc:
IF ArcCW?
CWArcC
ELSE
CCWArcC
END
MoveXC MoveZC ArcIJC
RETURN
GetRapidFC:
IF NOT EmptyLine?
RapidFC
END
RETURN
ToolPath:
EACHFeat
GetToolTip
IF LastFeat?
IF Drilling?
IF Tap?
SeqC SpinOff EOL
SeqC 'G4X2.' EOL
SeqC Speed InverseSpinOn EOL
ELSE
IF Dwell?
SeqC 'G04X' Dwell# EOL
END
END
END
END
IF PointFeat?
SeqC MoveSXYC EOL
ELSE
IF RapidFeat?
CheckG94
SeqC FeedC MoveXC MoveZC GetRapidFC EOL
ELSE
IF LineFeat?
CheckG95
SeqC FeedC MoveXC MoveZC FeedRateC EOL
ELSE
IF ArcFeat?
EACHQuadrant { Do not use NOT, LAST, FIRST or NEXT modifiers in this loop }
CheckG95
SeqC FormatArc FeedRateC EOL
NEXTQuadrant
ELSE
IF ThreadFeat?
CheckG95
SeqC 'G33' MoveXC MoveZC ThrdLead EOL
Feed
END
END
END
END
END
NEXTFeat
RETURN
{Start of executable Prog **************************************************}
{setup and initializations}
InitProg
PosSideLathe
XsAreRadii
StandardXZArcs
NoIJKSigns
SetMaxRPM('1086')
SetMaxFeed('500') {?}
SetFlagF('1') { used for G94/G95, Flag? true is we are in G94 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
'$' Program# 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
Plane { No Output }
Seq AbsOrInc EOL
DoOpComments
DoPostScript
SeqC 'G04X02' OpToolID LatheOffset EOL
SeqC GearRange EOL
SeqC Preset Home EOL
SeqC TABLE(1,SpeedRPM#,1) SpinOn EOL
Approach
ELSE
IF NewTool?
{Finish off last Operation}
StockOff {.62}
CheckG94
FeedC
IF LAST ApproachOD?
SeqC LAST OpExitXCPC GetRapidFC EOL
ELSE
IF LAST ApproachID?
SeqC LAST XOpECDC GetRapidFC EOL
END
END
SeqC LAST OpExitZCPC GetRapidFC EOL
DoEndOpPS
SeqC Feed NewHome GetRapidFC EOL
IF NewGear?
SeqC SpinOff EOL
END
IF LAST ProgStop?
SeqC 'M00' EOL
ELSE
SeqC ProgStop EOL
END
{Start new Operation}
Seq AbsOrInc EOL
DoOpComments
DoPostScript
SeqC 'G04X02' OpToolID LatheOffset EOL
SeqC GearRange EOL
SeqC Preset Home EOL
SeqC TABLE(1,SpeedRPM#,1) SpinOn EOL
Approach
ELSE
IF SameTool? {.62}
{Start new Operation}
StockOff
DoOpComments
IF LAST StraightConnect?
CheckOffset
CheckG94
SeqC FeedC StockOnNoCan XSPC ZSPC GetRapidFC EOL
ELSE
CheckG94
FeedC
IF ApproachOD?
IF LAST ApproachOD?
SeqC LAST XOpECDC GetRapidFC EOL
ELSE {around}
IF LAST ApproachID?
SeqC LAST XOpECDC GetRapidFC EOL
END
SeqC LAST OpExitZCPC GetRapidFC EOL
SeqC LAST OpExitXCPC GetRapidFC EOL
END
ELSE
IF ApproachID?
IF LAST ApproachID?
SeqC LAST XOpECDC GetRapidFC EOL
ELSE
IF LAST ApproachOD? {around}
SeqC LAST OpExitXCPC GetRapidFC EOL
END
SeqC LAST OpExitZCPC GetRapidFC EOL
SeqC XOpCDC GetRapidFC EOL
END
ELSE {ApproachFace}
IF LAST ApproachFace?
SeqC LAST ZOpECPC GetRapidFC EOL
ELSE
IF LAST ApproachOD? {around}
SeqC LAST OpExitXCPC GetRapidFC EOL
ELSE {LAST ApproachID}
SeqC LAST XOpECDC GetRapidFC EOL
END
SeqC LAST OpExitZCPC GetRapidFC EOL
END
END
END
CheckOffset
ApproachSP
END
END
END
END {common point for all operations}
StockOn
SetPass1
ToolPath
IF AutoFinish?
StockOff
IF Turning?
CheckG94
IF ApproachFace?
SeqC FeedC ZOpECPC GetRapidFC EOL
ELSE
SeqC FeedC XOpECDC GetRapidFC EOL
END
ApproachSP
CheckG95
SeqC StockOff StrtPosC FeedRateC EOL
ToolPath
ELSE
IF Roughing? AND NOT RoughSimple?
SetPass2
CheckG94
SeqC FeedC XSPC ZSPC GetRapidFC EOL
CheckG95
SeqC FeedC StockOff StrtPosC FeedRateC EOL
ToolPath
SetPass1
ELSE
IF Threading?
CheckG94
SeqC Feed 'X' ADD# FinishXRadius# Taper# GetRapidFC EOL
CheckG95
SeqC 'G33'
IF Taper?
XatFinZ
END
FinZ ThrdLead EOL
CheckG94
SeqC Feed XSP GetRapidFC EOL
SeqC Feed ZSP GetRapidFC EOL
END
END
END
END
IF Drilling? AND Tap?
SeqC SpinOff EOL
SeqC 'G04X02' EOL
SeqC Speed SpinOn EOL
END
NextOp {loops back to EachOP until last Operation}
{End of program ************************************************************}
{finish last operation}
StockOff
CheckG94
FeedC
IF ApproachOD?
SeqC OpExitXCPC GetRapidFC EOL
ELSE
IF ApproachID?
SeqC XOpECDC GetRapidFC EOL
END
END
SeqC OpExitZCPC GetRapidFC EOL
DoEndOpPS
SeqC CoolOff EOL
SeqC Feed FirstHome EOL
IF ProgStop?
SeqC 'M00' 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:
GE 7542 Monarch TC75 L395 85 01GE 550 Monarch 75 L223 85 2GE 1050 Monarch ( R) L090 82GE 1050 LeBlonde Rgl L033 85GE 1050T [GT] Baron L591 85GE 1050 HLX Hardinge L124 85 1GE 1050 HLB CS L520 85 1GE 2000 Bullard VTL L502 85GE 1050T Monarch L074 82GE 1050 Burgmaster [TC] M858 85GE 2000 Monarch M796 87GE 2000 Monarch L116 82GE Fanuc 0TB Hardinge L576 85 1GE 1050T W&S 242 [HP] L401 85GE 2000 Monarch [BK] M928 87 2GE 2000 Monarch [LBS] MU10 87Swedturn 10 CNC 220 L433 85 2mwięcej podobnych podstron