您的当前位置:首页正文

PowerMILL后处理制作教程

2021-06-09 来源:易榕旅网


PowerMILL后处理制作教程

define word TN

address letter = \"TOOL TYPE:- \"

address width = 13

field width = 25

end define

具体解释:

define word TN —————————————— 定义字段;

address letter = \"TOOL TYPE:- \" ————— 定义字段的返回值,比如在后处理文件里有“MS =C ; TN ToolType ; EM =C”,而在写程式的时候选用的是端铣刀,那么在CNC程式里就会有(TOOL TYPE:- ENDMILL);

address width = 13 ——————————— 定义字符宽度,如上\"TOOL TYPE:- \",从T开始算起一共13位,包括空格;

field width = 25 ——————————— 定义返回字的宽度,如上\"ENDMILL\",如果field width = 2,那\"TOOL TYPE:- \"就返回EN;如果field width = 25,那\"TOOL

TYPE:- \"就返回ENDMILL。

end define

========================== 第二段是定义字符的格式 =============================

define format ( / G6 S T M1 M2 L P D E H O )

address width = 1

field width = 2

exponent width = 0

scale factor = 1

scale divisor = 1

tape position = 0

print position = 1

sign = none

not permanent

not modal

metric formats

leading zeros = false

trailing zeros = true

decimal point = false 控制公制尺寸的前导零、后导零,小数点

decimal places = 0

imperial formats

leading zeros = false

trailing zeros = true

decimal point = false 控制英制尺寸的前导零、后导零,小数点

decimal places = 0

end define

word order = ( OP N G1 G2 G3 G4 G5 )

word order = ( + G6 G7 X Y Z B C )

word order = ( + I J K R D S T )

word order = ( + H M1 M2 MS msg EM Q ) 注册字符

word order = ( + Q1 Z2 R2 ID F )

word order = ( + TN TD TR DY MT YR PM )

========================== 第三段是定

define keys

blocknumber = N —————— 定义程序段号

preparatory function = G1 ——————— 定义准备功能指令

aux function = M1 —————— 定义辅助功能指令

x feedrate not used ————— 定义X进给率指令

y feedrate not used ————— 定义Y进给率指令

z feedrate not used ————— 定义Z进给率指令

义键值

===================================

circle angle not used ————— 圆周角度

x coordinate = X —————— 定义X坐标轴

y coordinate = Y —————— 定义Y坐标轴

z coordinate = Z —————— 定义Z坐标轴

key i = I —————— 定义X轴矢量I键

key j = J —————— 定义Y轴矢量J键

key k = K —————— 定义Z轴矢量K键

feedrate = F —————— 定义进给率指令

feedrate per revolution = F ——————— 定义每转进给率指令

spindle = S —————— 定义主轴指令

tool number = T —————— 定义刀具指令

cycle dwell not used

dwell = X ————— 定义暂停时间键值

tool length = H —————— 定义刀具长度补偿指令

tool radius = D —————— 定义刀具半径补偿指令

drill peck depth = Q1 —————— 钻孔的啄钻深度

drill hole depth = Z2 —————— 定义钻孔深度

clearplane = R2 ————— 定义安全平面高度

message start = MS ————— 定义注释的开始符

message end = EM ———— 定义注释的结束符

opskip = OP ———— 定义跳段符号

radius = R ————— 定义半径R键

program id = ID ————— 定义程序号

azimuth axis = B ————— 在多轴加工中,定义方位轴

elevation axis = C ————— 在多轴加工中,定义仰角轴

3rd rotation axis = null ————— 在多轴加工中,定义第三旋转轴

leader not used

x vector not used

y vector not used

z vector not used

error not used

end define

========================== 定义define codes

rapid = G1 0 ========== 快速点定位

linear = G1 1 =========== 直线插补

circle cw = G1 2 =========== 顺圆插补

circle ccw = G1 3 ========== 逆圆插补

dwell = G6 4 ========= 暂停、准确停止

指令值

========================================

xy plane = G3 17 ========= XY平面

