FANUC系统数控车床B类宏程序编程应用.docx
- 文档编号:4101096
- 上传时间:2023-05-06
- 格式:DOCX
- 页数:11
- 大小:86.85KB
FANUC系统数控车床B类宏程序编程应用.docx
《FANUC系统数控车床B类宏程序编程应用.docx》由会员分享,可在线阅读,更多相关《FANUC系统数控车床B类宏程序编程应用.docx(11页珍藏版)》请在冰点文库上搜索。
FANUC系统数控车床B类宏程序编程应用
FANUC系统数控车床B类宏程序编程应用
虽然子程序对编制相同加工操作的程序非常有用,但用户宏程序由于允许使用变量、算术和逻辑运算及条件转移,使得编制相同加工操作的程序更方便,更容易。
可将相同加工操作编为通用程序,如型腔加工宏程序和固定加工循环宏程序。
使用时,加工程序可用一
条简单指令调出用户宏程序,和调用子程序完全一样。
#1二#2+100
G01X#1F0.3
1、变量的表示
变量用变量符号(#)和后面的变量号指定。
例如:
#1
表达式可以用于指定变量号。
此时,表达式必须封闭在括号中
例如:
#[#1+#2-12]
2、变量的类型
变量根据变量号可以分成四种类型
变量号
变量类型
功能
#0
空变量
该变量总是空*没有值能赋给该变量亡
#1-#33
局部变量
局部变僮只能用在宏程序中存储数据,例女R运算结果。
当断电时,局部变量被初始化为空「调用宏程序时,自变量对局部变量赋值戎
#100-#199#500-^999
公共变量
公共变量在不同的宏程序屮的意义相同’当断电时,变量均00用199初始化为空*变量#500——999的数据保存,即使断电也不丢失「
#1000-
系统变量
系统变量用于读和写CNC运行时的各种数据,例如,刀具的当前位置和补偿值’
3、变量值的范围
局部变量和公共变量可以有0值或下面范围中的值:
如果计算结果超出有效范围,则发出P/S报警No.111.
4、小数点的省略
当在程序中定义变量值时,小数点可以省略。
例:
当定义#仁123;变量#1的实际值是123.000。
5、变量的引用为在程序中使用变量值,指定后跟变量号的地址。
当用表达式指定变量时,要把表达式放在括号中。
例如:
G01X[#1+#2]F#3;
被引用变量的值根据地址的最小设定单位自动地舍入。
例如:
当G00X#1;以1/1000mm的单位执行时,CNC把12.3456
赋值给变量#1,实际指令值为G00X12.346;。
改变引用的变量值的符号,要把负号
(一)放在#的前面。
例如:
G00X—#1;
当引用未定义的变量时,变量及地址字都被忽略。
例如:
当变量#1的值是0,并且变量#2的值是空时,G00X#1Z#2的执行结果为G00X0。
6、未定义的变量(当变量值未定义时,这样的变量成为“空”变量。
变量
#0总是空变量。
它不能写,只能读。
)
(a)引用当引用一个未定义的变量时,地址本身也被忽略。
当#1K空A
当#1=0
G9OX1OOZ#1
G90X100Z#l
1
1
G90X]00
G90X100YO
(b)运算除了用<空>赋值以外,其余情况下<空>与0相同。
当#1=<空>时
当#1=0时
#2=#1t#2=<空>
#2=#1t:
#2=0
#2=#*5t#2=0
#2=#*5t
#2=0
#2=#1+#1t#2=0
#2=#1+#1t
#2=0
(c)条件表达式EQ和NE中的<空>不同于0。
当#1=<空>时
当#1=0时
#1EQ#0
成立
#1EQ#0
不成立
#1NE#0
成立
#1NE#0
不成立
#1GE#0
成立
#1GE#0
不成立
#1GT#0
不成立
#1GT#0
不成立
限制
程序号,顺序号和任选程序段跳转号不能使用变量。
例:
下面情况不能使用变量:
1、O#1;2、/#2G00X100.0;3、N#3Y200.0;
二、算术和逻辑运算
下表中列出的运算可以在变量中执行。
运算符右边的表达式可包含常量和/或由函数或运算符组成的变量。
表达式中的变量#j和#k可以用常数赋值。
左边的变量也可以用表达式赋值。
功能
格式
备注
定文
1■ri■p-
加法减法乘法除法
正弦反正弦
余弦反余弦
正切反正切
#i=SlN[#jJ;S=ASIN[#j]:
i?
i=COS[#j];#i=ACOS[#j];#i=TAN[#j];#i=ATAN[^j][#k];
角度以度指定。
90^30'表示为90.5度n
平方根绝对值舍入
上取整下取整自然对数指数函数
#i=SQRT[#j];#i=ABS[#j);#i=ROUND[#j);#i=FIX[#j];#i=FUP[#j];#i=LN[#j];
#i=EXPf#jl;
或异或
与
#i=#jOR#k;#i=#jXOR#k;垢二耳jAND#k;
逻辑运算一位一位地按二进制数执行°
从BCD转为BIN从BJN转为BCD
垢二BIN[知;#i=BCD[#j];
用于与PMC的信号交换
三、转移和循环
在程序中,使用GOTO语句和IF语句可以改变控制的流向。
有
三种转移和循环操作可供使用:
转移和循环GOTO语句(无条件转移)
——1F语句(条件转移rIF-THEN*-)
——WHILE语句(当…时循环)
1、无条件转移(GOTO语句)
格式:
GOTO;n:
顺序号(1〜99999)
转移到标有顺序号n的程序段。
当指定1到99999以外的顺序号时,出现P/S报警No.128。
可用表达式指定顺序号。
例:
GOTO;
GOTO#1;
2、条件转移(IF语句)
IF[v条件表达式>]GOTOn
IF之后指定条件表达式。
如果指定的条件表达式满足时,转移到标有顺序号n的程序段
如果指定的条件表达式不满足,执行下个程序段
如果变量#1的值大于10.转移到顺序号N2的程序段’
如果条件不満足.II^1GTW]GC
斗程序
N2G00G9IXI0.0;=
TO2:
如果条件满足
说明:
a、条件表达式条件表达式必须包括算符。
算符插在两个变量中间或变量和常数中间,并且用括号([])封闭。
表达式可以替代变量。
b、运算符运算符由2个字母组成,用于两个值的比较,以决定它们是相等还是一个值小于或大于另一个值。
注意,不能使用不等符
号
运算符
含义
EQ
等于㈢
NE
不等于(H)
GT
大于(>)
GE
大于或等于&)
LT
小于(V)
LE
小于等于(W)
C、示例程序
下面的程序计算数值1~10的总和
09500
#1=0;
…•存储和数变量的初值
#2-1;
…•被加数变量的初值
MlIF[#2GT10]GOTO2;■
当被加数大于10时转移到N2
#1=#]+#2:
计算和数
#2=#2+#1:
卜个被加数
GOTO1;
转到N1
N2M30;
程序结束
3、循环(WHILE语句)
在WHILE后指定一个条件表达式,当指定条件满足时,执行从DO到END之间的程序。
否则,转到END后的程序段
WHILE[条件表达式]DOm;(m=1,2,3)
如果条件不满足如果条件满足I程序
ENDm:
说明:
当指定的条件满足时,执行WHILE从DO到END之间的程序。
否则,转而执行END之后的程序段。
这种指令格式适用于IF语句。
DO后的号和END后的号是指定程序执行范围的标号,标号值
为1,2,3。
若用1,2,3以外的值会产生P/S报警No.126。
循环嵌套:
在DO—END循环中的标号(1到3)可根据需要多次使用。
但
是,当程序有交叉重复循环(DO范围的重叠)时,出现P/S报警
No.124。
k标号〔1到3〉可以粮据要求爭次僅用.
厂WHILE[…jDO1;
—WHILE)001;
理序
—END1;
—WHILEDO1;
SmI
—END1;
—WHILE[…]DO2;
i—WHILE[…]DO3;
程序
匚END3;
—END2;
END1;
四、宏程序编程举例
1.
1
卜
1'
\双曲戋方程“(36/3)幻
C-
r
L.川r
2.
曲线公式为X=(36/Z)+3
实例分析:
本例的精加工采用B类宏程序编程,以Z值为自变量,
每次变化0.1mm,X值为应变量,通过变量运算计算出相应的X值
(宏程序编程时,首先要找岀各点X坐标和Z坐标之间的对应关系)
编程时使用的以下变量进行计算:
#101为方程中的Z坐标(起点"72);
#102为方程中的X坐标(起点半径值X=3」);
#103为工件坐标系中的Z坐标,#103=#101^72.0;
#104为工件坐标系中的X坐标,#104=R2^2;精加工程序如下:
0420
GOOX9.0Z2.0;
#101=72.0;
#102=3,5;
N100#103=#101-72.0;
#104=#102*2;
G01X#IO4Z#103;
#101=#101-0.1;
#102=36/#1(H+3;
IF,[#101GE2.0]GOrr()IO();G28U0WO;
M30;
公程庁起点
跳转H标程序段
Z坐标毎次hf-0.Irrim变量运算出X坐标有条件跳转
2010
加工顺序:
粗车t半精车t精车
(1)精车程序:
设置变量
变量
表示内容
表达式
取值范围
#1
Z坐标
自变量
2--72
#2
X坐标
#2二[[36/#1]+3]
7--42
GOOX7Z74;
#1=72;
WHILE[#1GE2]DO2;
#2二[[36/#1]+3];
G42GO1X[#2]Z[#1]FO.1;
#1二#1-0.1;
END2;
(2)粗车程序:
G90来粗车
设置变量
变量
表示内容
表达式
取值范围
变化幅度
#1
Z坐标
#1=[36/[#1-3]]
2--72
#2
X坐标
自变量
7--42
4
#2=38;
WHILE[#1GE7]DO3;
#1=[36/[#1-3]];
GOOX[#2+5]Z74;
G90X[#2+0.5]Z[#1]F0.2;
#2=#2-4;
END3;
(3)半精车程序:
设置变量
变量
表示内容
表达式
取值范围
#1
Z坐标
自变量
2--72
#2
X坐标
#2=[[36/#1]+3.5]
7--42
GOOX7Z74;
#1=72;
WHILE[#1GE2]DO4;#2=[[36/#1]+3.5];
G01X[#2]Z[#1]F0.1;
#1二#1-0.1;
END4;
P170
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- FANUC 系统 数控车床 程序 编程 应用
![提示](https://static.bingdoc.com/images/bang_tan.gif)