文档详情

宏程序编程.doc

发布:2016-09-26约9.09千字共13页下载文档
文本预览下载声明
用户宏程序 虽然子程序对编制相同加工操作的程序非常有用,但用户宏程序由于允许使用变量、算术和逻辑运算及条件转移,使得编制相同加工操作的程序更方便,更容易。可将相同加工操作编为通用程序,如型腔加工宏程序和固定加工循环宏程序。使用时,加工程序可用一条简单指 令调出用户宏程序,和调用子程序完全一样。 一、变量 普通加工程序直接用数值指定G代码和移动距离;例如,G01和X100。 使用用户宏程序时,数值可以直接指定或用变量指定。当用变量时,变量值可用程序或用MDI面板上的操作改变。 #1=#2+100; G01 X#1 F300; 说明: 1、变量的表示 计算机允许使用变量名,用户宏程序不行。变量用变量符号(#)和后面的变量号指定。 例如:#1 表达式可以用于指定变量号。此时,表达式必须封闭在括号中。 例如:#[#1+#2-12] 2、变量的类型 变量根据变量号可以分成四种类型。 变量号 变量类型 功能 #0 空变量 该变量总是空,没有值能赋给该变量。 #1--#33 局部变量 局部变量只能用在宏程序中存储数据,例如,运算结果。当断电时,局部变量被初始化为空。调用宏程序时,自变量对局部变量赋值。 #100--#199 #500--#999 公共变量 公共变量在不同的宏程序中的意义相同。当断电时,变量#100一#199初始化为空。变量#500一一#999的数据保存,即使断电也不丢失。 #1000—— 系统变量 系统变量用于读和写CNC运行时各 3、变量值的表示范围 局部变量和公共变量可以有0值或下面范围中的值: -1047至-10-29 或 10-29到1047 如果计算结果超出有效范围,则发出P/S报警No.111。 4、小数点的省略 当在程序中定义变量值时,小数点可以省略。 例:当定义#1=123;变量#1的实际值是123.000; 5、变量的引用 为在程序中使用变量值,指定后跟变量号的地址。当用表达式指定变 量时,要把表达式放在括号中。 例如:G01X[#1+#2]F#3; 被引用变量的值根据地址的最小设定单位自动地舍入。 例如: 当G00X#1;以1/1000mm的单位执行时,CNC把12.3456赋值给 变量#1,实际指令值为G00X12.346; 改变引用变量的值的符号,要把负号(一)放在#的前面。 例如:GOOX-#1; 当引用未定义的变量时,变量及地址字都被忽略。 例如: 当变量#1的值是0,并且变量#2的值是空时,G00X#1 Y#2的执行结果为G00X0;。 6、 未定义的变量 当变量值未定义时,这样的变量成为“空”变量。变量#0总是空变量。 它不能写,只能读。 (a)引用 当引用一个未定义的变量时,地址本身也被忽略。 当#1=空 当#1=0 G90X100Y#1 G90X100 G90X100Y#1 G90X100Y0 (b)运算 当#1=空 当#1=0 #2= #1 #2=空 #2= #l #2=0 #2= #1*5 #2=0 #2= #1*5 #2=0 #2= #1+#1 #2=0 #2= #1+#1 #2=0 (c)条件表达式 EQ和NE中的空不同于0。 当#1=空 当#1=0 #1EQ#0 成立 #1EQ#0 不成立 #1 NE#0 成立 #1 NE#0 不成立 #1 GE#0 成立 #1 GE#0 不成立 #1 GT#0 不成立 #1 GT#0 不成立 7、 限制 程序号,顺序号和任选程序段跳转号不能使用变量。 例: 下面情况不能使用变量: O#1; /#2G00X100; N#3Y200; 二、算术和逻辑运算 下表中列出的运算可以在变量中执行。运算符右边的表达式可包含常量和/或由函数或运算符组成的变量。表达式中的变量#J和#k可以用常数赋值。左边的变量也可以用表达式赋值。 算术和逻辑运算 功能 格式 备注 定义 #i= #J 加法 减法 乘法 除法 #i= #J+#k; #i= #J-#k; #i= #J*#k; #i= #J/#k; 正弦 反正弦 余弦 反余弦 正切 反正切 #i=SIN[#J]; #i=ASIN[#J]; #i=COS[#J]; #i=ACOS[#J]; #i=TAN[#J]; #i=ATAN[#J]; 角度以度指定.90·30,表示为90.5度 平方根 绝对值 舍入 上取整 下取整 自然对数 指数函数 #i=SQRT[#J]
显示全部
相似文档