找回密码
 立即注册

QQ登录

只需一步,快速开始

微信扫码登录

搜索
查看: 1011|回复: 6

[原创] 手把手教你制作UG四五轴宏联动后处理(二)

[复制链接]

54

主题

138

回帖

1661

积分

六级士官

积分
1661
发表于 2025-12-26 06:44:47 | 显示全部楼层 |阅读模式

(三).制作五轴双转台AC宏联动后处理:

友情提醒:在制作后处理前,建议你学习一下TCL脚本编程语言。

1.打开NX后处理构造器,新建一个后处理。

2.输入后处理名称Jia5xAC,选中主后处理,后处理输出单位选择毫米,

   机床选择5轴带双转台,控制器选择一般,点击确定。

3.在"机床"选项卡中,选择左侧"第四轴"选项,将"轴限制(度)->最大值"改成20,

  "轴限制(度)->最小值"改成-110,轴限制可以根据具体机床设置。

   点击"选择轴->配置"按钮,将"第五轴转台->旋转平面"改成XY,将"文字引导符"改成C,

   将"最大进给率(度/分)"改成1000,将"线性插值->旋转角度->默认公差"改成0.001,点击确定。

4.在"机床"选项卡中,选择左侧"第五轴"选项,将"轴限制(度)->最大值"改成360,

  "轴限制(度)->最小值"改成0,轴限制可以根据具体机床设置。

5.在"程序和刀轨"选项卡中,选择左侧"程序起始序列"选项,右侧出现"程序开始"事件页面:

  (1).点击定制命令PB_CMD___log_revisions,输入如下TCL代码:

      #变量dpp_path_type用来判断工序刀路类型:三轴/定轴/五轴联动

      global dpp_path_type

      global dpp_flag

      set dpp_path_type "NONE"

      set dpp_flag 0

      点击确定。

  (2).删除MOM_set_seq_on行。

  (3).将G40 G17 G90 G71条目内容改成G17 G40 G80 G69 G49 G94 G90。

  (4).在G17 G40 G80 G69 G49 G94 G90行下面添加定制命令行,

      输入名称PB_CMD_init_macro,输入以下TCL代码:

      MOM_output_literal "#101=#5261-#5241"

      MOM_output_literal "#102=#5262-#5242"

      MOM_output_literal "#103=#5263-#5243"

      点击确定。

6.在"程序和刀轨"选项卡中,选择左侧"工序起始序列"选项:

  (1).将"刀轨开始"事件下的定制命令PB_CMD_start_of_operation_force_adress

      里面的内容改成如下TCL代码:

      global dpp_flag

      MOM_force once S M_spindle X Y Z fourth_axis fifth_axis F

      if { $dpp_flag != 0 } {

         MOM_output_literal "M1"

      }

      点击确定。

  (2).在PB_CMD_start_of_operation_force_adress行下面添加操作员消息行,

      输入"工序: $mom_operation_name"(双引号无需输入),点击确定。

  (3).复制"自动换刀"事件下的PB_CND_tool_change_force_adress行到"第一个刀具"事件下面。

  (4).在"第一个刀具"事件下的PB_CND_tool_change_force_adress行下面添加MOM_set_seq_on行。

  (5).在"第一个刀具"事件下的MOM_set_seq_on行下面添加T M6行。

  (6).在"第一个刀具"事件下的T M6行下面添加MOM_set_seq_off行。   

  (7).在"第一个刀具"事件下的MOM_set_seq_off行下面添加操作员消息行,

      输入"刀具: $mom_tool_name"(双引号无需输入),点击确定。

  (8).在"第一个刀具"事件下的"刀具: $mom_tool_name"行下面添加备刀T行。

  (9).将"自动换刀"事件下的G91 G28 Z0.行内容改成G91 G28 Z0. M9。

  (10).在"自动换刀"事件下的G91 G28 Z0. M9行下面添加G91 G28 X0. Y0. M5行。

  (11).在"自动换刀"事件下的T M6行上面添加MOM_set_seq_on行。

  (12).在"自动换刀"事件下的T M6行下面添加MOM_set_seq_off行。

  (13).在"自动换刀"事件下的MOM_set_seq_off行下面添加操作员消息行,

      输入"刀具: $mom_tool_name"(双引号无需输入),点击确定。

  (14).在"自动换刀"事件下的"刀具: $mom_tool_name"行下面添加备刀T行。

  (15).在"初始移动"事件下添加定制命令行,输入名称PB_CMD_detect_tool_path_type,

       编辑TCL代码如下:

       global dpp_flag

       global mom_out_angle_pos

       global mom_tool_axis_type

       global mom_tool_path_type

       global mom_operation_type

       set dpp_flag 1

       if { ![info exists mom_tool_axis_type] } {

          set mom_tool_axis_type 0

       }

       if { ![info exists mom_tool_path_type] } {

          set mom_tool_path_type "undefined"

       }

       if { ($mom_tool_axis_type >= 2 && [string match "Variable-axis *" $mom_operation_type]) ||\

           ![string compare "Sequential Mill Main Operation" $mom_operation_type] || \

           (![string compare "variable_axis" $mom_tool_path_type] &&\

           ![string match "Variable-axis *" $mom_operation_type]) } {

         set dpp_path_type "5X"

      } else {

          set dpp_path_type "3X"

        }

      点击确定。

  (16).将PB_CMD_detect_tool_path_type行复制到"第一次移动"事件下。

未完待续。。。。。。



0

主题

641

回帖

1948

积分

六级士官

积分
1948
发表于 2025-12-26 09:17:04 | 显示全部楼层
谢谢分享

2

主题

539

回帖

9022

积分

少校

积分
9022
发表于 2025-12-26 15:21:21 | 显示全部楼层
大师威武。。。

2

主题

1959

回帖

8941

积分

少校

积分
8941
发表于 2026-1-2 15:52:55 | 显示全部楼层
厉害了,楼主用心了,收藏学习

7

主题

214

回帖

3612

积分

中尉

积分
3612
发表于 2026-1-5 16:51:37 | 显示全部楼层
我是小白。问下G69怎么输入,没找到

54

主题

138

回帖

1661

积分

六级士官

积分
1661
 楼主| 发表于 2026-1-7 08:17:27 | 显示全部楼层
本帖最后由 Tualar 于 2026-1-7 08:19 编辑
tyyxz 发表于 2026-1-5 16:51
我是小白。问下G69怎么输入,没找到

文本元素

南京六合标子
二十年五轴师傅

26

主题

350

回帖

9106

积分

少校

积分
9106
发表于 2026-1-7 16:57:07 | 显示全部楼层
本帖最后由 tombai691019 于 2026-1-7 17:00 编辑

大师你好。按照你说的方法制作了后处理,后处理处理到线性块时出现报错:MOM given an invalid expression in a block template;MOM: Invalid address expression: $mom_cutcom_adjust_register。就是线性块中有变量D01。把变量去掉就不报警了。如果把线性块中的D01去掉,如果程序中有刀补怎么处理?看了你的后处理里面线性块中有变量D01,但用你的后处理不报警。看了很久也没发现我制作的后处理有什么不同。后来想着是不是你的RTCP计算中用到了变量D1,后把此变量名称改成别的名称还是出现同样的报警。不知道什么原因。大师有没有遇到这样的问题?怎么解决?附上我制作的后处理,希望指正,谢谢!

new_5x_bc_post.rar

57.73 KB, 下载次数: 4, 下载积分: G币 -1

1

主题

497

回帖

1万

积分

中校

积分
10012
发表于 2026-1-8 15:26:56 | 显示全部楼层
谢谢楼主
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-2-21 13:18

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

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