Okuma OSP700 LH [HIR] BW84.12.2.txt

(28 KB) Pobierz
{
MILL=T
LATHE=F
SIMPLE_ROT_POS=F
ROTARY_MILL=F
ADV_MILL=F
SUBS=F
MILLTURN_Y-AXIS=F
METRIC=F
}

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

{9/27/89, added PostScript to: Okuma OSP5000M-G M101.51, JR}
{3/29/90, Updated: Okuma OSP5000M-G M101.61  to .70.3 format, JR}
{7/5/90, Updated: Okuma OSP5000M-G M101.70.3  to .72.1 format, JR}
{7/24/90, Replaced all occurances of SetSRXYZero with SetSRXYtoSP, DWB}

{12/19/90
 Copied & modified: Okuma 5000M-G M101.73
 For: Gibbs & Associates
 Machine: Okuma
 Control: 5000M-G
 Updated to Version 3.2 per Fanuc 6M M001.76.1 Format.
DWB}

{4/03/91
 Modified: Okuma 5000M-G M101.76.1
 For: Gibbs & Associates
 Updated to Version 4.0 per Fanuc 6M M001.80 Format.
DWB}

{09/30/91
 Modified: Okuma 5000M-G M101.79
 For: Gibbs & Associates
 Updated to Version 4.0 per Fanuc 6M M001.81 Format.
Kim Michelman}

{2/11/94, Updated Okuma 5000M-G M101.81 to .81.2 format, JR}

{10/6/95, Updated Okuma 5000M-G M101.81.2 to .85 format per Fanuc 6M M001.85.01.03, JR}

{1/17/96, Updated .85 to .86 version, MPK}

