云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 图文解说 Fanuc B类宏程序高级编程手册

图文解说 Fanuc B类宏程序高级编程手册

  • 62 次阅读
  • 3 次下载
  • 2025/5/6 10:38:43

角度单位

函数SIN,COS,ASIN,ACOS,TAN 和ATAN 的角度单位是度。如

90°30ˊ表示为90.5 度。

ARCSIN # i=ASIN[#j] ", 取值范围如下:

当参数(No.6004#0)NAT 位设为0 时,270°~90° 当参数(No.6004#0)NAT 位设为1 时,-90°~90° 当#j 超出-1 到1 的范围时,发出P/S 报警No.111。 常数可替代变量#j。

ARCCOS # i =ACOS[#j] ", 取值范围从180°~0°。 当#j 超出-1 到1 的范围时,发出P/S 报警No.111。 常数可以替代变量#j

ARCTAN ·指定两个边的长度,并用斜杠(/)分开。 #i=ATAN[#j]/[#k]; ·取值范围如下:

当NAT 位(参数No.6004,#0)设为0 时:0°到360° [例如]当指定#1=ATAN[-1]/[-1];时,#1=225°。

当NAT 位(参数No.6004,#0)设为1 时,-180°到180° [例如]当指定#1=ATAN[-1]/[-1];时,#1=-135.0°。 · 常数可以代替变量# j。

·注意,相对误差可能大于10-8。 自然对数#i=LN[#j];

·当反对数(# j)为0 或小于0 时,发出P/S 报警No.111。 ·常数可以代替变量# j。

·注意,相对误差可能大于10-8。 指数函数#i=EXP[#j]

·当运算结果超过3.65×1047(j 大约是110)时,出现溢出并发出P/S 报警No.111。

·常数可以代替变量#j。

ROUND(舍入)函数 ·当算术运算或逻辑运算指令IF 或WHILE 中包含ROUND 函数时,则ROUND 函数在第1 个小数位置四舍五入。 例:

当执行#1=ROUND[#2];时,此处#2=1.2345,变量1 的值是1.0。 ·当在NC 语句地址中使用ROUND 函数时,ROUND 函数根据地址的最小

设定单位将指定值四舍五入。 例:

编制钻削加工程序,按变量#1 和#2 的值切削,然后返回到初始位置。 假定最小设定单位是1/1000mm,变量#1 是1.2345, 变量#2 是2.3456, 则,

G00 G91 X-#1;移动1.235mm G01 X-#2 F300;移动2.346mm

G00 X[#1+#2];由于1.2345+2.3456=3.5801,移动距离为3.580,刀具 不会返回到初始位置。

该误差来自于舍入之前还是舍入之后相加。必须指定G00 X-[ROUND[#1]+ROUND[#2]]以使刀具返回到初始位置。 上取整和下取整

CNC 处理数值运算时,若操作后产生的整数绝对值大于原数的绝对值 时为上取整;若小于原数的绝对值为下取整。对于负数的处理应小心。 例如:

假设#1=1.2,#2=-1.2。

当执行#3=FUP[#1]时,2.0 赋给#3。 当执行#3=FIX[#1]时,1.0 赋给#3。 当执行#3=FUP[#2]时,-2.0 赋给#3。

当执行#3=FIX[#2]时,-1.0 赋给#3。

算术与逻辑运算指令的缩写 程序中指令函数时,函数名的前二个字符可以用于指定该函数(见Ⅲ—9.7 节)。 例如:

ROUND→RO FIX→FI

运算次序 ① 函数

② 乘和除运算(*、/、AND)

③ 加和减运算(+、-、OR、XOR)

括号嵌套

括号用于改变运算次序。括号可以使用5 级,包括函数内部使用的括 号。当超过5 级时,出现P/S 报警No.118。

限制

括号 ([,])用于封闭表达式。注意,圆括号用于注释。 运算误差 运算时,可能出现误差。 表15.3(b) 运算中的误差

1 相对误差取决于运算结果。 2 使用两类误差的较小者。

3 绝对误差是常数,而不管运算结果。 4 函数TAN 执行SIN/COS。

5 如果SIN、COS 或TAN 函数的运算结果小于1.0×10-8 或由于 运算精度的限制不为0 的话,设定参数No.6004#1 为1,则 运算结果可以规算为0。

·变量值的精度约为8 位十进制数。当在加/减运算中处理非常大的数 时,将得不到期望的结果。 例:

当试图把下面的值赋给变量#1 和#2 时: #1=9876543210123.456 #2=9876543277777.777 变量值变成:

#1=9876543200000.000 #2=9876543300000.000

此时,当计算#3=#2-#1;时,结果为#3=100000.000。

(该计算的实际结果稍有误差,因为是以二进制执行的。)

·还应该意识到,使用条件表达式EQ,NE,GE,GT,LE 和LT 时可 能造成误差。 例如:

IF[#1EQ#2]的运算会受 #1 和#2 的误差的影响,由此会造成错误的判 断。

因此,应该用IF[ABS[#1-#2]LT0.001]代替上述语句,以避免两个变 量的误差。

当两个变量的差值未超过允许极限(此处为0.001)时,则认为两个 变量的值是相等的。

·使用下取整指令时应小心。 例如:

当计算#2=#1*1000,式中#1=0.002 时,变量#2 的结果值不是准确的 2,可能是1.99999997。

这里,当指定#3=FIX[#2]时,变量3 的结果值不是2,而是1.0。此 时,可先纠正误差,再执行下取整,或是用如下的四舍五入操作, 即可得到正确结果。 #3=FIX[#2+0.001]

  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

角度单位 函数SIN,COS,ASIN,ACOS,TAN 和ATAN 的角度单位是度。如 90°30ˊ表示为90.5 度。 ARCSIN # i=ASIN[#j] ", 取值范围如下: 当参数(No.6004#0)NAT 位设为0 时,270°~90° 当参数(No.6004#0)NAT 位设为1 时,-90°~90° 当#j 超出-1 到1 的范围时,发出P/S 报警No.111。 常数可替代变量#j。 ARCCOS # i =ACOS[#j] ", 取值范围从180°~0°。 当#j 超出-1 到1 的范围时,发出P/S 报警No.111。 常数可以替代变量#j ARCTAN ·指定两个边的长度,并用斜杠(/)分开。 #i=ATAN[#j]/[#k]; ·取值范围如下: 当NAT

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com