找回密码
 立即注册

QQ登录

只需一步,快速开始

微信扫码登录

搜索
查看: 14902|回复: 22

关于后处理程序头的刀具列表问题请教

[复制链接]

22

主题

193

回帖

1592

积分

六级士官

积分
1592
发表于 2015-9-3 20:48:35 | 显示全部楼层 |阅读模式
23456.png 请问怎么修改才能使后处理处理出来的程序里没有红圈里的内容(就是把红圈里的数据去掉)



怎么修改下面的文件呢、
#  Place this custom command in either the start of program
#  or the end of program event marker to generate a tool list
#  in your NC file.
#
#  The Shop Doc template file "pb_post_tool_list.tpl" distributed with
#  Post Builder in "POSTBUILD/pblib/misc" directory can be copied
#  to the "mach/resource/postprocessor" or "mach/resource/shop_docs" directory,
#  in case that your UG runtime environment does not have access to the
#  Post Builder installation.
#
#  Accessing "pb_post_tool_list.tpl" in other location can also be accomplished
#  by changing the code below titled "Generate tool list data" in this proc.
#
#  The variable "mom_sys_tool_list_output_type" set in this proc allows you
#  to select the type of tool list to be generated.
#  The options are:
#
#   "ORDER_IN_USE"     - List tools used in the program in the order of operations.
#   "ALL_UNIQUE"       - List all unique tools once for each in the order of use.
#   "GROUP_BY_TYPE"    - List tools in groups of different tool types.
#
# The desired tool list type can be set by changing the code below.
# The default is set to "GROUP_BY_TYPE".
#
   global mom_sys_tool_list_initialized
   global mom_sys_tool_list_output_type

   if { ![info exists mom_sys_tool_list_initialized] || !$mom_sys_tool_list_initialized } {
      MOM_output_to_listing_device "proc PB_CMD_init_tool_list must be executed in the\
                                    Start of Program before PB_CMD_create_tool_list is called."
return
   }

  #++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  # Set mom_sys_tool_list_output_type to the desired output fashion.
  #
  #   "ORDER_IN_USE"     - List tools used in the program in the order of operations.
  #   "ALL_UNIQUE"       - List all unique tools once for each in the order of use.
  #   "GROUP_BY_TYPE"    - List tools in groups of different tool types.
  #
  #++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  # set mom_sys_tool_list_output_type "ORDER_IN_USE"
  # set mom_sys_tool_list_output_type "ALL_UNIQUE"
   set mom_sys_tool_list_output_type "GROUP_BY_TYPE"

   global mom_sys_control_out mom_sys_control_in
   global current_program_name
   global mom_tool_number mom_tool_length_adjust_register mom_tool_name

  #----------------------------------------------------------------------------
  # Save info for the currently active tool in the program being post-prcessed
  # before starting Shop Doc mechanism for tool list generation.
  #----------------------------------------------------------------------------
   if [llength [info commands PB_CMD_save_active_oper_tool_data] ] {
      PB_CMD_save_active_oper_tool_data
   }

  #-----------------------------------------------------------
  # Create tool list per selected top-level group.
  # Group name is set to blank if no group has been selected.
  #-----------------------------------------------------------
   global mom_parent_group_name
   if [info exists mom_parent_group_name] {
      set current_program_name $mom_parent_group_name
   } else {
      set current_program_name ""
   }

   set ci " "
   set co " "
   if [info exists mom_sys_control_in] { set ci $mom_sys_control_in }
   if [info exists mom_sys_control_out] { set co $mom_sys_control_out }

  #*************************
  # Generate tool list data
  #*************************
   set template_file pb_post_tool_list.tpl
   global tcl_platform
   if [string match "windows" $tcl_platform(platform)] {
      set pb_lib_misc_dir [MOM_ask_env_var UGII_BASE_DIR]\\postbuild\\pblib\\misc\\
   } else {
      set pb_lib_misc_dir [MOM_ask_env_var UGII_BASE_DIR]/postbuild/pblib/misc/
   }
   set cam_post_dir     [MOM_ask_env_var UGII_CAM_POST_DIR]
   set cam_shop_doc_dir [MOM_ask_env_var UGII_CAM_SHOP_DOC_DIR]
   if { [file exists ${pb_lib_misc_dir}${template_file}] } {
      MOM_do_template_file ${pb_lib_misc_dir}${template_file}
   } elseif { [file exists ${cam_post_dir}${template_file}] } {
      MOM_do_template_file ${cam_post_dir}${template_file}
   } elseif { [file exists ${cam_shop_doc_dir}${template_file}] } {
      MOM_do_template_file ${cam_shop_doc_dir}${template_file}
   } else {
      MOM_output_to_listing_device \
         "ERROR : Template file $template_file is not found in the following directories:\
          \n\
          \n          $pb_lib_misc_dir\
          \n          $cam_post_dir\
          \n          $cam_shop_doc_dir\
          \n\
          \n        Tool list cannot be generated.\n"
return
   }

  #------------------
  # Tool list header
  #------------------
   shop_doc_output_literal "$co===============================================================================================$ci"
   shop_doc_output_literal "$co                                   T O O L   L I S T                                           $ci"
   shop_doc_output_literal "$co===============================================================================================$ci"

  #------------------
  # Output tool list
  #------------------
   global tool_data_buffer
   global mom_sys_tool_stack
   switch $mom_sys_tool_list_output_type {
      "ORDER_IN_USE" {
         set tool_list $mom_sys_tool_stack(IN_USE)
      }
      "GROUP_BY_TYPE" {
         set tool_list [concat $mom_sys_tool_stack(LATHE) \
                               $mom_sys_tool_stack(DRILL) \
                               $mom_sys_tool_stack(MILL)]
      }
      default {
         set tool_list $mom_sys_tool_stack(ALL)
      }
   }

   set prev_tool_type ""
   foreach tool $tool_list {
      set tool_type $tool_data_buffer($tool,type)
     # Output tool type header if it changes.
      if { ![string match "$tool_type" $prev_tool_type] } {
         if { [info exists tool_data_buffer($tool_type,header)] && \
              [string length $tool_data_buffer($tool_type,header)] != 0 } {
            shop_doc_output_literal "$tool_data_buffer($tool_type,header)"
         }
      }
      if [info exists tool_data_buffer($tool,output)] {
         shop_doc_output_literal "$tool_data_buffer($tool,output)"
      }
      set prev_tool_type $tool_type
   }

  #------------------
  # Tool list footer
  #------------------
   shop_doc_output_literal "$co===============================================================================================$ci"

  #-------------------------------------------------------------------------------
  # Restore info for the currently active tool in the program being post-prcessed.
  #-------------------------------------------------------------------------------
   if [llength [info commands PB_CMD_restore_active_oper_tool_data] ] {
      PB_CMD_restore_active_oper_tool_data
   }

