摘 要:本文介紹了一種工業(yè)取料機械手的控制系統(tǒng)結(jié)構(gòu)及控制策略,以及依據(jù)這種控制策略實現(xiàn)的上下位機之間的二次示教機制,這種控制策略提高了上下位機之間通訊的實時性,避免了因通訊干擾而可能給系統(tǒng)帶來的種種故障,大大提高了系統(tǒng)的可靠性。
關(guān)鍵詞:機械手;二次示教;控制系統(tǒng);集散控制
1 引言
隨著加工行業(yè)在我國的迅速發(fā)展,各行各業(yè)的自動化裝備水平越來越高,現(xiàn)代化加工車間,常常配有機械手,以提高生產(chǎn)效率,完成工人難以完成或危險的工作。
目前在我國機械手常用于完成的工作有:注塑工業(yè)中用于從模具中快速抓取制品并將制品傳送到下一個生產(chǎn)工序;機械加工行業(yè)中用于取料、送料;澆鑄行業(yè)中用于提取高溫熔液等等。本文以能夠?qū)崿F(xiàn)這類工作的搬運機械手為研究對象,針對本文作者參與的工業(yè)取料用直角坐標(biāo)機械手控制系統(tǒng)控制策略及二次示教方法進行了研究。
目前市場上常見的工業(yè)取料直角坐標(biāo)機械手主運動臂的控制方式主要采用液壓或氣壓驅(qū)動。這種控制策略的優(yōu)點在于結(jié)構(gòu)簡單,系統(tǒng)易于控制,但缺點在于,系統(tǒng)定位靠設(shè)定接近開關(guān)的位置來實現(xiàn),而一但用戶要求改變?nèi)×瞎ぷ黝愋?,必須重新調(diào)節(jié)各液壓或氣壓缸的定位開關(guān),以適應(yīng)新的工作任務(wù),這樣就不利于生產(chǎn)過程的自動化。
本文作者參與設(shè)計的工業(yè)取料用直角坐標(biāo)機械手,主運動采用全電動控制方式,系統(tǒng)以交流電機為驅(qū)動源,專用交流電機伺服控制器為下位機,工業(yè)控制計算機為上位機,系統(tǒng)整體采用集散控制的控制策略。這種設(shè)計方案控制系統(tǒng)精度高,而且系統(tǒng)結(jié)構(gòu)緊湊,易于用戶操作,具有較好的市場前景。
2 系統(tǒng)結(jié)構(gòu)及控制策略
工業(yè)取料機械手的工作方式是按“示教/再現(xiàn)機器人”的概念來完成的,即由人用示教器對機械手的工作行為示教,示教過程中記錄機械手各運動關(guān)節(jié)起始點位置,并在生產(chǎn)過程中按用戶設(shè)定的運動速度、加速度重復(fù)這一動作過程。
根據(jù)以上分析,我們設(shè)計出了一類主運動為全電動的工業(yè)取料機械手。機械手控制系統(tǒng)采用集散控制結(jié)構(gòu),即由一臺上位機控制五臺下位伺服控制器,每臺下位伺服控制器單獨驅(qū)動一臺交流異步電動機,電動機帶動機械手的執(zhí)行機構(gòu)完成動作。
本系統(tǒng)上位機選用工業(yè)控制計算機,下位伺服控制器采用交流異步電動機專用伺服控制器。上位計算機完成兩個功能,一是提供人機接口,便于用戶進行操作,二是通過串行口,按RS-485協(xié)議標(biāo)準承擔(dān)對下位伺服控制器的控制。下位機接受上位機發(fā)出的指令語言,按指令要求控制電機轉(zhuǎn)動。同時下位伺服控制器還通過交流電機上的碼盤檢測異步電機運動狀態(tài),并反饋給下位機,以實現(xiàn)下位控制器對電機運動狀態(tài)的實時控制??刂葡到y(tǒng)結(jié)構(gòu)如圖1。
[align=center]
圖1 機械手控制系統(tǒng)結(jié)構(gòu)圖[/align]
交流異步電機伺服控制器是一類專門用于控制交流異步電機的設(shè)備。伺服控制器配有RS-485接口和I/O口,用于與上位機通訊。通過使用伺服控制器的專用語言,我們設(shè)計了運行于伺服控制器上的程序。下位伺服控制器在上電后自動執(zhí)行存儲于控制器中的這段程序。它的主要功能是接受上位計算機下傳的指令,按上位計算機的要求對電機運動狀態(tài)進行控制。對于電機運動的具體實時控制則由下位伺服控制器的內(nèi)部控制算法實現(xiàn)。
3 二次示教
機械手采用集散控制結(jié)構(gòu),所以在控制系統(tǒng)中上下位機間實現(xiàn)信息傳遞的控制網(wǎng)絡(luò)成為系統(tǒng)控制的一個關(guān)鍵因素,交流電動機伺服控制器和工業(yè)控制計算機內(nèi)都有一個 RS-485口,所以我們在設(shè)計上選用了上下位機的RS-485串行口做為它們之間通訊的途徑。
在工業(yè)現(xiàn)場中上下位機不亦頻繁進行RS-485方式通訊,因為RS-485通訊方式在有干擾的環(huán)境下信號容易受干擾而導(dǎo)致通訊失敗,盡管我們在通訊程序上設(shè)計了容錯功能,但這種失敗以及RS-485本身通訊時所占用的時間,會大大降低系統(tǒng)工作的實時性。
基于這一問題我們采用了二次示教的控制策略,下面簡介這一策略的實現(xiàn)方法。在示教階段,上位計算機記錄用戶需要的工作流程,即各自由度的運動順序,以及每一個運動環(huán)節(jié)的運動距離、運動速度、運動加速度,并形成一個示教數(shù)據(jù)隊列,這一示教數(shù)據(jù)隊列記錄了機械手工作所需要的完整信息,即完成了由人對系統(tǒng)的一次示教。
圖2示例了一個示教過程的數(shù)據(jù)隊列,其中A、B、C、D分別代表下位設(shè)備,各方框結(jié)點中各設(shè)備名后序號表示該結(jié)點在一個流程中啟動該設(shè)備的序號。如“B2”中,“B”表示該結(jié)點記錄的是下位設(shè)備“B”的信息,“2”表示該結(jié)點中裝的是“B”設(shè)備在一個工作流程中第二次被啟動時的運動信息,注意同一設(shè)備位于不同次序的數(shù)據(jù)記錄內(nèi)容往往是不一樣的。
[align=center]
圖2[/align]
在機械手啟動自動工作,并實現(xiàn)第一次自動工作循環(huán)中,上位計算機會向當(dāng)前應(yīng)運動的自由度相應(yīng)控制器發(fā)送相關(guān)運動數(shù)據(jù)信息,即運動位移,運動速度,運動加速度,這時下位控制器會將這些數(shù)據(jù)保存至自己的存儲器內(nèi),以形成數(shù)據(jù)記錄,緊接著上位計算機啟動相關(guān)下位控制器的I/O,以通知下位控制器開始動作,這時下位控制器完成的動作就是按這個新保存的信息完成的,動作完成后下位控制器通知上位計算機,上位計算機接到控制信息后,繼續(xù)通知下一個需要動作的控制器。一個工作流程完成后,各控制器已按工作流程中自已的動作,按順序形成了自己的數(shù)據(jù)記錄,并存入了自己的存儲器。這些記錄中記錄了每一個動作的運動速度,運動距離,運動加速度,這樣即完成了由上位計算機對下位控制器的二次示教。
這時數(shù)據(jù)隊列變成圖3,圖中所示狀態(tài)為一個工作流程初始工作狀態(tài)。
[align=center]
圖3[/align]
這樣每一個控制器就知道一個工作流程中,當(dāng)上位計算機通知自己工作時,每一個動作的信息,同時也知道自已在一個工作流程中,被通知動作后,各動作的先后順序。但每一個控制器對于自己的動作在整體工作流程中的順序是不做記錄的,這一順序由主控制器來協(xié)調(diào)。經(jīng)過二次示教,就把一個工作流程的所有信息進行了分解,即由上位計算機記錄整體的工作順序,由下位控制器記錄自己的內(nèi)部工作順序及工作細節(jié)。
在隨后的工作流程中,上位控制器只向應(yīng)動作的控制器發(fā)出控制I/O,而不再發(fā)送具體的控制細節(jié)信息,因為這些細節(jié)信息已在第一個工作流程中按順序在下位控制器中形成了數(shù)據(jù)記錄。下位控制器根據(jù)上位計算機的I/O按順序調(diào)出這些數(shù)據(jù)記錄來完成動作。圖4示例了當(dāng)上位數(shù)據(jù)隊列工作到B3時,上圖的變化。
[align=center]
圖4[/align]
通過二次示教,增強了系統(tǒng)的實時性,避免了因通訊受干擾而給系統(tǒng)帶來的諸多故障,系統(tǒng)的整體性能得到了很大的提高。