加工中心刀具破損監測的一種實現方法
2023-8-25 來源:北京工研精機股份有限公司 作者:肖 博 劉賀強 戴玉紅 吳同宣 于光旭
【摘要】 針對具體的刀具,在正常加工工況下充分采集主軸電機的負載值并進行預設,形成針對所有刀具的主軸電機負載表,即數據表,進而可得極限負載值。在實際加工過程中,用讀取的實際負載值和極限負載值進行比較,判斷刀具是否破損。
一、問題的提出
刀具的破損主要表現為:刀具的磨損、崩刃和折斷。加工中,如果刀具出現破損,則會對加工效率和加工質量造成一定程度的影響。比如,工件的加工精度降低、表面粗糙度增大、切削溫度升高、切削振動、切削負載增大、無吃刀等。針對這種情況,希望能及時的進行監測,以便于操作者可以及時地采取相應的措施。
有統計表明,機床停機時間的 20%是由刀具的破損引起的 [1]。研究表明,準確可靠的在線監測系統可增加切削速度 10%~50%,總的加工成本可以節省 10%~40%[2]。這往往需要增加相關傳感器,數據的分析處理設備,并且涉及到安裝和維護,這意味著增加成本和調試難度。
本文提出了一種基于主軸電機負載的刀具破損監測方法。該方法充分挖掘應用數控系統中的特征數據,無需額外增加硬件設備,具備較高精度,可以滿足通常的使用需求。文章以FANUC 0i-MF數控系統為例進行介紹。
針對具體的刀具,在正常加工工況下充分采集主軸電機的負載值,并將采集到的數據寫到指定的地址中,形成針對所有刀具的主軸電機負載表,簡稱為數據表。通過數據表進而可得極限負載值,包括上極限負載值和下極限負載值。在實際加工過程中,讀取的主軸電機實際負載值,并和上、下極限負載值進行比較,進而判斷刀具是否破損。刀具破損和主軸電機負載的關系簡化為[3]:
(1)刀具磨損或崩刃后,電流的最大值增大,負載會明顯增大。
(2)刀具折斷常常有完全折斷和部分折斷兩種:①完全折斷:電流和空運行一樣,電流很小,負載很小;②部分折斷:接觸工件前,和空運行一樣,負載很小;接觸工件后,和崩刃相似,負載明顯增大。該方案的技術路線如圖1所示。
圖1 技術路線
二、負載預設的實現
當加工內容、刀具的規格與型號、加工的工藝參數(比如主軸轉速、進給速度、吃刀量…)等確定之后,便可以進行負載的預設。為了方便描述,本文以1號刀具為例進行說明。選擇預設模式。在切削加工條件下,當主軸轉速到達以后,每隔一秒進行一次主軸電機負載數據的采集,并將采集到的數據寫到以D2000為首地址的數據表中。即便此時刀具沒有破損現象, 主軸電機負載處于正常狀態,但是也可能由于材質不均等其他外部因素,導致負載會在一定范圍內波動。因此,負載數據的采集工作通常需要在多次切削加工中重復進行,力求采樣數據充分完備,如圖2流程所示。
圖2 負載預設流程圖
1.負載預設模式
為了方便操作,在機床操作面板上設計了“預設”按鍵。按一下該按鍵,按鍵燈亮,即進入預設模式;再按一下按鍵,按鍵燈滅,即進入到了正常的監測模式。這里選擇預設模式。
2.采集實際負載值
采集的實際負載值為當前加工狀態主軸電機的負載值。FANUC系統提供了一種可以對CNC的數據進行讀寫的功能指令——窗口功能。這里用來讀取“主軸電機的負載值”。應用時,需要對該功能指令的輸入數據進行設置,數據結構如圖3所示[4],其中,讀取主軸電機負載信息時,對應的功能代碼是“153”;數據數N為0,表示讀取第一主軸負載;數據屬性為0。采集到的實際負載值存儲在數據區R2010中,負載值為無符號的二進制數,占用2個字節。梯形圖如圖4所示。
圖3 讀取主軸電機負載值時的輸入數據結構
圖4 窗口功能讀取
3.負載預設過程
無論是讀數據,還是寫數據,都要用到數據表。數據表的實質是規劃的一片D地址區域,這里的D地址用來存儲負載值,該負載值是主軸電機負載,且對應于主軸刀號。表容量、首地址、表內號是數據表常用的概念。
①表容量: 這里數據表的表容量存儲在D0006中,設置24。用D地址來存儲表容量,這樣即使梯形圖在寫入ROM后依然可以快速改變表容量。
②首地址 :這里數據表的首地址為D2000,每個負載值占用2個字節,數據表D地址范圍為D2000~D2044。
③表內號: 數據表的表內號從0開始,這里表內號范圍為0~23。 “表內號-主軸刀號-采樣值存儲D地址”之間的對應關系見表1。
表1 數據表-預設前
(1)讀數據
指從數據表中讀取相應刀具的主軸電機負載值,基于表內號來進行。應用功能指令XMOVB[4]。1號刀具對應表內號0,因此,將D0015=0時對應負載值(初次讀取時負載值為0)讀到R2100。
(2)比較數據
指用R2100和讀取的實際負載值R2010進行比較,所用的功能指令為COMPB[4]: 二進制數據大小判別。該指令可比較1、2、4字節長的二進制數據之間的大小,比較結果存放在運算結果寄存器(R9000)中。
當數據表中對應的負載值R2100大于讀取的實際負載值R2010時,R9000.1=0。
當數據表中對應的負載值R2100小于讀取的實際負載值R2010時,R9000.1=1。
此時1號刀具對應R2100=0, 實際負載值R2010=4011,可得 R9000.1=1。
(3)寫數據
R9000.1=0時, 數據表不被更新。
R9000.1=1時, 數據表會被更新。
這里的更新,即寫數據,將讀取的實際負載值寫入數據表對應的地址,應用功能指令XMOVB[4]。這里,1號刀具對應的實際負載數據為R2010=4011,且R9000.1=1,表內號D0015=0,對應的數據表地址為D2000,見表2。
表2 數據表-寫數據
同樣的道理,對其他刀具進行負載采集,并且往往需要進行多次加工循環的重復地、充分地采集,梯形圖如圖5所示,最終形成的數據見表3。其中,數據表中為0的數據,表示相應的刀具號在加工程序中沒有用到。
至此,負載預設完成。退出負載預設模式,進行負載監測。
圖5負載預設模式
表3 數據表-預設完成
三、負載監測模式
切削狀態下,當主軸轉速到達以后,讀取主軸電機的實際負載值,使之與極限負載值進行實時的比較,負載監測過程的流程圖如圖6所示。
圖6 負載監測流程圖
1.極限負載值
極限負載值包括上限負載值和下限負載值。下限負載值為設定在D2100中的固定值,通常,該值大于任一把刀具空切削時的負載值,且小于每把刀具正常切削時的負載值,比如設置為500。
上限負載值=預設值×上限因子其中,上限因子是人為設計的參數。這里應用功能指令DIVB和MULB[4]。參數號:D2148設定單位:%設定范圍:100~32767比如,負載因子設置值為120時,表示上限負載值為預設負載值的120%。執行T1M6之后,1號刀具交換到了主軸。讀取預設值后,R2100=4540。那么,對于1號刀具而言,由PLC計算上限負載值: R2104=4540×120%=5400
2.刀具破損監測
對主軸電機的實際負載值R2010和上、下限負載值進行實時的比較。
若實際負載值R2010大于上限負載值R2104,或小于下限負載值D2100,且超過設置時間后,則認為刀具出現破損情況,進入進給保持模式,且顯示報警信息:
OPM170 刀具破損此時,檢查刀具。負載監測模式下的梯形圖如圖7所示。
圖7 負載監測模式
四、應用展望
該方案不需用額外地增加其他任何硬件設備,在一定意義上說,實現了項目“零成本”。功能思路清晰、操作性強,人機交互友好,可以有效地應對由于加工中的刀具破損對加工效率和質量造成的不良影響。這對于合理地組織生產,科學地使用機床,提高機床的智能化水平,具有積極的意義。
目前,該方法已成功地應用于我公司立臥式加工中心,也可以拓展應用到車削中心中來。本文是基于FANUC數控系統0i-MF為例進行介紹的,對于其他廠家的數控系統,也可做參考。
投稿箱:
如果您有機床行業、企業相關新聞稿件發表,或進行資訊合作,歡迎聯系本網編輯部, 郵箱:skjcsc@vip.sina.com
如果您有機床行業、企業相關新聞稿件發表,或進行資訊合作,歡迎聯系本網編輯部, 郵箱:skjcsc@vip.sina.com
更多相關信息