找回密码
 立即注册

QQ登录

只需一步,快速开始

微信扫码登录

搜索
查看: 8561|回复: 23

[分享] 分享一段代码

[复制链接]

20

主题

261

回帖

8414

积分

少校

积分
8414
发表于 2024-2-1 15:57:07 | 显示全部楼层 |阅读模式
本帖最后由 tombai691019 于 2024-2-1 17:33 编辑

在旧版后处理构造器中可以加代码使每个工序都输出换刀命令,在换刀命令后面可以写代码输出Zmax,Zmin等。现在玩PC的少了,新版后理配置器中怎么在每个工序都输出换刀命令,并在换刀命令后输出Zmax,Zmin,刀号,刀具直径及刀补信息。这样可以使程序更容易看懂,每个工序都是什么刀具在加工及刀补信息。这里分享可以实现这个功能的代码。与旧版构造器相比,实现相同功能,后处理配置更方便,代码相对来说简单一些(把代码粘上来)
代码段1
MOM_do_template tool_change
global mom_tool_name zmin zmax Tnumber Tname  Tdd Tddd d_cutcom xystock zstock mom_stock_floor mom_stock_type mom_operstion_type mom_stock_part mom_tool_type tool_type
set zmin     [LIB_SPF_get_pretreatment limit,z,min 0 ]
set zmax     [LIB_SPF_get_pretreatment limit,z,max 0 ]
set Tnumber  [LIB_SPF_get_pretreatment mom_tool_number 0 ]
set Tname    [LIB_SPF_get_pretreatment mom_tool_name 0 ]
set Tdd      [LIB_SPF_get_pretreatment mom_tool_cutcom_register 0 ]
set d_cutcom [LIB_SPF_get_pretreatment mom_cutcom_type 0 ]
set tool_type [LIB_SPF_get_pretreatment mom_tool_type 0 ]

if { $d_cutcom == 0 } {
   set Tddd "D-"
} else {
  set Tddd "D$Tdd"
}
MOM_output_literal "([format "%-2s %-3s %-3s %-10s %-7s" T$Tnumber $Tname $Tddd Zmin=$zmin Zmax=$zmax])"

if {$mom_tool_type == "Drilling Tool"} {
      set xystock 0
      set zstock  0
} else {
if { [info exists mom_stock_part]} {
          set xystock  [LIB_SPF_get_pretreatment mom_stock_part 0 ]        
    }

if {[info exists mom_stock_floor]} {
if {[info exists mom_stock_part_use]} {
if { $mom_stock_part_use == 1} {
#底部余量:
set zstock   [LIB_SPF_get_pretreatment mom_stock_part 0]
  return
}
}
#底部余量:
set zstock   [LIB_SPF_get_pretreatment mom_stock_floor 0]
}
MOM_output_literal "(XYstock=[format "%.2f" $xystock],Zstock= [format "%.2f" $zstock ])"
#MOM_do_template tool_change
}


