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