高精密数控机床中840D数控系统双向螺距误差补偿的应用
2012-08-15天水星火机床有限责任公司
天水星火机床有限责任公司 潘 强
一、西门子840D数控系统的补偿功能
西门子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:补偿表的最大补偿点数,每个补偿表最大为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,49]=0.000
$AN_CEC[0,50]=0.000 以上定义补偿插补点的补偿值
$AN_CEC_INPUT_AXIS[0]=(AX1) 定义基准轴
$AN_CEC_OUTPUT_AXIS[0]=(AX1)定义补偿轴
$AN_CEC_STEP[0]=10 定义补偿步距
$AN_CEC_MIN[0]=0 定义补偿起点
$AN_CEC_MAX[0]=500 定义补偿终点
$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,49]=0.000
$AN_CEC[1,50]=0.000 以上定义补偿插补点的补偿值
$AN_CEC_INPUT_AXIS[1]=(AX1)定义基准轴
$AN_CEC_OUTPUT_AXIS[1]=(AX1)定义补偿轴
$AN_CEC_STEP[1]=10 定义补偿步距
$AN_CEC_MIN[1]=0 定义补偿起点
$AN_CEC_MAX[1]=500 定义补偿终点
$AN_CEC_DIRECTION[1]=-1 定义补偿方向
$AN_CEC_MULT_BY_TABLE[1]=0 定义补偿相乘表
$AN_CEC_IS_MODULO[1]=0 定义补偿表模功能
通过使用激光干涉仪等仪器的测量,得出补偿数值,填入补偿文件并运行,由此,我们成功进行了双向螺距误差补偿,从而更好的提升了机床精度。