代码段2
proc MOM_first_move_LIB_ENTRY {position} {
   switch -- $position {
      "start"
      {      
        #Your code before the event goes here
         MOM_force once T
         MOM_do_template tool_change
        global mom_tool_name zmin zmax Tnumber Tname  Tdd Tddd d_cutcom xystock zstock mom_stock_floor mom_stock_type mom_operstion_type mom_stock_part mom_tool_type tool_type
             set zmin     [LIB_SPF_get_pretreatment limit,z,min 0 ]
             set zmax     [LIB_SPF_get_pretreatment limit,z,max 0 ]
             set Tnumber  [LIB_SPF_get_pretreatment mom_tool_number 0 ]
             set Tname    [LIB_SPF_get_pretreatment mom_tool_name 0 ]
             set Tdd      [LIB_SPF_get_pretreatment mom_tool_cutcom_register 0 ]
             set d_cutcom [LIB_SPF_get_pretreatment mom_cutcom_type 0 ]
             set tool_type [LIB_SPF_get_pretreatment mom_tool_type 0 ]
        if { $d_cutcom == 0 } {
                      set Tddd "D-"
           } else {
                set Tddd "D$Tdd"
           }
          MOM_output_literal "([format "%-2s %-3s %-3s %-10s %-7s" T$Tnumber $Tname $Tddd Zmin=$zmin Zmax=$zmax])"

         if {$mom_tool_type == "Drilling Tool"} {
            set xystock 0
            set zstock  0
         } else {
         if { [info exists mom_stock_part]} {
            set xystock  [LIB_SPF_get_pretreatment mom_stock_part 0 ]        
         }

        if {[info exists mom_stock_floor]} {
        if {[info exists mom_stock_part_use]} {
        if { $mom_stock_part_use == 1} {
#底部余量:
            set zstock   [LIB_SPF_get_pretreatment mom_stock_part 0]
       return
       }
       }
#底部余量:
            set zstock   [LIB_SPF_get_pretreatment mom_stock_floor 0]
       }
        MOM_output_literal "(XYstock=[format "%.2f" $xystock],Zstock= [format "%.2f" $zstock ])"
#MOM_do_template tool_change
       }
         MOM_force once G_motion G_mysys G_mode G_adjust H S M M_spindle M_coolant Z X Y T F_mytap Q_mytap
         MOM_do_template rapid_move_first_move
         #MOM_force once G_adjust H S M M_spindle M_coolant Z X Y T
         MOM_do_template rapid_move_first_G43

      }
      "end"
      {
         #Your code after the event goes here
         # MOM_force once T
         #MOM_do_template tool_change
         #MOM_force once G_motion G_mode G_adjust H S M M_spindle M_coolant Z X Y T
        #MOM_do_template rapid_move_first_move
         #MOM_force once G_adjust H S M M_spindle M_coolant Z X Y T
        # MOM_do_template rapid_move_first_G43
      }
   }
}


后处理结果.png
后处理结果2.png
程序头也输出刀单信息.png

108

主题

4249

回帖

3万

积分

Administrator

积分
35805
发表于 2024-2-1 15:59:39 | 显示全部楼层
代码是不是忘了上了?

20

主题

261

回帖

8414

积分

少校

积分
8414
 楼主| 发表于 2024-2-1 16:02:40 | 显示全部楼层
3D世界网-零 发表于 2024-2-1 15:59
代码是不是忘了上了?

在编辑,这么快就看到了{:smile:}

0

主题

1187

回帖

1万

积分

大校

积分
16770
发表于 2024-2-1 17:32:38 | 显示全部楼层
能否分享文档,谢谢

6

主题

199

回帖

6083

积分

上尉

积分
6083
发表于 2024-2-1 22:54:22 | 显示全部楼层
放在哪里哦我的怎么报警

6

主题

656

回帖

9319

积分

少校

积分
9319
发表于 2024-2-2 08:29:35 | 显示全部楼层
这个要顶的,老铁有爱啊{:}{:}{:}

20

主题

261

回帖

8414

积分

少校

积分
8414
 楼主| 发表于 2024-2-2 08:58:37 | 显示全部楼层
本帖最后由 tombai691019 于 2024-2-2 09:07 编辑
又一年* 发表于 2024-2-1 22:54
放在哪里哦我的怎么报警

要根自已的后处理做适当修改,由于我的后处理里面定义了一些内容与你的后处理可能不一样,可能会错,分享的代码是可以实现的方法。可以做适当修改可用。新版后处理配置器与构造器不同,需要放在一个文件中,位置可以调试,你的后处理是用配置器做的可以发上来帮你看看。

20

主题

261

回帖

8414

积分

少校

积分
8414
 楼主| 发表于 2024-2-2 09:08:40 | 显示全部楼层
謎謎謎 发表于 2024-2-1 17:32
能否分享文档,谢谢

后面会分享文档

7

主题

258

回帖

2012

积分

少尉

积分
2012
发表于 2024-2-3 10:32:40 | 显示全部楼层
感谢分享{:}{:}

5

主题

234

回帖

5206

积分

上尉

积分
5206
发表于 2024-2-4 10:53:00 | 显示全部楼层
技术活,谢谢分享
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-1-5 08:00

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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