王宗穩
(北京奔馳汽車有限公司,北京 100176)
?
發動機缸蓋清洗機KUKA機器人故障分析與處理
王宗穩
(北京奔馳汽車有限公司,北京 100176)
摘 要:隨著工業機器人在先進制造業中的廣泛應用,機器人在汽車發動機缸蓋清洗機中的應用也越來越普遍。清洗機工作空間狹小、環境惡劣,機器人工作程序復雜,機器人碰撞等故障時有發生,對維護人員分析解決故障和維修技能提出了更高的要求。
關鍵詞:KUKA機器人;缸蓋清洗機;機器人碰撞;故障處理
10.16638/j.cnki.1671-7988.2016.03.054
CLC NO.: U464.9 Document Code: A Article ID: 1671-7988(2016)03-168-04
近年來,汽車發動機清洗機正朝著柔性化、高速化的方向發展,工業機器人清洗機引領著汽車發動機清洗行業的發展方向[1]。發動機清洗機內工作環境比較惡劣,高溫高濕以及四處飛濺的清洗液對設備提出了嚴苛的要求。工業機器人清洗機通過安裝1臺或多臺6軸工業機器人對機械加工過程中或者完成后的工件孔及整體進行清洗、空氣吹干,實現柔性化、兼容多樣化,可以方便的應對產品換型、降低生產成本、提高生產效率。
公司發動機缸蓋加工生產線有八臺清洗機,均采用KUKA 6軸機器人。本文主要探討OP230缸蓋清洗機機器人故障分析與處理[2],如圖1,兩臺機器人分別安裝于封閉的清洗空間中,通過交付門的升降,實現缸蓋的傳遞。
如圖1,清洗機自動運行時,A門升起打開,1號機器人在上料位抓取缸蓋運送到高壓清洗機內,A門下降關閉,1號機器人夾住缸蓋在清洗機內完成相關清洗項目。B門升起打開,1號機器人將缸蓋放置在中間交付位,1號機器人返回home,B門下降關閉。2號機器人抓取缸蓋在最終清洗機內完成相關清洗項目并吹干。C門升起打開,將缸蓋放置在下料位,2號機器人返回home,C門下降關閉,至此完成一個缸蓋的全部清洗內容[3]。
實際工作中為了避免兩個機器人相互等待浪費時間,優化工作節拍,提高效率,兩個機器人的工作是相互獨立的,有各自的工作循環。即1號機器人交付完成后,去取下一個缸蓋,一直循環工作。2號機器人將缸蓋放到下料位后,去取下一個缸蓋,一直循環工作。
1號機器人的交付位與2號機器人的取件上料位是同一位置,故下文統一稱此位置為中間交付位,下面要探討的兩個故障均發生在中間交付位。