10

主题

335

回帖

1553

积分

六级士官

积分
1553
发表于 2018-8-6 20:22:04 | 显示全部楼层
UG后置处理——输出加工信息(最大最小值)在程序头
最大最小值和加工时间等信息一般只有在程序最后才能输出,因为必须每一条刀轨计算后才能输出。而为了将这些信息在程序头输出,我们可以用文件操作,在proc MOM_end_of_program中增加以下代码,先输出最大最小值,然后再将原文件中已经输出的代码重新写入此文件。
global ptp_file_name
global tmp_file_name

set tmp_file_name "${ptp_file_name}_"
if {[file exists $tmp_file_name]} {
MOM_remove_file $tmp_file_name
}
MOM_close_output_file $ptp_file_name

file rename $ptp_file_name $tmp_file_name
set ifile [open $tmp_file_name r]
set ofile [open $ptp_file_name w]

global mom_sys_max_travel
global mom_sys_min_travel
puts $ofile "( Max X = $mom_sys_max_travel(0)   MIN X = $mom_sys_min_travel(0) )"
puts $ofile "( Max Y = $mom_sys_max_travel(1)   MIN Y = $mom_sys_min_travel(1) )"
puts $ofile "( Max Z = $mom_sys_max_travel(2)   MIN Z = $mom_sys_min_travel(2) )"

set buf ""
while { [gets $ifile buf] > 0 } {
puts $ofile $buf
}
close $ifile
close $ofile
MOM_remove_file $tmp_file_name
MOM_open_output_file $ptp_file_name
输出加工时间原理和这个一样,只要把灰显的代码改为puts $ofile "( machine time = $mom_machine_time )" 就可以了

2

主题

155

回帖

2086

积分

少尉

积分
2086
发表于 2017-1-5 20:57:24 | 显示全部楼层
都是伸手党 没有下文了,{:}{:}{:}

22

主题

193

回帖

1592

积分

六级士官

积分
1592
 楼主| 发表于 2015-9-15 12:44:43 | 显示全部楼层
wjm2118 发表于 2015-9-14 10:30
把你后处理发给我。我给你改,是这样的吗??

能不能 在刀具列表里 加个 D和H啊?》

12

主题

410

回帖

4066

积分

中尉

积分
4066
发表于 2015-9-14 10:30:37 | 显示全部楼层
把你后处理发给我。我给你改,是这样的吗??
截图1442197717.png

518

主题

4337

回帖

9万

积分

超级版主

积分
93156
发表于 2015-9-4 09:06:42 | 显示全部楼层
可以改,不过有点复杂

22

主题

193

回帖

1592

积分

六级士官

积分
1592
 楼主| 发表于 2015-9-15 12:42:56 | 显示全部楼层
wjm2118 发表于 2015-9-14 10:30
把你后处理发给我。我给你改,是这样的吗??

麻烦啦!@

Fanuc-M.zip

36.64 KB, 下载次数: 312, 下载积分: G币 -1

12

主题

410

回帖

4066

积分

中尉

积分
4066
发表于 2015-9-17 19:15:20 | 显示全部楼层
ccchhh 发表于 2015-9-15 12:44
能不能 在刀具列表里 加个 D和H啊?》

可以的

12

主题

410

回帖

4066

积分

中尉

积分
4066
发表于 2015-9-17 19:15:52 | 显示全部楼层

把刀具清单格式给我

22

主题

193

回帖

1592

积分

六级士官

积分
1592
 楼主| 发表于 2015-9-18 08:08:32 | 显示全部楼层
wjm2118 发表于 2015-9-17 19:15
把刀具清单格式给我

麻烦啦  顺序无所谓的 !

刀具列表格式.zip

253 Bytes, 下载次数: 335, 下载积分: G币 -1

12

主题

410

回帖

4066

积分

中尉

积分
4066
发表于 2015-10-28 18:26:05 | 显示全部楼层
ccchhh 发表于 2015-9-18 08:08
麻烦啦  顺序无所谓的 !

你的后处理呢?

22

主题

193

回帖

1592

积分

六级士官

积分
1592
 楼主| 发表于 2015-10-31 16:05:01 | 显示全部楼层

在三楼呢 谢谢
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-2-1 13:02

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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