zy plane = G3 19 ========= YZ平面

xz plane = G3 18 ========= ZX平面

compensation off = G2 40 ========== 取消刀具半径补偿

compensation on left = G2 41 =========== 刀具半径左补偿

compensation on right = G2 42 =========== 刀具半径右补偿

imperial data = G4 20 ============ 英寸输入

metric data = G4 21 ============ 毫米输入

absolute data = G5 90 ============ 指定绝对坐标编程

incremental data = G5 91 ============ 指定增量坐标编程

from = G3 54 ========== 制定工作坐标系

feedrate per minute not used ================ 每分钟进给

feedrate per revolution not used ================= 每转进给

spindle rpm not used

constant surface speed not used

drill = G4 81 =========== 钻孔循环锪镗循环

break chip = G4 82 =========== 钻孔循环或反镗循环

deep drill = G4 83 ============ 深孔钻循环

tap = G4 84 ========== 攻丝循环

bore 1 = G4 85 ========== 镗孔循环

bore 2 = G4 86 ========== 镗孔循环

bore 3 = G4 87 ========== 背镗循环

bore 4 = G4 88 ========== 镗孔循环

bore 5 = G4 89 ========== 镗孔循环

end of drill = G4 80 ============= 固定循环取消

macro start not used ============ 宏程序模态调用

macro end not used =========== 宏程序模态调用取消

macro call not used ============ 宏程序调用

cycle retract = G6 99 ========== 固定循环返回到R点

tool length offset = G3 43 =========== 正向刀具长度补偿

spline not used ======== spline插补方式

stop = M1 0 ==== 程序停止

opt stop = M1 1 ===== 选择停止

spindle on cw = M1 3 ===== 主轴正转

spindle on ccw = M1 4 ===== 主轴逆转

spindle off = M1 5 ===== 主轴停止

spin coolant on cw = M1 13

spin coolant on ccw = M1 14

spin coolant off = M1 5 ====== 冷却液关

change tool = M1 6 ====== 自动换刀

coolant on mist = M1 7 ===== 雾状冷却液

coolant on = M1 8 ==== 冷却液开

coolant on flood = M1 8 ===== 冷却液开(喷出)

coolant off = M1 9 ===== 冷却液关

clamp on not used

clamp off not used

end of tape = M1 2 ===== 程序结束

end of prog = M1 30 ===== 程序结束

gear range 1 not used

gear range 2 not used

gear range 3 not used

constant contour speed not used

constant contour speed 2 not used

word drill not used

word break chip not used

word deep not used

word tap not used

word bore 1 not used

word bore 2 not used

word bore 3 not used

word bore 4 not used

word bore 5 not used

coolant on tap not used

rigid tap not used ====== 刚性攻丝

helical drill not used

helical retract drill not used

end define

================================ 定义变量

======================================

print header = \"Delcam Postprocessor\" ================== 定义打印标题

machine name = \"Fanuc6m version 1.2\" ========= 机器名

point = \".\" ================================ 小数点

zero = \"0\" =============================== 零

tape headers = 1 ============================== 纸带标题

(integer 6 、integer 7):定义coolant output(冷却液输出)

integer 6 = 2 ============== 定义冷却液开(M07、M08)的输出方式,

此变量共有三个选项——0:在后处理时遇到相关指令时输出;1:在下一段中单独输出;2、在下一段中和坐标移动一起输出。

integer 7 = 1 ============== 定义冷却液关(M09)的输出方式,此变量共

有三个选项——0:在后处理时遇到相关指令时输出;1:在下一段中单独输出;2、在下一段中和坐标移动一起输出。

(integer 10、integer 11、integer 12、integer 13):定义spindle output(主轴输出)

integer 10 = 2 ============== 定义主轴开(M03、M04)的输出方式,

此变量共有三个选项——0:在后处理时遇到主轴开指令时输出;1:在下一段中单独输出;2、在下一段中和坐标移动一起输出。

integer 11 = 1 ============= 定义主轴关(M05)的输出方式,此变量共有二个选项——0:在遇到主轴关指令时不输出S;1:在遇到主轴关指令时输出S0。

