3.6.2 剛性攻牙主軸閉迴路控制模式使用說明


一、目的:

避免因為工件的材質或是攻牙的孔徑改變,使轉速改變時剛性攻牙,造成攻牙的深度誤差。


二、機台具備條件:

1.

驅動器具備伺服模式,速度控制比大於 1000:1 且對速度命令響應迅速,如伺服驅動器控制伺服馬達。

2.

驅動器正反轉控制方式為:驅動器啟動接點,正負 10V 類比輸入。

3.

主軸編碼器解析度為每轉 1024 pulse。

4.

驅動器在剛攻(伺服模式)時,驅動器內部的主軸加減速要設定為 0。

5.

ALT+F8 切換到監控畫面,確認主軸正轉時控制器的 SDA(主軸電壓輸出)為正值、SEN(主軸編碼器回授)的值要遞增、主軸實際轉速符合命令轉速,反之主軸反轉時控制器的 SDA 為負值(16 進位 Fxx)、SEN 的值要遞減,此時主軸實際轉速顯示為負值。

6.

如果 SDASEN(主軸編碼器回授)的值與第 5 點的敘述相反時,請把主軸編碼器回授訊號線 A、/A 對調即可。


第 1 偵測頁主軸狀態


三、PLC 需要修改及注意的部分如下:

1. 在執行剛性攻牙時不要改變 plc.axisPmySpindle.da 的值。

2. 在 plcOpen 中令:

plc.vto3.bit.V4spc = 1;//使用新的主軸 DA 控制方式

plc.vto3.bit.rgsda = 1;//剛攻時主軸命令電壓由 NC 控制


3.

PLC 中要令 plc.vto4.bit.clsrd = 1 以啟動剛性攻牙主軸閉迴路控制模式,因此可以在 plcRun 中新增 M code 以開啟剛性攻牙主軸閉迴路控制模式:

case 66:

  plc.vto4.bit.clsrd = 1; //開啟剛性攻牙主軸閉迴路控制模式

  plc.mCode.finish = 1;

  break;

                 

case 67:

  plc.vto4.bit.clsrd = 0; //關閉剛性攻牙主軸閉迴路控制模式

  plc.mCode.finish = 1;

  break;


或是由參數決定是否使用剛性攻牙主軸閉迴路控制模式:

plc.vto4.bit.clsrd = paRigidTappingSpindleServoMode;


4.

由於主軸在執行剛性攻牙時會去呼叫 M05,因此當開啟剛性攻牙主軸閉迴路控制模式時,M05 的處理程序中不要將驅動器啟動的接點 OFF:

case 5:

  if(sts.mode1.mM29){

    if(!plc.vto4.bit.clsrd)//如果不在剛性攻牙主軸閉迴路控制模式時,才將驅動器啟動的接點 OFF  

          goSpindleRun=0;                        

        plc.vto2.bit.rgsiv = 0;

        plc.mCode.finish=1;

  }

  .

  .

  .

break;


5.

為了安全性的考量,當主軸閉迴路失敗(例如 encoder 回授線鬆脫),必須停止主軸運轉,因此必須在 plcRun  中加入下列一段程式碼:

if(sts.mode1.mM29 && plc.vto4.bit.clsrd)//在剛性攻牙主軸閉迴路控制模式

goSpindleRun = plc.axisPmySpindle.state.servoOn;


此程式碼的作用為,當 NC 偵測到主軸閉迴路失敗或未到位時間過長時,NC 會發出報警並將 plc.axisPmySpindle.state.servoOn 清除為零,此時 PLC 就會將主軸運轉輸出 goSpindleRun 關閉。


四、機械參數中主軸相關參數設定:

在機械參數→主軸→剛性攻牙補償表中設定主軸閉迴路控制參數始編號 i,如下圖所示:


"主主軸" 對話盒


如上圖,i 值設定為 200 代表主軸閉迴路控制相關參數從 PLC 長數據 200 開始設定,定義如下:

PLC 長數據

定義

i

位置迴路增益,建議值 30~50

i + 1

最大追隨誤差,建議值 10000

i + 2

到位範圍,建議值 30

i + 3

零偏移


零偏移,調整方式如下:

1. 執行 G84 剛攻指令,並在孔底暫停 5 秒以觀察主軸 holding 時的 ERR 值。


第 3 偵測頁主軸狀態


2.

調整 PLC 長數據中 i + 3 零偏移的值,使 ERR 值趨近於 0。

3.

如果 ERR 值過大不調整,在執行剛攻時控制器會發出  "576  剛性攻牙時主軸馬達閉迴路未到位時間過長" 的報警訊息。