{3/22/96, Tested ZOnlyRepAutoCycle, Changed version # to .89, MPK}

{6/19/96
	Initial: Okuma 5000M-G M101.89
	Created: Okuma OSP7000M Mxxx.89
	ForUser: DEN-TAL-EZ, Inc.
	Control: Okuma OSP7000M
	Machine: Okuma MC500H
	Develop: ComPost 4.21.37, Catalyst68K v3.04.10.C
	Comment: New Processor per manual.
		Manual says it is totaly comapataple with the OSP5000M-G
			and after some review it appears so!
		Changed to First Tool Not In Spindle format.
		Deleted PreTool
		Moved OfstOn to nest line, off of the StrtPos line.
		Added support for additional Drill Cycles.
Jim Radcliffe}

{10/4/97
	Initial: Okuma OSP7000M M143.89
	Created: Okuma OSP700M [GTR] MW14.89
	Version: ComPost2 1.0b11
	Control: Okuma OSP700M
	Machine: Okuma
	Customer: GTR Enterprises.
	Comments: Change tool change commands to full pre-select method.
	Added the literal line 'G11T2Q2' at start of program. This is a Okuma macro call to avoid
	a machine alarm if the spindle tool is selected.
	Change G53 to Z30. for Z axis zero return. (The Z30. value must exceed the
	distance to Machine zero).
	Cancel canned cycles with G0 in place of G80.
	Added Y30. on the line before M30 to move spindle clear for easy access to table.
KC}

{10/9/97
	Removed literal G28's from Z axis machine zero commands. Machine does not accept them.
	Updated from Okuma OSP700M [GTR] MW14.89 to Okuma OSP700M [GTR] MW14.89.1
KC}

{29Dec97
	Original: Okuma OSP700M [GTR] MW14.89.1
	Created: Okuma LH OSP700M [HIR] MW84.12
	For: Hirschler Maunfacturing
	Changes made per:  Jim or Matt
	Provisional LONGHAND post processor for customer testing. 
	Changes too numerous to list at this time:  To be made into an Advanced mill post.
Charles Winston}

{25Feb98
	Original: Okuma LH OSP700M [HIR] MW84.12
	Created: Okuma LH OSP700M [HIR] CW84.12
	For: Hirschler Maunfacturing
	Changes made per:  Jim or Matt
	Created C Style Advanced Mill Longhand Post
Charles Winston}

{25Feb98, Created: Okuma LH 5020M [WMC] BW84.12,   B Style Advanced Mill Longhand Post,  Charles Winston}

{7Mar98
	Original: Okuma LH OSP700M [HIR] BW84.12
	Created: Okuma LH OSP700M [HIR] BW84.12.1
	For: Hirschler Maunfacturing
	Changes made per:  Jim or Matt
	Changes to B Style Advanced Mill Longhand Post per customers fax
	Changed formatting for Line Numbers in Mach Spec to ####^b
	Changed all Feeds and Rapids to be modal
	Changed all XYZ moves to be modal
	Moved PreTool CoolOn after the StartPos Line in FirstOp3 and NewToolOp5
	Moved Speed SpinOn to the StartPos Line in FirstOp3 and NewToolOp5
	Changed the MP1ToollAllPXcp Sub suit the above 2 alterations.
Charles Winston}

{29 Oct98
	Original: Okuma OSP700 LH [HIR] BW84.12.1
	Created: Okuma OSP700 LH [HIR] BW84.12.2
	For: Hirschler Maunfacturing
	Changes made per:  Jim or Matt
	Added Post Header Comment at the top of Prog.
	Re-Wrote the logic at PointFeat in Toolpath to suppress the drill cycle on a blank line.  SrtPos is called in DrillStuff.
		Using MoveXC or MoveYC does not work here because the drill cycle is being output on every line.
Charles Winston}

{Prog Numeric Format Definitions ****}

#1 = '#.00'
#2 = '###.###;0.'
#3 = '*#####.###;0.'
#4 = '####.####;0.'
#5 = '#######0'
#6 = '####^##0'
#7 = '###0'
#8 = '###0.000#;0.'
#9 = '#'
#10 = '?#bbbb.bbbb#'
#11 = '######00'

FORMAT(FileFeet#,1)
FORMAT(FileMeters#,1)
FORMAT(CSOffsetA#,3)
FORMAT(CSOffsetB#,3)
FORMAT(CSOffsetX#,4)
FORMAT(CSOffsetY#,4)
FORMAT(CSOffsetZ#,4)
FORMAT(TrackZNO#,4)
FORMAT(TLLength#,4)
FORMAT(TLNum#,5)
FORMAT(Tag#,5)
FORMAT(Program#,5)
FORMAT(Operation#,5)
FORMAT(Tool#,5)
FORMAT(NewWFO#,5)
FORMAT(Parts#,5)
FORMAT(ADD#,5)
FORMAT(Dwell#,6)
FORMAT(ToolDiameter#,8)
FORMAT(TLDia#,8)
FORMAT(RapidF#,9)
FORMAT(PartShiftX#,10)
FORMAT(PartShiftY#,10)
FORMAT(PartShiftZ#,10)
FORMAT(Recall#,11)

{Testing Subroutines *}

#20 = '?0000.0000'
FORMAT(OriginShiftPX#,20)
FORMAT(OriginShiftPY#,20)
FORMAT(OriginShiftPZ#,20)
FORMAT(OriginUnshiftPX#,20)
FORMAT(OriginUnshiftPY#,20)
FORMAT(OriginUnshiftPZ#,20)
FORMAT(OriginUSPXCTP#,20)
FORMAT(OriginUSPYCTP#,20)
FORMAT(OriginUSPZCTP#,20)

Report:
	IF MultipleParts? AND WorkFixtureOffsets?
		SetStatusOff
		' ' EOL
		'        PartShiftX# = ' PartShiftX# '	'
		'        PartShiftY# = ' PartShiftY# '	'
		'        PartShiftZ# = ' PartShiftZ# EOL
		'OriginUnshiftPX#(0) = ' OriginUnshiftPX#('0') '	'
		'OriginUnshiftPY#(0) = ' OriginUnshiftPY#('0') '	'
		'OriginUnshiftPZ#(0) = ' OriginUnshiftPZ#('0') EOL
		'OriginUnshiftPX#(1) = ' OriginUnshiftPX#('1') '	'
		'OriginUnshiftPY#(1) = ' OriginUnshiftPY#('1') '	'
		'OriginUnshiftPZ#(1) = ' OriginUnshiftPZ#('1') EOL
		'OriginUnshiftPX#(2) = ' OriginUnshiftPX#('2') '	'
		'OriginUnshiftPY#(2) = ' OriginUnshiftPY#('2') '	'
		'OriginUnshiftPZ#(2) = ' OriginUnshiftPZ#('2') EOL
		'     OriginShiftPX# = ' OriginShiftPX# '	'
		'     OriginShiftPY# = ' OriginShiftPY# '	'
		'     OriginShiftPZ# = ' OriginShiftPZ# EOL
		'  OriginUSPXCTP#(0) = ' OriginUSPXCTP#('0') '	'
		'  OriginUSPYCTP#(0) = ' OriginUSPYCTP#('0') '	'
		'  OriginUSPZCTP#(0) = ' OriginUSPZCTP#('0') EOL
		'  OriginUSPXCTP#(1) = ' OriginUSPXCTP#('1') '	'
		'  OriginUSPYCTP#(1) = ' OriginUSPYCTP#('1') '	'
		'  OriginUSPZCTP#(1) = ' OriginUSPZCTP#('1') EOL
		'  OriginUSPXCTP#(2) = ' OriginUSPXCTP#('2') '	'
		'  OriginUSPYCTP#(2) = ' OriginUSPYCTP#('2') '	'
		'  OriginUSPZCTP#(2) = ' OriginUSPZCTP#('2') EOL
		' ' EOL
		SetStatusOn
	END
RETURN

{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

DoPartCycleComment:
	IF MultipleParts? AND UseComments? AND SubComment?
		'( PART NO. ' Tag# ' )' EOL
	END
RETURN

DoCycleComment:
	IF UseComments? AND SubComment?
		'( CYCLE START )' EOL
	END
RETURN

DoOpComments:
	IF UseComments?
		SetScale('1')
		IF OperationIDComment?
			' ( OPERATION ' Operation# ': ' OperationType$ ' )' EOL
		END
		IF OperationComment?
			' ( ' OperationComment$ ' )' EOL
		END
		IF WorkGroupComment?
			' ( ' WorkGroupComment$ ' )' EOL
		END
		RestoreScale
	END
RETURN

BadMPWFOReport:
	SetStatusOff
	' ' EOL
	'?????????????????????????????????????????' EOL
	'? NOTE: Even though you have elected to ?' EOL
	'? process this file using Multiple      ?' EOL
	'? Parts with Work Fixtures, there exist ?' EOL
	'? non-zero values in the invisible,     ?' EOL
	'? Equally Spaced? fields, as follows:   ?' EOL
	'?                                       ?' EOL
	'*****************************************' EOL
	IF NotEqual? PartShiftX# Num#('0')
		'     X axis shift = ' PartShiftX# EOL
	END
	IF NotEqual? PartShiftY# Num#('0')
		'     Y axis shift = ' PartShiftY# EOL
	END
	IF NotEqual? PartShiftZ# Num#('0')
		'     Z axis shift = ' PartShiftZ# EOL
	END
	'*****************************************' EOL
	'?                                       ?' EOL
	'? Please reset these values to zero as  ?' EOL
	'? they affect the coordinate values     ?' EOL
	'? output, starting with Part# 2.        ?' EOL
	'? Thank You.                            ?' EOL
	'?????????????????????????????????????????' EOL
	' ' EOL
	SetStatusOn
RETURN

CSWFO:
	' G15 H' ADD# CS# SUB# NewWFO# Num#('1')
RETURN

CalcCSWFO: {(iPart-1)*NumOfCS#)}
	IF MultipleParts?
		IF Flag?('3')
			' G15 H' ADD# NewWFO# SUB# Tag# Num#('1')
		ELSE
			' G15 H' ADD# NewWFO# SUB# Parts# Tag#
		END
	ELSE
		CSWFO
	END
RETURN

CSAngleA:
	IF AAxisAvail?
		IF WFOCS?
			' A0.'
		ELSE
			' A' CSOffsetA#
		END
	END
RETURN

CSAngleAC:
	IF AChange?
		CSAngleA
	END
RETURN

CSAngleB:
	IF BAxisAvail?
		IF WFOCS?
			' B0.'
		ELSE
			' B' CSOffsetB#
		END
	END
RETURN

CSAngleBC:
	IF BChange?
		CSAngleB
	END
RETURN

DoCSWFOComment:
	' ( CS#' CS# ' - ' CSComment$ ' )' EOL
	' (' CalcCSWFO '= X' CSOffsetX# ' Y' CSOffsetY# ' Z' CSOffsetZ#
	IF AAxisAvail?
		' A' CSOffsetA#
	END
	IF BAxisAvail?
		' B' CSOffsetB#
	END
	' )' EOL
RETURN

DoCSG52Comment:
	' ( CS#' CS# ' - ' CSComment$ ' )' EOL
RETURN

PSInit:
	NewWFOF
	FourthCWF
	FourthCCWF
	FifthCWF
	FifthCCWF
	RotateF
	OptCyc1F
	MasterOpF
	CallMasterOpF
RETURN

PSStuff:
RETURN

DoPostScript:
	PSInit
	EachPS
		SeqC PostScript EOL
		PSStuff
	NextPS
RETURN

DoEndOpPS:
	PSInit
	EachEOPS
		SeqC EndOpPS EOL
		PSStuff
	NextPS
RETURN

EntryMove:
	IF FeedEntry?
		SeqC FeedC ZIn FeedEntC EOL
	ELSE
		SeqC RapidC ZIn EOL
	END
RETURN

ExitMove:
	SeqC
	IF FeedConnect?
		IF NOT AutoCycle?
			IF NOT NoZMoves?
				FeedC ZInC Fe...
Zgłoś jeśli naruszono regulamin