趙國強
(山東科技職業學院機械工程系,山東 濰坊 261053)
伴隨激烈的市場競爭和日益增長的客戶個性化產品定制需求,制造業生產模式已由大批量生產轉向多品種小批生產,數控設備被廣泛應用以提高生產柔性。其中,在生產要素中,數控刀具屬高價值的消耗類資源,常用的刀具補償參數包括刀具長度、半徑等,需要操作人員正確設定以保證安全生產和加工質量[1-2]。
在柔性生產中,按照工序集中原則來設計工藝過程,一個工序、一個零件加工往往需要數十甚至上百把刀具。同時,刀具損壞等原因也需頻繁更換刀具,要求操作人員在機床調用刀具補償參數前,將更換后刀具的長度、半徑值輸入機床的刀具補償寄存器中。其中,在刀具補償參數輸入方式上,國外如巴魯夫等公司推出基于射頻識別(radio frequency identification,RFID)技術的刀具ID系統來 實現刀具補償數據從對刀儀到機床的傳遞,可有效降低數據輸入錯誤風險[3-4],但需要額外增加機床、刀柄配置等投入且使用條件要求嚴苛,從而制約該技術在生產現場的廣泛應用。在國內制造企業中,大多采用人工方式將刀具補償參數輸入到數控機床中,一旦出現刀具補償參數設定錯誤就會造成刀具損毀、機床碰撞等安全事故。因此,開發一種低成本、高效及可靠的刀具補償參數人工設定防錯方法是當前制造企業亟需解決的難題。
針對上述難題,結合西門子808D、828D和840D等數控系統在國內大量應用的現狀[5-6],提出一種適用于西門子系統的刀具補償參數人工設定程序防錯方法,并開發刀具補償參數設定防錯的數控程序,以期在機床調用刀具補償參數前,通過簡單程序調用實現對刀具補償人工設定錯誤的預警,實現自動防錯的目的。
防錯,又稱防呆法,由日本豐田公司提出。經過不斷發展和完善,豐田公司搭建起高效、可靠的防錯技術體系,為企業帶來巨大的經濟效益[7-8]。防錯技術的實施貫穿于整個制造過程,對防止產品缺陷、提高制造質量起到重要作用。應用防錯技術的目的是防止在生產中人為錯誤的發生、盡早發現錯誤并及時糾正,以簡單方法、較低成本來提高產品質量。
在生產中,由于偶然等不可控因素,操作人員經常會出現刀具補償參數人工設定出錯的低級失誤。基于此,提出一種防錯技術:把防錯法融入數控編程中,在程序中增加判斷功能,提前識別刀具補償人工設定錯誤,并對錯誤進行提醒、警示,從而實現自動防錯。
現場的防錯措施通常是在機床面板上粘貼提示性的文字,但操作人員長時間后就會較少關注,缺少有效的控制手段。基于該現狀,在西門子數控系統基礎上進行刀具補償參數設定防錯技術的開發:在機床讀入當前主軸刀具的補償參數后、數控加工程序段運行前,在程序中增加刀具補償參數設定防錯功能,通過程序對當前主軸刀具補償參數的人工設定值進行自動判斷:若滿足參數設定條件,正常執行加工程序;若不滿足條件,直接跳轉至報警提示程序段并終止加工,直至操作人員重新正確設定后方可啟動程序來完成后續加工。
如圖1所示,刀具補償參數人工設定的防錯主要通過在數控程序中增加對刀具補償參數(長度、半徑)自動讀取、比較、錯誤報警等功能來實現。具體功能展開如下:

圖1 數控刀具補償參數設定防錯功能模型圖
(1)讀取功能:在機床讀入當前主軸的刀具補償參數值后、數控加工運行前,通過程序自動讀取西門子系統變量的方式來獲得當前主軸刀具的長度、半徑補償值。
(2)比較功能:在生產準備階段,編程人員需要考慮綜合加工質量、效率和成本等因素,合理選取刀具并設定刀具長度理論值及長度差異預警值、刀具半徑理論值及半徑差異預警值。該功能的實現,主要通過對讀取的當前主軸刀具的長度、半徑值分別與該刀理論長度和半徑值進行數學運算,然后將計算得到的差異值與預警值進行條件判斷以評估當前主軸刀具長度、直徑人工設定是否正確。
(3)錯誤報警:若刀具長度、半徑差異值均處于預警范圍內,機床正常執行加工程序;若刀具長度或半徑差異值超出預警范圍,機床停機報警,并在機床面板上顯示刀具補償參數人工設定錯誤的提示信息,引導操作人員重新正確設定以完成后續加工。
通過綜合運用西門子系統的系統變量、邏輯運算、條件判斷、程序跳轉和報警提示等編程指令來完成刀具補償參數設定防錯程序的開發,可將其作為獨立的子程序融入到數控程序中,具有較好的編程通用性。其中,圖2為刀具補償參數設定防錯程序的開發流程。

