UG爱好者

标题: 钻孔高度错误引起的撞机以及防错方案 [打印本页]

作者: snowa*    时间: 2024-8-11 23:07
标题: 钻孔高度错误引起的撞机以及防错方案
前几天因为编程没有细心检查 ,复制上一步的刀路。导致钻孔的避让平面设置在了负方向。引起了撞机事故

为了避免此类事故再次发生,写了一个检查程序,具体思路是

首先在快速移动的模块里面添加一个定制语句,读取当前刀路的安全高度值
也就是G43H00Z00里的Z值
global mom_pos zz
set zz [format %.2f $mom_pos(2)]


然后在现成循环的第一项里添加定制命令
global zz mom_operation_name mom_cycle_rapid_to_pos
if {$zz < $mom_cycle_rapid_to_pos(2)} {
MOM_output_to_listing_device "程序名称:$mom_operation_name,钻孔安全高度$zz小于起始高度$mom_cycle_rapid_to_pos(2)!"
set msg [MOM_display_message 程序名称:$mom_operation_name,钻孔安全高度$zz小于起始高度$mom_cycle_rapid_to_pos(2)! 后处理消息: I 中止后处理]
    switch $msg {
        1 {
            MOM_abort 中止
        }
    }
}



这样当我们把不小心避让高度设置到负方向的时候就会报警,阻止后处理输出
不足的地方还请各位大佬斧正!


作者: yangam99*    时间: 2024-8-12 00:19
666学以致用
作者: jhuⅰ    时间: 2024-8-12 07:56
这个可以的,点赞一个。
作者: woni101    时间: 2024-8-12 08:01
支持楼主
作者: tvkthomas    时间: 2024-8-12 08:11
学习了,感谢分享!
作者: xx1314365    时间: 2024-8-12 08:13
新手不会,可否再详细一点,用图片说明一下添加定制命令步骤
作者: gxw515    时间: 2024-8-12 08:52
666666
作者: asdqq2000    时间: 2024-8-12 10:21
在定向四轴上面能用这个吗?如果能用就好了。
作者: Benking7758    时间: 2024-8-12 16:01
很不错,减少出错率,
作者: 32212110    时间: 2024-8-12 16:11

这个可以的,点赞一个。
作者: 2009.YE    时间: 2024-8-12 16:20
这个可以的,点赞一个。我也遇到过这种问题
作者: snowa*    时间: 2024-8-12 19:40
发一个具体的添加办法以及测试后处理

1.png (32.62 KB, 下载次数: 13)

1.png

2.png (38.72 KB, 下载次数: 13)

2.png

Desktop.zip

33.22 KB, 下载次数: 84, 下载积分: G币 -1


作者: 诸葛无忧    时间: 2024-8-12 20:37
好知识,楼主有心,学习了
作者: lsw8210    时间: 2024-8-13 08:28
666666666666666
作者: smilface    时间: 2024-8-13 09:46
这个可以的,点赞一个。
作者: xingwanqing2018    时间: 2024-8-13 20:39
楼主你好,如果想要安全高度和起始高度一样也报警呢,要改哪里,我把<改成==但是不报警呢
作者: 56078272*    时间: 2024-8-13 21:21
好人一生平安。
作者: Bridge_︻︻︻︻    时间: 2024-8-13 21:28
原来起始高度就是R平面呀?低于R平面肯定不行
作者: linglyj    时间: 2024-8-14 21:12
这个可以的,点赞一个  避让平面从来不用  
作者: snowa*    时间: 2024-8-14 21:33
linglyj 发表于 2024-8-14 21:12
这个可以的,点赞一个  避让平面从来不用

以前也不用的,现在用外挂,他有时候会自动选避让。复制了刀路引起的失误
作者: 15967891762    时间: 2024-8-14 21:41
学习了,感谢分享!
作者: reborntoo    时间: 2024-8-15 08:01


这个可以的,点赞一个。
作者: 钢板怼穿    时间: 2024-8-15 09:27
66666666
作者: pmjxc    时间: 2024-8-15 10:26
asdqq2000 发表于 2024-8-12 10:21
在定向四轴上面能用这个吗?如果能用就好了。

可以用,我都加上了
作者: 不善言谈    时间: 2024-8-15 10:49
老哥,牛,学习
作者: NX编程小学生    时间: 2024-8-15 14:37
xx1314365 发表于 2024-8-12 08:13
新手不会,可否再详细一点,用图片说明一下添加定制命令步骤

这个都不会就不用学了,直接拿过来用就行了。后处理制作不太熟悉的话就用现成的吧,你自己改出错的几率太大了!
作者: snowa*    时间: 2024-8-15 22:16
xingwanqing2018 发表于 2024-8-13 20:39
楼主你好,如果想要安全高度和起始高度一样也报警呢,要改哪里,我把<改成==但是不报警呢

