Van-Isle Technology Systems Ltd.

Object-Oriented NC code

Advantages of Object-Oriented NC code:

 

The basic idea of object-oriented programming is simple. Data, and the routines to process the data, are separated sorting the processing routines, called control blocks, to the top of the file, and the data blocks to the bottom of the file.
Each control block sets up the wire machine to run a data block in a different way. One control block could set up the rough cut with a taper, Z1 & Z5 setting, micro-joint, EPack, feed rate, and offset. A second control block could access a different data block to cut off the micro-joint. The next control block could cut a skim or even cut the land cuts all with the first data block. By allowing different control blocks to access the same data block, you save memory space, processing time, and time to try to edit the old style code are all saved.

The Output file is divided into 4 distinct groups. Each group plays a significant role in the operation of the file.

    Header:

    • Tells the wire machine:
      • the file number
      • file name
      • units of measure
      • machine start location
    • Gives the operator key pieces of information
      • date the file was created
      • the disk file name
      • the original AutoCAD file name
      • the programmer's name that created the file
      • machine type file was created for
      • EDMwire version number

    Object Control Blocks:

    Sets the parameters and controls the sequence of events for the data blocks to be executed.
    • Parameters
      • Object name
      • Power settings (EPack number)
      • Feed rate
      • Wire Offset
      • Power Master
      • Alternate Rough cut
      • Cut wire
      • Micro-Joint
      • Micro-Joint width
      • Z1, Z2, Z5 for this cut
      • Corner Mode G88/G89 for Object
      • Taper angle
      • Approach
        • Startup EPack distance
        • Ramp ON/OFF
        • Nib radius
      • Fine Hole Insert
        • Insert search X and Y
        • Raise Z-Axis on wire insert
      • Speed between objects
      • Land cut
        • Land thickness
        • Z1, Z2, Z5 for land cut
        • Power Master
        • Wire Cut
        • Taper Angle
    • Sequence Controls
      • Object number (order number)
      • Pass number

Start Sequence:

N05 is called at the start of each DATA BLOCK if wire insert (M20) is on in the Object Dialog box, or else N06 is called, avoiding the wire insert (M20). The tank is filled twice to avoid the problem of the tank draining below the table level and filling up to the table level on the fill tank command (a problem we have all learned the hard way). Flushing On, Wire ON, Machining ON, Adaptive Control ON, Absolute ON, Feed Rate set to H3, G01, and return to data block.

 

(Start_Sequence)
N05
M20
N06
M78
M78
M80 M82 M84
M90
G90 FH3
G01
G23

Data Block:

All vertex information is located here. X,Y,Z,U,V.I,J,R,Q,Qi,Qj, plus all the other MCodes the wire machine can handle.

 

The sample code shown here is of the Key Drawing shown below

.

The cut consists of one rough cut at -5 degree with Z1 set to 0.65 inches, and Z5 at 0 to create a 0.10 land. The second cut is a land cut with no taper, and the third cut is the land skim cut.

Group 
Code
Description
File
Header
% Start of file
L268/key File L# /File name
(Date:20030309.182344)
(FileName:C:\Output61.nc)
(AutoCadFileName:key.dwg)
(ProgrammerName:Administrator)
(MachineType:FX Series)
(EDMwire v3.03.03.03.3)
Comments

(Imperial_Units)

G70
Units of measure

(Machine_Start_Location)

G92 X0.00000 Y0.00000
M91
Wire start position
Object
Control
Block

(Pass#_1)
Start Pass #1

(Key Die)

Part Name
Z1=0.6500 Z2=0.0000 Z5=0.0000
Z-Axis settings
F10.0
Feed rate between parts
H93=11 M96 M101
Op Stop ON, PM OFF
E1220 H4=1221 H3=0.0748 H1=0.0067
Startup Epack,
A-5.0000
Object taper angle
G22H110
Jump to N110
M91 Adaptive Ctrl OFF

(Pass#_2)
Start Pass #2

(Key Die_Land) 
Part Name
Z1=0.7500 Z5=0.6500 Z-Axis settings
F10.0 Feed rate between parts
M101 PM OFF
E1201 H4=1201 H3=0.2520 H1=0.0080 Rough EPack,Feed Rate,Offset
G22H110 Jump to N110

F10.0

Feed rate between parts
M101 H93=11 M97 PM OFF, Op Stop OFF
E1202 H4=1202 H3=0.2402 H1=0.0054 Skim 1 EPack,Feed Rate,Offset
G22H110 Jump to N110
M21 Cut Wire
M02 End Program
Start
Sequence

(Start_Sequence)

N05
Start Sequence
M20 Feed Wire
N06  
M78
M78
Fill Tank
M80 M82 M84 Flushing ON,Wire ON,
Machining ON
M90 Adaptive Ctrl ON
G90 FH3 Absolute mode
G01  
G23 Return
Object
Data
Block

(Key Die)
Part Name
N110
G01 X0.00000 Y0.00000
 
G22H05
Jump to Start Sequence
G41 X-0.13003 Y0.00678  
G04 X3.0
E
H4
Dwell 3 seconds
Set EPack to H4 (Rough cut)
 X-0.21672 Y0.01129
G03 X-0.22962 Y-0.00181 I0.00010 J-0.01300
Ramp ON
G03 X-0.00000 Y-0.22962 I0.22962 J0.00181
G03 X0.44172 Y-0.31762 I0.22963 J-0.00000
G02 X0.65436 Y-0.17467 I0.21264 J-0.08667
G02 X0.85820 Y-0.23014 I0.03932 J-0.25778
G03 X0.89079 Y-0.21568 I0.01262 J0.01552
G01 X0.89537 Y-0.12850
 X0.94055 Y-0.12850
 X1.00030 Y-0.06876
 X1.04595 Y-0.06876
 X1.09308 Y-0.11589
 X1.10004 Y-0.11589
 X1.13401 Y-0.08193
 X1.21737 Y-0.08193
 X1.23408 Y-0.09863
 X1.26616 Y-0.09863
 X1.29779 Y-0.06700
 X1.36538 Y-0.06700
 X1.42688 Y-0.12850
 X1.46703 Y-0.12850
 X1.52853 Y-0.06700
 X1.59553 Y-0.06700
 X1.63695 Y-0.10842
 X1.74537 Y-0.00000
 X1.61687 Y0.12850
 X0.89537 Y0.12850
 X0.89079 Y0.21568
G03 X0.85820 Y0.23014 I-0.01997 J-0.00105
G02 X0.65436 Y0.17467 I-0.16452 J0.20231
G02 X0.44226 Y0.31630 I-0.00000 J0.22962
G03 X0.00000 Y0.22962 I-0.21264 J-0.08667
G03 X-0.22962 Y-0.00181 I-0.00000 J-0.22962
 
G03 X-0.21652 Y-0.01471 I0.01300 J0.00010
G01 X0.00000 Y0.00000 G40
Ramp OFF
G23 Return

 

--------------------------------------------------------------------------------

Home | Download | EDMwire Features | ToolBar | Tutorials | Program History | Bug Reporting | Contact Us
Dialog Boxes: Job Info | Object Info | Vertex Info | Render | Output Editor

© Copyright 2007 Van-Isle Technology Systems, Ltd.