UG爱好者

标题: UG转速计算错误时,后处理时如何避免 [打印本页]

作者: song1539*    时间: 2020-4-24 15:01
标题: UG转速计算错误时,后处理时如何避免
请教各位    现版本的NX,在加工模块设定主轴转速及进给率时, 有时会导致主轴转速变化,有时没注意到   会比较危险!我想在后处理里加个判断语句,当有问题时,停止后处理并报错。。悲催的是,写的不对,不知道怎么取余数,有没大神帮忙完善一下?
下面是例子:
因为平时设置主轴转速都是整数,个位数一般都是0,,比如S1000,s500  s1250,,   基本没人会设置为S1111,只有计算错误的时候才会出现个位数不是0的情况。
所以我想将主轴转速除以10, 然后,判断小数点后的数值是不是等于0,从而停止后处理并报错。  比如1000/10=100.0  1111/10=111.1    当小数点后面的数据不是0时  报警。,但是  我不知道怎么取这个小数点后的数值

global mom_spindle_speed  #读取主轴转速

if {   expr  [$mom_spindle_speed / 10] }   !=  0 }  {    #判断,当转速/10,  不等于0      这个就卡住了  不知道怎么取小数点后面的数了
MOM_abort " 警告!!!转速计算错误,请重新设置转速并重新计算 "    #报警并停止后处理
}




作者: song1539*    时间: 2020-4-24 17:46
以解决  还是要靠自己啊

作者: zhaopengg    时间: 2020-4-24 18:16
song1539* 发表于 2020-4-24 17:46
以解决  还是要靠自己啊

这个思路不错,怎么解决的啊,可以分享下吗
作者: song1539*    时间: 2020-4-24 18:26
zhaopengg 发表于 2020-4-24 18:16
这个思路不错,怎么解决的啊,可以分享下吗

换了个思路   没办法取余数    我可以四舍五入取整     转速/10    然后四舍五入 后   再乘以10,  再将最终结果  减去 原来的值     只要数值不是0   就报错          跟上边提到的原理是一样的   只是换了个方法

作者: song1539*    时间: 2020-4-24 18:37
zhaopengg 发表于 2020-4-24 18:16
这个思路不错,怎么解决的啊,可以分享下吗

global mom_spindle_speed
# 搜寻 主轴转速  假设主轴转速为1234
set a [expr round($mom_spindle_speed/10)*10 - $mom_spindle_speed]
# 设定中间变量 a  =1230-1234=-4
if { $a != 0 } {

MOM_abort " 警告!!!主轴转速计算错误,请重新设置转速并重新计算 "
}
作者: zhaopengg    时间: 2020-4-24 18:48
song1539* 发表于 2020-4-24 18:26
换了个思路   没办法取余数    我可以四舍五入取整     转速/10    然后四舍五入 后   再乘以10,  再将 ...

好的,谢谢
作者: zhaopengg    时间: 2020-4-24 18:49
song1539* 发表于 2020-4-24 18:26
换了个思路   没办法取余数    我可以四舍五入取整     转速/10    然后四舍五入 后   再乘以10,  再将 ...

这个跟取机台日期刻字一个样啊




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