CNC车床高斯曲线加工
随着新产品研制的发展,许多(duō)新产(chǎn)品的形状采(cǎi)用了特殊曲线,如椭圆、双曲线和高斯曲线等,而如何加工这些特殊曲线就成了机加人员的新课题。
从(cóng)多年(nián)的实践来看,采用宏程序(xù)编程,然后在数控车床上车削是较为简单(dān)、经济和方便的一种方法(fǎ)。
但是这种方法对于编程者(zhě)要求较高,这是因为宏(hóng)程序的编制要求程序员不仅具有丰富的数学知识,还要熟悉数控车床的编程(chéng)指令,对于宏程序更应是了如指掌。
宏程序分为A类和B类两种:A类宏(hóng)程(chéng)序通常采用H代码编制,B类宏程序通常用赋值语句和数学(xué)公式进行编制,易为大家接(jiē)受,FANUC0i型数控(kòng)系统的宏程序就是B类。
▽长按爱心,添加小编,技术交流▽
一、FANUC0i型数控系统(tǒng)宏程序
在FANUC0i型数控系统(tǒng)中变量分为4种(zhǒng)类型,即空变量、局部变(biàn)量、公共变量和系统变量(liàng)。空变量的变量号为(wéi)#0,该(gāi)变量总为空,没有值能赋给该变量;局部变量的变量号为#1~#33,该类变量只能用于在宏程序中存储数据,当断电(diàn)时局部变量(liàng)初始(shǐ)化为空,调用(yòng)宏程(chéng)序时,给局部(bù)变量赋值。公(gōng)共变量的变量(liàng)号为#100~#199、#500~#999,公共变量在不同的宏程序中的意义相同。当断电时,变量(liàng)#100~#199初始化为空,变量#500~#999中的(de)数据保存(cún),即使断电也不丢失。系统变量的变量号为#1000~,系统变量用于读和(hé)写CNC的各(gè)种数据,例如刀具的当前(qián)位置和刀具补偿值等。我们在编写宏程序(xù)时可以引用局部变(biàn)量和(hé)公共变量,在引用变量,特别是公共变量时(shí),为消除变量内原有数据的影响,一定要给变量重新赋值后再引用。
宏程序是用户实(shí)现机床功能扩展的一(yī)种方法。在宏程序中可以使用变(biàn)量,给变量赋值,变量(liàng)间可进行运算和程序跳转。此外,宏程序还提供了(le)循环语句、分支语句和子程序(xù)调用语句,一层宏循环里(lǐ)还可以(yǐ)嵌套多层循(xún)环。所以可以应用宏程序指令编制出简洁合理的小容量加工程(chéng)序,扩展数控机床功(gōng)能,提高(gāo)加工效率,充分发(fā)挥(huī)数控机床的作(zuò)用。
二(èr)、高斯曲线的方程
高斯曲线在直角坐标(biāo)系下的方程是
,其中x是自变量(liàng),y是因变量。但此方程我们还不能直接应用(yòng)于数(shù)控车床,因为在数控车床上,坐标系是这样规
定的(de):Z轴与主轴轴线平行,正方(fāng)向是远离工件方向,X轴与主轴轴(zhóu)线垂直,正方向是远离主轴轴线方向。因此我们需要把直(zhí)角坐标系的方程转换为数控车床坐标(biāo)系下的(de)方程,同时数控车床不能识别指数函数和平方等数学(xué)符号,这就需要用宏程序中的算术和逻辑(jí)运算符号替换其(qí)中的数学符号,变成数控车床可识别的公式。
经变换后高斯曲(qǔ)线在数控坐(zuò)标下的方程如下。
X=140.6/EXP(((z-620)/1339)*((z-620)/1339))+9.358/
EXP(((z+251.5)/351.8)*((z+251.5)/351.8))+24.58/EXP(((z+740.4)/464.1)*((z+740.4)/464.1))
三、数控(kòng)车床加工特殊曲线的方法
数控(kòng)车床(chuáng)可通过G01、G02等G代码直接加工直线、圆弧,但并没有专门的G代码来加工椭圆、双曲线和(hé)高斯(sī)曲线等特殊曲线。在加工此类曲线(xiàn)时一般采用(yòng)直线逼近法,即在Z方向上依次递减或递增,以0.05mm~0.5mm为一个步距,每递减或递增(zēng)一个步距得到一个(gè)Z值。然(rán)后,通过曲线方(fāng)程计算求出对应的X值,再将刀具(jù)直(zhí)线插补至计算得出的(X,Z)值所确定的点,依次插补便可完成特殊曲线的加工。
四、编(biān)制加工(gōng)高斯曲线的宏程序
现以一个简(jiǎn)单的零件为例,说明高(gāo)斯曲(qǔ)线的宏程序编制过程(chéng)。如图1所示,在Φ260mm的毛坯棒料上加工一段长100mm的高斯曲线外(wài)轮廓。图1是直角坐标(biāo)系下的零件图样,图2是数控坐标下的零(líng)件(jiàn)图样。
1490873504692141.png1490873504561622.png
在高斯曲线数控坐标方程中,我们用(yòng)#101表示自变量z,用#102表示(z-620)/1339,用#103表示(z+251.5)/351.8,用#104表示(z+740.4)/464.1,用#105表(biǎo)示因变量x,则高斯曲线的方(fāng)程可表示为:
#105=14.6/EXP(#102*#102)+9.358/EXP(#103*#103)+24.58/EXP(#104+#104)
编制精加工程序如下(xià):
O0001
N10#101=0;(自变量初值(zhí))N20#102=(#101-620)/1339;
N30#103=(#101+251.5)/351.8;N40#104=(#101+740.4)/464.1;
N50#105=14.6/EXP(#102*#102)+9.358/EXP(#103*#103)+24.58/EXP(#104*#104);
N60G01X[2*#105]Z[-#101]F0.2;(直线逼近法加工高斯曲线)
N70#101=#101+0.1;(z值递增一个步(bù)距)
N80IF[#101LE100.0]GOTO20;N90G01X265.0;
N90G00X100.0Z100.0;N100M30;
以上程序(xù)为最后一(yī)刀的精加工程序,在实际加工中要考虑到毛坯的余量,这就(jiù)需要先粗车,再精车。粗车(chē)同样也是沿轮廓车削,可采用G71或者G73指令粗车,然(rán)后用(yòng)G70指令精车,编制完整的(de)程序如下(xià)。
O0002
N10G40G21G97G99;N20M03S800;
N30T0101;
N40G00X262.0Z2.0;N50G73U9.0R9.0;
N60G73P70Q150U0.3W0.0F0.2;N70#101=0;(自变量初值)
N80#102=(#101-620)/1339;N90#103=(#101+251.5)/351.8;
N100#104=(#101+740.4)/464.1;
N110#105=14.6/EXP(#102*#102)+9.358/EXP(#103*#103)+24.58/EXP(#104*#104);
N120G01X[2*#105]Z[-#101]F0.1S1000;(直线逼近法加工高斯曲线)
N130#101=#101+0.1;(z值递增一个步距)N140IF[#101LE100.0]GOTO80;
N150G01X265.0;N160G70P70Q150;
N170G00X100.0Z100.0;N180M30;
虽然随着CAD/CAM软件的应(yīng)用,手工编程、宏(hóng)程(chéng)序应用空间(jiān)日趋缩小,但是在某些情(qíng)况下PC机也无能为力,这就(jiù)要求我们(men)深挖手工编(biān)程,发挥数控机床潜力(lì)。