圖2 刀具補償參數設定防錯程序開發流程圖
每把數控刀具加工前,機床會自動讀取當前主軸的刀具長度、半徑補償值。其中,刀具的參數補償值需人工事先輸入機床的刀具補償寄存器中,防錯程序通過讀取系統變量來獲取上述刀補參數,使用的系統變量見表1[9]。

表1 系統變量
在刀具補償參數設定防錯程序中,當前主軸刀具的長度、半徑補償值編程表達式分別為:$TC_DP3[$P_TOOLNO,$P_TOOL]、$TC_DP6[$P_TOOLNO,$P_TOOL]。為便于數據計算和比較,采用R1=$TC_DP3[$P_TOOLNO,$P_TOOL]、R2=$TC_DP6[$P_TOOLNO,$P_TOOL]的編程方式,將當前主軸刀具的長度、半徑補償值分別賦于不同的R參數。
在讀入當前主軸刀具的補償參數后、加工程序段運行前,在防錯程序中增加條件判斷功能:將機床讀取到的當前主軸刀具的長度值、半徑值分別與該刀理論長度和理論半徑值進行計算,通過限定條件來判斷當前主軸刀具參數人工設定值是否滿足要求。其中,常見條件判斷類型見表2[10]。

表2 常見條件判斷類型
其中,刀具補償實際值與理論值差異的條件判斷編程見表3。

表3 編程及說明
在運行數控主程序后、刀具正式加工前,防錯程序會快速計算并比較當前主軸刀具的長度、半徑值是否滿足限定條件,為下一步操作提供準確輸入。
若人工設定的刀具長度或半徑差異值大于預警值,會在機床面板上顯示報警信息并終止加工程序;若人工設定的刀具長度、半徑差異值均小于預警值,機床會繼續執行加工程序。在刀具補償設定防錯程序中,通過在機床加工界面顯示錯誤提示信息來引導操作人員重新正確設定刀具補償值。其中,編程見表4。

表4 編程及說明
刀具補償參數設定防錯程序開發完成后,在生產現場進行應用驗證以評估其防錯效果。
(1)加工內容:在長方體工件上加工一個直徑20 mm的盲孔,工藝說明見表5。

表5 加工實例說明
(2)數控程序開發:包括主程序和刀具補償參數設定防錯子程序。
主程序代碼如下:


刀具補償參數設定防錯子程序代碼如下:

(3)刀具補償參數設置防錯程序驗證
當鉆孔主程序開始運行至N70行,進入刀具補償參數設置防錯子程序TOOLCHECK(圖3):該子程序將判斷當前主軸的刀具長度值、半徑值是否符合條件要求:假設事先人工設定的刀具長度值為220 mm(圖4),該值與主程序中設定的理論值(R3=200 mm)差為20 mm,超過設定的差異預警值(R4=0.5 mm)(圖5),執行N70行并在機床面板上顯示設定錯誤的報警信息,在暫停10 s后終止程序(圖6);同理,若人工設定的刀具半徑值與主程序中設定的理論值(R6)的差異值超過預警值(R7),執行N130行并在機床面板上顯示設定錯誤的報警信息,在暫停10 s后終止程序。反之,若刀具長度、半徑的人工設定均正確,程序自動執行N170行、退出防錯子程序,并在主程序中向下執行加工程序,如圖3~6所示。

圖3 進入刀補設置防錯子程序

圖4 事先人工設定的刀具長度(錯誤)、刀具半徑值(正確)

圖5 防錯程序計算分析得出刀具長度人工設定超差

圖6 機床面板上顯示刀具長度人工設定出錯警示信息
在實際使用中,為簡化程序,可將刀具長度補償設定防錯程序作為一個通用的子程序使用,獨立存儲于數控機床中:僅需在數控主程序中設定刀具長度理論值及差異預警值、刀具半徑理論值及差異預警值,通過直接調用該防錯子程序就能對刀具參數補償的人工設定值進行自動判斷,提前識別人工錯誤并報警。因此,該方法脫離具體的加工零件,具有較好的通用性。
針對車間生產現場中經常發生的由于刀具補償參數人工設定錯誤造成刀具損毀、機床碰撞等安全事故且無有效控制手段的難題,提出一種適用于西門子數控系統的刀具補償參數設定程序防錯技術,開發出通用的刀具補償參數設定防錯程序,通過直接調用防錯程序實現對刀具補償人工設定值的自動判斷、超差提醒,具有方法簡單、成本低及高效可靠的優點。
實踐表明,在某生產車間導入并實施刀具補償參數設定程序防錯技術后,防錯的有效率達到100%,實施效果顯著。同時,開發的刀具補償參數設定程序防錯技術達到自動化、強制性的預期效果,在生產中具有較好的推廣應用價值。