integer 12 = 1 ============= 定义M代码的输出方式,此变量共有二个选项——0:在遇到主轴相关指令时不输出M;1:在遇到主轴相关指令时输出M。

tool reset coordinates = 2 =============== 定义刀具复位后(M06后)的坐标处理方式,有1、2、3、4四个选项,请注意这四个选项的刀具补偿的区别:

cycle output = 1 ================ 定义循环指令(G80~G89)的输出方式,此变量共有两个选项——0:不输出循环移动指令;1、输出循环指令(默认值为G81)。

(integer 20、integer 26、full circle):定义circle output(圆弧输出)

integer 20 = 1 ============= 定义圆弧(M02、M03)的输出坐标,此变量

共有两个选项——0:不输出圆弧的X、Y坐标;1:输出圆弧的X、Y坐标。

block start = 1 =============== 定义程序段的开始段号

block increment = 1 =============== 定义程序段号的增量

split move = 0

integer 26 = 1 ============== 定义圆弧(M02、M03)的输出,此变量共有两个选项——0:不输出圆弧指令;1、输出圆弧指令,如果选择0,那么在后处理时遇到有圆弧的地方,系统将这个圆弧打断成若干条直线段输出。

program id start = 100 =============== 定义程序起始号

integer 34 = 3

integer 35 = 1

integer 36 = 1

integer 37 = 2

rapid feed code = 0 =============== 共有两个选项——0:在快速移动时不输出进给率;1:在快速移动时输出进给率(需要在快速移动中定义F)。

maximum block number = 0

maximum tape blocks = 0

minimum tape blocks = 0

segment type = 0

counter start = 0

counter increment = 0

tape split retract distance = -999

multiaxis coordinate transform = true ====== 定义机床是否支持多轴联动,true:支持;false:不支持

message output = false

block order = true

tlo output = true ======== 是否正常输出刀具长度(半径)补偿,true:输出;false:不输出。

tape split on tool change = false

full circle = true ========= true:整圆输出;false:不做整圆输出。

incremental centre = true

go home output = false

use partid = true ======== 是否使用自定义partid,true:使用;false:不使用

use progid = true ======== 是否使用自定义progid,true:使用;false:不使用

spindle x motion = false ======== 定义主轴运动方向,true:X方向;false:NOX方向。

spindle y motion = false ======== 定义主轴运动方向,true:Y方向;false:NOY方向。

spindle z motion = true ======== 定义主轴运动方向,true:Z方向;false:NOZ方向。

spindle w motion = false ======== 定义主轴运动方向,true:W方向;false:NOW方向。

spindle azimuth rotation = false ========== 定义方位轴方式,true:为主轴头式;false:为工作台式。

spindle elevation rotation = false ========== 定义仰角轴方式,true:为主

轴头式;false:为工作台式。

linearise multiaxis moves = true ========== 定义机床是否支持线性多轴联动,true:支持;false:不支持。

use hole top in cycles = false

retract at angular limit = false

unwind at tool change = false

suppress xy arc = false

suppress xz arc = false

suppress yz arc = false

transform workplane origin = false

previous multax rapid style = false

knot vector type = none

units = input ======= 定义单位,input=ouput;metric;imperial

coordinates = absolute ====== 定义坐标单位,absolute ;incremental

azimuth axis units = degrees ======= 定义方位轴单位

azimuth axis direction = positive ======= 定义方位轴用法,相对还是绝对

elevation axis units = degrees ======== 定义仰角轴单位

elevation axis direction = positive ======== 定义仰角轴用法,相对还是绝对

spline type = none

workplane angles = none

option file units = none

maximum feedrate = 9999.0000

minimum feedrate = 1.0000

rapid feedrate = 9999.0000

maximum tape length = 0.0000

plunge threshold angle = 0.0000

maximum segment = 0.0000

diameter = 1.0000

withdrawal amount = 50.0000

arc radius limit = 10000.0000

retraction threshhold angle = 360.0000

