汪海波
摘要:西门子840d数控系统不同于以前曾广泛应用的810t/m和840c等老数控系统,它并没有提供专门的双向螺距误差补偿功能,通过对840d系统中的下垂补偿功能的分析研究,找到了一种方法,成功的解决了进行双向螺距误差补偿的问题。
关键词:数控系统下垂补偿功能双向螺距误差补偿
由于机床丝杠在制造、安装和调整等方面的误差,以及磨损等原因,造成机械正反向传动误差的不一致,导致零件加工精度误差不稳定。因此也必须定期对机床坐标精度进行补偿,必要时要做双向坐标补偿,以达到坐标正反向运动误差的一致性。
一、西门子840d数控系统的补偿功能
西门子840d数控系统提供了多种补偿功能,供机床精度调整时选用。这些功能有:
1、温度补偿。
2、反向间隙补偿。
3、插补补偿,分为:
(1)螺距误差和测量系统误差补偿。
(2)下垂补偿(横梁下垂和工作台倾斜的多维交叉误差补偿)。
4、动态前馈控制(又称跟随误差补偿)。包括:速度前馈控制和扭矩前馈控制。
5、象限误差补偿(又称摩擦力补偿)。分为:常规(静态)象限误差补偿和神经网络(动态)象限误差补偿。
6、漂移补偿。
7、电子重量平衡补偿。
在西门子840d功能说明样本和资料中所列的众多补偿功能中,都没有指出该系统具有双向螺距误差补偿功能。但是在下垂补偿功能描述中却指出,下垂补偿功能具有方向性。这样,如果下垂误差补偿功能,在基准轴和补偿轴定义为同一根轴时,就可能对该轴进行双向丝杠螺距误差补偿,由此提供了一个双向螺距误差补偿的依据。
二、840d下垂补偿功能的原理
1、下垂误差产生的原因:
由于镗铣头的重量或镗杆自身的重量,造成相关轴的位置相对于移动部件产生倾斜,也就是说,一个轴(基准轴)由于自身的重量造成下垂,相对于另一个轴(补偿轴)的位置产生了变化。
2、840d下垂补偿功能参数的分析:
西门子840d数控系统的补偿功能,其补偿数据不是用机床数据描述,而是以参数变量,通过零件程序形式或通用启动文件(_ini文件)形式来表达。描述如下:
(1)$an_cec[t,n]:插补点n的补偿值,即基准轴的每个插补点对应于补偿轴的补偿值变量参数。
(2)$an_cec_input_axis[t]:定义基准轴的名称。
(3)$an_cec_output_axis[t]:定义对应补偿值的轴名称。
(4)$an_cec_step[t]:基准轴两插补点之间的距离。
(5)$an_cec_min[t]:基准轴补偿起始位置:
(6)$an_cec_max[t]:基准轴补偿终止位置
(7)$an_cec_direction[t]:定义基准轴补偿方向。其中:
★$an_cec_direction[t]=0:补偿值在基准轴的两个方向有效。
★$an_cec_direction[t]=1:补偿值只在基准轴的正方向有效,基准轴的负方向无补偿值。
★$an_cec_direction[t]=-1:补偿值只在基准轴的负方向有效,基准轴的正方向无补偿值。
(8)$an_cec_is_modulo[t]:基准轴的补偿带模功能。
(9)$an_cec_mult_by_table[t]:基准轴的补偿表的相乘表。这个功能允许任一补偿表可与另一补偿表或该表自身相乘。
3、下垂补偿功能用于螺距误差或测量系统误差补偿时的定义方法:
根据840d资料的描述,机床的一个轴,在同一补偿表中,既可以定义为基准轴,又可以定义为补偿轴。当基准轴和补偿轴同为一个轴时,可以利用下垂补偿功能对该轴进行螺距误差或测量系统误差补偿。从补偿变量参数$an_cec_direction[t]的描述中可以看出,由于下垂补偿功能补偿值具有方向性,所以,下垂补偿功能在用于螺距误差或测量系统误差时,可以理解为在坐标轴两个方向上可以分别给予补偿。一个表应用于补偿轴的运行正方向,另一个表应用于补偿同一轴的运行负方向。
三、840d下垂误差补偿功能几个关键机床数据的说明
1、nc机床数据:
md18342:补偿表的zui大补偿点数,每个补偿表zui大为2000插补补偿点数。
md32710:激活补偿表。
md32720:下垂补偿表在某点的补偿值总和的极限值,840de(出口型)为1mm;840d(非出口型)为10mm。
2、设定机床数据:
sd41300:下垂补偿赋值表有效。
sd41310:下垂补偿赋值表的加权因子。
由于这两个数据可以通过零件程序或plc程序修改,所以一个轴由于各种因素造成的不同条件下的不同补偿值可通过修改这两个数据来调整补偿值。
四、应用
下垂补偿功能应用于双向螺距误差补偿,其装载步骤与840d螺距误差补偿方法一样。
例一:正向补偿文件
%_n_nc_cec_ini
chandata(1)
$an_cec[0,0]=0.000
$an_cec[0,1]=0.000
$an_cec[0,2]=0.000
$an_cec[0,3]=0.000
$an_cec[0,4]=0.000
$an_cec[0,5]=0.000
$an_cec[0,6]=0.000
$an_cec[0,7]=0.000
……
$an_cec[0,57]=0.000
$an_cec[0,58]=0.000以上定义补偿插补点的补偿值
$an_cec_input_axis[0]=(ax1)定义基准轴
$an_cec_output_axis[0]=(ax1)定义补偿轴
$an_cec_step[0]=50定义补偿步距
$an_cec_min[0]=-1450定义补偿起点
$an_cec_max[0]=1450定义补偿终点
$an_cec_direction[0]=1定义补偿方向,正向补偿生效,负向无补偿
$an_cec_mult_by_table[0]=0定义补偿相乘表
$an_cec_is_modulo[0]=0定义补偿表模功能
例二:负向补偿文件
%_n_nc_cec_ini
chandata(1)
$an_cec[1,0]=0.000
$an_cec[1,1]=0.000
$an_cec[1,2]=0.000
$an_cec[1,3]=0.000
$an_cec[1,4]=0.000
$an_cec[1,5]=0.000
$an_cec[1,6]=0.000
$an_cec[1,7]=0.000
……
$an_cec[1,57]=0.000
$an_cec[1,58]=0.000以上定义补偿插补点的补偿值
$an_cec_input_axis[1]=(ax1)定义基准轴
$an_cec_output_axis[1]=(ax1)定义补偿轴
$an_cec_step[1]=50定义补偿步距
$an_cec_min[1]=-1450定义补偿起点
$an_cec_max[1]=1450定义补偿终点
$an_cec_direction[1]=-1定义补偿方向,负向补偿生效,正向无补偿
$an_cec_mult_by_table[1]=0定义补偿相乘表
$an_cec_is_modulo[1]=0定义补偿表模功能
我们通过对840d/810d灵活多变的补偿变量的分析研究,不仅成功的进行了双向螺距误差补偿,而且下垂补偿功能还可以应用于横梁的下垂补偿、台面的斜度补偿等方面