song1539* 发表于 2020-4-24 15:01:26

UG转速计算错误时,后处理时如何避免

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

global mom_spindle_speed#读取主轴转速

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



song1539* 发表于 2020-4-24 18:37:27

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

global mom_spindle_speed
# 搜寻 主轴转速假设主轴转速为1234
set a
# 设定中间变量 a=1230-1234=-4
if { $a != 0 } {

MOM_abort " 警告!!!主轴转速计算错误,请重新设置转速并重新计算 "
}

song1539* 发表于 2020-4-24 18:26:23

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

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

song1539* 发表于 2020-4-24 17:46:41

以解决还是要靠自己啊

zhaopengg 发表于 2020-4-24 18:16:17

song1539* 发表于 2020-4-24 17:46
以解决还是要靠自己啊

这个思路不错,怎么解决的啊,可以分享下吗

zhaopengg 发表于 2020-4-24 18:48:32

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

好的,谢谢

zhaopengg 发表于 2020-4-24 18:49:09

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

这个跟取机台日期刻字一个样啊
页: [1]
查看完整版本: UG转速计算错误时,后处理时如何避免