arc minimum radius = 0.0000

azimuth axis parameters = ( 0 0 0 0 0 0 ) ========= 定义方位轴参数,前三个零为分别定义每个轴的旋转中心;后三个零为定义方位轴的坐标,依次为X、Y、Z。

azimuth centre = ( 0 0 0 ) ========================== 定义方位轴圆心参数

elevation axis parameters = ( 0 0 0 0 0 0 ) ========== 定义仰角轴参数,前三个零为分别定义每个轴的旋转中心;后三个零为定义仰角轴的坐标,依次为X、Y、Z。

elevation centre = ( 0 0 0 ) =========================== 定义仰角轴圆心参数

pcs origin = ( 0 0 0 0 0 0 ) ======== 定义旋转轴圆心

linear axis limits = ( -99999 999999 -99999 999999 -99999 999999 ) ============== 定义线性轴范围

rotary axis limits = ( -99999 999999 -99999 999999 999 1 ) ============ 定义旋转轴范围,前两个零为定义方位轴的旋转范围;中间两个零为定义仰角轴的旋转范围;第五个零定义公差;第六个零定义分辨率。

move safe angles = ( 0 0 0 0 ) ==================== 定义起始角度

define block tape start

\"%\"

#ID ProgID

N ; G2 91 ; G6 28 ; Z 0 ; Z =C

N ; MS =C ; PM JobName ; EM =C

N ; MS =C ; MT Month ; DY Day ; YR Year ; EM =C

N ; MS =C ; TN ToolType ; EM =C

N ; MS =C ; TD ToolRadius[ToolNum] ; EM =C

N ; MS =C ; TR ToolRadius[ToolNum] ; EM =C

N ; compensation off ; G6 49 ; xy plane ; G4 80 ; G3 54

#N ; G2 91 ; G6 28 ; X 0 ; Y 0 ; X =C ; Y =C

end define

define block tape end

N ; G5 91 ; G6 28 ; Z Zcoord ; Z =C

N ; H 0 ; G6 49

#N ; G6 28 ; X 0 ; Y 0 ; X =C ; Y =C

N ; M1 30

end define

define block go home preamble

end define

define block tool change first

#N ; OP ; change tool ; T ToolNum

G3 54 ; G5 90 ; G3 =C ; G5 =C ; #T NextTool ;

end define

define block tool change

N ; G5 91 ; G6 28 ; Z 0 ; Z =C

N ; H 0 ; G6 49

N ; G6 28 ; X 0 ; Y 0 ; X =C ; Y =C

N ; T ToolNumber ; change tool

G5 90 ; G3 54 ; G5 =C ; G3 =C ; #T NextTool ;

end define

define block tool change clear

end define

define block go home z move

end define

define block go home xy move

end define

define block move from

end define

define block move circle

N ; G1 ; G2 ; G3 ; X ; Y ; Z ; I ; J ; K ; F ; D

end define

define block move linear

end define

define block move rapid

N ; G1 ; G2 ; G3 ; G5 ; G6 ; X ; Y ; Z ; T ; H ; S ;

M1 ; M2

end define

define block move cycle

N ; G4 ; G6 ; X ; Y ; Z2 ; R2 ; Q ; Q1 ; F ; M2

end define

define block move tap

N ; G6 ; G4 ; X ; Y ; Z2 ; R2 ; F ; M1 ; M2

end define

define block tape segment

end define

define block tape split start

\"%\"

ID ProgID

end define

define block tape split end

N ; G1 28 ; G6 91 ; Z 0 ; Z =C

N ; H 0 ; G6 49

#N ; G6 28 ; X 0 ; Y 0 ; X =C ; Y =C

N ; M1 30

end define

define block cycle start

N ; S ; M1

N ; G3 ; G5 ; M2

F =C ; G4 =C ; Z2 ; R2 ; Q ; Q1 ; G6 ;

end define

define block cycle end

N ; G4 80

end define

define block tape split move

end define

define block move spline

end define

End

因篇幅问题不能全部显示,请点此查看更多更全内容