首页 理论教育 系统用户宏程序编程与操作技能实训

系统用户宏程序编程与操作技能实训

时间:2022-03-02 理论教育 版权反馈
【摘要】:以一组子程序的形式存储并带有变量的程序称为用户宏程序,简称宏程序。而在用户宏程序的本体中,可以使用变量进行编程,还可以用宏指令对这些变量进行赋值、运算等处理。通过使用宏程序能执行一些有规律变化的动作。而含其他操作符的条件表达式将空值看作零。换刀首次加工时,为防止对刀或工件坐标系零点偏置有误,在程序执行前先进行单段加工,待确定对刀或程序运行平稳后,再取消“单段”加工,采用自动加工。

一、任务布置

完成如图6-1所示椭圆轮廓的零件加工。零件材料为LY12,毛坯尺寸为80mm×80mm×16mm(长×宽×高)。

图6-1 平面椭圆零件图

【知识目标】

(1)熟悉FANUC系统的宏变量、运算符与表达式等代码意义。

(2)掌握系统中用变量进行算术运算、逻辑运算和函数的混合运算等表达式功能。

(3)掌握循环语句、分支语句和子程序调用语句等编程格式。

【技能目标】

(1)会编制椭圆零件的加工程序。

(2)会操作数控铣床(加工中心)完成椭圆零件的加工及质量检测。

二、知识链接

(一)宏程序的基本概念

1.宏程序的定义

以一组子程序的形式存储并带有变量的程序称为用户宏程序,简称宏程序。调用宏程序的指令称为用户宏程序指令,或宏程序调用指令(简称宏指令)。

宏程序与普通程序相比较,普通的程序字为常量,一个程序只能描述一个几何形状,所以缺乏灵活性和适用性。而在用户宏程序的本体中,可以使用变量进行编程,还可以用宏指令对这些变量进行赋值、运算等处理。通过使用宏程序能执行一些有规律变化(如非圆二次曲线轮廓)的动作。

宏程序分A类和B类两种,由于B类宏程序使用相比A类方便,一般使用中B类宏程序进行编程较多,在这里介绍B类宏程序编程。

2.宏程序中的变量

在常规的主程序和子程序内,总是将一个具体的数值赋给一个地址,为了使程序更加具有通用性、灵活性,故在宏程序中设置了变量。

(1)变量的表示。由符号“#”和变量序号组成,如:# I(I=1,2,…)。此外,变量还可以用表达式进行表示,但其表达式必须全部写入方括号“[]”中。

例:#100,#500,#5,#[#1+#2+#10]

(2)变量的引用。将跟随在地址符后的数值用变量来代替的过程称为引用变量。同样,引用变量也可以用表达式。

例:G01 X#100 Y#101 F[#101+#103]

当#100=100.0、 # 101=50.0、 # 103=80.0时,上例即表示为G01 X100.0 Y50.0 F130;

(3)变量的类型:变量分为局部变量、公共变量(全局变量)和系统变量三种,见表6-1。

表6-1 变量的类型

注:程序号、顺序号、任意段跳跃号不能使用变量。例:O# 1;/ # 2G00X50.0;N# 3Y100.0;均是错误的。

(二)宏程序编程

1.变量的赋值

变量的赋值方法有两种,即直接赋值和引数赋值。其中直接赋值方法较为直观、方便,其书写格式如下:

例:# 100 =100.0

# 101=30.0+20.0;

引数赋值的地址与变量号对应具体参见表6-2。

例:A=1等于#1=1;

T=1等于#20=1;

表6-2 引数赋值的地址与变量号对应

地址G、L、N、O、P不能当作自变量使用。

不需要的地址可以省略,与省略的地址相应的地方变量被置成空。

2.算术和逻辑操作

在表6-3中列出的操作可以用变量进行。操作符右边的表达式,可以含有常数和(或)由一个功能块或操作符组成的变量。表达式中的变量#J和#K可以用常数替换。左边的变量也可以用表达式替换。

表6-3 算术和逻辑操作

(1)角单位。在SIN、 COS、 TAN、 ATAN中所用的角度单位是度。

(2)ATANT功能。在ATANT之后的两个变量用“/”分开,结果在0和360之间。°

例:当#1=ATANT[1]/[1]时,#1=135.0

(3)ROUND功能:当ROUND功能包含在算术或逻辑操作、IF语句、WHILE语句中时,将保留小数点后一位,其余位进行四舍五入。

例:# 1=ROUND[ # 2];其中#2=1.2345,则#1=1.0

当ROUND出现在NC语句地址中时,进位功能根据地址的最小输入增量四舍五入指定的值。

例:编一个程序,根据变量#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.580mm,不能返回到初始位置。而换成G00X[ROUND[ # 1]+ROUND[ # 2]],能返回到初始点。

(4)上进位和下进位成整数。

例:#1=1.2、 # 2=-1.2

则:# 3=FUP[ # 1],结果#3=2.0

# 3=FIX[#1],结果#3=1.0

#3=FUP[#2],结果#3=-2.0

# 3=FIX[ # 2],结果#3=-1.0

(5)方括号嵌套。方括号用于改变操作的顺序。最多可用五层,超出五层,出现118号报警。

