1. 首页
  2. 技术文章

秒懂宏程序(二)

·当电源接通时,该变量的值为0。

·当单程序段停止无效时,即使单程序段开关设为ON,也不执行单程序段停止。

·当指定不等待辅助功能(M,S 和T 功能)完成时,在辅助功能完成之前,程序即执行到下一程序段。而且分配完成信号DEN 不输出。

秒懂宏程序(二)

·当电源接通时,该变量的值为0。

·当进给暂停无效时:

(1)当进给暂停按钮被按下时,机床以单段停止方式停止。但是,当用变量#3003 使单程序段方式无效时,单程序段停止不执行。

(2)当进给暂停按钮压下又松开时,进给暂停灯亮,但是,机床不停止;程序继续执行,并且机床停在进给暂停有效的第一个程序段

·当进给速度倍率无效时,倍率总为100%,而不管机床操作面板上的进给速度倍率开关的设置。

·当准确停止检测无效时,即使那些不执行切削的程序段也不进行准确停止检测(位置检测)

秒懂宏程序(二)

SETTING 值SETTING 值可用变量读和写。二进制数转换为十进制数。

秒懂宏程序(二)

镜像使用外部开关或SETTING 操作设置的各轴镜像状态可以通过输出信号(镜像检测信号)读出。可以检测当前的镜像状态(见III—4.6 节)。得到的二进制值转换成十进制。

秒懂宏程序(二)

·当用镜像信号和SETTING 两者对某轴设置镜像功能时,信号值和设定值相或,然后输出。

·当控制轴以外的轴的镜像功能接通时,它们也被读进系统变量#3007。

·系统变量#3007 是写保护的系统变量。如果试图在变量中写数据,则发出P/S116 报警“WRITE PROTECTED VARIABLE”。

已加工的零件数要求的零件数(目标数)和已加工的零件数(完成数)可以读和写。

秒懂宏程序(二)

模态信息

正在处理的程序段之前的模态信息可以读出。

秒懂宏程序(二)

例:当执行#1=#4002;时,在#1 中得到的值是17,18 或19。对于不能使用的G 代码组,如果指定系统变量读取相应的模态信息,则发出P/S 报警。

当前位置位置信息不能写,只能读。

秒懂宏程序(二)

·第1 位代表轴号(从1 到3)。

·变量#5081~#5083 存储的刀具长度补偿值是当前的执行值,不是后面程序段的处理值。

·在G31(跳转功能)程序段中跳转信号接通时的刀具位置储存在变量#5061 到#5063 中。当G31 程序段中的跳转信号未接通时,这些变量中储存指定程序段的终点值

·移动期间不能读是指由于缓冲(预读)功能的原因,不能读期望值。

工件坐标系补偿值 工件零点偏移值的系统变量(工件零点偏移值)

秒懂宏程序(二)

可以使用以下变量

秒懂宏程序(二)

1.3 算术和逻辑运算

下图中列出的运算可以在变量中执行。运算符右边的表达式可包含常量和/或由函数或运算符组成的变量。表达式中的变量#j 和#k 可以用常数替换。左边的变量也可以用表达式赋值。

秒懂宏程序(二)

角度单位函数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,刀具不会返回到初始位置。

该误差来自于舍入之前还是舍入之后相加。必须指定G00X-[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。

文章未完,下期继续更新

秒懂宏程序(二)

 
问答社区  发起问答  报警查询  技术文章  维修服务  资料下载  加交流群  申请 VIP   

本文转载来自【公众号:数控e家】,仅供大家学习交流,如侵权请联系站长删文。

发表评论

登录后才能评论

联系我们

在线咨询:点击这里给我发消息

联系微信:QQ594673193

工作时间:08:00~20:00

QR code