1 引言
從世界上第一臺遙控機械手的誕生至今已有50年了,在這短短的幾年里,伴隨著計算機、自動控制理論的發(fā)展和工業(yè)生產(chǎn)的需要及相關(guān)技術(shù)的進步,機器人的發(fā)展已經(jīng)歷了3代[1]:
(1)可編程的示教再現(xiàn)型機器人;
(2)基于傳感器控制具有一定自主能力的機器人;
(3)智能機器人.
作為機器人的核心部分,機器人控制器是影響機器人性能的關(guān)鍵部分之一.它從一定程度上影響著機器人的發(fā)展.目前,由于人工智能、計算機科學(xué)、傳感器技術(shù)及其它相關(guān)學(xué)科的長足進步,使得機器人的研究在高水平上進行,同時也為機器人控制器的性能提出更高的要求.
對于不同類型的機器人,如有腿的步行機器人與關(guān)節(jié)型工業(yè)機器人,控制系統(tǒng)的綜合方法有較大差別,控制器的設(shè)計方案也不一樣.本文僅討論工業(yè)機器人控制器問題.
2 機器人控制器類型
機器人控制器是根據(jù)指令以及傳感信息控制機器人完成一定的動作或作業(yè)任務(wù)的裝置,它是機器人的心臟,決定了機器人性能的優(yōu)劣.
從機器人控制算法的處理方式來看,可分為串行、并行兩種結(jié)構(gòu)類型.
2.1 串行處理結(jié)構(gòu)
所謂的串行處理結(jié)構(gòu)是指機器人的控制算法是由串行機來處理.對于這種類型的控制器,從計算機結(jié)構(gòu)、控制方式來劃分,又可分為以下幾種[2].
(1) 單CPU結(jié)構(gòu)、集中控制方式
用一臺功能較強的計算機實現(xiàn)全部控制功能.在早期的機器人中,如Hero-I, Robot-I等,就采用這種結(jié)構(gòu),但控制過程中需要許多計算(如坐標變換),因此這種控制結(jié)構(gòu)速度較慢.
(2) 二級CPU結(jié)構(gòu)、主從式控制方式
一級CPU為主機,擔當系統(tǒng)管理、機器人語言編譯和人機接口功能,同時也利用它的運算能力完成坐標變換、軌跡插補,并定時地把運算結(jié)果作為關(guān)節(jié)運動的增量送到公用內(nèi)存,供二級CPU讀取;二級CPU完成全部關(guān)節(jié)位置數(shù)字控制.這類系統(tǒng)的兩個CPU總線之間基本沒有聯(lián)系,僅通過公用內(nèi)存交換數(shù)據(jù),是一個松耦合的關(guān)系.對采用更多的CPU進一步分散功能是很困難的.日本于70年代生產(chǎn)的Motoman機器人(5關(guān)節(jié),直流電機驅(qū)動)的計算機系統(tǒng)就屬于這種主從式結(jié)構(gòu).
(3) 多CPU結(jié)構(gòu)、分布式控制方式
目前,普遍采用這種上、下位機二級分布式結(jié)構(gòu),上位機負責整個系統(tǒng)管理以及運動學(xué)計算、軌跡規(guī)劃等.下位機由多CPU組成,每個CPU控制一個關(guān)節(jié)運動,這些CPU和主控機聯(lián)系是通過總線形式的緊耦合.這種結(jié)構(gòu)的控制器工作速度和控制性能明顯提高.但這些多CPU系統(tǒng)共有的特征都是針對具體問題而采用的功能分布式結(jié)構(gòu),即每個處理器承擔固定任務(wù).目前世界上大多數(shù)商品化機器人控制器都是這種結(jié)構(gòu).
控制器計算機控制系統(tǒng)中的位置控制部分,幾乎無例外地采用數(shù)字式位置控制.
以上幾種類型的控制器都是采用串行機來計算機器人控制算法.它們存在一個共同的弱點:計算負擔重、實時性差.所以大多采用離線規(guī)劃和前饋補償解耦等方法來減輕實時控制中的計算負擔.當機器人在運行中受到干擾時其性能將受到影響,更難以保證高速運動中所要求的精度指標.
由于機器人控制算法的復(fù)雜性以及機器人控制性能的亟待提高,許多學(xué)者從建模、算法等多方面進行了減少計算量的努力,但仍難以在串行結(jié)構(gòu)控制器上滿足實時計算的要求.因此,必須從控制器本身尋求解決辦法.方法之一是選用高檔次微機或小型機;另一種方法就是采用多處理器作并行計算,提高控制器的計算能力.
2.2 并行處理結(jié)構(gòu)
并行處理技術(shù)是提高計算速度的一個重要而有效的手段,能滿足機器人控制的實時性要求.從文獻來看,關(guān)于機器人控制器并行處理技術(shù),人們研究較多的是機器人運動學(xué)和動力學(xué)的并行算法及其實現(xiàn).1982年J.Y.S.Luh[3]首次提出機器人動力學(xué)并行處理問題,這是因為關(guān)節(jié)型機器人的動力學(xué)方程是一組非線性強耦合的二階微分方程,計算十分復(fù)雜.提高機器人動力學(xué)算法計算速度也為實現(xiàn)復(fù)雜的控制算法如:計算力矩法、非線性前饋法、自適應(yīng)控制法等打下基礎(chǔ).開發(fā)并行算法的途徑之一就是改造串行算法,使之并行化,然后將算法映射到并行結(jié)構(gòu).一般有兩種方式,一是考慮給定的并行處理器結(jié)構(gòu),根據(jù)處理器結(jié)構(gòu)所支持的計算模型,開發(fā)算法的并行性;二是首先開發(fā)算法的并行性,然后設(shè)計支持該算法的并行處理器結(jié)構(gòu),以達到最佳并行效率.
構(gòu)造并行處理結(jié)構(gòu)的機器人控制器的計算機系統(tǒng)一般采用以下方式:
(1)開發(fā)機器人控制專用VLSI[4,5]
設(shè)計專用VLSI能充分利用機器人控制算法的并行性,依靠芯片內(nèi)的并行體系結(jié)構(gòu)易于解決機器人控制算法中大量出現(xiàn)的計算,能大大提高運動學(xué)、動力學(xué)方程的計算速度.但由于芯片是根據(jù)具體的算法來設(shè)計的,當算法改變時,芯片則不能使用,因此采用這種方式構(gòu)造的控制器不通用,更不利于系統(tǒng)的維護與開發(fā).
(2)利用有并行處理能力的芯片式計算機(如:Transputer, DSP等)構(gòu)成并行處理網(wǎng)絡(luò)
Transputer是英國Inmos公司研制并生產(chǎn)的一種并行處理用的芯片式計算機.利用 Transputer芯片的4對位串通信的link對,易于構(gòu)造不同的拓撲結(jié)構(gòu),且Transputer具有極強的計算能力.利用Transputer并行處理器,人們構(gòu)造了各種機器人并行處理器,如流水線型、樹型等.文獻[6]利用Transputer網(wǎng)絡(luò)實現(xiàn)逆運動學(xué)計算,而文獻[7]以實時控制為目的,分別實現(xiàn)了前饋補償及計算力矩兩種基于固定模型的控制方案.
隨著數(shù)字信號芯片速度的不斷提高,高速數(shù)字信號處理器(DSP)在信息處理的各個方面得到廣泛應(yīng)用.DSP以極快的數(shù)字運算速度見長,并易于構(gòu)成并行處理網(wǎng)絡(luò)[8].文獻[9]介紹了一種基于DSP的機器人控制器,采用并行/流水線的設(shè)計方案,提高控制器性能.
(3)利用通用的微處理器 利用通用微處理器構(gòu)成并行處理結(jié)構(gòu),支持計算,實現(xiàn)復(fù)雜控制策略在線實時計算.如文獻[10,11]中設(shè)計的系統(tǒng).
轉(zhuǎn)載請注明出處。