注意:方括号用于封闭表达式,圆括号用于注释。

3.分支和循环语句

在一个程序中,控制流程可以用GOTO、IF语句改变。有三种分支循环语句如下:

GOTO语句(无条件分支);IF语句(条件分支:if…,then…); WHILE语句(循环语句while…)。

(1)无条件分支(GOTO语句)

功能:向程序的第N句。当指定的顺序号大于1~9999时,出现128号报警,顺序号可以用表达式。

格式:GOTO n; n是顺序号(1~9999)

(2)条件分支(IF语句)

功能:在IF后面指定一个条件表达式,如果条件满足,转向第N句,否则执行下一段。

格式:IF[条件表达式]GOTO n;

其中:一个条件表达式一定要有一个操作符,这个操作符插在两个变量或一个变量和一个常数之间,并且要用方括号括起来,即[表达式 操作符 表达式]。操作符如表6-4所示。

表6-4 操作符

(3)循环(WHILE语句)

功能:在WHILE后指定一个条件表达式,条件满足时,执行DO到END之间的语句,否则执行END后的语句。

格式:WHILE[条件表达式]DO m;(m=1,2,3)

m只能在1、2、3中取值,否则出现126号报警。

嵌套:1)数1~3可以多次使用。

2)不能交叉执行DO语句,如下的书写格式是错误的:

3)嵌套层数最多3级。

4)如下的书写格式是正确的:

5)如下的书写格式是错误的:

注意:1)无限循环。指定了DO m而没有WHILE语句,循环将在DO和END之间无限期执行下去。

2)执行时间。程序执行GOTO分支语句时,要进行顺序号的搜索,所以反向执行的时间比正向执行的时间长。可以用WHILE语句减少处理时间。

3)未定义的变量。在使用EQ或NE的条件表达式中,空值和零的使用结果不同。 而含其他操作符的条件表达式将空值看作零。

(三)宏程序的调用

可以用下列方式调用宏程序:

1)简单调用:G65;

2)模调用:G66、G67;

3)G码宏调用;

4)M码宏调用;

5)G码子程序调用;

6)M码子程序调用;

用G65可以指定一个自变量(传递给宏的数据),而M98没有这个功能。

当M98段含有另一个NC语句时(如:G01 X100.0 M98 Pp),则执行命令之后调用子程序,而G65无条件调用一个宏。

当M98段含有另一个NC语句时(如:G01 X100.0 M98 Pp),在单段方式下机床停止,而使用G65时机床不停止。

用G65地方变量的级要改变,而M98不改变。

三、宏程序编制

1.数学处理及计算

椭圆的参数方程如下:

其中:a为长半轴,b为短半轴,φ为离心角。

在宏程序编程中,零件图椭圆轮廓曲线,以离心角φ(0~360°)为自变量,按公式计算出X、Y坐标值。

根据零件图可知,椭圆的计算如下:

2.程序编制

FANUC系统平面椭圆零件加工程序卡如表6-5所示。

表6-5 FANUC系统平面椭圆零件加工程序卡

注:编程时,程序前几个程序段为机床加工的各项准备工作指令,然后才开始编写加工程序。

四、技能实训

1.实训准备

根据项目任务要求,给出平面椭圆零件加工工具、量具、刃具等准备清单,如表6-6所示。

表6-6 平面椭圆零件加工工具、量具、刃具准备清单

2.加工准备

(1)开机,回机床参考点。

(2)检查毛坯是否符合加工要求,并安装工件,把毛坯用等高块垫在下面,放在已校正平行的平口钳中间位置,使上表面高出钳口6~8mm(留有足够的空间完成平面椭圆的铣削加工),用木槌或橡胶锤敲击工件上表面夹紧平口钳。

(3)完成φ50mm面铣刀、φ16mm立铣刀刀具的对刀,分别设定G54坐标原点。

3.程序输入

输入表6-5所列参考程序到数控系统中。

4.模拟加工

校验程序走刀轨迹是否符合机床刀具运行轨迹要求。

5. 自动加工

换刀首次加工时,为防止对刀或工件坐标系零点偏置有误,在程序执行前先进行单段加工,待确定对刀或程序运行平稳后,再取消“单段”加工,采用自动加工。在加工过程中,应根据机床运行情况,调整机床主轴转速和进给倍率,确保机床平稳、高效地运行。

6.结束准备

完成零件加工,去除零件毛刺,打扫、清理机床和周围设施,并做好机床保养等工作。

五、质量评价

根据完成零件,按照项目评分表对加工零件进行质量评价,评分表如表6-7所示。

表6-7 平面椭圆评分表

六、常见问题解析

(1)椭圆加工应采用刀补进行,如采用长、短轴加刀具半径进行编程,则与实际椭圆有偏差。

(2)宏程序编程时,需要对公式曲线进行数学处理及计算,确定变量值。

七、巩固训练

根据自己所掌握的数控系统完成如图6-2所示公式曲线零件的加工。零件材料:LY12,毛坯尺寸:80mm×80mm×16mm,公式曲线零件评分表如表6-8所示。

图6-2 公式曲线零件图

表6-8 公式曲线零件评分表

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