圖1 發動機缸蓋OP230清洗機示意圖
2.1 1號機器人相關信號與程序
SIGNAL do_186_Place_Release $OUT[186]; Place release
將186號輸出信號定義為do_186_Place_Release,do_186_Place_Release為TRUE意思是已經將缸蓋放置在中間交付位。
user_cell.src 為1號機器人自動運行主程序[4]。
Job01.src 為1號機器人工作M270缸蓋例行程序。
Place_J01.src 為1號機器人交付M270缸蓋的子程序。
mv75_J01_Flush_E_Place.src 為1號機器人將M270缸蓋從清洗位送至中間交付位程序。
MoveHomeAuto.src 為從當前位置自動運行至home位程序。
mv75_J01_Home_Place.src為1號機器人將M270缸蓋從home送至中間交付位程序。
mv75_J01_place_PickUp.src為1號機器人從中間交付位到上料位抓取M270缸蓋程序。
2.2 2號機器人相關信號與程序
SIGNAL di_177_GrOpenOK $IN[177] ; Gripper opened
將177號夾爪打開輸入信號命名為di_177_GrOpenOK,di_177_GrOpenOK為TRUE意思是夾爪是打開狀態。
SIGNAL di_178_GrCloseOK $IN[178] ; Gripper closed
將178號夾爪關閉輸入信號命名為di_178_GrCloseOK, di_178_GrCloseOK為TRUE意思是夾爪是關閉狀態。
SIGNAL di_185_PickUp_Enable $IN[185] ; Convoyer Pickup release
將185號輸入信號定義為di_185_PickUp_Enable,di_185_PickUp_Enable為TRUE意思是2號機器人可以去中間交付位抓取缸蓋。
SIGNAL do_178_GrClose $OUT[178] ; Gripper close
將178號夾爪關閉輸出信號命名為do_178_GrClose,do_178_GrClose為TRUE意思是夾爪是關閉狀態。
user_cell.src為2號機器人自動運行主程序。
Job01.src 為2號機器人工作M270缸蓋例行程序。
Job03.src為2號機器人工作M274缸蓋例行程序。
PickUp_J01.src為2號機器人抓取M270缸蓋的子程序。
PickUp_J03.src為2號機器人抓取M274缸蓋的子程序。
mv05_J03_Home_Pickup.src為2號機器人從home去抓取M274缸蓋程序。
fault_m(nENRes17,#QUIT) 機器人程序停止并報警程序。
nStatus是工作標志位,是Job01.src和Job03.src程序中的分支選擇條件,機器人執行case 5之后會將nStatus賦值為17。機器人順序執行case 17、18、70和75。執行完case 75 將nStatus再次賦值為5。
3.1 故障現場
由于工作需要,操作員重新示教1號機器人交付位置點pJ01_Place。示教完成之后,且運行程序驗證軌跡無誤后,將清洗機啟動為自動運行模式,1號機器人的運行速率調整為10%。1號機器人交付缸蓋,打開夾爪放下缸蓋,往回運動時,2號機器人啟動抓取缸蓋的程序,以100%的運行速度從home出發,在中間交付位,兩臺機器人相撞。相撞時1號機器人運行交付缸蓋的程序Place_J01.src,2號機器人運行抓取缸蓋程序PickUp_J01.src。
3.2 故障分析
再次檢查確認1號機器人交付位置點示教無誤,程序軌跡及邏輯無誤。根據工作流程看,1號機器人尚未完成交付缸蓋,2號機器人不應該啟動抓取缸蓋的程序,更不應該到達中間交付位。根據PLC與機器人程序分析,2號機器人啟動抓取缸蓋程序PickUp_J01.src的前提條件為,2號機器人的di_185_PickUp_Enable為TRUE即$IN[185]==1,即下面兩個條件滿足其一即可:
(1)1號機器人完成交付缸蓋回到home,并且B門關閉;
(2)1號機器人輸出信號do_186_Place_Release為TRUE,即$OUT[186]==1。
根據故障現場現象看,由于滿足條件(2)后,兩臺機器人相撞。
1號機器人何時輸出信號do_186_Place_Release為TRUE ?檢查1號機器人程序發現,執行交付缸蓋程序Place_J01.src,缸蓋放到位,夾爪打開之后立刻輸出信號do_186_Place_Release為TRUE。此時1號機器人未離開中間交付位,B門未下降關閉。由此可見,此處輸出信號do_186_Place_Release為TRUE不合適,機器人相撞的風險很大。
下面要分析條件(2)存在的原因及必要性:設備連續運行時,為了優化1號機器人運動軌跡,提高設備效率,1號機器人并沒有回到home,而是從交付位直接去上料位抓取缸蓋。只要1號機器人離開交付區,無論B門是否關閉,2號機器人運動都是安全的,不會發生機器人相撞。但是前提條件一定是1號機器人離開中間交付區后,才能輸出條件(2)。所以條件(2)存在的主要目的是提高機器人的效率,減少工時,優化節拍,提高效益。
3.3 試驗分析
控制兩臺機器人的自動運行速率,調整為1%,監控兩個機器人運行的軌跡與信號狀態。1號機器人運行程序Place_J01.src,交付缸蓋,缸蓋到位后,輸出信號do_186_ Place_Release由FALSE變為TRUE。同時2號機器人di_185_PickUp_Enable由FALSE變為TRUE,2號機器人執行程序PickUp_J01.src,去抓取缸蓋。兩個機器人在交付區會發生碰撞。由于機器人運行速度極低,在兩者相撞前結束試驗,避免機器人真的發生碰撞,此時將兩臺機器人同時停止動作,手動將機器人分別運行回到home。試驗結果驗證了上面的分析過程。
3.4 解決措施
修改1號機器人程序,在Place_J01.src中修改語句“do_186_Place_Release=TRUE”為“do_186_Place_Release= FALSE”。在mv75_J01_place_PickUp.src中,機器人離開交付區到達上料位之前,添加語句“do_186_Place_Release= TRUE”。從而實現1號機器人離開中間交付區后,2號機器人方可啟動抓取缸蓋程序。
修改之后試驗觀察,控制兩臺機器人的自動運行速率,調整為1%,監控兩個機器人運行的軌跡與信號狀態。1號機器人運行程序Place_J01.src,交付缸蓋,缸蓋到位后,輸出信號do_186_Place_Release仍然為FALSE,直至1號機器人到達pJ01_Home_Pick_20位置(此位置在home附近)后,輸出信號do_186_Place_Release為TRUE。此時2號機器人執行程序PickUp_J01.src,去抓取缸蓋。兩個機器人不會同時出現在中間交付區,所以不會發生碰撞。驗證上述修改方案是成功的。
3.5 進一步分析
這臺清洗機已經正常運行兩年,機器人程序沒有發生過更改,在這期間沒有發生過兩臺機器人相撞,的確匪夷所思。
事實上,清洗機自動運行正常節拍下,兩個機器人都是100%速率運行時:
(1)初次運行清洗機時,1號和2號機器人都在home位,啟動設備。由于2號機器人距離中間交付位較遠,1號機器人離開中間交付區時,2號機器人往交付區運動但是還未到達,兩者并未發生接觸。但是相撞的風險很高。
(2)連續工作循環時,1號機器人交付缸蓋時,2號機器人在清洗、吹干位置或者在對外交付缸蓋,兩者相距更遠,機器人相撞的風險較小。
再回到故障現場,由于1號機器人的運行速率調整為10%,打破了兩者的平衡。當1號機器人交付缸蓋,往回運動時,2號機器人以100%速率從home出發,準備抓取缸蓋,1號機器人還未離開,2號機器人已經到達,進而發生相撞。
4.1 故障現場
2號機器人夾爪內帶著缸蓋,與中間交付位的缸蓋發生碰撞。2號機器人當前運行程序為mv05_J03_Home_ Pickup.src(從home運行至中間交付位抓取缸蓋程序)。
4.2 故障分析
2號機器人抓取缸蓋到達第一個高壓清洗噴嘴處完成相關清洗,沒有按照正常工作流程繼續執行,沒有去往下一個噴嘴清洗點,而是去抓取另一缸蓋,兩個缸蓋發生碰撞。
正常工作流程情況下,2號機器人執行程序Job03.src時,首先執行case5,進行第一個噴嘴高壓清洗,接著執行case17,進行第二個噴嘴高壓清洗,然后執行case18,進行第三個噴嘴高壓清洗,接著執行case70,進行空氣吹干,最后執行case75,交付缸蓋至下料位,完成工作。
分析機器人程序得知,僅當2號機器人在程序Job03.src執行完case5 之后再次重復執行case5 才會發生上述碰撞。2號機器人抓取缸蓋后,即程序Job03.src的case5 中執行完成PickUp_J03.src,由于夾爪關閉信號do_178_GrClose為FALSE,即$OUT[178]==0,nStatus還將保持為5,機器人不會去執行case 17而是繼續執行case 5。
當2號機器人再次執行 Case 5時,只有滿足夾爪打開條件,才會執行程序movehomeauto.src回到home,然后執行程序mv05_J03_Home_PickUP.src,從home運行至PickUP位,即中間交付位。2號機器人夾爪打開的條件為di_177_GrOpenOK為TRUE并且di_178_GrCloseOK為FALSE,亦即$IN[177]==1 and $IN[178]==0。
上面的分析可以看出,2號機器人夾爪的兩個傳感器狀態有異常,需要檢查。拆開機器人夾爪的防護罩后發現,夾爪打開到位傳感器和夾爪關閉到位傳感器線均已經出現嚴重銹蝕,進而導致傳感器信號不穩與閃斷。所以機器人執行完case5后,夾爪仍處于關閉狀態,但夾爪關閉完成的傳感器信號丟失,do_178_GrClose為FALSE,機器人將繼續執行case5.。再次執行時,傳感器狀態異常,機器人夾爪打開條件滿足,即di_177_GrOpenOK為TRUE并且di_178_GrCloseOK 為FALSE,此時機器人將運行至home然后運行至中間交付位,導致兩個缸蓋發生相撞的現象。
4.3 解決措施
(1)將夾爪打開到位傳感器和夾爪關閉到位傳感器更換為新傳感器,并做好相應的防水保護。
(2)修改程序,添加報警。在Job03.src程序的case 5中將“IF (do_178_GrClose) THEN nStatus=15 ENDIF”修改為“IF (do_178_GrClose) THEN nStatus=15 ELSE fault_m (nENRes17,#QUIT) ENDIF”。當夾爪關閉信號do_178_GrClose異常時,機器人停止,并作出報警,提醒用戶檢查夾爪傳感器狀態。
修改完成之后,控制2號機器人的自動運行速率,調整為10%,2號機器人運行Job03.src程序,執行case 5運行PickUp_J03.src程序,2號機器人夾爪關閉條件一直滿足,即di_177_GrOpenOK為FALSE并且di_178_GrCloseOK為TRUE,do_178_GrClose為TRUE。當1號機器人將另一缸蓋送至中間交付區,2號機器人執行完case5 之后nStatus被賦值為17,2號機器人不再重復執行case5 而是執行case17。2號機器人缸蓋不會與新缸蓋發生碰撞。驗證上面的解決方案是成功的。
本文探討了發動機缸蓋清洗機中KUKA機器人的兩種不同的碰撞故障,確定了故障原因,提出了解決措施并進行了驗證,最終解決故障。通過這些故障分析與處理,充分認識到機器人維護人員,需要熟悉設備的工藝流程,熟練掌握PLC與機器人編程,從而可以快速確定故障原因并解決故障,能夠更好的保障設備運行與生產任務的完成。
參考文獻
[1] 張彥東.柔性機器人在汽車發動機清洗行業中的應用[J].機械工程師.2013(12):254-255.
[2] 凌文周.庫卡機器人回原點故障排除[J].汽車實用技術.2015 (1):130-131.
[3] 周麗.KUKA機器人車身打號機的工作流程及故障分析.[J].科技創新導報.2012(18):72-74.
[4] 孫健.KUKA 工業機器人在熱擠壓管生產中的應用.[J].計算機應用.2014(5):57-60.
使用維修
KUKA Robot Troubleshooting In Engine Cylinder Head Washing Machine
Wang Zongwen
(Beijing Benz Automotive Co., Ltd., Beijing 100176)
Abstract:As the industrial robot most broadly available in advanced manufacturing industry , the robot is widely used in vehicle engine cylinder head washing machine.Since the workspace is quite narrow and the robot program iscomplicate, the robot crash malfunction occur time by time.It is highly requiredmalfunction analysis skill and troubleshooting skill for robot maintenance stuff.
Keywords:KUKA robot; Cylinder head washing machine; Robot crash; Troubleshooting
作者簡介:王宗穩,就職于北京奔馳汽車有限公司。
中圖分類號:U464.9
文獻標識碼:A
文章編號:1671-7988(2016)03-168-04