找回密码
 立即注册

QQ登录

只需一步,快速开始

微信扫码登录

搜索
查看: 230|回复: 7

[原创] 手把手教你制作新代220M-5 Plus五轴机床U380后处理(二

[复制链接]

19

主题

120

回帖

1484

积分

六级士官

积分
1484
发表于 昨天 17:39 | 显示全部楼层 |阅读模式
(二).后处理制作步骤:
1.打开NX后处理构造器:
  (1).设置语言为简体中文。
  (2).备份选项设置为每次保存的。
2.新建后处理:
  (1).输入后处理名称为syntec220m_5x_ac。
  (2).选中"主后处理"。
  (3).输出单位选中"毫米"。
  (4).勾选"启用UDE编辑器"。
  (5).机床选中"铣"。
  (6).在下面下拉列表中选择"5轴带双转台"。
  (8).控制器选中"库"。
  (9).在列表框中选择"FANUC"->"Fanuc_30i_advanced"。
3.设置"机床->第四轴"选项卡:
  (1).点击"配置"按钮,弹出旋转轴配置对话框。
  (2).将"第4轴转台"下的"旋转平面"改成YZ,将"文字引导符"改成A。
  (3).将"第5轴转台"下的"旋转平面"改成XY,将"文字引导符"改成C。
  (4).其它参数保持默认值,点击确定。
  (5).设置"旋转运动精度(度)"为0.001。
  (6).设置"旋转轴"为"法向"。
  (7).设置"轴限制(度)"最大值120,最小值为-30。
  (8).取消"旋转轴可以递增的"前面的√,不打√。
  (9).其它参数保持默认值。
4.设置"机床->第五轴"选项卡:
  (1).设置"旋转运动精度(度)"为0.001。
  (2).设置"旋转轴"为"法向"。
  (3).设置"轴限制(度)"最大值360,最小值为0。
  (4).取消"旋转轴可以递增的"前面的√,不打√。
  (5).其它参数保持默认值。
5.修改"程序开始序列->程序开始"事件":   
  (1).删除MOM_set_seq_on行。
  (2).找到"G代码"选项卡,将"英制模式"改成70,将"公制模式"改成71。
  (3).修改G40 G17 G90 G49 G71行内容为G17 G40 G80 G49 G69 G90 G94。
  (4).修改PB_CMD_customize_output_mode行的代码内容如下:
      global dpp_ge
      global dpp_opt_type
      set dpp_opt_type "NONE"
      set dpp_ge(sys_coord_rotation_output_type) "SWIVELING"
      set dpp_ge(sys_tcp_tool_axis_output_mode) "AXIS"
      set dpp_ge(sys_output_coord_mode) "TCP_FIX_TABLE"
  (5).在PB_CMD_program_header行下面添加"定制命令",输入名称my_rcb_head_info,编辑代码如下:
      set dpp_head_date [clock format [clock seconds] -format "%y-%m_%d"]
      set dpp_head_time [clock format [clock seconds] -format "%H:%M:%S"]
      MOM_output_literal "(CNC: Syntec 220M-5 Plus)"
      MOM_output_literal "(Mach: A(-30~+120) C(0~360))"
      MOM_output_literal "(Date: 20$dpp_head_date)"
      MOM_output_literal "(Time: $dpp_head_time)"
6.修改"工序结束序列->刀轨结束"事件":
  (1).删除G91 G28 Z0.行。
  (2).删除G91 G28 X0. Y0.行。
  (3).删除G90 G53 G00 A0. C0.行。
  (4).删除M09行。
  (5).删除M05行。
  (6).修改PB_CMD_reset_output_mode行代码内容  如下:
      global dpp_ge
      global mom_sys_adjust_code
      global dpp_opt_type
      MOM_output_literal "G49"
      if {[string compare "NONE" $dpp_ge(coord_rot)]} {
         # MOM_output_literal "G69"
      }
      if { ![string compare "3+2X" $dpp_opt_type] } {
         MOM_output_literal "G69"
      }
      set mom_sys_adjust_code 43
      DPP_GE_RESTORE_KINEMATICS
      set dpp_opt_type "NONE"
      MOM_output_literal "G91 G28 Z0."
      MOM_output_literal "M1"
7.修改"程序结束序列->程序结束"事件":  
  (1).删除IF(PB_CMD_check_block_running_post_oper_path)行。
  (2).删除MOM_abort_event行。
  (3).删除END行。
  (4).删除IF(PB_CMD_check_block_subprogram_output_on)行。
  (5).删除PB_CMD__subprogram_output_dump行。
  (6).删除END行。
  (7).删除MOM_set_seq_off行。
  (8).在M30行上面添加"定制命令",输入名称my_end_of_programm,编辑代码如下:
     MOM_output_literal "M5"
     MOM_output_literal "M9"
     MOM_output_literal "M82 (Unlock A Axis)"
     MOM_output_literal "M84 (Unlock C Axis)"
     MOM_output_literal "G91 G28 Z0."
     MOM_output_literal "G28 A0. C0."
     MOM_output_literal "G28 X0. Y0."
8.修改"工序开始序列->刀轨开始"事件":
  (1).添加"操作员消息"行,输入文本Opt_name: $mom_operation_name。
  (2).修改PB_CMD_reset_auto_detected_parameter行的代码内容如下:
     global dpp_opt_type
     set dpp_opt_type "NONE"
     RESET_DPP_VALUE
  (3).添加"定制命令"行,输入名称start_of_operation_addresses,编辑代码如下:
     MOM_force once M_spindle M_coolant S X Y Z F R fourth_axis fifth_axis
9.删除"工序开始序列->第一个刀具"事件中的所有行。
10.删除"工序开始序列->自动换刀"事件中的所有行。
11.删除"工序开始序列->手动换刀"事件中的所有行。
12.修改"工序开始序列->第一个刀具"事件:
  (1).添加"定制命令"行,输入名称change_first_tool,编辑代码如下:
     global mom_sys_leader saved_seq_num
     set saved_seq_num $mom_sys_leader(N)
     set mom_sys_leader(N) "N"
     MOM_output_literal "M82 (Unlock A Axis)"
     MOM_output_literal "M84 (Unlock C Axis)"
     MOM_output_literal "M5"
     MOM_output_literal "M9"
     MOM_output_literal "G91 G28 Z0."
     MOM_output_literal "G28 A0. C0."
     MOM_output_literal "G28 X0. Y0."
  (2).添加T M6行到PB_CMD_change_first_tool行下面。
  (3).添加"定制命令"行到T M6行下面,输入名称my_rcb_tool_info,编辑代码如下:
     global mom_tool_diameter mom_tool_name mom_tool_number
     global mom_tool_corner1_radius
     global mom_tool_flute_length
     global mom_tool_length
     global mom_event_handler_file_name
     global mom_operation_name
     global mom_stock_part mom_stock_floor
     global mom_sys_control_out mom_sys_control_in
     MOM_output_literal "(tool_name: $mom_tool_name\
               D=[format "%.2f" $mom_tool_diameter]\
               R=[format "%.2f" $mom_tool_corner1_radius]\
               L=[format "%.2f" $mom_tool_length])"
  (4).添加"定制命令"行到PB_CMD_my_rcb_tool_info行下面,输入名称end_of_alignment_character,编辑代码如下:
     global mom_sys_leader saved_seq_num
     if { [info exists saved_seq_num] } {
        set mom_sys_leader(N) $saved_seq_num
     }
  (5).添加T (Next Tool Ready)行到PB_CMD_end_of_alignment_character行下面,也就是备刀。
13.复制"工序开始序列->第一个刀具"事件中的所有行到"工序开始序列->自动换刀"事件中。
14.复制"工序开始序列->第一个刀具"事件中的所有行到"工序开始序列->手动换刀"事件中。
15.添加M0行到"工序开始序列->手动换刀"事件中的T M6行上面。
16.修改"工序开始序列->初始移动"事件:
  (1).删除IF(PB_CMD_subprogram_output_on)行。  
  (2).删除PB_CMD__subprogram_output_start行
  (3).删除END行。
  (4).删除G17 G97 G90 G行。
  (5).在PB_CMD_detect_tool_path_type行下面添加"定制命令"行,输入名称my_rcb_output_unlock_axis,编辑代码如下:
     MOM_output_literal "M82 (Unlock A Axis)"
     MOM_output_literal "M84 (Unlock C Axis)"
  (6).在PB_CMD_my_rcb_output_unlock_axis行下面添加mill_work_plane块,内容如下:
     G17 G0 G90 G(MCS Fixture Offset(54~59)) A C S M3
  (7).编辑G68.2 X Y Z I J K行输出条件PB_CMD_check_block_swiveling_coord_rot,编辑代码如下:
     global dpp_ge
     global mom_pos
     global dpp_opt_type
     if { $dpp_ge(toolpath_axis_num) == "3" && $dpp_ge(sys_coord_rotation_output_type) == "SWIVELING" } {
        set dpp_ge(coord_rot) [DPP_GE_COOR_ROT "ZXZ" angle offset pos]
        if { [string compare "NONE" $dpp_ge(coord_rot)] } {
           for { set i 0 } { $i<3 } { incr i } {
              if { [info exists offset] } {
                 set dpp_ge(coord_offset,$i) $offset($i)
              }
              if { [info exists angle] } {
                 set dpp_ge(coord_rot_angle,$i) $angle($i)
                 set dpp_ge(prev_coord_rot_angle,$i) $angle($i)
              }
              if { [info exists pos] } {
                 set mom_pos($i) $pos($i)
              }
           }
           MOM_reload_variable -a mom_pos
           MOM_do_template three_plus_two_suppress CREATE
           MOM_output_literal "(Opt_type: 3+2 Fixed Axis)"
           set dpp_opt_type "3+2X"
           return 1
        } else {
             MOM_output_literal "(Opt_type: 3 Axis)"
             set dpp_opt_type "3X"
             return 0
          }
     } else { # 5 axis toolpath output G68.2.
          if { $dpp_ge(toolpath_axis_num) == "5" } {
             set dpp_ge(coord_rot) [DPP_GE_COOR_ROT "ZXZ" angle offset pos]
             for { set i 0 } { $i<3 } { incr i } {
                if { [info exists offset] } {
                   set dpp_ge(coord_offset,$i) $offset($i)
                }
                if { [info exists angle] } {
                   set dpp_ge(coord_rot_angle,$i) $angle($i)
                   set dpp_ge(prev_coord_rot_angle,$i) $angle($i)
                }
                if { [info exists pos] } {
                   set mom_pos($i) $pos($i)
                }
             }
          }
          MOM_reload_variable -a mom_pos
          MOM_do_template three_plus_two_suppress CREATE
          MOM_output_literal "(Opt_type: 5 Axis RTCP)"
          set dpp_opt_type "5X"
          return 1
       }
     return 0
  (8).编辑G53.1行输出条件PB_CMD_check_block_auto_align_rotary_axis,编辑代码如下:
     global dpp_opt_type
     if { ![string compare "3+2X" $dpp_opt_type] } {
        return 1
     } elseif { ![string compare "5X" $dpp_opt_type] } {
          return 1
       }
     return 0
  (9).修改G00 A C行的内容为G0 G90 X Y。
  (10).为G0 G90 X Y行添加输出条件PB_CMD__check_block_initial_move_8,编辑代码如下:
      global dpp_ge
      global dpp_opt_type
      if { ![string compare "5X" $dpp_opt_type] && $dpp_ge(toolpath_axis_num) == "5" } {
         return 1
      }
      return 0

评分

参与人数 1G币 +10 收起 理由
3079872616 + 10 赞一个!

查看全部评分

1

主题

1113

回帖

1万

积分

中校

积分
10469
发表于 昨天 20:39 | 显示全部楼层
谢谢大佬  !!  

0

主题

1253

回帖

1万

积分

大校

积分
16704
发表于 昨天 21:58 | 显示全部楼层
谢谢大佬  !!

0

主题

87

回帖

438

积分

二级士官

积分
438
发表于 19 小时前 来自手机 | 显示全部楼层
这个可以  是复制来的吗哈哈哈

0

主题

6

回帖

14

积分

列兵

积分
14
发表于 11 小时前 | 显示全部楼层
膜拜大佬,虽然用不上!

16

主题

99

回帖

1841

积分

六级士官

积分
1841
发表于 11 小时前 | 显示全部楼层
大神,大义,能分享到这种地步,替大家谢谢您了。如果人人都像您一样无私奉献,就不会是现在这种谈起五轴后处理都不会的地步

4

主题

578

回帖

3682

积分

中尉

积分
3682
发表于 10 小时前 | 显示全部楼层
感谢分享

5

主题

145

回帖

5627

积分

上尉

积分
5627
发表于 9 小时前 | 显示全部楼层
谢谢大佬  !!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

咨询QQ:1359218528|发帖须知!|Archiver|手机版|小黑屋|UG爱好者论坛 ( 京ICP备10217105号-2 )

GMT+8, 2025-5-23 19:29

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表