工業(yè)機器人澆鑄控制系統(tǒng)的設(shè)計與應(yīng)用
隨著工業(yè)機器人相關(guān)技術(shù)的不斷發(fā)展和成熟,工業(yè)機器人應(yīng)用范圍不斷擴展,產(chǎn)品涵蓋金屬焊接、噴涂、澆鑄、裝配、搬運、包裝、激光加工等方面,應(yīng)用領(lǐng)域包括汽車、摩托車、工程機械、家電等行業(yè)[1,2]。不同用途的工業(yè)機器人在工作環(huán)境、機器人的自由度、與外部系統(tǒng)的信號交互控制等方面存在較大的差異。作為工業(yè)機器人的主要應(yīng)用之一,澆鑄機器人具有以下顯著特點:(1)可靠性強、穩(wěn)定性高、正常運行時間長;(2)安全性高,澆鑄中金屬液體溫度極高,要充分保障人員、機器人和其他財產(chǎn)安全;(3)速度快,澆鑄工藝決定了操作周期時間短;(4)精度高,保證零件生產(chǎn)質(zhì)量穩(wěn)定;(5)運動范圍廣,為提高工作效率,一般一臺機器人同時為多臺澆鑄機澆鑄,要求機器人具有較大的運動范圍;(6)信號多且交互頻繁;(7)堅固耐用,能適應(yīng)普通澆鑄車間惡劣的生產(chǎn)環(huán)境;(8)通用性和柔性化,適合不同的應(yīng)用場合。鑒于澆鑄機器人的上述特點,本文將結(jié)合其應(yīng)用實例,介紹相關(guān)的設(shè)計方案和一些具體問題的解決措施。
1 機器人澆鑄控制系統(tǒng)的結(jié)構(gòu)
機器人澆鑄控制系統(tǒng)分為硬件結(jié)構(gòu)和軟件結(jié)構(gòu)兩大部分。
1.1 系統(tǒng)硬件結(jié)構(gòu)
本文所設(shè)計的機器人澆鑄控制系統(tǒng)的硬件系統(tǒng)包括系統(tǒng)控制單元、人機接口、伺服驅(qū)動系統(tǒng)等主要部分[3],其結(jié)構(gòu)示意圖如圖1所示。
系統(tǒng)控制單元是整個澆鑄控制系統(tǒng)硬件結(jié)構(gòu)的核心,主要組成部分包括CPU、主板和多功能板等。CPU和主板等硬件模塊都集成在工業(yè)PC中,而在實際應(yīng)用中,鑒于工業(yè)PC強大的處理能力及其良好的通用性,越來越多的機器人采用工業(yè)PC作為控制系統(tǒng)的核心控制器[2],本文采用的是嵌入式X86工業(yè)PC,實現(xiàn)數(shù)據(jù)和信號處理。多功能板支持操作面板、數(shù)字I/O信號接口、模擬輸出信號接口、脈沖計數(shù)器和脈沖發(fā)生器等接口,提供控制單元與外界進行數(shù)據(jù)和信息交換的通道。
伺服驅(qū)動系統(tǒng)由最多可達8個的獨立的伺服單元組成,每個伺服單元由一個帶標(biāo)準(zhǔn)脈沖指令接口的伺服驅(qū)動器及一個伺服電機組成,并對應(yīng)機器人一個關(guān)節(jié)軸。一般來說,工業(yè)機器人最多有6個關(guān)節(jié)軸,即使在某些應(yīng)用場合下,還需要1或2個自由度的導(dǎo)軌、變位機等設(shè)備,系統(tǒng)仍然可以滿足實際應(yīng)用的需求。
1.2 系統(tǒng)軟件結(jié)構(gòu)
為提高系統(tǒng)的開放式和通用性,軟件系統(tǒng)分為三層:系統(tǒng)層、控制核心層和主要由人機交互模塊HMI(Human Machine Interface)組成的系統(tǒng)應(yīng)用層,其結(jié)構(gòu)示意圖如圖2所示。
軟件結(jié)構(gòu)的系統(tǒng)層主要包括操作系統(tǒng)和驅(qū)動程序、硬件接口等。為了實現(xiàn)控制系統(tǒng)的實時控制,需要在DOS系統(tǒng)或者Linux系統(tǒng)平臺上開發(fā)出相應(yīng)的實時模塊RTM(Real Time Module)。
控制核心層是整個軟件系統(tǒng)和整個控制系統(tǒng)的核心,主要包括機器人控制系統(tǒng)核心CSKR(Control System Kernel of Robot)和PLC是其主體部分。系統(tǒng)內(nèi)部CSKR和PLC采用共享存儲的方式來進行信息交換,按照事先約定劃分功能區(qū),并定義訪問規(guī)則[3]??刂坪诵膶油ㄟ^底層接口實現(xiàn)信息交換和功能調(diào)用,以軟中斷的方式處理實時任務(wù)、運動控制、插補運算和報警;以共享內(nèi)存的形式與寄存器交換數(shù)據(jù)并進行參數(shù)配置。
系統(tǒng)應(yīng)用層中數(shù)控內(nèi)核接口,一方面作為控制核心層與上層應(yīng)用的接口,另一方面進行數(shù)據(jù)管理,為開發(fā)的應(yīng)用程序提供友好接口。
按照上述原則搭建出的工業(yè)機器人澆鑄控制系統(tǒng)應(yīng)用實例軟硬件系統(tǒng)如圖3、圖4所示。
2 工業(yè)機器人運動學(xué)
從本文構(gòu)建的軟件體系結(jié)構(gòu)來看,控制核心層的一部分內(nèi)容就是運動學(xué)算法,本文設(shè)計的澆鑄控制系統(tǒng)已經(jīng)成功應(yīng)用于東風(fēng)集團某廠的鋁制活塞的澆鑄生產(chǎn),下面以其所使用的意大利法塔鋁UNO三軸澆鑄機器人為例建立機器人運動學(xué)。機器人結(jié)構(gòu)簡圖和關(guān)節(jié)坐標(biāo)系如圖5所示。
2.1 運動學(xué)正解
機器人三個關(guān)節(jié)坐標(biāo)軸(實軸)分別為關(guān)節(jié)1(控制機器人左右運動)、關(guān)節(jié)2(控制機器人上下運動)和關(guān)節(jié)4(控制機器人末端容器翻轉(zhuǎn))。關(guān)節(jié)3并沒有驅(qū)動單元,連桿與鉛直線的夾角?酌是一個確定的值。關(guān)節(jié)3的作用在于當(dāng)機器人關(guān)節(jié)1和關(guān)節(jié)2運動時,保證末端容器姿態(tài)不變,防止容器中高溫金屬液體潑濺造成不必要的損失。按照D-H方法建立運動方程[4,5],運動學(xué)正解得到末端容器在機器人基坐標(biāo)系中位姿矩陣
3 系統(tǒng)信號控制的實現(xiàn)
控制核心層的另外一個重要方面就是PLC。本文設(shè)計的澆鑄控制系統(tǒng)采用開關(guān)量交換信號,簡單易行,并能滿足工業(yè)機器人信號控制的應(yīng)用需求。在前面提到的應(yīng)用實例中,機器人系統(tǒng)與兩臺澆鑄機、兩臺鋁液熔爐和廢料箱構(gòu)成的澆鑄系統(tǒng)進行頻繁的信號交互。
3.1 澆鑄系統(tǒng)功能需求
工作過程中,澆鑄機器人運動過程示意圖如圖6所示。
實線表示澆鑄系統(tǒng)使用熔爐1中的鋁液澆鑄活塞的運動過程,虛線表示澆鑄系統(tǒng)使用熔爐2中的鋁液澆鑄活塞的運動過程。以使用熔爐1為例,整個澆鑄動作過程為:
(1)程序開始。機器人運動到并停在熔爐正上方,判斷是否有“允許舀信號”;
(2)如果有,判斷來自澆鑄機1(FM1)還是澆鑄機2(FM2),根據(jù)FM1和FM2安裝模具的型號,機器人末端容器進入鋁液熔爐,直到固定在連桿上的金屬測頭測到“測頭接觸鋁液液面”信號,末端容器停止下降,然后舀取對應(yīng)量的鋁液;如果沒有則繼續(xù)等待;
(3)舀取完成后機器人停在熔爐正上方,判斷是否有來自上一步中給出信號的同一澆鑄機的“允許澆鑄信號”;如果沒有則繼續(xù)等待;
(4)如果等待超過一定時間(由工藝參數(shù)和工作環(huán)境、鋁液的量等因素決定),則機器人將鋁液倒回熔爐,機器人運動到廢料箱吹風(fēng)處,吹掉附著在容器內(nèi)外的氧化皮,回到熔爐上方,報警“等待超時”!
(5)如果在允許的時間內(nèi)對應(yīng)的澆鑄機給出“允許澆鑄信號”,則機器人對澆鑄機澆鑄(動作b或d),澆鑄完成后機器人向澆鑄機給出澆鑄完成信號,機器人運動到廢料箱吹風(fēng)處(動作c或e),吹掉氧化皮,回到熔爐上方(動作a),開始下次循環(huán)。返回步驟(1)。
整個工作周期中,熔爐的使用可根據(jù)實際情況隨時切換,具體操作可以通過操作面板上的自定義按鍵來實現(xiàn)。針對不同的活塞模具,只需要通過改變舀取鋁液是機器人末端容器的傾斜角度控制鋁液的量,方法簡單實用。
3.2 系統(tǒng)信號控制的實現(xiàn)
工業(yè)機器人澆鑄控制系統(tǒng)與整個澆鑄系統(tǒng)通過PLC控制程序來實現(xiàn)控制信號的交互[6]。主要控制信號如表1所示。
系統(tǒng)在PLC控制程序中通過信號交互,與外部澆鑄系統(tǒng)和輔助設(shè)備實現(xiàn)手動、自動、單段和增量等運行方式。報警、急停、故障和測頭等系統(tǒng)輸入信號的控制,可以由PLC控制程序的指令直接實現(xiàn)。以“金屬測頭接觸鋁液液面信號”為例,代碼如下:
…
if (bit(X[0],5))//測頭接觸到液面
{
…//末端容器停止
}
else
{
…//否則,末端容器繼續(xù)下降
}
…
系統(tǒng)輸出信號的控制和其他輔助功能,需要在機器人PLC控制程序中定義不同的M指令,并由機器人工作程序調(diào)用對應(yīng)的M指令。本系統(tǒng)中定義的M指令及其功能如表2所示。
M指令的定義在PLC控制程序的exec_M( )子程序中。其中,M50指令執(zhí)行過程中,PLC控制程序定時掃描輸入信號X1.0和X2.0,一旦澆鑄機給出“允許澆鑄信號”,通過改變PLC控制程序中的用戶自定義控制字*ch_user_in(0)的值,判斷澆鑄對象。指令mod_M_code(0)=-1通知系統(tǒng)該M指令處理完畢,機器人工作程序接著執(zhí)行下一條指令。
系統(tǒng)運行結(jié)果吻合3.1節(jié)中的整個澆鑄動作過程。
4 應(yīng)用實例
本文設(shè)計的工業(yè)機器人澆鑄控制系統(tǒng)已經(jīng)成功應(yīng)用于東風(fēng)集團某廠的鋁制活塞澆鑄生產(chǎn)。系統(tǒng)整體調(diào)試完成后,系統(tǒng)整體運行穩(wěn)定。人工澆鑄鋁制活塞,每人每班次(8 h)實際生產(chǎn)合格活塞數(shù)目為600個,使用本文設(shè)計的工業(yè)機器人進行澆鑄,因為良好的工藝穩(wěn)定性和雙澆鑄容器設(shè)計,每人每班次實際生產(chǎn)合格活塞數(shù)目可達1 000個以上,極大地提高了工作效率,提高鋁液使用率,大大減輕了工人的勞動強度,取得了良好的效果。從投入實際生產(chǎn)使用開始至發(fā)稿之日,系統(tǒng)已經(jīng)連續(xù)穩(wěn)定運行10個月,完全滿足設(shè)計和生產(chǎn)需求。
按照軟硬件通用性和開放性的原則,以系統(tǒng)控制單元為核心搭建了澆鑄機器人系統(tǒng)硬件結(jié)構(gòu),以控制核心層為關(guān)鍵建立了系統(tǒng)軟件結(jié)構(gòu)。針對澆鑄機器人的特點和應(yīng)用實例,給出了機器人運動學(xué)算法,并以共享內(nèi)存的方式進行信號交互控制。投入使用后,系統(tǒng)運行穩(wěn)定可靠,各項性能指標(biāo)均符合實際需求,達到了預(yù)期目標(biāo),在機器人澆鑄生產(chǎn)中具有較高的實用價值。