{ 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...
kmex