!>  小于等于应该理解为不大于
作者: Bridge_︻︻︻︻    时间: 2024-8-16 06:43
用在四轴上如果起始高度和安全高度一样,会因为一些小数保留位数的原因发生报警,这个怎么解决呀?

A.png (14.71 KB, 下载次数: 3)

A.png

作者: pmjxc    时间: 2024-8-16 10:56
snowa* 发表于 2024-8-12 19:40
发一个具体的添加办法以及测试后处理

我按你的方法加到自己后处理里面了,用了两天后发现一个问题,三轴的话假如用到侧铣头的话,就会报警,所以应该在语句上再加上一个判断平面的,这样侧铣头钻孔时就不会报警了
作者: pmjxc    时间: 2024-8-16 11:20
Bridge_︻︻︻︻ 发表于 2024-8-16 06:43
用在四轴上如果起始高度和安全高度一样,会因为一些小数保留位数的原因发生报警,这个怎么解决呀?

只取后四位就可以了,不用这么多位数
作者: snowa*    时间: 2024-8-16 14:14
Bridge_︻︻︻︻ 发表于 2024-8-16 06:43
用在四轴上如果起始高度和安全高度一样,会因为一些小数保留位数的原因发生报警,这个怎么解决呀?

if {$zz < [format %.2f $mom_cycle_rapid_to_pos(2)] } {
都取2位小数对比
作者: snowa*    时间: 2024-8-16 14:14
pmjxc 发表于 2024-8-16 10:56
我按你的方法加到自己后处理里面了,用了两天后发现一个问题,三轴的话假如用到侧铣头的话,就会报警,所 ...

没有侧铣头,哈哈
作者: 2009.YE    时间: 2024-8-16 14:27
本帖最后由 2009.YE 于 2024-8-16 14:50 编辑
snowa* 发表于 2024-8-12 19:40
发一个具体的添加办法以及测试后处理

我自己改后处理 没反应 ,下载你的这个也不报警是什么问题
主要是高版本 有时候选孔方向会反  稍不注意就出问题

1.PNG (160.59 KB, 下载次数: 1)

1.PNG

作者: #忘忧草#    时间: 2024-8-16 14:34
asdqq2000 发表于 2024-8-12 10:21
在定向四轴上面能用这个吗?如果能用就好了。

只要不是摆头的机床,看看这个机床,是完全可以用的!
作者: snowa*    时间: 2024-8-16 15:41
本帖最后由 snowa* 于 2024-8-16 15:43 编辑
2009.YE 发表于 2024-8-16 14:27
我自己改后处理 没反应 ,下载你的这个也不报警是什么问题
主要是高版本 有时候选孔方向会反  稍不注意 ...

你是用的高版本钻孔吧,我们是用的drill

你可以用刀轴矢量来判断是否出错



作者: pmjxc    时间: 2024-8-16 16:41
snowa* 发表于 2024-8-16 14:14
没有侧铣头,哈哈

我自己加了一个侧铣平面判断,现在可以了
作者: 2009.YE    时间: 2024-8-16 16:54
snowa* 发表于 2024-8-16 15:41
你是用的高版本钻孔吧,我们是用的drill

你可以用刀轴矢量来判断是否出错

关键是不会搞呀
就是高版本容易出这样的问题  drill基本上没有这样的问题
作者: snowa*    时间: 2024-8-16 20:42
2009.YE 发表于 2024-8-16 16:54
关键是不会搞呀
就是高版本容易出这样的问题  drill基本上没有这样的问题

global mom_tool_axis
global mom_operation_name
set 4th [ format "%0.6f" $mom_tool_axis(0) ]
set 5th [ format "%0.6f" $mom_tool_axis(1) ]
set 6th [ format "%0.6f" $mom_tool_axis(2) ]
if { $4th !=0 || $5th !=0 || $6th !=1 } {
MOM_output_to_listing_device "程序名称:$mom_operation_name,非三轴刀路"
MOM_output_to_listing_device "请检查刀轴或者坐标系"
set msg [MOM_display_message 程序名称:$mom_operation_name,非三轴刀路 后处理消息: I  中止后处理]
    switch $msg {
        1 {
            MOM_abort 中止
        }
    }
}

把这个放在快速移动里面。我是用来检测孔铣反向的。你这个打孔也一样
作者: lo9    时间: 2024-8-16 21:26


这个可以的,点赞一个
作者: 张思颖    时间: 2024-8-17 11:45
给楼主一个大赞!!!  两个代码,  一个打孔,一个刀轴,  非常有用,  
作者: lljug    时间: 2024-8-18 15:59
这个可以的,点赞一个。
作者: 2009.YE    时间: 2024-8-19 08:57
snowa* 发表于 2024-8-16 20:42
global mom_tool_axis
global mom_operation_name
set 4th [ format "%0.6f" $mom_tool_axis(0) ]

多谢啦!!!6666
作者: 筚路蓝缕好    时间: 2024-8-19 10:10
不错




欢迎光临 UG爱好者 (https://www.ugsnx.com/) Powered by Discuz! X3.2