專利名稱:一種非360°探測機(jī)器人的定目標(biāo)導(dǎo)航方法
技術(shù)領(lǐng)域:
本發(fā)明涉及自動控制領(lǐng)域,特別涉及一種非360。探測機(jī)器人(探測范圍在^180° <360°)的定目標(biāo)導(dǎo)航方法。
背景技術(shù):
機(jī)器人在未知環(huán)境中避開障礙物到達(dá)指定目的地通常采用Bug及其衍生算法,它們要求機(jī)器人具有36CT障礙檢測范圍的能力、假設(shè)機(jī)器人無物理尺寸、而且機(jī)器人能貼著障礙物邊緣繞行,是對具有360°障礙檢測范圍的能力且無物理尺寸機(jī)器人避障導(dǎo)航的一種理論指導(dǎo)算法。Bug類算法的核心是機(jī)器人具有貼著障礙物邊緣繞行的能力,包括接觸點(diǎn)、分離點(diǎn)的確定,繞行的實(shí)現(xiàn)等。目前,Bug類算法實(shí)現(xiàn)在未知環(huán)境中繞行障礙物邊緣到達(dá)指定目的地的方法主要有如下幾種(1)機(jī)器人跟蹤墻壁的方法,即控制機(jī)器人在移動過程中與墻面保持恒定距離,這種方法雖然不要求機(jī)器人具有360°探測范圍,但不適用于障礙物邊緣輪廓突變等復(fù)雜情況。(2)基于瞬時目標(biāo)(Instant Goal)方法,即在每個采樣點(diǎn)均根據(jù)測距傳感器信息建立一個瞬時目標(biāo)點(diǎn),機(jī)器人跟蹤這一系列瞬時目標(biāo)點(diǎn)最終實(shí)現(xiàn)定點(diǎn)導(dǎo)航,但是這種方法要求機(jī)器人具有360。障礙檢測范圍且能區(qū)分遇到的障礙物邊緣是屬于新的障礙物或己遇障礙物。(3)分目標(biāo)(Subgoal)方法,該方法假定障礙物都是多邊形,在這些多邊形的定點(diǎn)周圍建立分目標(biāo)點(diǎn),通過這些分目標(biāo)點(diǎn)實(shí)現(xiàn)無碰撞定目標(biāo)導(dǎo)航,但是這種方法要求障礙物的形狀必需為幾何多邊形,而通常情況下難以滿足此要求,因而限制了其應(yīng)用。還有的研究使用機(jī)械結(jié)構(gòu)讓測距傳感器運(yùn)動來擴(kuò)大探測范圍(例如讓聲納傳感器旋轉(zhuǎn)來提升掃描范圍),缺點(diǎn)是要求機(jī)械裝置精度高,由于空間或者成本限制,該方法并不是經(jīng)濟(jì)可行的。
現(xiàn)有方法均不適用于非360。檢測范圍(即探測范圍在^180°~<360°)且具有物理尺寸的機(jī)器人,所以研究此類機(jī)器人在未知環(huán)境下定目標(biāo)點(diǎn)導(dǎo)航的控制方法具有重要意義。
發(fā)明內(nèi)容
本發(fā)明的目的在于克服現(xiàn)有技術(shù)中存在的缺點(diǎn),提供一種精度高、定位
準(zhǔn)確、可以在未知環(huán)境下定目標(biāo)點(diǎn)避障導(dǎo)航的非360。探測機(jī)器人的定目標(biāo)導(dǎo) 航方法。
本發(fā)明的目的通過下述技術(shù)方案實(shí)現(xiàn)-
一種非360。探測機(jī)器人的定目標(biāo)導(dǎo)航方法,包括下述步驟(1)通過機(jī) 器人定位系統(tǒng)得到任意時刻機(jī)器人的位置;(2)根據(jù)機(jī)器人上的測距傳感器 (探測范圍在^180° <360°)的測量數(shù)據(jù),分析機(jī)器人前方特定區(qū)域內(nèi)障礙 物的有無和分布情況以及路徑歷史情況;(3)根據(jù)不同的障礙物分布信息, 機(jī)器人選擇純直線或純轉(zhuǎn)向行走兩種方式,即正對目標(biāo)點(diǎn)直線前進(jìn)模式和遇 到障礙物時繞行障礙物邊緣行走模式,實(shí)現(xiàn)在障礙物分布未知環(huán)境中定目標(biāo) 點(diǎn)無碰撞導(dǎo)航。
步驟1中,所述機(jī)器人定位系統(tǒng)為現(xiàn)有常用的定位系統(tǒng),由GPS、車輪 編碼器(Odometry)或者慣性定位傳感器組成,用于實(shí)時測定機(jī)器人當(dāng)前位 置。
步驟2中,所述測距傳感器的探測范圍在^180°~<360°,可以采用探測 范圍為180。的單個測距儀(如LMS-200型激光測距儀),也可以采用由多個 測距傳感器(如聲納傳感器)組成的探測范圍為180的半環(huán)形測距傳感器組。
步驟2中,本發(fā)明將所述機(jī)器人前方特定區(qū)域定義為"機(jī)器人虛擬觸角"。 機(jī)器人虛擬觸角是指相對于機(jī)器人車體定義的特定形狀的區(qū)域,它們位于車 載測距傳感器探測范圍內(nèi)。機(jī)器人虛擬觸角的作用是利用測距傳感器輸入的 實(shí)時環(huán)境信息數(shù)據(jù),判斷是否有障礙物位于這些區(qū)域,若無,則表示該觸角 未探測到障礙物;若有,則找出障礙物上最接近機(jī)器人的位置,從而實(shí)現(xiàn)類 似動物觸角的功能。機(jī)器人虛擬觸角可快速利用測距傳感器的大量實(shí)時數(shù)據(jù), 而且還具有記憶功能,能記住任意一段純直線行走過程中已無碰撞行走的距 離。
機(jī)器人虛擬觸角的具體設(shè)計如下
本發(fā)明中將機(jī)器人模型簡化為圓形,其直徑為機(jī)器人物理直徑(圓形機(jī)
器人)或平面輪廓等效圓直徑(非圓形機(jī)器人),用符號Rr。b表示其半徑。 共設(shè)計了三類共五個虛擬觸角,如附圖1所示。分別是位于前方的兩個半圓 環(huán)形觸角DsCs與DsCb (半徑分別為Rs、 Rb,其中R^Rb,),左右兩側(cè)的狹 長矩形觸角Bar,與Baiv (長為Rb,寬為b),以及位于前方中間位置由矩形(2RsXa,其中a= Rmax-Rs)和半圓形(半徑Rs)組成的寬面積型觸角Rng。 圖中Rmax為測距傳感器的最大探測距離。半徑Rrob可以是實(shí)際表示圓形機(jī) 器人的半徑或非圓形機(jī)器人對角線長度的一半。Rmax表示機(jī)器人傳感器探 測范圍極限。Rs 、 Rb組成了施密特觸發(fā)器的上下限。當(dāng)機(jī)器人遇到障礙物 時,在障礙物距離機(jī)器人小于等于Rb時,機(jī)器人認(rèn)為檢測到障礙物。但是 障礙物距離機(jī)器人距離小于等于Rb大于Rs時,此時機(jī)器人仍未停止動作 向障礙物靠近。直到障礙物距離小于等于Rs ,機(jī)器人停止動作。而當(dāng)機(jī)器 人離開障礙物動作時,當(dāng)機(jī)器人在距離小于等于Rb大于Rs范圍內(nèi),機(jī)器 人仍然認(rèn)為沒有離開障礙物,而當(dāng)機(jī)器人距離障礙物大于Rb時,認(rèn)為機(jī)器 人離開了障礙物。這樣就形成了一個施密特觸發(fā)器的過程。這樣機(jī)器人不會 由于單一的邊界條件而在邊界周圍震蕩,增加穩(wěn)定性。其中Rrob<Rs<Rb<
Rmax。
機(jī)器人依靠上述定義的三類共五個虛擬觸角探測周圍未知環(huán)境,在每一 次采樣周期,每個觸角都刷新各自對應(yīng)區(qū)域障礙物信息,以作為機(jī)器人導(dǎo)航 行走決策的依據(jù)。其中環(huán)形觸角Dscs與Dscb用于障礙物邊緣繞行過程中避 開轉(zhuǎn)向的實(shí)現(xiàn),Rs<Rb的設(shè)計使避開轉(zhuǎn)向時按施密特觸發(fā)器設(shè)計以提高穩(wěn)定 性;左右兩側(cè)的狹長矩形觸角Ban與Baiv用于機(jī)器人每次直線行走時記錄無 障礙行走距離d,以用于障礙物邊緣繞行過程中接近轉(zhuǎn)向的實(shí)現(xiàn);位于前方 中間位置的Rng觸角用于檢測當(dāng)前位置下傳感器探測范圍內(nèi)可以無障礙物 直線行走的距離F。若機(jī)器人對準(zhǔn)目標(biāo)點(diǎn)T直線前進(jìn)時,當(dāng)T出現(xiàn)在F可及 的范圍,則機(jī)器人可以持續(xù)直線行走到達(dá)T。
步驟3中,所述根據(jù)不同的障礙物分布信息,機(jī)器人選擇純直線或純轉(zhuǎn) 向行走兩種方式,具體操作方案如下
為了表述方便,定義如下符號
機(jī)器人的出發(fā)點(diǎn)為S,目標(biāo)點(diǎn)的位置為T,當(dāng)前位置值為X。其中S、 T
已知,X由定位系統(tǒng)測量得到;
d (X,T)表示X至T的距離;
d表示任一段直線行走過程中已無碰撞走過的距離,它由機(jī)器人兩側(cè)條 形虛擬觸角Ban與Ba「檢測得到,開始直線行走或兩側(cè)條形觸角檢測到障 礙物時均將d清零;
dmin(T)表示自上次相遇點(diǎn)之后機(jī)器人在繞行障礙物邊緣過程中機(jī)器人至T的最小距離,為全局變量,經(jīng)計算比較得到;
用F表示;方向上在傳感器探測范圍內(nèi)可無障礙物自由行走的距離,F(xiàn) 由虛擬觸角Rng測得;
e表示本次純轉(zhuǎn)向動作已經(jīng)轉(zhuǎn)過的角度;
用相遇點(diǎn)H表示機(jī)器人朝向目標(biāo)點(diǎn)直線行走過程中碰到障礙物的點(diǎn),用
脫離點(diǎn)L表示機(jī)器人繞行障礙物邊緣的結(jié)束點(diǎn),L'表示機(jī)器人上一次脫離點(diǎn);
step為預(yù)先給定的一個閾值,表示每次繞行邊沿結(jié)束時機(jī)器人至少要更 靠近T的程度。
機(jī)器人在每一采樣周期開始時根據(jù)當(dāng)前測距傳感器信息對上述相關(guān)參數(shù) 進(jìn)行計算刷新,接著進(jìn)行相關(guān)決策。本發(fā)明基于較短路徑來定義"相遇點(diǎn)" 與"脫離點(diǎn)",它們決定兩種行走模式的分界點(diǎn)。
"相遇點(diǎn)"是機(jī)器人朝向目標(biāo)點(diǎn)直線行走過程中碰到障礙物的點(diǎn),機(jī)器 人由這一點(diǎn)開始繞行障礙物邊緣。
"脫離點(diǎn)"是繞行障礙物邊緣的結(jié)束點(diǎn),其確定方法(即脫離條件)如
下-
(1) 在接近轉(zhuǎn)向與避開轉(zhuǎn)向過程中,如果機(jī)器人對準(zhǔn)了目標(biāo)且①目標(biāo) 出現(xiàn)在探測范圍內(nèi),即d(X,T)-F《0;或②d(X,T)-F《dmin(T)-step這兩個條 件之一成立時,機(jī)器人所處的位置為脫離點(diǎn);
(2) 當(dāng)機(jī)器人與線段HT相交(這里H為上一次相遇點(diǎn))且正在跟蹤 的障礙物在XT線段之外,則機(jī)器人所處的位置為脫離點(diǎn)。
首先通過定位系統(tǒng)得到機(jī)器人的出發(fā)點(diǎn)、目標(biāo)點(diǎn)的位置以及出發(fā)點(diǎn)和目 標(biāo)點(diǎn)的方向值。機(jī)器人從出發(fā)點(diǎn)開始沿著出發(fā)點(diǎn)和目標(biāo)點(diǎn)的方向,首先進(jìn)行 純直線行走,倘若沒有遇到障礙物,機(jī)器人一直沿著直線到達(dá)目標(biāo)點(diǎn)。當(dāng)機(jī) 器人遇到障礙物后,機(jī)器人開始繞行障礙物邊緣的轉(zhuǎn)向行走,當(dāng)脫離條件成 立時,機(jī)器人結(jié)束上次障礙物邊緣繞行后再開始直線行走。機(jī)器人在行走過 程中一直判斷是否遇到障礙物,遇到障礙物后繞行的相遇點(diǎn)和脫離點(diǎn)的條件 然后執(zhí)行相應(yīng)的動作,直到機(jī)器人到達(dá)目標(biāo)點(diǎn)。
1、機(jī)器人的純直線行走,分為對準(zhǔn)目標(biāo)點(diǎn)的純直線行走和繞行障礙物 邊緣過程中的純直線行走兩種方式
(1)機(jī)器人使用虛擬觸角Rng測量當(dāng)前可以自由行走的距離,對準(zhǔn)目標(biāo)點(diǎn)T進(jìn)行純直線行走,直到到達(dá)目標(biāo)點(diǎn)T后停止(任務(wù)結(jié)束)?;蛘弋?dāng)虛 擬觸角Rng測量到障礙物,當(dāng)障礙物出現(xiàn)在觸角Ds"與DsCb范圍內(nèi)時,機(jī) 器人確定與障礙物相遇(接著開始繞行障礙物邊緣)時,停止直線行走;具 體包括從出發(fā)點(diǎn)S開始的初始直線行走,也包括結(jié)束上次障礙物邊緣繞行后 開始的對準(zhǔn)目標(biāo)點(diǎn)T的直線行走。
(2)機(jī)器人繞行障礙物邊緣過程中的純直線行走障礙物邊緣繞行按 分段直線實(shí)現(xiàn)。當(dāng)機(jī)器人脫離了障礙物,開始瞄準(zhǔn)目標(biāo)的轉(zhuǎn)向動作,轉(zhuǎn)向動 作完成后,機(jī)器人開始純直線行走,此時機(jī)器人在障礙物周圍,所以它的純 直線行走是一個個小分段。分段直線由機(jī)器人的轉(zhuǎn)向位置和轉(zhuǎn)向角確定,在 此分段直線行走過程中,觸角Dscs與Dscb —直在測量障礙物的位置,確定 相遇點(diǎn)和脫離點(diǎn),以及確定轉(zhuǎn)向動作(見2純轉(zhuǎn)向行走);這些分段直線行 走時,如果機(jī)器人位于上一次脫離點(diǎn)與上一次相遇點(diǎn)之間的連線上,表明機(jī) 器人已繞障礙物一整圈,說明機(jī)器人不可能到達(dá)目標(biāo)點(diǎn)T,則機(jī)器人停止行 走;當(dāng)機(jī)器人走到本次相遇點(diǎn)與目標(biāo)點(diǎn)間的線段(與線段HT相交)時,則 機(jī)器人停止純直線行走,進(jìn)行對準(zhǔn)轉(zhuǎn)向,對準(zhǔn)目標(biāo)點(diǎn)T然后再直線行走(即 對準(zhǔn)目標(biāo)點(diǎn)的純直線行走方式)。
2、機(jī)器人的轉(zhuǎn)向行走,分為三種接近轉(zhuǎn)向,即使機(jī)器人靠近障礙物
邊緣;避開轉(zhuǎn)向,即使機(jī)器人遠(yuǎn)離障礙物;對準(zhǔn)轉(zhuǎn)向,即使機(jī)器人對準(zhǔn)目標(biāo) 占.
>、、、■
(1)接近轉(zhuǎn)向其目的是繞行過程中接近被繞行的障礙物。接近轉(zhuǎn)向 的開始條件是由觸角DSCb測得機(jī)器人無障礙地直線行走距離d小于Rb時, 就要停下來進(jìn)行接近轉(zhuǎn)向。接近轉(zhuǎn)向的結(jié)束條件是滿足以下兩個條件之一-即轉(zhuǎn)動過程中對準(zhǔn)了目標(biāo)點(diǎn)T而且該點(diǎn)處滿足脫離條件;或者本次已轉(zhuǎn)動角
度e達(dá)到設(shè)定的閾值Y (根據(jù)機(jī)器人虛擬觸角設(shè)置來定,取為固定值)。
轉(zhuǎn)向方向是一個全局變量,從本次繞行開始點(diǎn)H至結(jié)束點(diǎn)L保持不變, 即在H點(diǎn)根據(jù)障礙物在機(jī)器人左側(cè)還是右側(cè)(由障礙物最接近機(jī)器人的點(diǎn)決
定)確定本次繞行中保持障礙物在機(jī)器人左側(cè)還是右側(cè),如在左側(cè)則所有接 近轉(zhuǎn)向均為逆時針方向,反之為順時針轉(zhuǎn)向。
閾值Y的選取是假設(shè)要實(shí)現(xiàn)繞行具有90°直角邊緣的障礙物時,根據(jù)需 要最少接近轉(zhuǎn)向的次數(shù)來決定,比如,如果希望最少2次的接近轉(zhuǎn)向,可將
閾值Y定為45。;如果希望最少3次的接近轉(zhuǎn)向,可將閾值Y定為30。。(2) 避開轉(zhuǎn)向其目的是邊緣繞行過程中為遠(yuǎn)離障礙物而實(shí)施的純轉(zhuǎn) 動避障動作。避開轉(zhuǎn)向的開始條件是當(dāng)繞行障礙物邊緣的直線段行走時遇 到障礙物邊緣時,即當(dāng)內(nèi)半環(huán)形觸角Dscs探測到障礙物時,就開始避開轉(zhuǎn)向。
避開轉(zhuǎn)向的結(jié)束條件是滿足以下兩個結(jié)束條件之一 其一是機(jī)器人對準(zhǔn) 目標(biāo)點(diǎn)T且該點(diǎn)滿足脫離條件;其二是外半圓環(huán)觸角DsCb檢測不到障礙物,
或者轉(zhuǎn)角6已達(dá)180°但Dscb仍然檢測到有障礙物存在。第一種結(jié)束條件滿
足則停止轉(zhuǎn)向,開始正對目標(biāo)點(diǎn)前進(jìn)的直線行走模式。第二種結(jié)束條件中,
當(dāng)機(jī)器人外半圓環(huán)觸角Dscb檢測不到障礙物,就可以結(jié)束避開轉(zhuǎn)向,這時由 于在虛擬觸角設(shè)計上保證了 Dscs<Dscb,因而可利用施密特觸發(fā)器特性提高 避開轉(zhuǎn)向時的穩(wěn)定性;當(dāng)轉(zhuǎn)角0已達(dá)180°而Dscb仍然檢測到有障礙物存 在時,因?yàn)檫@時機(jī)器人于此位置已知道360。環(huán)境信息,則根據(jù)虛擬轉(zhuǎn)動(即 軟件搜索)看能否找到使Dscb探不到障礙物的角度位置,如可以則按原轉(zhuǎn) 動方向繼續(xù)轉(zhuǎn)至該位置結(jié)束本次避開轉(zhuǎn)向,否則繼續(xù)轉(zhuǎn)動無意義,就此結(jié)束 本次避開轉(zhuǎn)向。
(3) 對準(zhǔn)轉(zhuǎn)向是指在初始出發(fā)點(diǎn)S、障礙物邊緣繞行脫離點(diǎn)L、當(dāng)機(jī) 器人走到本次相遇點(diǎn)與目標(biāo)點(diǎn)間的線段時對準(zhǔn)目標(biāo)點(diǎn)T執(zhí)行的轉(zhuǎn)向動作,轉(zhuǎn) 動方向按最小轉(zhuǎn)角原則來確定。此外,在執(zhí)行接近轉(zhuǎn)向及避開轉(zhuǎn)向過程中, 若機(jī)器人對準(zhǔn)了目標(biāo)點(diǎn)T且滿足脫離條件,機(jī)器人就會在該點(diǎn)脫離障礙物邊 緣,此時沒有額外的對準(zhǔn)轉(zhuǎn)向動作,保證其動作的自然性。
本發(fā)明與現(xiàn)有技術(shù)相比具有如下優(yōu)點(diǎn)和效果
(1) 本發(fā)明不要求機(jī)器人具有360。障礙探測范圍,考慮了機(jī)器人的實(shí) 際尺寸,且對未知環(huán)境中障礙物沒有任何限制(如其邊緣形狀等),適用范圍 廣。
(2) 本發(fā)明無需對機(jī)器人進(jìn)行機(jī)械上或電路硬件的改動,減少了成本。
(3) 本發(fā)明引入虛擬觸角的概念,在實(shí)際測量過程中,僅需快速利用 測距傳感器的大量實(shí)時數(shù)據(jù)(因僅對特定區(qū)域的數(shù)據(jù)進(jìn)行分析)實(shí)現(xiàn)導(dǎo)航?jīng)Q 策。
(4) 與Bug類算法抽象地要求機(jī)器人具有繞行障礙物邊沿相比,本方 法提出了具體的繞行障礙物邊沿的實(shí)現(xiàn)方法,機(jī)器人行走時動作自然,可以 在前進(jìn)過程中同時確定前進(jìn)方向,無需停下來旋轉(zhuǎn)搜索周圍環(huán)境。
附圖1為機(jī)器人模型與虛擬觸角設(shè)計示意圖。
附圖2為機(jī)器人繞行輪廓為直線的障礙物邊緣示意圖。
附圖3為機(jī)器人繞行復(fù)雜障礙物邊緣時純直線行走方式示意圖。
附圖4為機(jī)器人繞行薄板(障礙物)邊緣軌跡示意圖。
具體實(shí)施例方式
下面結(jié)合實(shí)施例對本發(fā)明做進(jìn)一步詳細(xì)的描述,但本發(fā)明的實(shí)施方式不 限于此。
下述實(shí)施例采用的機(jī)器人為美國ActivMedia公司的Pioneer-3AT,測量 角度是18CT的移動機(jī)器人。非360°機(jī)器人的定目標(biāo)導(dǎo)航控制過程如下
1、 機(jī)器人朝著目標(biāo)點(diǎn)T直線前進(jìn),直到下面情形之一出現(xiàn)
1.1到達(dá)目標(biāo)點(diǎn)T;則停止前進(jìn),導(dǎo)航結(jié)束。
1.2碰到障礙物,轉(zhuǎn)2。
2、 機(jī)器人繞行障礙物邊緣行走,直到下面情形之一出現(xiàn)
2.1機(jī)器人已繞行障礙物一整圈,仍不可由當(dāng)前位置X直接朝著目
標(biāo)直線前進(jìn),說明目標(biāo)點(diǎn)T不可到達(dá);則停止前進(jìn),導(dǎo)航結(jié)束。
2.2機(jī)器人可由當(dāng)前位置X直接朝著目標(biāo)直線前進(jìn),轉(zhuǎn)1。 以下以偽代碼形式進(jìn)一步說明上述過程2中繞行障礙物邊沿的控制過
程
(1) 進(jìn)入障礙物邊緣繞行模式執(zhí)行避開轉(zhuǎn)向,繞行方向由觸角DsCb
確定的最靠近機(jī)器人的障礙物上的點(diǎn)的位置決定,即若該點(diǎn)在左邊則順時針 繞向,反之逆時針繞向。
(2) 直線行走直到下列情形之一出現(xiàn)
(2.1) 目標(biāo)出現(xiàn)在探測范圍內(nèi),艮卩d(X,T)-FS0,此時直到到達(dá)T之后
停止;
(2.2) X位于線段L'H上,表示機(jī)器人已繞障礙物一整圈,說明T不能 到達(dá),此時停止;
(2.3) X與線段XT相交。此時執(zhí)行對準(zhǔn)轉(zhuǎn)向,之后轉(zhuǎn)至(4);
(2.4) 觸角Dscs探到障礙物,此時停止直線行走并執(zhí)行如下動作 (開始接近轉(zhuǎn)向while ((Dscs仍探到障礙物)&&(9<180°) &&(機(jī)器人未對準(zhǔn)T))等待;
if (機(jī)器人對準(zhǔn)障礙物)
(檢査離開條件(即前述"脫離點(diǎn)"條件);
if (可離開)轉(zhuǎn)到步驟(4)
}
elseif(((e^180。
但DsCs仍探到障礙物))
轉(zhuǎn)動直到DSCb探不到障礙物; 停止瞄準(zhǔn)目標(biāo)轉(zhuǎn)向;
(2.5)Dscs未探到障礙物且c^Rb:停止直線行走,之后 {開始執(zhí)行避開轉(zhuǎn)向; while((e!-y) &&(機(jī)器人未對準(zhǔn)T))等待; if(機(jī)器人對準(zhǔn)T) {檢査離開條件(即前述"脫離點(diǎn)"條件); if (可離開)轉(zhuǎn)(4)
停止避開轉(zhuǎn)向;
(3) 開始直線行走,轉(zhuǎn)到步驟(2);
(4) 退出障礙物繞行模式。至此機(jī)器人可開始按直線朝著目標(biāo)T前 進(jìn)的動作方式。
實(shí)施例1
圖2為機(jī)器人繞行輪廓為直線的障礙物邊緣的示意圖。機(jī)器人從位置X' 朝著目標(biāo)純直線前進(jìn),至O點(diǎn)處碰到障礙物(由虛擬觸角Dscs探測到)停 下來并開始避開轉(zhuǎn)向,直至虛擬觸角Dscb檢測不到障礙物,轉(zhuǎn)角為P, 3是 有開避開轉(zhuǎn)向動作到結(jié)束避開轉(zhuǎn)向動作時機(jī)器人轉(zhuǎn)過的角度。接著開始直線 行走。直線行走過程中由觸角Barl或Barr檢測該段行程d,直到d大于Rb 的某個值,即圖中位置D。接著開始接近轉(zhuǎn)向,轉(zhuǎn)角Y取為固定值,本設(shè)計 中取Y = 2 P ,這樣在D點(diǎn)處TURN-IN結(jié)束后直線行走至E (此時重復(fù)上 述O點(diǎn)處開始的動作),線段OD二DE。在機(jī)器人按照軌跡ODEF繞行該障 礙物邊緣時,繞行過程軌跡將產(chǎn)生齒形波動,波動幅度與圓盤形觸角半徑差(Rb-Rs)有關(guān),差越小則波動越小,但差值小將削弱施密特回差,導(dǎo)致穩(wěn)定 性下降。
實(shí)施例2
圖3為機(jī)器人繞行復(fù)雜障礙物邊緣純直線行走的示意圖。機(jī)器人按繞行 障礙物邊緣模式下的純直線行走方式時,矩形觸角Ban與Bai^記錄該段距離 d (d,與d》,當(dāng)d值大于Rb時按純直線行走方式結(jié)束。為保證隨機(jī)障礙物 情況動作穩(wěn)定,每當(dāng)矩形觸角Ban與Bao探測到障礙物時,該d值即被清 零。換句話說,d表示純直線行走方式無障礙行走距離,當(dāng)它大于一定值(Dth) 時純直線行走方式才結(jié)束。圖3中機(jī)器人在位置X'處d被清零,若障礙物 存在,則d在離開 時才不被清零,這樣可有效保證在純直線行走方式 結(jié)束時機(jī)器人不會太靠近障礙物,導(dǎo)致下一次純直線行走距離太短而使純轉(zhuǎn) 動過于頻繁。
實(shí)施例3
圖4為機(jī)器人繞行薄板(障礙物)邊緣軌跡的示意圖。障礙物為一塊薄 板,要求機(jī)器人盡快轉(zhuǎn)過180。才能繞過該障礙物邊緣。圖中直線行走方式中 無障礙行走距離閾值Dth取為Rb,即直線行走方式于半圓環(huán)形觸角Dscb與x 軸交點(diǎn)(如圖中A點(diǎn))處結(jié)束。本實(shí)施例確定的機(jī)器人繞行軌跡為點(diǎn)劃線 OABCDEFGHIJK。從圖中可容易看出每次轉(zhuǎn)動是屬于接近轉(zhuǎn)向或者瞄準(zhǔn)目 標(biāo)轉(zhuǎn)向還是避開轉(zhuǎn)向。每次接近轉(zhuǎn)向轉(zhuǎn)過角度為y ,則在180。范圍內(nèi)至少要 轉(zhuǎn)180/y次,實(shí)際繞行過程可能還存在TURN-OUT,則純轉(zhuǎn)動次數(shù)高于180/y次。
權(quán)利要求
1、一種非360°探測機(jī)器人的定目標(biāo)導(dǎo)航方法,其特征在于包括下述步驟(1)通過機(jī)器人定位系統(tǒng)得到任意時刻機(jī)器人的位置;(2)根據(jù)機(jī)器人上的測距傳感器的測量數(shù)據(jù),分析機(jī)器人前方特定區(qū)域內(nèi)障礙物的有無和分布情況以及路徑歷史情況;(3)根據(jù)不同的障礙物分布信息,機(jī)器人選擇純直線或純轉(zhuǎn)向行走兩種方式,即正對目標(biāo)點(diǎn)直線前進(jìn)模式和遇到障礙物時繞行障礙物邊緣行走模式,實(shí)現(xiàn)在障礙物分布未知環(huán)境中定目標(biāo)點(diǎn)無碰撞導(dǎo)航。
2、 根據(jù)權(quán)利要求1所述的非360°探測機(jī)器人的定目標(biāo)導(dǎo)航方法,其 特征在于步驟1中,所述機(jī)器人定位系統(tǒng)由GPS、車輪編碼器或者慣性 定位傳感器組成。
3、 根據(jù)權(quán)利要求1所述的非360°探測機(jī)器人的定目標(biāo)導(dǎo)航方法,其 特征在于步驟2中,在機(jī)器人前方特定區(qū)域即測距傳感器的探測范圍內(nèi)設(shè) 置五個"虛擬觸角"來探測周圍環(huán)境障礙物分布特征,分別是位于前方的兩 個半圓環(huán)形觸角Dscs與Dscb、左右兩側(cè)的狹長矩形觸角Ban與Barr、以及 位于前方中間位置由矩形和半圓形組成的寬面積型觸角Rng。
4、 根據(jù)權(quán)利要求3所述的非360°探測機(jī)器人的定目標(biāo)導(dǎo)航方法,其 特征在于所述虛擬觸角是機(jī)器人導(dǎo)航行走決策的依據(jù)所述半圓環(huán)形觸角 Dscs與DsCb用于障礙物邊緣繞行過程中避開轉(zhuǎn)向的實(shí)現(xiàn);所述左右兩側(cè)的 狹長矩形觸角Ban與Baiv用于機(jī)器人每次直線行走時記錄無障礙行走距離; 所述位于前方中間位置的Rng觸角用于檢測當(dāng)前位置下傳感器探測范圍內(nèi) 可以無障礙物直線行走的距離。
5、 根據(jù)權(quán)利要求1所述的非360°探測機(jī)器人的定目標(biāo)導(dǎo)航方法,其 特征在于步驟3中,首先通過定位系統(tǒng)得到機(jī)器人的出發(fā)點(diǎn)、目標(biāo)點(diǎn)的位 置以及出發(fā)點(diǎn)和目標(biāo)點(diǎn)的方向值;機(jī)器人從出發(fā)點(diǎn)開始沿著出發(fā)點(diǎn)和目標(biāo)點(diǎn) 的方向,先進(jìn)行純直線行走,倘若沒有遇到障礙物,機(jī)器人一直沿著直線到 達(dá)目標(biāo)點(diǎn);當(dāng)機(jī)器人遇到障礙物后,機(jī)器人開始繞行障礙物邊緣的轉(zhuǎn)向行走, 當(dāng)脫離條件成立時,機(jī)器人結(jié)束上次障礙物邊緣繞行后再開始直線行走;機(jī) 器人在行走過程中一直判斷是否遇到障礙物,遇到障礙物后繞行的相遇點(diǎn)和 脫離點(diǎn)的條件然后執(zhí)行相應(yīng)的動作,直到機(jī)器人到達(dá)目標(biāo)點(diǎn)。
6、 根據(jù)權(quán)利要求5所述的非360°探測機(jī)器人的定目標(biāo)導(dǎo)航方法,其特征在于所述相遇點(diǎn)是機(jī)器人朝向目標(biāo)點(diǎn)直線行走過程中碰到障礙物的 點(diǎn),機(jī)器人由這一點(diǎn)開始繞行障礙物邊緣;所述脫離點(diǎn)是繞行障礙物邊緣的 結(jié)束點(diǎn)。
7、 根據(jù)權(quán)利要求5所述的非360°探測機(jī)器人的定目標(biāo)導(dǎo)航方法,其特征在于所述純直線行走,分為對準(zhǔn)目標(biāo)點(diǎn)的純直線行走和繞行障礙物邊 緣過程中的純直線行走兩種方式(1) 機(jī)器人使用虛擬觸角Rng測量當(dāng)前可以自由行走的距離,對準(zhǔn)目 標(biāo)點(diǎn)進(jìn)行純直線行走,直到到達(dá)目標(biāo)點(diǎn)后停止;或者當(dāng)虛擬觸角Rng測量 到障礙物,當(dāng)障礙物出現(xiàn)在觸角DsCs與DsCb范圍內(nèi)時,機(jī)器人確定與障礙物相遇時,停止直線行走;(2) 機(jī)器人繞行障礙物邊緣過程中的純直線行走障礙物邊緣繞行按分段直線實(shí)現(xiàn),分段直線由機(jī)器人的轉(zhuǎn)向位置和轉(zhuǎn)向角確定,在此分段直線行走過程中,觸角DsCs與DsCb—直在測量障礙物的位置,確定相遇點(diǎn)和脫離點(diǎn),以及確定轉(zhuǎn)向動作如果機(jī)器人位于上一次脫離點(diǎn)與上一次相遇點(diǎn)之間的連線上,表明機(jī)器人已繞障礙物一整圈,說明機(jī)器人不可能到達(dá)目標(biāo)點(diǎn),則機(jī)器人停止行走;當(dāng)機(jī)器人走到本次相遇點(diǎn)與目標(biāo)點(diǎn)間的線段時,則機(jī)器 人停止純直線行走,進(jìn)行對準(zhǔn)轉(zhuǎn)向,對準(zhǔn)目標(biāo)點(diǎn)然后再直線行走。
8、 根據(jù)權(quán)利要求5所述的非360°探測機(jī)器人的定目標(biāo)導(dǎo)航方法,其特征在于所述轉(zhuǎn)向行走,分為三種接近轉(zhuǎn)向,即使機(jī)器人靠近障礙物邊 緣;避開轉(zhuǎn)向,即使機(jī)器人遠(yuǎn)離障礙物;對準(zhǔn)轉(zhuǎn)向,即使機(jī)器人對準(zhǔn)目標(biāo)點(diǎn)(1) 接近轉(zhuǎn)向接近轉(zhuǎn)向的開始條件是由觸角DsCb測得機(jī)器人無障 礙地直線行走距離d小于Rb時,就要停下來進(jìn)行接近轉(zhuǎn)向;接近轉(zhuǎn)向的結(jié) 束條件是滿足以下兩個條件之一即轉(zhuǎn)動過程中對準(zhǔn)了目標(biāo)點(diǎn)而且該點(diǎn)處滿 足脫離條件;或者本次已轉(zhuǎn)動角度達(dá)到設(shè)定的閾值;(2) 避開轉(zhuǎn)向避開轉(zhuǎn)向的開始條件是當(dāng)繞行障礙物邊緣的直線段 行走時遇到障礙物邊緣時,即當(dāng)內(nèi)半環(huán)形觸角Dscs探測到障礙物時,就開 始避開轉(zhuǎn)向;避開轉(zhuǎn)向的結(jié)束條件是滿足以下兩個結(jié)束條件之一其一是機(jī) 器人對準(zhǔn)目標(biāo)點(diǎn)T該點(diǎn)滿足脫離條件;其二是外半圓環(huán)觸角DSCb檢測不到 障礙物,或者轉(zhuǎn)角6已達(dá)180°但DsCb仍然檢測到有障礙物存在;(3) 對準(zhǔn)轉(zhuǎn)向是指在初始出發(fā)點(diǎn)、障礙物邊緣繞行脫離點(diǎn)、當(dāng)機(jī)器 人走到本次相遇點(diǎn)與目標(biāo)點(diǎn)間的線段時對準(zhǔn)目標(biāo)點(diǎn)執(zhí)行的轉(zhuǎn)向動作,轉(zhuǎn)動方 向按最小轉(zhuǎn)角原則來確定。
全文摘要
本發(fā)明公開了一種非360°探測機(jī)器人的定目標(biāo)導(dǎo)航方法,通過機(jī)器人定位系統(tǒng)得到任意時刻機(jī)器人的位置;根據(jù)機(jī)器人上的測距傳感器的測量數(shù)據(jù),分析機(jī)器人前方特定區(qū)域內(nèi)障礙物的有無和分布情況以及路徑歷史情況;根據(jù)不同的障礙物分布信息,機(jī)器人選擇純直線或純轉(zhuǎn)向行走兩種方式,即正對目標(biāo)點(diǎn)直線前進(jìn)模式和遇到障礙物時繞行障礙物邊緣行走模式,實(shí)現(xiàn)在障礙物分布未知環(huán)境中定目標(biāo)點(diǎn)無碰撞導(dǎo)航。本發(fā)明不要求機(jī)器人具有360°障礙探測范圍,考慮了機(jī)器人的實(shí)際尺寸,且對未知環(huán)境中障礙物沒有任何限制(如其邊緣形狀等),適用范圍廣。
文檔編號G01C21/00GK101666649SQ20091019244
公開日2010年3月10日 申請日期2009年9月17日 優(yōu)先權(quán)日2009年9月17日
發(fā)明者吳曉鵬, 周志艷, 張智剛, 羅錫文, 趙汝祺, 趙祚喜 申請人:華南農(nóng)業(yè)大學(xué)