B类宏程序,数控车椭圆加工
- 格式:doc
- 大小:176.00 KB
- 文档页数:8
数控车床加工椭圆的宏程序随着数控技术不断进步, 数控车床加工中各种复杂形面也日渐增多, 如椭圆、抛物线、正弦曲线、余弦曲线、双曲线等各种非圆曲面。
对于上述各种复杂成形面, 利用CAM 软件进行自动编程相对简单, 但由于种种原因, 在绝大多数情况下数控车床主要还是依靠手工编程。
椭圆轴线与数控车床Z 轴重合的情形相对比较简单, 其解决方案也多见于各类文献, 但在本例中椭圆轴线与数控车床Z 轴呈一定夹角, 编程和加工难度陡增,主要原因如下: ①机床数控系统本身既不存在加工椭圆等非圆曲线的G 指令, 更没有类似G68 这样的旋转指令, 使编程难度大大增加。
②加工中变量的参数直接影响着加工的效率以及质量, 很容易产生过切报警, 即使程序正确无误, 实际加工时的参数调整也非常困难, 直接影响着加工能否顺利进行, 以及加工精度能否保证。
总而言之, 目前尚未见有表述类似实例的文章。
本实例进行了有益的尝试和探索, 给出了切实可行的解决方案, 为类似问题提供了难得的参考及借鉴。
椭圆宏程序的编制如下。
1. 椭圆方程宏程序主要利用各种数学公式进行运算加工, 因此编制旋转椭圆程序操作者必须要掌握椭圆方程和旋转公式等各种数学公式的计算方法并加以灵活运用。
椭圆方程有两种形式, 分别是椭圆的标准方程和参数方程。
椭圆标准方程:椭圆参数方程:其中a 、b 分别为X、Z 所对应的椭圆半轴。
2. 旋转公式由于数控车床并不像加工中心那样存在着旋转指令, 所以要利用旋转公式来进行椭圆的旋转。
旋转公式的定义:如图1 所示, 平面上绕点O 旋转, 使平面上任意一对对应点P 和P′与一个定点O 连接的线段都相等, 即OP = OP′, 且角∠POP′等于角θ, 点O称为旋转中心, 角θ称为旋转角。
旋转公式: 如图1 所示, 取直角坐标系, 以原点O为旋转中心, 旋转角为θ, 平面上任意一点P ( x, z) 旋转到P′( x′, z′) , 令∠XOP= α, 则∠XOP′= α+ θ, 且OP = OP ′。
采用数控车 B类宏程序加工半椭圆的几种方法分析摘要:编程是数控的技术关键之一,编程主要内容有分析图纸、确定加工工艺、数值计算、编写程序和模拟验证。
宏程序是数控编程中非常重要的一个部分,利用宏程序可以完成椭圆、抛物线等非常规曲线的手工程序的编制,同时简化程序提高效率,是其它指令所不能取代的。
本文将结合教学实际和车间加工情况,分别从几种编程方法对半椭圆的加工在数控车床B类宏程序应用进行分析。
关键字: B类宏程序半椭圆编程用户宏程序是FANUC数控系统及类似产品中特殊编程功能,用户宏程序由于允许使用变量、算术和逻辑运算及条件转移使得编制相同加工操作的程序更方便,更容易。
同时也可以解决一部分常规编程不能完成的图形程序,例如椭圆、抛物线、双曲线、正弦曲线等。
宏程序可以分为A类宏程序和B类宏程序,A类宏程序是早期发展的,是以G65 Hxx P#xx Q#xx R#xx的格式输入,代码来含义很不明显,编制宏程序困难 ,这有点类似于计算机中的汇编语言。
在FANUC 0MD等老型号的系统面板上没有“+”、“-”、“x”、“/”、“=”、“[]等”等符号,故不能进行这些符号输入,也不能用这些符号进行赋值及数学运算,为此如果应用B类宏程序的话就只能在计算机上编好再通过RS-232接口传输的数控系统中,可是如果实训车间没有PC机和RS-232电缆,那么只有通过A类宏程序来进行宏程序编制。
B类宏程序要好用一点, 以直接的公式和语言输入,这和计算机中的高级编程语言很相似,程序也很易懂,但对学生的要求可能要高一点,要有一定的英语基础和一定的计算机基础。
在FANUC 0i及其后(如FANUC 18i)的系统中,则可以输入“+”、“-”、“x”、“/”、“=”、“[]等”等符号,并运用这些符合进行赋值及数学运算,即可按B类宏程序进行编写。
A类宏程序和B类宏程序和相比较,B类宏程序在现实中的应用更为广泛。
对于刚刚学习宏程序的同学,宏程序就像学习计算机C语言一样,理解上有很多困难。
宏程序加工球面椭圆在数控铣床上的应用【摘要】宏程序是手工编程的高级形式,合理的运用宏程序会使程序变得简单、而且加工精度很高、相对于CAD/CAM自动编程软件的数控程序、加工时间也会大大缩短。
文章通过实际的加工实例、从椭圆程序结构上探索了宏程序在数控加工上的运用。
【关键词】数控宏程序椭圆变量运用1 导言随着科学技术的发展,数控机床在机械制造业中的应用越来越广泛,而在对数控机床的应用中,机床系统所提供的宏程序、参数编程的功能,并没有得到广泛的运用。
在程序中大量使用变量,通过对变量进行赋值及处理的方法达到程序功能,实现加工,这种有变量的数控程序称之为宏程序。
宏程序与普通的程序的区别在于:普通程序只可指定常量、常量之间不可以运算,程序只能按顺序执行,不能跳转、功能是固定的。
宏程序可以使用变量、可以给变量赋值、变量之间可以进行运算、程序运行可以跳转。
实际的教学和生产中,普通的数控指令、程序都是针对平面、直线和简单的圆弧等轮廓。
当遇到诸如球面、椭圆等非圆曲线零件的加工,除非运用CAD/CAM 软件进行自动编程,否则将无法加工零件。
尽管现在使用各种CAD/CAM软件编程已成为数控加工的潮流,但手工编程毕竟还是基础,各种疑难杂症的解决,往往还是要运用到宏程序。
宏程序具有灵活性、通用性、和智能性等特点。
宏程序在生产实践中应用广泛,尤其是在各种曲面的编程中最为常用。
掌握宏程序在数控编程和加工中的运用。
是学好数控技术的基础。
2 平面椭圆宏程序在加工中的运用椭圆是数控加工中常遇到的曲面之一,也是现有数控系统中须用宏程序来进行编程和加工的曲面。
编制椭圆加工程序和加工方法也就是利用了椭圆的方程和参数,运用椭圆变量之间的关系构成加工程序,形成刀具加工轨迹。
2.1 椭圆标准方程。
X=acosθy=bsinθ2.2 平面椭圆零件加工图例。
零件的加工使用TK7650型FANUC系统数控铣床,采用手动换刀方式加工。
设椭圆的中心为坐标原点、运用椭圆的参数方程通过选择椭圆极角θ的增量将椭圆分成若干线段或圆弧,每次增加角度变量为2,从极角θ=90开始,切削到极角θ=460终点结束。
下面主要介绍F A N U C 0i-T C系统中的B类宏程序。
一、宏程序数控程序中含有变量的程序称为宏程序。
宏程序可以让用户利用数控系统提供的变量、数学运算、逻辑判断和程序循环等功能,来实现一些特殊的用法,从而使得编制同样的加工程序更加简便。
1.变量普通加工程序直接用数值指定G代码和移动距离,例如,GO1和X100. 0。
使用用户宏程序时,数值可以直接指定或用变量指定。
当用变量时,变量值可用程序或用M D I面板上的操作改变。
如:#1=#2+ 100或G01 X#1 F300。
(1)变量的表示及类型一般编程方法允许对变量命名,但用户宏程序不行。
变量用变量符号“#” 和后面的变量号指定。
例如:#1、#100 等。
表达式可以用于指定变量号。
此时,表达式必须封闭在括号中。
例如:#[#1+#2-12]。
变量根据变量号可以分成四种类型,如表1所示。
(2)变量的运算变量常用算术、逻辑运算和运算符(如表2和表3所示)。
运算符右边的表达式可包含常量,或由函数或运算符组成的变量。
表达式中的变量“#j”和“#k”可以用常数赋值。
左边的变量也可以用表达式赋值。
其中有些需要注意的问题:1)角度单位。
函数正弦、余弦、正切、反正弦、反余弦和反正切的角度单位是度(°)。
例如:90°30′表示为90.5°。
2)运算符的优先级。
按照优先级的先后顺序依次是:函数→乘和除运算(* 、/、AND、MOD)→加和减运算(+、-、OR、XOR)。
3)括号嵌套。
括号用于改变运算优先级。
括号最多可以嵌套使用5级,包括函数内部使用的括号。
2.功能语句(1)无条件转移(GOTO)语句转移到有顺序号n 的程序段。
格式为:GOTOn,其中n 表示程序段号。
例:GOTO1,表示转移到第一程序段。
再如:GOTO#10,表示转移到变量#10决定的程序段。
(2)条件转移(IF)语句在IF后指定一条件,当条件满足时,转移到顺序号为n 的程序段,不满足则执行下一程序段。
椭圆加工宏程序
实际应用中,还经常会遇到各种各样的椭圆形加工特征。
在现今的数控系统中,无论硬件数控系统,还是软件数控系统,其插补的基本原理是相同的,只是实现插补运算的方法有所区别。
常见的是直线插补和圆弧擂补,没有椭圆插补,手工常规编程无法编制出椭圆加工程序,常需要用电脑逐一编程,但这有时受设备和条件的限制。
这时可以采用拟合计算,用宏程序方式,手工编程即可实现,简捷高效,并且不受条件的限制。
加工如下图所示的椭圆形的半球曲面,刀具为R8的球铣刀。
利用椭圆的参数方程和圆的参数方程来编写宏程序。
椭圆的参数方程为:X=A*COS&;
Y=B*COS&;
其中,A为椭圆的长轴,B为椭圆的短轴。
编制参考宏程序如下:
%0012
#1=0
#2=20
#3=30
#4=1
#5=90
WHILE #5 GE #1 DO1
#6=#3*COS[#5*PI/180]+4
#7=#2*SIN[#5*PI/180]
G01X[#6]F800
Z[#7]
#8=360
#9=0
WHILE #9 LE #8 DO2
#10=#6*COS[#9*PI/180]
#11=#6*SIN[#9*pi/180]*2/3
G01X[#10]Y[#11]F800
#9=#9+1 (计数器)
END1
#5=#5-#4 (计数器)
END2
M99
在上例中可看出,角度每次增加的大小和最后工件的加工表面质量有较大关系,即记数器的每次变化量与加工的表面质量和效率有直接关系。
希望读者在实际应用中注意。
用宏程序在数控车上加工椭圆数控宏程序的编制与应用是手工编程的最高形式,它具有灵活性、通用性、和加工效率高的特点。
在此,我将自己在宏程序应用中的经验总结介绍。
标签:宏程序数控机床加工在中职数控车大赛当中,各种非圆曲线加工成为比赛的重要内容,选手们一般用自动编程加工,自动编程产生的程序繁琐,难以分析和查找错误,加工时间相对较长。
而用宏程序不但简化了编程,而且效率也提高不少。
数控宏程序的编制与应用是手工编程的最高形式,它具有灵活性、通用性、和加工效率高的特点。
在此,我将自己在宏程序应用中的经验总结介绍。
一、加工工艺路线1.装夹件2毛坯,粗、精车件2左端部分至尺寸要求。
2.装夹件1毛坯一端,伸出长度60mm,平端面对刀。
3.用93°菱形外圆车刀粗、精车左端外轮廓至尺寸要求。
4.用切槽刀粗、精车40°槽,并粗车椭圆左端槽。
5.调头夹φ36×28外圆,定总长97±0.05mm,粗精加工内孔部分至尺寸要求。
6.粗车椭圆。
7.将件2旋入件1,定件2总长。
8.用93°菱形外圆刀粗车件2椭圆。
9. 用93°菱形外圆刀精车椭圆和槽。
二、工艺知识1.椭圆的加工原理宏程序其实就是根据曲线方程以变量方式进行插补编程加工零件,在X轴、Z轴构成的坐标平面上,椭圆的标准方程是:x2/b2+z2/a2=1。
其中:a为Z轴方向长半轴,b为X轴方向短半轴;a、b为常量是已知量,X、Z是未知量。
因为零件图中工件坐标系零点与椭圆中心不在同一点上,编程时需要换算两坐标系之间的关系,因此:①若以Z值为自变量时(用#1赋值),转换公式为:即:#2=24/40*SQRT[40*40-[#1+12]*[#1+12]]②若以X为自变量时(用#1赋值),转换公式为即:#2=-40+40/24*SQRT[24*24-[#1*#1]]2.加工难点分析椭圆是较难加工的部分,在FANUC-0i,G71指令中不能包含宏程序,G73指令空行程太多,因此粗加工椭圆轮廓时,常用的方法是根据椭圆的近似画法,采用两段圆弧用G71编程粗车,然后在用宏程序精车椭圆。
我分享一下椭圆粗加工的方法,在此这前我查阅了很多资料,是关于椭圆加工方面的,大多都是用G73这个指令来完成粗加工的,但必需是支持B 类宏程序的数控系统。
前段时间我在广数980TDA 上发现不能用G73加工椭圆,无法计算和运行P~~~Q 之间宏变量的数据和动作,但是会执行普通指令的动作,这让我很闷,至于是什么原因我也不懂了。
当然了,在广数908TDA 上有一个专加工椭圆的指令G6.3和G6.2,其用法和G3和G2相差无几,方向也一样,只是格式上有点不同。
因此,我们可以在G73中用G6.3来完成椭圆的粗加工,G70调用精车。
倘若有些系统也不能用G73加工椭圆,也没有像G6.3和G6.2加工椭圆之类的指令的话,这会很让人抓狂的。
就算是这样,我们还是有别的方法的,我们可以用宏变量来模拟G73指令的样式来加工。
通过WHILE 和IF 函数或两个函数的组合来完成,首先需要分层,然后再一层层的减直到减完,分了多少层就要加工多少次。
12222=++B A Z X 这是一个椭圆的公式, 我们可以把它变成另外一个形式,那就是在数控车床上宏编程使用的公式,若用原公式来编写程序的程序不够简洁,因此有必要这样做。
我们先设定A 为椭圆的短半轴、B 为长半轴在Z 轴上的椭圆:1. 原式:12222=++BA Z X 分解:~~~~~~~~~~~~~~.65.4.3.21.1222222222222222222222222Z B BA X ZB ABX Z B AX B Z A A B X B BZ A A X BZ A X -=-=-=-=*-=-= 我把椭圆公式一步一步的分解到我们所需要的最简单的表达式,这公式算出的X 值是半径值,要换成直径值还要乘以2。
除此之外还有另外一个公式: 2.ααCOS B Z SIN A X *=*=X也是半径值,Z值是相对于椭圆中心面言,而编程时的坐标为(Z=B*COSα-B),α为椭圆中心与椭圆上任意一点的连线和Z轴上的夹角。
非圆曲线编程是手工编程中的难点,本文以椭圆加工为例,介绍了循环功能(WHILE语句)在椭圆宏程序编程中的应用。
椭圆是数控车加工中相对较难却又比较典型的非圆曲线,目前数控系统还没有提供完善的非圆曲线插补功能,因此在实际操作中椭圆的编程多采用变量来完成。
虽然随着计算机辅助编程的进一步普及,手工编写宏程序越来越少,但作为初学者,根据不同情况,掌握各种非圆曲线,特别是椭圆曲线的编程仍然是必要的。
一、循环功能WHILE语句
椭圆宏程序编制中重要的循环功能语句是WHILE语句,其格式如下:
WHILE[条件表达式] DO m(m=1,2,3) ;
END m ;
说明:如果指定的条件表达式满足时,则执行DO到END之间的程序。
否则,转道END后面的程序段。
DO后面的标号和END 后面的标号是指程序执行范围的标号,标号值为1,2,3。
二、椭圆标准方程与参数方程
编制椭圆宏程序要熟悉椭圆标准方程和参数方程,它们均表达出了椭圆上点的坐标及两坐标之间的关系。
例如:图1中,椭圆的标准
方程为
(20mm为长半轴的长,14mm为短半轴的长,椭圆的中心即为坐标系的原点),参数方程为X=20cosФ,Y=14sinФ(Ф为角度参数)。
宏程序编制中,编程坐标系是Z 、X 轴,所以在应用椭圆标准
方程或参数方程时,要从X、Y轴相应转换为编程坐标系中的Z 、X
轴。
如上例椭圆在X、Z坐标系中的标准方程则为:
(图2),参数方程相应转换为X=14sinФ,Z=20cosФ。
变量编程时,注意椭圆上点的坐标在椭圆坐标系和在编程坐标系中的不同表达,两者之间的联系在于椭圆原点在编程坐标系中的值。
椭圆坐标系原点在椭圆圆心,编程坐标系及原点是由编程者设定,下文编程坐标系原点均选在工件右端面与中心轴线的交点处。
三、以Ф参数(角度)为初始变量
本帖隐藏的内容
如图3,毛坯为Ф30mm×70mm的棒料,45号钢。
编程原点设在右端面与中心轴线的交点上,椭圆原点在编程坐标系(0,-20)处。
分析:三爪卡盘夹住左端,伸出55mm,手动车右端面,选择1号30?外圆车刀加工外轮廓。
切削用量的选择:粗加工主轴转速为
600r/min,进给量为0.25mm/r,精加工主轴转速为800r/min,进给
量为0.1mm。
在椭圆坐标系中,其标准方程为:
;参数方程为:X=14sinФ,Z=20cosФ。
从零件图上可以看出,椭圆
轮廓的起点角度为0
,终点角度为144(180-36=144),所以适合采用以Ф参数(角度)为初始变量,应用参数方程来表达椭圆上点的坐标。
编制程序如下。
O1234;
T0101 M03 S600;
GOO X34 Z2.0;
G73 U14 W0 R7;
G73 P10 Q20 U1 W0.05 F0.25;
N10 G00 X0.;
G42 G01 Z0. F0.1;
#1=0;(角度初始值)
WHILE [#1 LE 144] DO1;
#2=14*SIN[#1];
#3=20*COS[#1];
G01 X[2*#2] Z[#3-20]F0.1;
#1=#1+0.5;
END 1;
G01 Z-40; X28;
W-10;
N20 G40 X33;
M03 S800;
G70 P10 Q20;
G00 X150 Z150;
M5;
M30;
上例中,#1(角度)为初始变量,椭圆上点的X 、Z(#2 、#3)坐标是因变量,它们之间的关系由参数方程X=14sinФ,Z=20cosФ体现,即#2=14*SIN[#1],#3=20*COS[#1],在编程坐标系中,点的坐标就表达成X[2*#2]Z[#3-20]。
四、以Z坐标为初始变量
如图4,毛坯为Ф30mm×50mm的棒料,45号钢。
编程原点设在右端面与中心轴线的交点上,椭圆原点在编程坐标系(0,-15)处。
分析:工艺分析参见上例。
零件上椭圆曲线只有右边一半,长半轴长15mm(Z轴),短半轴长10mm(X轴),其椭圆标准方程为:
,参数方程为X=10sinФ,Z=15cosФ,椭圆曲线的起点Z坐标为15,终点坐标为0,设Z坐标为变量#1,根据椭圆标准方程,有
(设为#2)。
编制程序如下:
O1235;
G 40 T0101 M03 S600; GOO X34 Z2.0;
G73 U14 W0 R7;
G73 P10 Q20 U1 W0.05 F0.25; N10 G00 X0.;
G42 G01 Z0. F0.1;
#1=15;(Z初始值) WHILE [#1 GE 0] DO1;
#2=10*SQRT[15*15-#1*#1]/15; G01 X[2*#2] Z[#1-15] F0.1;
#1=#1-0.1; END 1;
G01 W-5; X28;
Z-30;
N20 G40 X33; M03 S800; G70 P10 Q20;
G00 X150 Z150; M30;
本例也可以用Ф(角度)为初始变量,应用椭圆参数方程进行编程,其中Ф的变化范围是0?~90?。
读者可参考上例编写。
五、椭圆原点不在零件轴线上
如图5,毛坯为Ф30mm×80mm的棒料,45号钢。
编程原点设在右端面与中心轴线的交点上,椭圆原点在编程坐标系(14.15,-22)处,椭圆轮廓位于零件中间。
分析:椭圆标准方程为:
,长半轴长20mm(Z轴),短半轴长10(X轴)。
与前2例不同,本例中椭圆轮廓的起点不在零件右端面编程坐标系原点处,而位于零件中间部位,需计算椭圆起点坐标:从图中可得Z=14,即(
),X =10(由椭圆标准方程得到
)。
终点坐标:
,Z值变化范围是(14~-14)。
所以选择Z坐标为初始变量,应用标准方程表达椭圆上点的坐标。
为避免重复,下面只给出椭圆轮廓的程序段。
椭圆起点坐标Z=14,设X值为#1,#1=10*SQRT[20*20-14*14]/20;转换到编程坐标中,起点坐标X=2*[17.5-#1],设#2=2*[17.5-#1],则椭圆的起点坐标为:(#2,-8)。
编制程序如下:
G00 X34 Z2.0;
#1=10*SQRT[20*20-14*14]/20;
#2=2*[17.5-#1]; G00 X[#2];
G01 Z-8 F0.1;
#3=14;(Z初始值)
WHILE [#3 GE -14] DO1;
#4=10*SQRT[20*20-#3*#3]/20
G01 X[2*[17.15-#4]] Z[#3-22] F0.1;
#3=#3-0.1; END 1;
G01 W-8;
上例引入了4个变量,变量#1和#2的引入是为了表达曲线起点的坐标值,变量#3和#4表达的是椭圆曲线上点的Z、X值。
六、小结
上面几个实例中,有以角度为初始变量的椭圆宏程序编程;有以Z(X)坐标为初始变量的椭圆宏程序编程;有的椭圆曲线轮廓位于零件
的最右(左) 端;有的曲线位于零件中间部位。
但不管是什么情况,椭圆宏程序编程都要有以下几个的要点。
①根据零件图中椭圆轮廓的形状和位置,选取合适的初始变量,角度或Z(X)坐标。
②正确表达椭圆曲线上点的坐标。
根据零件图上的尺寸标注,选择标准方程或参数方程表达椭圆上点的坐标。
③找出(有时需计算出)椭圆原点在编程坐标系中的坐标,正确表达椭圆上的点在编程坐标系中的坐标。
椭圆宏程序的编制也可以用IF条件语句,复杂的零件图中,还可以考虑子程序编制。