Funuc程序进阶篇.docx
- 文档编号:24886025
- 上传时间:2023-06-02
- 格式:DOCX
- 页数:64
- 大小:448.72KB
Funuc程序进阶篇.docx
《Funuc程序进阶篇.docx》由会员分享,可在线阅读,更多相关《Funuc程序进阶篇.docx(64页珍藏版)》请在冰豆网上搜索。
Funuc程序进阶篇
----------程序进阶篇---------
宏编程及其技术应用
一、实训目的
(1)、熟悉了解数控编程中的宏编程技术
(2)、初步掌握宏编程技术在数控车削加工中的应用。
(3)、初步掌握宏编程技术在数控铣削加工中的应用。
二、预习要求
认真阅读教材第4章第6节的内容。
三、实训理论基础
宏指令编程是指像高级语言一样,可以使用变量进行算术运算、逻辑运算和函数混合运算的程序编写形式。
在宏程序形式中,一般都提供循环、判断、分支和子程序调用的方法,可用于编制各种复杂的零件加工程序。
熟练应用宏程序指令进行编程,可大大精简程序量,在一定意义上说,还可以增强机床的加工适应能力。
1、宏编程的技术规则
宏编程规则对于各个数控系统是不相同的。
(1)变量、函数及其运算规则
FANUC和HNC数控系统中的宏变量都是以带#的数字作为变量名的,如#0,#10,#500等。
HNC数控系统对变量的赋值是直接采用数学表达式的形式,如#3=100;#1=50+#3/2;
FANUC-3MA数控系统的变量赋值及其运算是采用特定的G65指令格式:
G65HmP#iQ#jR#k
FANUC和HNC数控系统的宏变量赋值及其常用函数运算表达方法如下:
FANUC-3MA系统
HNC系统
H代码
功能
定义
主要函数
比较符
H01
H02/H03
H0/H05
赋值、置换
加法/减法
乘法/除法
#i=#j
#i=#j+#k#i=#j-#k
#i=#jx#k#i=#j#k
SIN--正弦
COS--余弦
TAN--正切
ATAN--反正切
ABS--求绝对值
INT--取整
SIGN--取符号
SQRT--求平方根
EXP--指数函数
PI--常数(圆周率)
=--EQ
--NE
>--GT
--GE
<--LT
--LE
H21
H22
H26
平方根
绝对值
复合乘法
#i=SQRT(#j)
#i=|#j|
#i=(#Ix#j)#k
H31
H32
H33
H34
正弦
余弦
正切
反正切
#i=#j*SIN(#k)
#i=#j*SIN(#k)
#i=#j*TAN(#k)
#i=ATAN(#j/#k)
如:
FANUC-3MA系统的
G65H02P#100Q#102R#103即表示:
#100=#102+#103;
G65H26P#101Q#102R#103,即表示#101=(#101x#102)/#103。
HNC系统的
#2=175/SQRT[2]*COS[55*PI/180]
#12=[#53+#10*360/#11]*#57等
在数控程序中,宏指令和NC系统指令可混合使用。
如:
G90G81G99X#103Y#104Z#505R#506F500
(2)选择分支与循环的程序结构控制
FANUC-3MA系统
HNC系统
H代码
功能
定义
条件判断语句格式
循环语句格式
H80
H81
H82
H83
H84
H85
H86
H99
无条件转移
条件转移1
条件转移2
条件转移3
条件转移4
条件转移5
条件转移6
产生P/S错误
GOTOn
IF#j=#k,GOTOn
IF#j#k,GOTOn
IF#j>#k,GOTOn
IF#j<#k,GOTOn
IF#j#k,GOTOn
IF#j#k,GOTOn
产生P/S错误500+n
IF条件表达式
...(满足条件时执行的程序行)
ELSE
...(不满足条件时执行
...的程序行)
ENDIF
----------------------------------------------
无条件转向语句GOTOn
n为指定的程序行号
WHILE条件表达式
...(满足条件时执行
...的程序行)
ENDW
例:
求1~10的和(HNC系统)
O1122;
#1=0;和
#2=1;加数
N1IF[#2GT10]GOTO2;相加条件
#1=#1+#2;相加
#2=#2+1;下一加数
GOTO1返回1
N2M30;结束
2.宏编程技术的应用
例:
加工一长轴为100,短轴为50的椭圆,如图。
加工路线为O→X→Y→-X→-Y→X→O,它的刀具轨迹如图。
用普通算点的方法来加工这个椭圆显然是不科学的,如果采用编程软件来生成这个程序的话(设使用Φ10的铣刀,步距取1mm),那么程序长度将在400段左右,对于程序本身的阅读和修改都不是很方便。
使用宏程序的话,那么只用很简单的几段程序就可以完成椭圆的加工,程序如下:
O0001
G54G90X0Y0S1200M03;确定坐标系;
G01Z-5F200下刀到Z-5
N10G01X50;走OX距离段;
N20#1=0;将角度设为自变量,赋初值为0;
N30X[50*COS[#1]]Y[25*SIN[#1]];XY轴联动的步距;
N40#1=#1+1;自变量每次自加1º;
N50IF[#1LT360]GOTO30;如果变量自加后不足360º,则转到第30段执行,否则执行下一段;(30前不用加行号N)
N60GO1X0;回到起点
G0Z50;提刀到Z50
N70M30;程序结束。
通过上例可以看出,改变刀具流向的程序只有第N30段,这一段也就是椭圆的参数方程。
在这个程序中,角度是自变量,每执行到第N40段时,角度自加1º,直至到达360º,自动跳转到第N60段。
如果我们将自变量的角度改变为0.1º,那么只用改变第N40段为:
#1=#1+0.1,步距减小了很多,椭圆的精度提高了很多,可它的程序长度并没有因此而改变。
即使要将此椭圆轮廓加工多次,至多也只用加两循环语句而已。
同理,只用短短的几段程序即可以加工出另外的一些曲线。
比如:
正圆、抛物线、渐开线、摆线、阿基米德螺旋线、正弦曲线等。
对于镜象、旋转、阵列等的加工,同样可以用宏程序来达到简化编程的效果;利用循环功能还可以实现曲面类零件的加工。
四、实训仪器及设备
<1>CJK6032数控车床1台
<2> Φ40x200圆形棒料2根
<3> 基本装夹工具、刀具1套
<4>游标卡尺1把
五、实训内容及步骤
<1>在HNC21T系统中输入调试车削加工的宏程序
<2>在HNC21M系统中输入调试钻孔加工的宏程序
1.利用宏编程技术实现多曲线段车削零件的粗、精加工
%0001
G37
T0101
G00G90X25Z5
S600M03
M98P2U-10V-20W-40D10A5B8C1K-0.3
(粗车循环方式)
M98P2U-10V-20W-40D10A5B8C2K-0.05
(精车循环方式)
M05(主轴停转)
M30(程序结束并返回)
%0002(子程序)
IF#2EQ2
G90G00X0.2Z0.5
ENDIF
#40=2*SQRT[-#20]
#41=[#3-#40]/[#21-#20](计算斜线段斜率)
#42=#3-#41*#21(计算斜线段截距)
WHILE#10GE#22(抛物线部分的X轴计算)
IF[#10GE#20]
#11=2*SQRT[-#10]
ENDIF
IF[#10LT#20]AND[#10GE#21](X轴的斜线的计算段)
#11=#41*#10+#42
ENDIF
IF[#10LT#21]AND[#10GE#21-#0]
#43=[#10-#21]/#0
#11=-#1*[SQRT[1-#43*#43]]+#3+#1(X轴的椭圆计算段)
ENDIF
IF[#10LT#21-#0]
#11=20
ENDIF
IF#2EQ1(粗车时的走刀路线)
G90G00Z[#10]
G01X[#11+0.4]F1000
G01X[#11+0.5]Z[#10+0.1]
G00X25
#10=#10-0.3(粗车时循环步长)
ELSE
G90G01X[#11]Z[#10]F500(精车时走刀路线)
#10=#10-0.05(精车的循环步长)
ENDIF
ENDW
G91X1(退刀)
G90G00Z5
M99(子程序结束并返回)
程序计算说明:
由抛物线方程Z=-
得:
X=+
,故直线起点X坐标值
=+
,直线终点坐标为(D,V),所以:
直线AB斜率K为:
K=
=
,(直线方程为:
X=KZ+h)。
h=D-KV=D-
V
椭圆方程:
由椭圆中心坐标在编程坐标系中的坐标(V,D+b)和椭圆方程
=1得椭圆在图2-1所示坐标系中方程为:
本例用宏编程技术的编程思路是用数段直线逼近轮廓线,故根据零件图,把零件划分为四段,本程序以Z为自变量,X为函数,各部分数学建模如下:
当U
时,由抛物方程得:
X=
当V
Z
X=KZ+h
当V-a
Z ,得X=- 当W Z 程序中,M98P2U-10V-20W-40D10A5B8C1K-0.3是调用子程序,同时还进行宏变量传值,A→#0,B→#1,C→#2,…K→#10,…U→#20,V→#21,W→#22,…Z→#25。 2.铣削加工中阵列钻孔的宏编程技术应用 如图所示,在半径为R的圆周上钻均匀分布的n个孔。 1).数学建模 n个孔均匀分布,则第i个孔与编程坐标系X轴夹角 为: =360/n×(i-1)(1 i n) 则第i个孔的孔中心在编程坐标系中X、Y值分别如下: =Rcos =Rsin 2).变量设置 变量名称 变量意义 #1 孔所在圆周半径R #2 均匀分布孔总个数n #3 第i个孔 #4 第i个孔的孔中心与编程坐标X轴夹角 #10 第i个孔的孔中心X坐标值 #11 第i个孔的孔中心Y坐标值 #6 孔深度 #7 R平面高度 3).均布孔加工的宏程序编写如下: #1=50 #2=6 #3=1 #5=3.14159/180 #6=-20 #7=5 while#3LE#2 #4=360/#2*[#3-1]*#5 #10=#1*COS[#4] #11=#1*SIN[#4] G90G98G81X[#10]Y[#10]Z[#6]R[#7]F500 #3=#3+1 ENDW G80(取消固定循环) G91G28Z0(退刀) M05 M30 若所要加工的均匀分布的孔的总个数、孔中心所在的圆的半径或孔深度发生变化,则只需在上述程序中修改相应的R、n、h的值即可,即变量#1、#2、#6的值发生改变。 六、注意事项: (1)上机调试的宏程序是适合于HNC数控系统的,不适合在FANUC数控系统的机床上调试运行。 (2)本次实训主要在于了解宏编程技术,需要较为扎实的计算机高级编程语言的知识,若程序调试没有通过,最好不要用于实物加工。 七、实训报告要求: (1)简要说明宏编程的基本规则。 (2)编写加工一个圆心坐标为(i,j),半径为r、起始角为α,终止角为β的圆弧形轮廓的宏程序。 (3)说说在数控加工中使用宏编程技术的好处。 思考题: 1.前述多曲线段车削加工中,如果以X为自变量,Z为函数,程序应怎样修改? 采用哪个坐标轴作为自变量编程更方便? 2.认真阅读教材第4章第6节中综合加工应用实例的宏程序,说说铣削球形曲面的宏编程思路。 《数控加工与编程》实训报告 实训项目宏编程及其技术应用 班级学号姓名成绩 周次实训时段/机床型号同组者 一、实训目的与要求 二、实训设备 三、实训内容简述 四、实训报告内容 (1)简要说明宏编程的基本规则。 (2)编写加工一个圆心坐标为(i,j),半径为r、起始角为α,终止角为β的圆弧形轮廓的宏程序。 (3)说说在数控加工中使用宏编程技术的好处。 MasterCAM的CAD绘图训练 一、实训目的 (1)、熟悉了解MasterCAM软件的操作界面和基本操作方法 (2)、掌握MasterCAM的2D基本绘图和图素编辑的方法和步骤 (3)、初步了解MasterCAM自动编程的工作原理 二、预习要求 认真阅读教材第6章微机自动编程与应用的第1、2节的内容。 三、实训理论基础 1、自动编程的工作原理 MasterCAM是一个人机对话型图形化自动编程系统。 它包括: (1)、图形构建 构建一简单的2D几何图形,包含圆弧和直线部分。 (2)、刀路定义 针对上述图形,进行外形铣削的刀路过程定义。 选择外形铣削刀路方式,连接选取需要加工的外形,再选用刀具。 定义工艺参数,设定加工深度,选取刀补方式后即可自动计算生成刀路。 (3)、加工仿真 选择刀路,分别采用线框仿真,实体仿真的方法对已定义的刀路进行验证。 (4)、NC程序的生成 将已定义的刀路通过后处理生成NC程序。 根据刀路定义时给定的主要参数,简单浏览一下NC程序内容。 改动一下刀路参数,设定深度分层,采用子程序输出方式,再生成一次程序,查看程序变化情况。 2、2D基本图形的绘制与编辑 圆弧、多边形、椭圆等的绘制方法 图素编辑和图形变换 四、实训仪器及设备 <1>PC机1台/人 <2> MasterCAM软件 五、实训内容及步骤 (1)、启动MasterCAM的Mill铣削模块 (2)、MasterCAM环境熟悉 (3)、进行2D基本绘图练习 (4)、图形存档 1、MasterCAM环境熟悉 了解一下MasterCAM的工作环境,熟悉各功能区分布、菜单结构和主要菜单控制项目。 熟悉图标菜单和快捷键的用法。 Mill9的环境界面 1)、选择点的方法(在需要给点时出现) 可直接给定用逗号分隔开的X、Y、Z坐标点值,亦可用鼠标捕捉下列点: 原点绘图坐标系的原点,通常为当前构图面的X、Y零点,Z为当前构图深度。 圆心点圆或圆弧的圆心点 端点某图素的端点,整圆的端点在0° 交点两图素的交点,(需定义两图素) 中点某图素的中点 存在点用画点命令已经画出来的实际点 相对点以某特征点作参照,再给定相对坐标增量而得到的点 四分圆点圆或圆弧的四象限点 任意点用鼠标随意拾取的点 2)、选择集(需选择图素时出现) 取消选择 串连串连一些首尾相接的图素 窗选开窗选,有窗内、窗外和窗交等方式 单一单一的某类图素 所有某相所有的某类图素 组群进行过组群定义的一组图素 结果经图形变换操作而产生出的系列图素 3)、串连设定 串连操作用于连接一些首尾相接的图素。 连接时应注意串连方向 串接时还应注意有关歧点的概念,歧点即图形分叉点。 两根线相交但交点并非线段端点时则不会成为歧点。 若串接时碰到歧点,则系统将会询问下一步串接的路线方向。 另外,部分串连方式可让你有选择地串连一封闭轮廓中的部分轮廓线。 4)、MasterCAM常用功能键 2、MasterCAM的2D基本绘图练习 练习1 绘制如图所示2D图形。 ✓ ✓ 先设线形为中心线,再画水平线,坐标为0,画垂直线,坐标为0。 ✓✓ 线形设为实线。 画水平线3根,坐标分别为y=10;y=-10;y=-20。 ✓✓ 画3个整圆,半径为5,圆心分别为(20,15),(20,-15),(-20,-20)。 ✓✓ 极坐标画线,点(-43,18),角度-60,线长50。 ✓✓ 画切线—圆外点方式,选择被切圆弧,给点(-43,18),线长默认。 ✓✓ 修剪: 三个图素方式,修剪三圆弧及连接线边界。 ✓✓ 单个图素方式,修剪两水平平行线到中心线处。 ✓✓ 画任意线段(线4),捕捉水平线1的端点,再捕捉水平线2的中点。 ✓✓ 修剪: 两个图素,拾取水平线2和刚画出的斜线4。 ✓✓ 以Part1.MC9存档。 练习2 绘制如图所示2D图形。 绘制过程可参照如下图示。 六、注意事项: (1)本练习是在MasterCAM的Mill模块下进行的,桌面启动图标是: 。 (2)构图时坐标原点的位置在默认情况下就是程序输出时的程序原点,选择构图原点应为几何中心或图形中大部分尺寸标注的基准点。 按F9功能键可切换“显示/隐藏”原点位置。 (3)MasterCAM图素修剪操作和AutoCAD有较大差别,点选完成立即产生修剪效果,因此拾取位置起决定作用,通常鼠标应点在图素要保留的部分上。 (4)尺寸标注不作要求,因此不建议在这方面作深入探究。 七、实训报告要求: (1)以Mill模块为例,简要说明MasterCAM自动编程大致分为哪几个过程? (2)MasterCAM绘制矩形时可有哪些选项? 若要以下边线中点为参照点,绘制一个具有四个圆角的矩形,该如何操作? (3)两点画弧和两点画圆有何区别? 联想到编程规则中G02/G03的R取值方法,怎样才能绘出希望得到的圆弧段? (4)在MasterCAM的Mill模块中练习绘制如下2D图形。 思考题: 1.图层是什么? 图层有什么作用? 若要在不同深度的层面上绘制不同的轮廓图素,是利用图层来实现的吗? 若要隐藏一些妨碍操作的图素,除了使用图层管理外,还可以如何处理? 2.使用颜色和群组来对图素进行分类管理对后续图形编辑及刀路定义都将带来很大的便利,你知道怎样进行分类操作吗? 《数控加工与编程》实训报告 实训项目MasterCAM的CAD绘图训练 班级学号姓名成绩 周次实训时段/机床型号同组者 一、实训目的与要求 二、实训设备 三、实训内容简述 四、实训报告内容 (1)以Mill模块为例,简要说明MasterCAM自动编程大致分为哪几个过程? (2)MasterCAM绘制矩形时可有哪些选项? 若要以下边线中点为参照点,绘制一个具有四个圆角的矩形,该如何操作? (3)两点画弧和两点画圆有何区别? 联想到编程规则中G02/G03的R取值方法,怎样才能绘出希望得到的圆弧段? (4)2D图形绘制练习。 参照前述练习 1,写出大致绘制步骤。 轮廓外形铣削的刀路定义及自动编程 一、实训目的 (1)、熟练掌握MasterCAM轮廓外形铣削的刀路定义方法 (2)、掌握MasterCAM的2D刀路定义的主要参数设置及其含义 (3)、初步掌握MasterCAM刀路定义的技巧性操作 (4)、初步了解MasterCAM后置处理文件对程序输出格式的影响 二、预习要求 认真阅读教材第6章微机自动编程与应用的第4、5、7节的内容。 三、实训理论基础 关于刀具面和构图面的设定,只要两者一致,无论图a还是图d的模式,程序都将以构图面为XY面、刀具轴为Z来进行输出。 换而言之,无论你将图形绘制在什么构图面上,只要将刀具面和构图面设为一致,都可以输出成按俯视面XY来进行加工的程序,而不需要进行旋转变换操作。 对图b设定方式的铣削,必须用3D轮廓方式,而图c设定方式的铣削,可正常获得G18(G02/G03)的程序格式输出。 2D轮廓外形是指组成外形轮廓的所有线、圆弧、曲线等图素均位于同一构图面内,2D外形铣削可根据需要进行电脑刀补或机床刀补编程。 3D轮廓外形是指组成外形轮廓的所有线、圆弧、曲线等图素并不一定都位于同一构图面内,3D外形铣削的刀径补偿的左右方向判断是依据构图平面进行的。 对于垂直于刀具平面(XY)中的圆弧,若无刀补设定,则按相应构图平面内的圆弧生成程序,若有刀补设定,则自动将圆弧逼近转换成直线而生成程序。 2D或3D铣削方式将由系统根据所串连的外形轮廓的性质自动选用。 1、共同的刀具参数设定选项的含义 在刀具缩微图显示区内点击鼠标右键,将弹出一菜单,用以从刀具图库内选取一把刀具,或自定义刀具。 (1)刀具号和刀具补偿号: 系统将根据所选用的刀具自动地分配刀具号和刀具补偿号,但也允许人为地设置刀号。 生成NC程序时,将自动地按照刀号产生TxxM6的自动换刀指令。 半径补偿号: 当轮廓铣削时设置机床控制器刀补为左(右)补偿时,将在NC程序中产生G41Dxx(G42Dxx)和G40的指令。 刀长补偿号: 将在NC程序中产生G43Hxx(G44Hxx)和G49的指令。 注: 刀具号和补偿号可设置成不同的数值 (2)进给率: 这里将赋予刀具在XY平面内的进给速度,在NC程序中产生Fxxxx指令。 (3)Z轴进给率: 赋予Z轴进刀切入时的进给速度。 在NC程序中产生Z__Fxxxx指令。 注: 提刀速度通常和快进速度相当(当后续设定为快速提刀时提刀速度无意义) (4)刀具直径和刀角半径: 刀具直径和刀角半径通常在选用刀具后自动产生,其数据的大小将直接影响刀路数据的计算。 当使用平底刀具时,刀角半径=0;曲面加工用球刀,刀角半径=球刀半径;圆鼻刀的刀角半径<刀具半径。 (5)程序名称: 即主程序番号。 在NC程序中产生Oxxxx的指令。 若在某些方式的加工参数设定项中设定了使用子程序(副程式)的功能,则子程序番号将由系统自动产生。 (6)起始程序行号和行号增量: 指生成NC程序中行首的N代码的起始号和行号增量。 注: 若不需要输出N指令,需要修改后处理文件,或通过程序编辑器来消除。 (7)主轴转速: 用以产生NC程序中Sxxxx指令。 (8)冷却液: 用以在程序中相应加工起始位置添加M08(或M07)、M09的自动开关冷却液的指令。 注: 这里的关闭选项是指不生成M07(或M08)、M09指令。 并非指仅生成M09指令,M09指令将由系统自动生成。 (9)机械原点: 用来作为G92格式输出时其后所跟的起刀点坐标值。 (10)刀具面/构图面: 系统默认情形下是按构图原点和程序原点重合来进行输出的,但在已经绘好图形,而生成程序时又想按另外的点为程序零点来输出时,可通过此处来重设工件原点。 若定义了一个新的工件原点
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Funuc 程序 进阶