天水星火機床有限責任公司 潘 強
西門子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]的描述中可以看出,由于下垂補償功能補償值具有方向性,所以,下垂補償功能在用于螺距誤差或測量系統誤差時,可以理解為在坐標軸兩個方向上可以分別給予補償。一個表應用于補償軸的運行正方向,另一個表應用于補償同一軸的運行負方向。
MD18342:補償表的最大補償點數,每個補償表最大為2000插補補償點數。
MD32710:激活補償表。
MD32720:下垂補償表在某點的補償值總和的極限值,840DE(出口型)為1mm;840D(非出口型)為10mm。
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 定義補償表模功能
通過使用激光干涉儀等儀器的測量,得出補償數值,填入補償文件并運行,由此,我們成功進行了雙向螺距誤差補償,從而更好的提升了機床精度。