朱璽
(國(guó)網(wǎng)上海市電力公司信息通信公司,上海 200040)
機(jī)器人的編隊(duì)控制是保證其正常運(yùn)行的首要技術(shù)機(jī)制,不僅能應(yīng)用于日常行走、偵察,還能進(jìn)一步進(jìn)行空間探測(cè)、搜救、巡邏等高難度工作。但由于日常作業(yè)涉及的數(shù)據(jù)量過(guò)于龐大,且天氣、人為以及障礙物影響等意外因素過(guò)多,導(dǎo)致編隊(duì)隊(duì)形難以實(shí)現(xiàn)有效精準(zhǔn)的控制。
文獻(xiàn)[1]采用深度學(xué)習(xí)方法建立獎(jiǎng)勵(lì)值模型,采集現(xiàn)場(chǎng)數(shù)據(jù)作為模型的初始輸入值,根據(jù)不同的編隊(duì)理念構(gòu)建不同的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),在不同的任務(wù)場(chǎng)景下,求解輸出最優(yōu)的控制函數(shù),完成控制。該方法所需的數(shù)據(jù)量較大、耗用量較高,整體實(shí)用性不強(qiáng)。文獻(xiàn)[2]分析現(xiàn)場(chǎng)多傳感信息數(shù)據(jù),選擇存在障礙和不存在障礙另種編隊(duì)數(shù)據(jù)集,融合數(shù)據(jù)集同種特征數(shù)據(jù),求得相關(guān)控制參數(shù)。該方法進(jìn)行特征融合時(shí),容易忽略噪聲因素影響,導(dǎo)致控制值和實(shí)際值差值過(guò)大,控制效果較差。針對(duì)上述問(wèn)題,提出了一種考慮行進(jìn)避障的巡檢機(jī)器人編隊(duì)隊(duì)形自動(dòng)控制方法。
要提高巡檢機(jī)器人編隊(duì)隊(duì)形自動(dòng)控制方法的精準(zhǔn)性,需要對(duì)機(jī)器人的運(yùn)動(dòng)模型進(jìn)行分析,了解其運(yùn)動(dòng)模式、正常行走的狀態(tài)向量以及運(yùn)行速率等參數(shù),這些參數(shù)可以作為后續(xù)自動(dòng)控制的參照,盡可能降低判定誤差。將機(jī)器人的運(yùn)動(dòng)作為一種空間內(nèi)的二維運(yùn)動(dòng),將三維運(yùn)動(dòng)抽象為二維運(yùn)動(dòng),采用二次積分模型[3],對(duì)機(jī)器人運(yùn)動(dòng)學(xué)涉及的各個(gè)參數(shù)進(jìn)行描述,表達(dá)公式為:
式中,x表示機(jī)器人R的初始位置;v表示機(jī)器人R的速度值,v∈R;x′表示抽象表達(dá)[4]后的位置值;m表示機(jī)器人質(zhì)量。將機(jī)器人在二維方向上檢測(cè)到的障礙物質(zhì)點(diǎn)抽象為具有單位質(zhì)量的質(zhì)點(diǎn)[5],此時(shí),機(jī)器人R的實(shí)時(shí)狀態(tài)向量值為:
推導(dǎo)求得機(jī)器人R的狀態(tài)方程為:
式中,O、I分別表示對(duì)應(yīng)維度的單位矩陣和零狀態(tài)矩陣。
一般情況下,由于機(jī)器人自身存在驅(qū)動(dòng)約束[6],運(yùn)動(dòng)速度也存在上限值,在出現(xiàn)意外情況時(shí)能保證機(jī)器人的有效制動(dòng)。參考這種情況,計(jì)算機(jī)器人行進(jìn)速率上限值和編隊(duì)隊(duì)形的速率均值[7],求得二者之間的均值v′作為自動(dòng)控制的參照值,提升自動(dòng)控制精準(zhǔn)度,計(jì)算公式為:
式中,a(t)表示時(shí)間參數(shù);vmax表示機(jī)器人的最大速率值。
如何在編隊(duì)過(guò)程中保證機(jī)器人的穩(wěn)定,也是自動(dòng)控制算法需要考慮的重要因素之一。該文針對(duì)該問(wèn)題,參考機(jī)器人的穩(wěn)態(tài)運(yùn)動(dòng)理論,進(jìn)行相關(guān)討論如下:
設(shè)機(jī)器人的參考節(jié)點(diǎn)為M,跟隨機(jī)器人的運(yùn)動(dòng)特點(diǎn),采用線性的方式將其運(yùn)動(dòng)特點(diǎn)描述為:
式中,f表示線性參數(shù)[8];k1表示穩(wěn)定點(diǎn);k2表示動(dòng)態(tài)變換點(diǎn);γ表示直線運(yùn)動(dòng)點(diǎn);λ表示曲線運(yùn)動(dòng)點(diǎn)。結(jié)合機(jī)器人直線和曲線的兩種運(yùn)動(dòng)狀態(tài),得到平衡點(diǎn)的計(jì)算公式為:
式中,e表示收斂系數(shù)[9];表示編隊(duì)隊(duì)形的平衡差
考慮到機(jī)器人在編隊(duì)過(guò)程中容易受到的障礙物碰撞影響,提出結(jié)合懲罰因子[10]的概念來(lái)設(shè)計(jì)編隊(duì)隊(duì)形的自動(dòng)控制方案。懲罰因子屬于約束隊(duì)形路徑長(zhǎng)度的系數(shù),計(jì)算公式為:
式中,β代表懲罰因子;d0代表巡檢機(jī)器人與障礙物之間的標(biāo)準(zhǔn)安全距離[11];d′代表巡檢機(jī)器人與障礙物間的距離最小值;ρ0代表編隊(duì)隊(duì)形涉及的最大范圍,π 表示編隊(duì)中心運(yùn)動(dòng)軌跡。
假設(shè)編隊(duì)隊(duì)形的最短路徑長(zhǎng)度[12]為l,考慮行進(jìn)避障的情況,得到最為安全的編隊(duì)路徑長(zhǎng)度o為:
當(dāng)0 ≤d′<ρ0+d0時(shí),說(shuō)明編隊(duì)路徑與障礙物之間的距離較近,不在安全距離內(nèi),此時(shí),編隊(duì)路徑選擇為不安全路徑,懲罰因子β的數(shù)值變大,l變大;當(dāng)0 ≥ρ0+d0時(shí),代表編隊(duì)路徑與障礙物之間的距離較遠(yuǎn),屬于安全距離內(nèi),此時(shí),懲罰因子β數(shù)值變小為0,l也隨之變小。將上述關(guān)系通過(guò)圖像進(jìn)行描述,如圖1 所示。
圖1 機(jī)器人編隊(duì)中心運(yùn)動(dòng)軌跡
從圖1 中可以看出,x2>x1,障礙物的位置坐標(biāo)為(a,b),編隊(duì)路徑關(guān)系為0 ≤d′<ρ0+d0,公式為:
式中,(x1,y1) 表示編隊(duì)路徑起始位置;(x2,y2)表示編隊(duì)終點(diǎn)位置。計(jì)算兩點(diǎn)間最短的編隊(duì)路徑長(zhǎng)度l為:
在實(shí)際應(yīng)用中,可將路徑問(wèn)題直接轉(zhuǎn)換為編隊(duì)中心與障礙物之間的安全距離()ρ0+d0問(wèn)題,求得與障礙物之間的交點(diǎn)坐標(biāo)值[13]為:
式中,a、b均表示機(jī)器人樣本集。當(dāng)整個(gè)機(jī)器人編隊(duì)到達(dá)目標(biāo)點(diǎn)時(shí),此時(shí)與障礙物之間的最短安全距離為:
得到懲罰因子β為:
為保證編隊(duì)隊(duì)形自動(dòng)控制的精準(zhǔn)性,根據(jù)上述過(guò)程求得的懲罰因子和避障的最佳路徑建立目標(biāo)函數(shù)為(l,l′) →0,(κ,κ′) →0,其中,l′表示避障路徑自動(dòng)控制系數(shù);κ′表示最佳控制比例系數(shù)[14];κ表示控制變量[15-16],推導(dǎo)求得最終的自動(dòng)控制函數(shù)為:
式中,κ(x)控制函數(shù);μ表示線性控制變量系數(shù)。通過(guò)上述步驟,由此完成巡檢機(jī)器人編隊(duì)隊(duì)形自動(dòng)控制。
為了驗(yàn)證考慮行進(jìn)避障的巡檢機(jī)器人編隊(duì)隊(duì)形自動(dòng)控制方法的有效性,在巡檢機(jī)器人編隊(duì)隊(duì)形自動(dòng)控制實(shí)驗(yàn)中,挑選六個(gè)巡檢機(jī)器人在未知的環(huán)境中進(jìn)行行進(jìn)、巡檢等運(yùn)動(dòng),保證其在一段時(shí)間內(nèi)能夠維持隊(duì)形運(yùn)動(dòng)至預(yù)先指定位置。在整個(gè)實(shí)驗(yàn)過(guò)程中,還設(shè)置了不同類型的障礙物,分別為擴(kuò)散型障礙物、動(dòng)態(tài)障礙物、狹窄通道障礙物以及復(fù)雜形態(tài)障礙物。將這些障礙物分別布置在測(cè)試環(huán)境中的不同位置處,以便檢測(cè)編隊(duì)控制算法避障能力[17-18]。
實(shí)驗(yàn)所用機(jī)器人預(yù)先設(shè)定的位置誤差為3 cm,即進(jìn)行測(cè)試時(shí),實(shí)際與預(yù)期誤差小于3 cm 時(shí),則判定機(jī)器人在隊(duì)形中。實(shí)驗(yàn)所需詳細(xì)參數(shù)表示如表1所示。
表1 實(shí)驗(yàn)所需詳細(xì)參數(shù)
該實(shí)驗(yàn)的驗(yàn)證方法主要根據(jù)機(jī)器人的避障及編隊(duì)控制問(wèn)題進(jìn)行驗(yàn)證,一方面檢測(cè)編隊(duì)控制算法的避障能力,另一方面檢測(cè)算法的協(xié)調(diào)能力。為提高實(shí)驗(yàn)結(jié)果的參考能力,將設(shè)置三組實(shí)驗(yàn)分別為三種障礙物編隊(duì)、菱形障礙物狹窄通道編隊(duì)以及六邊形障礙物編隊(duì),并與文獻(xiàn)[1]方法、文獻(xiàn)[2]方法進(jìn)行對(duì)比分析。在Matlab 上搭建了測(cè)試平臺(tái),編隊(duì)自動(dòng)控制結(jié)果如圖2 所示。其中,黑色實(shí)心的任意幾何圖形代表障礙物,空心圓圈代表機(jī)器人起始點(diǎn)和終點(diǎn)位置,各種線條代表不同方法的編隊(duì)路徑。
圖2 編隊(duì)自動(dòng)控制結(jié)果
從圖2 中可以看出,無(wú)論是在哪種障礙物環(huán)境中,所提方法的編隊(duì)隊(duì)形路徑最短且與障礙物之間的誤碰率最低,路徑曲線平整度最高且沒(méi)有出現(xiàn)過(guò)多的折疊彎曲現(xiàn)象,而另外兩種方法都出現(xiàn)了故障碰撞現(xiàn)象。這說(shuō)明,在進(jìn)行編隊(duì)隊(duì)形自動(dòng)控制時(shí),所提方法控制效果較好,避障能力較強(qiáng),可以保證機(jī)器人在整個(gè)運(yùn)動(dòng)過(guò)程中速度變化的平穩(wěn)能力,避障軌跡較為平滑,即使在狹窄的菱形障礙環(huán)境下,也能在第一時(shí)間恢復(fù)隊(duì)形,達(dá)到高效自動(dòng)控制。
進(jìn)一步驗(yàn)證所提方法的巡檢機(jī)器人編隊(duì)隊(duì)形自動(dòng)控制誤差,該誤差值代表機(jī)器人在進(jìn)行編隊(duì)隊(duì)形控制時(shí),控制的實(shí)際點(diǎn)位與預(yù)期點(diǎn)位之間的距離差值,通過(guò)距離差值,實(shí)現(xiàn)自動(dòng)控制有效性的精準(zhǔn)判定。三種方法對(duì)于巡檢機(jī)器人編隊(duì)隊(duì)形自動(dòng)控制誤差對(duì)比曲線如圖3 所示。
圖3 三種方法自動(dòng)控制誤差對(duì)比曲線
從圖3 中可以看出,所提方法的控制誤差和曲線分布范圍較低。隨著控制量的增長(zhǎng),誤差曲線沒(méi)有出現(xiàn)大幅度上升。當(dāng)控制量達(dá)到5 000 時(shí),所提方法的自動(dòng)控制誤差為0.32。而另外兩種方法的曲線分布明顯較高,誤差曲線上升幅度較大。當(dāng)控制量達(dá)到5 000 時(shí),文獻(xiàn)[1]方法和文獻(xiàn)[2]方法的自動(dòng)控制誤差分別為0.71 和0.63。由此可知,獻(xiàn)[1]方法和文獻(xiàn)[2]方法不能很好地消化較大的控制量,控制精準(zhǔn)性較低,誤差較大。
針對(duì)巡檢機(jī)器人環(huán)境干擾量過(guò)大導(dǎo)致的編隊(duì)隊(duì)形控制效果差、誤差大的問(wèn)題,提出了考慮行進(jìn)障礙的機(jī)器人編隊(duì)隊(duì)形自動(dòng)控制方法。對(duì)機(jī)器人的運(yùn)動(dòng)學(xué)模型進(jìn)行了系統(tǒng)的分析,捕捉可能影響運(yùn)行穩(wěn)定性的關(guān)鍵參數(shù)。了解機(jī)器人遇見(jiàn)障礙物的特征因子,最大程度解決障礙影響問(wèn)題。該方法的編隊(duì)隊(duì)形控制效果較好,確??刂瀑|(zhì)量,減小控制誤差。