20.将"输出设置->其他选项->输出控制单元->NC输出文件扩展名"改成NC。
21.在""事件中添加操作员消息,输入oprator_namemom_operation_name。
22.修改"运动"选项:
(1).在"线性移动"事件的G41 G17 G1 G90...行中添加G98元素。
(2).在"圆周移动"事件的G41 G17 G2 G90...行中添加G98元素。
(3).删除"快速移动"事件中的G0 G90 rap1 rap2 C S2= M13行的S2=元素和M13元素。
(4).在G0 G90 rap1 rap2 C行的末尾添加M8元素。
(5).删除G43 G0 G90 rap3 C H1行中G43元素和H1元素。
23.添加刀具信息输出代码:
(1).在"工序开始序列->自动换刀"事件中找到PB_CMD_my_rcb_tool_info行。
(2).编辑代码如下:
global mom_tool_type
global mom_tool_name
global mom_tool_nose_radius
global mom_tool_diameter
global mom_tool_pitch
global mom_tool_insert_width
global mom_tool_radius
global mom_tool_corner1_radius
switch $mom_tool_type {
"Turning Tool-Standard" {
set turning_tip_radius [format "%0.1f" $mom_tool_nose_radius]
MOM_output_literal "(tool_namemom_tool_name R=$turning_tip_radius)"
}
"Drilling Tool" {
set drill_diameter [format "%0.1f" $mom_tool_diameter]
MOM_output_literal "(tool_namemom_tool_name D=$drill_diameter)"
}
"Tap" {
set tap_diameter [format "%0.1f" $mom_tool_diameter]
set tap_pitch [format "%0.1f" $mom_tool_pitch]
MOM_output_literal "(tool_namemom_tool_name D=$tap_diameter P=$tap_pitch)"
}
"Grooving Tool-Standard" {
set groove_radius [format "%0.1f" $mom_tool_radius]
set groove_width [format "%0.1f" $mom_tool_insert_width]
MOM_output_literal "(tool_namemom_tool_name R=$groove_radius W=$groove_width)"
}
"Treading Tool-Standard" {
MOM_output_literal "(tool_name: $mom_tool_name)"
}
"Milling Tool-5 Parameters" {
set mill_diameter [format "%0.1f" $mom_tool_diameter]
set mill_radius [format "%0.1f" $mom_tool_corner1_radius]
MOM_output_literal "tool_namemom_tool_name D=$mill_diameter R=$mill_radius"
}
}
24.屏蔽G12.1和G13.1输出:
(1).在"程序和刀轨->定制命令"选项卡中找到PB_CMD_init_polar_mode。
(2).在MOM_output_literal "G12.1"前面添加#号,注释掉此行。
(3).在"程序和刀轨->定制命令"选项卡中找到PB_CMD_init_cartesian_mode。
(4).在MOM_output_literal "G13.1"前面添加#号,注释掉此行。
25.添加动力头转速和进给率检查代码:
(1).在"工序开始序列->初始移动"事件的S2= M13行上面添加"定制命令"。
(2).输入名称my_rcb_power_head_speed_and_feed_check。
(3).编辑代码如下:
global mom_feed_cut_value
global mom_surface_speed
global mom_spindle_speed
if {[expr $mom_feed_cut_value==0]||[expr $mom_surface_speed+$mom_spindle_speed==0] } {
MOM_abort "ERROR: please check speed or feed setup!"
}
(4).复制PB_CMD_my_rcb_power_head_speed_and_feed_check行到"第一次移动"事件的S2= M13行上面。
26.修改"现成循环"事件中的R值,以匹配新代系统的固定循环指令的要求:
(1).修改"程序开始序列->程序开始"事件的PB_CMD_log_revision行。
(2).编辑代码如下:
global posX
global posY
global posZ
set posX 0
set posY 0
set posZ 0
(3).修改"运动->线性移动"事件:
(a).在G41 G17 G98 G1 G90...行上面添加"定制命令",输入名称my_rcb_get_pos_value。
(b).编辑代码如下:
global posX
global posY
global posZ
global mom_pos
set posX $mom_pos(0)
set posY $mom_pos(1)
set posZ $mom_pos(2)
(4).在"运动->圆周移动"事件的G17 G98 G2 G90 X Y Z I J F行上面添加PB_CMD_my_rcb_get_pos_value行。
(5).在"运动->快速移动"事件的G0 G90 rap1 rap2 C行上面添加PB_CMD_my_rcb_get_pos_value行。
(6).修改在"现成循环->深钻"事件:
(a).修改G17 G83 X Y Z C R Q...M84行R元素为R-Cycle Rapid to Distance。
(b).在G17 G83 X Y Z C R Q...M84行上面添加"定制命令",输入名称my_rcb_calc_g8x_R_value。
(c).编辑代码如下:
global mom_pos
global mom_cycle_rapid_to
global posZ
set mom_cycle_rapid_to [expr $posZ-$mom_pos(2)-$mom_cycle_rapid_to]
(7).修改在"现成循环->攻丝"事件:
(a).修改G17 G84 X Y Z C R Q...M84行R元素为R-Cycle Rapid to Distance。
(b).在G17 G84 X Y Z C R Q...M84行上面添加PB_CMD_my_rcb_calc_g8x_R_value。
(8).修改在"现成循环->镗"事件:
(a).修改G17 G85 X Y Z C R Q...M84行R元素为R-Cycle Rapid to Distance。
(b).在G17 G85 X Y Z C R Q...M84行上面添加PB_CMD_my_rcb_calc_g8x_R_value。
27.修改"运动->圆周移动"事件:
(a).给G17 G98 G2 G90 X Y Z I J F行添加输出条件,输入名称circular_move。
(b).编辑代码如下:
global mom_logname
global mom_arc_angle
if { $mom_arc_angle >= 360 } {
return 1
} else {
return 0
}
(c).在G17 G98 G2 G90 X Y Z I J F行下面添加G17 G98 G2 G90 X Y Z R F行。
(d).修改G17 G98 G2 G90 X Y Z R F行的R元素为非模态输出。
(e).给G17 G98 G2 G90 X Y Z R F行添加输出条件,输入名称circular_move_1。
(f).编辑代码如下:
global mom_logname
global mom_arc_angle
global mom_arc_radius
if { $mom_arc_angle <= 180 } {
return 1
} elseif { $mom_arc_angle < 360 } {
set mom_arc_radius [expr $mom_arc_radius * -1]
return 1
} else {
return 0
}
28.用VERICUT软件验证,极坐标输出轴向铣后处理制作完成。