找回密码
 立即注册

QQ登录

只需一步,快速开始

微信扫码登录

搜索
查看: 590|回复: 6

[分享] 关于后处理相同地址值模态和非模态冲突解决方法

[复制链接]

22

主题

249

回帖

1126

积分

六级士官

积分
1126
发表于 2025-7-27 17:31:12 | 显示全部楼层 |阅读模式
     本人学习研究后处理接近2年了,经常看到论坛有人提问G83的R值和圆弧R值,模态和非模态问题,设为模态,后面圆弧不输出R值,设为非模态,G83输出一大堆R值,现在给各位演示下解决方法,新人可以拿去参考下,大佬们勿喷
首先找到圆周移动,右击这个R值,更改单元,用户表达式,把里面的蓝色式子复制,$符号别漏了,然后把这个R值拖到垃圾桶立删除掉

上方选择一个新地址,按住添加文字,拖下来

然后把刚才复制的式子粘贴到最下方的表达式里面,文字名称设为R_1(其它名字也行,但不要和其它字符冲突,最好下划线加数字)
引导符为R,最小值0.01(如果圆弧低于这个值不输出,可以根据实际情况设定),最大值9999就行了,如果是干大件的,设到99999
模态设为否,然后保存就行了               (或者设为模态也可以,但是保存后右击R值必须设为强制输出),我自己设的模态,用的强制输出


完美解决问题,普通三轴和四轴基本没有问题了


最后:五轴上面,如果新建的地址值多了,依旧会冲突,还是这个R值为例,另外一个方法是,新建的R值放到G83上面,不管模态还是非模态,
在刀轨开始上面添加强制输出一次也可以解决

不能一次发多张图太难受
1.png
2.png


评分

参与人数 1G币 +50 收起 理由
3D世界网-零 + 50 分享加分!

查看全部评分

0

主题

58

回帖

2155

积分

少尉

积分
2155
发表于 2025-7-27 18:16:36 来自手机 | 显示全部楼层
学习一下

5

主题

925

回帖

3684

积分

中尉

积分
3684
发表于 2025-7-28 11:45:25 | 显示全部楼层
学习一下大佬的思路

1

主题

487

回帖

1143

积分

六级士官

积分
1143
发表于 2025-8-5 10:34:32 | 显示全部楼层
谢谢分享

11

主题

242

回帖

1125

积分

六级士官

积分
1125
发表于 5 天前 | 显示全部楼层
大佬,工件名跟程序名不一致时,终止后处理,有什么代码可以实现
QQ拼音截图未命名.png

22

主题

249

回帖

1126

积分

六级士官

积分
1126
 楼主| 发表于 4 天前 来自手机 | 显示全部楼层
xjc* 发表于 2025-10-21 21:24
大佬,工件名跟程序名不一致时,终止后处理,有什么代码可以实现

有的,先声明程序名称和工件名称的全局变量,在用set将两者分别赋值任意字符,再用campare语句比较两者,再用if{![string  campare 两者赋值的字符]}判断结果,相同就输出,不相同就用else   MOM_abort终止后处理输出

11

主题

242

回帖

1125

积分

六级士官

积分
1125
发表于 3 天前 | 显示全部楼层
绮梦 发表于 2025-10-22 21:51
有的,先声明程序名称和工件名称的全局变量,在用set将两者分别赋值任意字符,再用campare语句比较两者, ...

proc MOM_start_of_program { } {
#=============================================================
  global mom_logname mom_date is_from
  global mom_coolant_status mom_cutcom_status
  global mom_clamp_status mom_cycle_status
  global mom_spindle_status mom_cutcom_plane pb_start_of_program_flag
  global mom_cutcom_adjust_register mom_tool_adjust_register
  global mom_tool_length_adjust_register mom_length_comp_register
  global mom_flush_register mom_wire_cutcom_adjust_register
  global mom_wire_cutcom_status
  global mom_program_name
  global mom_part_name

    set pb_start_of_program_flag 0
    set mom_coolant_status UNDEFINED
    set mom_cutcom_status  UNDEFINED
    set mom_clamp_status   UNDEFINED
    set mom_cycle_status   UNDEFINED
    set mom_spindle_status UNDEFINED
    set mom_cutcom_plane   UNDEFINED
    set mom_wire_cutcom_status  UNDEFINED

    catch {unset mom_cutcom_adjust_register}
    catch {unset mom_tool_adjust_register}
    catch {unset mom_tool_length_adjust_register}
    catch {unset mom_length_comp_register}
    catch {unset mom_flush_register}
    catch {unset mom_wire_cutcom_adjust_register}

    set is_from ""
安全获取程序名和工件名(原始值)[color=var(--md-box-body-color,var(--md-box-global-text-color))]set raw_prog_name ""
set raw_part_name ""
if { [catch { set prog_name $mom_program_name }] } { set prog_name "UNKNOWN_PROG" }
if { [catch { set part_name $mom_part_name }] } { set part_name "UNKNOWN_PART" }

标准化名称[color=var(--md-box-body-color,var(--md-box-global-text-color))]set prog_name [regsub -all {[^A-Z0-9]} [string trim [string toupper $prog_name]] ""]
set part_name [regsub -all {[^A-Z0-9]} [string trim [string toupper $part_name]] ""]

调试输出,确认原始值和标准化后的值[color=var(--md-box-body-color,var(--md-box-global-text-color))]MOM_output_literal "(调试:原始程序名 =原始工件名raw_part_name)\n"
MOM_output_literal "(调试:处理后程序名 =工件名part_name)\n"

修改条件判断,比较原始值(如果希望如此)或者保持比较标准化后的值,但确保标准化过程正确[color=var(--md-box-body-color,var(--md-box-global-text-color))]if { [string compare $prog_name [color=red !important]part\_name] != 0 } { MOM\_output\_literal "(错误:程序名称与工件名称不符!原始程序名:raw_prog_name,原始工件名:$raw_part_name)\n"
MOM_abort "后处理终止:程序名与工件名必须一致"
}
    catch { OPEN_files } ;# Open warning and listing files
    LIST_FILE_HEADER     ;# List header in commentary listing



  global mom_sys_post_initialized
  if { $mom_sys_post_initialized > 1 } { return }


  set ::mom_sys_start_program_clock_seconds [clock seconds]

   # Load parameters for alternate output units
    PB_load_alternate_unit_settings
    rename PB_load_alternate_unit_settings ""


#************
帮我看看,加了后处理失败,哪里语法有问题,谢谢
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-10-26 12:12

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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