亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于高效模板法與動(dòng)態(tài)窗口法的服務(wù)機(jī)器人全覆蓋路徑規(guī)劃方法①

        2020-10-19 13:28:50陳超勇熊禾根
        高技術(shù)通訊 2020年9期
        關(guān)鍵詞:柵格障礙物動(dòng)態(tài)

        陳超勇 熊禾根 陶 永* 鄒 遇 任 帆 江 山

        (*武漢科技大學(xué)冶金裝備及其控制教育部重點(diǎn)實(shí)驗(yàn)室 武漢 430081)(**武漢科技大學(xué)機(jī)械傳動(dòng)與制造工程湖北省重點(diǎn)實(shí)驗(yàn)室 武漢 430081)(***北京航空航天大學(xué)機(jī)械工程及自動(dòng)化學(xué)院 北京 100191)(****北京航空航天大學(xué)生物醫(yī)學(xué)工程高精尖創(chuàng)新中心 北京 100191)

        0 引 言

        隨著科學(xué)技術(shù)的進(jìn)步和社會(huì)的發(fā)展,服務(wù)機(jī)器人逐漸進(jìn)入人們的生活。清掃機(jī)器人作為服務(wù)機(jī)器人的典型代表,能夠節(jié)省人力減輕勞動(dòng)負(fù)擔(dān),已成為智能機(jī)器人研究的熱點(diǎn)[1]。清掃機(jī)器人的核心技術(shù)是全覆蓋路徑規(guī)劃,通過(guò)多傳感器融合來(lái)估計(jì)自身位姿和檢測(cè)環(huán)境信息,然后尋找一條在工作區(qū)域內(nèi)從起始點(diǎn)到終點(diǎn)且經(jīng)過(guò)所有可達(dá)區(qū)域的連續(xù)無(wú)碰撞路徑,并要保證所規(guī)劃路徑的最優(yōu)性或合理性[2]。全覆蓋路徑規(guī)劃的研究在排雷機(jī)器人[3]、割草機(jī)[4]、水下機(jī)器人[5]、噴漆機(jī)器人[6]等方面同樣具有重大的應(yīng)用價(jià)值。

        目前,全覆蓋路徑規(guī)劃技術(shù)總體可分為隨機(jī)式全覆蓋和規(guī)劃式全覆蓋[7]。隨機(jī)式全覆蓋即機(jī)器人直行,發(fā)生碰撞后隨機(jī)旋轉(zhuǎn)角度繼續(xù)直行,該方法雖然簡(jiǎn)單,但是存在重復(fù)率高、效率低的缺點(diǎn)[8]。因此,國(guó)內(nèi)外的研究人員主要對(duì)規(guī)劃式全覆蓋進(jìn)行研究。Bochkarev等人[9]以高度最小為準(zhǔn)則將地圖分割成2部分,在每個(gè)區(qū)域內(nèi)利用往復(fù)運(yùn)動(dòng)實(shí)現(xiàn)全覆蓋,但該方法僅作用于非凸多邊形區(qū)域。Gajjar等人[10]提出了一種基于改進(jìn)Boustrophedon單元分解法的全覆蓋路徑規(guī)劃算法,為柵格地圖定義了障礙代價(jià)函數(shù),并隨著機(jī)器人的移動(dòng)自動(dòng)更新。Ma等人[11]提出了一種基于生物激勵(lì)神經(jīng)網(wǎng)絡(luò)的全覆蓋路徑規(guī)劃算法,采用高分辨率柵格定位、低分辨率柵格路徑規(guī)劃的策略,提高了算法的執(zhí)行效率。Wang等人[12]將蟻群算法和禁忌搜索算法進(jìn)行融合規(guī)劃最佳覆蓋路徑,取得了不錯(cuò)的效果。為了快速逃離死區(qū),曹翔等人[13]提出了一種基于柵格信度函數(shù)的全覆蓋規(guī)劃算法。針對(duì)掃地機(jī)器人局部區(qū)域覆蓋過(guò)程中存在遺漏區(qū)域未覆蓋的問(wèn)題,李楷等人[14]提出了一種基于回溯法的全覆蓋規(guī)劃算法。

        以上方法在已知的靜態(tài)環(huán)境中能發(fā)揮作用,但無(wú)法處理存在動(dòng)態(tài)障礙的環(huán)境。最新的研究和應(yīng)用表明基于傳感器的方法對(duì)動(dòng)態(tài)環(huán)境有著較好的效果。Li等人[15]結(jié)合有限狀態(tài)機(jī)(finite state machine, FSM)和滾動(dòng)窗口法實(shí)現(xiàn)了在未知環(huán)境中的全覆蓋。Liu等人[16]提出了一種適用于多機(jī)器人系統(tǒng)的全覆蓋算法,該算法大大減少了區(qū)域覆蓋所需的時(shí)間。Zhou等人[17]提出了一種基于滾動(dòng)窗口法和距離變換法的全覆蓋路徑規(guī)劃算法,使用傳感器檢測(cè)動(dòng)態(tài)環(huán)境并更新局部柵格地圖,算法性能優(yōu)于生物激勵(lì)神經(jīng)網(wǎng)絡(luò)法。梁嘉俊等人[18]提出了一種改進(jìn)的勢(shì)場(chǎng)柵格算法,解決了人工勢(shì)場(chǎng)法中清潔機(jī)器人在障礙物附近震蕩而無(wú)法到達(dá)目標(biāo)點(diǎn)、臨近的障礙物之間不能發(fā)現(xiàn)路徑等問(wèn)題。但是基于滾動(dòng)窗口法的全覆蓋算法受到其窗口大小的限制,對(duì)于全局地圖的整體路徑規(guī)劃表現(xiàn)并不好。而在改進(jìn)勢(shì)場(chǎng)柵格法中,機(jī)器人面對(duì)復(fù)雜的環(huán)境容易陷入死區(qū),影響覆蓋效率。

        針對(duì)以上算法存在的問(wèn)題,本文提出一種基于高效模板法與動(dòng)態(tài)窗口法(dynamic window approach, DWA)相結(jié)合的服務(wù)機(jī)器人全覆蓋路徑規(guī)劃方法。高效模板法通過(guò)預(yù)定義的模板與先驗(yàn)地圖匹配,對(duì)整個(gè)環(huán)境進(jìn)行全覆蓋路徑規(guī)劃,同時(shí)引入回溯法解決高效模板法中機(jī)器人陷入死區(qū)的問(wèn)題。運(yùn)用2D激光雷達(dá)傳感器信息與全局覆蓋路徑信息構(gòu)建環(huán)境檢測(cè)的動(dòng)態(tài)窗口,遇到運(yùn)動(dòng)障礙物時(shí)調(diào)用動(dòng)態(tài)窗口法實(shí)現(xiàn)局部的路徑規(guī)劃。清掃服務(wù)機(jī)器人的實(shí)驗(yàn)結(jié)果表明該方法簡(jiǎn)單有效,實(shí)現(xiàn)了動(dòng)態(tài)環(huán)境下的全覆蓋路徑規(guī)劃。

        1 柵格法環(huán)境建模

        在清掃機(jī)器人開(kāi)始清潔任務(wù)之前,必須建立其工作空間的地圖,即環(huán)境建模。柵格法可以很好地描述任何形式的障礙物,并且產(chǎn)生的二值信息特征便于計(jì)算機(jī)的存儲(chǔ)和更新,所以選用柵格法進(jìn)行環(huán)境建模具有顯著的優(yōu)勢(shì)。

        清掃機(jī)器人的工作區(qū)域存在很多障礙物,在地圖中以灰色圖形表示障礙物。柵格法將機(jī)器人的工作空間分為大小相同的柵格,其中灰色柵格表示被障礙物占據(jù),白色柵格表示自由空間,如圖1所示。

        圖1 柵格化地圖

        以2維的柵格地圖為例建立其數(shù)學(xué)模型。圖2顯示的是一個(gè)2維的柵格地圖,工作區(qū)域被分成了9個(gè)柵格,在該地圖中,機(jī)器人的移動(dòng)方向不再是任意方向,而是用八叉樹所表示的8個(gè)行進(jìn)方向。每個(gè)柵格都存儲(chǔ)著一個(gè)值,這些值就組成了一個(gè)2維數(shù)組,此2維數(shù)組即工作環(huán)境的柵格模型。將障礙柵格賦值為1,可行域柵格賦值為0,則工作區(qū)域柵格模型如式(1)所示。

        圖2 工作環(huán)境示意圖

        (1)

        2 基于回溯法的高效模板算法

        模板算法是一種利用模板對(duì)靜態(tài)已知環(huán)境進(jìn)行遍歷的算法,因其簡(jiǎn)單易實(shí)現(xiàn)的優(yōu)點(diǎn)被廣泛使用。1995年Hofner等人[19]提出模板算法,但文章中提出的模板算法不能應(yīng)用于有障礙的環(huán)境,只對(duì)于該文中列舉的一些環(huán)境具有實(shí)用性。隨后De Carvalho等人[20]對(duì)模板算法進(jìn)行改進(jìn),成功應(yīng)用在有障礙的環(huán)境中,但是在一些特殊情況如遇到存在凹陷的障礙物時(shí)會(huì)陷入無(wú)法處理的死循環(huán)狀態(tài)。針對(duì)現(xiàn)有模板算法存在效率低、陷入死區(qū)無(wú)法逃離等問(wèn)題,本文提出了一種基于回溯法的高效模板算法,極大地改善了原算法中存在的問(wèn)題。

        原模板算法共引入5個(gè)模板,TM(toward marker),UT(u turn),SS(side shift),UTI(u turn interlaced)和SCOO(steer clear of obstacle),如圖3所示。原模板算法簡(jiǎn)單易實(shí)現(xiàn),但也存在一些缺點(diǎn)。例如:5種模板之間沒(méi)有確立明顯的優(yōu)劣關(guān)系,導(dǎo)致在某些情形下會(huì)出現(xiàn)2種模板皆可使用的狀況,這使得算法陷入“僵局”;SS模板產(chǎn)生了較高的重復(fù)路徑;SCOO模板的避障方式容易使機(jī)器人遺漏掉障礙物的邊緣區(qū)域;對(duì)于機(jī)器人陷入死區(qū)沒(méi)有相應(yīng)的解決策略。

        圖3 原模板示意圖

        為了解決原模板算法中存在的問(wèn)題,提高算法的效率,本文重新定義了4種高效模板并引入回溯法來(lái)逃離死區(qū)。4種高效模板分別是TU(toward up)、TD(toward down)、TL(toward left)以及TR(toward right),如圖4所示。TU、TD、TL、TR模板表示上下左右4個(gè)方向,在進(jìn)行遍歷時(shí),每個(gè)模板都有著確定的優(yōu)先級(jí)順序,本文制定的模板優(yōu)先級(jí)從高到低依次為TL、TD、TU、TR。相較于原模板算法,高效模板算法僅通過(guò)4種模板就可以完成地圖的全遍歷,不需要單獨(dú)的避障模板就可以避開(kāi)中間障礙物,制定的優(yōu)先級(jí)策略更是保證了遍歷路徑的規(guī)律性和有效性。

        圖4 高效模板示意圖

        高效模板的執(zhí)行原理如下,對(duì)柵格地圖進(jìn)行區(qū)域遍歷之前,要確定遍歷的起始位置,一般選為地圖的邊界處。按照模板的優(yōu)先級(jí)首先判斷TL模板是否與當(dāng)前環(huán)境匹配,即查看Left方向是否存在障礙物,如果Left方向是自由區(qū)域,則執(zhí)行TL模板沿著Left方向移動(dòng)直到被障礙物、已遍歷區(qū)域或環(huán)境邊界等阻擋。在環(huán)境與TL模板不匹配的情況下,會(huì)選擇次優(yōu)模板TD,若Down方向不存在障礙物,則執(zhí)行模板TD沿著Down方向進(jìn)行遍歷。同時(shí)在移動(dòng)的過(guò)程中會(huì)時(shí)刻檢測(cè)TL與環(huán)境的匹配情況,若Left方向不存在障礙物,算法將會(huì)停止執(zhí)行TD模板轉(zhuǎn)而執(zhí)行TL模板。TU、TR模板的執(zhí)行則排在TL與TD之后。因此,高效模板在進(jìn)行地圖遍歷的過(guò)程中,將按照指定的優(yōu)先級(jí)順序進(jìn)行遍歷,并且高優(yōu)先級(jí)模板具有搶斷低優(yōu)先級(jí)模板執(zhí)行的能力。

        上述提出的4種高效模板對(duì)于靜態(tài)區(qū)域的覆蓋雖然具有良好的性能,但是無(wú)法解決機(jī)器人陷入死區(qū)的問(wèn)題。原模板算法中的SS模板僅能解決機(jī)器人陷入角落而側(cè)面有可行區(qū)域這一種情況,對(duì)于更為復(fù)雜的情況如周圍是由已遍歷區(qū)域和障礙物組成的死區(qū),SS模板并不能逃離出去。因此,本文在高效模板中引入回溯法解決死區(qū)問(wèn)題,以實(shí)現(xiàn)一次完成所有可行區(qū)域的全覆蓋。

        回溯法中至關(guān)重要的一點(diǎn)是回溯列表的構(gòu)建?;厮萘斜硎歉鶕?jù)高效模板在執(zhí)行過(guò)程中積累的信息構(gòu)建的,在地圖的遍歷過(guò)程中,如果將地圖中的所有未遍歷自由柵格作為回溯點(diǎn)存儲(chǔ)到回溯列表中,將導(dǎo)致回溯列表占用的內(nèi)存極大。因此,本文為回溯列表中存放的回溯點(diǎn)制定了2條準(zhǔn)則。準(zhǔn)則1:距離最短原則?;厮蔹c(diǎn)與死區(qū)之間的距離要盡可能小,以此降低二者之間的重復(fù)覆蓋。準(zhǔn)則2:靠邊原則?;厮蔹c(diǎn)應(yīng)位于未遍歷子區(qū)域的邊界角落,以及減少機(jī)器人到達(dá)該點(diǎn)后產(chǎn)生新的未遍歷子區(qū)域和回溯點(diǎn)。通過(guò)以上2條準(zhǔn)則,可以大大減少回溯列表中回溯點(diǎn)的數(shù)量。

        回溯列表中存儲(chǔ)的是符合準(zhǔn)則1、2的未遍歷自由柵格,在機(jī)器人遍歷過(guò)程中,陷入到4種高效模板都無(wú)法處理的死區(qū)位置,則啟動(dòng)回溯法來(lái)逃離死區(qū),前往未遍歷區(qū)域繼續(xù)執(zhí)行區(qū)域覆蓋。選擇回溯列表中的哪一個(gè)回溯點(diǎn)作為未遍歷區(qū)域的起始點(diǎn)成為了影響回溯機(jī)制效率的主要因素。為了提高回溯法的效率,本文將機(jī)器人陷入的死區(qū)位置與回溯點(diǎn)之間的歐式距離作為貪心算法的選擇策略,采用貪心算法在回溯列表中選擇距離死區(qū)位置最近的回溯點(diǎn),其數(shù)學(xué)描述為

        (2)

        (3)

        其中,ns表示當(dāng)前狀態(tài)選擇的回溯點(diǎn),lback表示回溯列表,n表示lback中的回溯點(diǎn),ndp表示死區(qū)位置,d(n,ndp)表示死區(qū)位置與回溯點(diǎn)之間的歐式距離。

        圖5和圖6分別是對(duì)原模板算法和高效模板算法進(jìn)行地圖全覆蓋的描述圖。在圖5所示的原模板算法中,UT模板的主導(dǎo)地位使得機(jī)器人的遍歷方向是沿著障礙物的邊緣向左側(cè)推進(jìn),從而導(dǎo)致了機(jī)器人陷入了更靠近角落的死區(qū)A。而在圖6所示的高效模板算法中,機(jī)器人按照TL、TD、TU、TR的優(yōu)先級(jí)順序執(zhí)行模板,它傾向于沿著障礙物邊緣移動(dòng),避免陷入障礙物與墻壁邊界的角落位置,達(dá)到一個(gè)離未覆蓋區(qū)域更近的C點(diǎn)。最后,由SS模板沿邊移動(dòng)到B點(diǎn)產(chǎn)生路徑AB,由回溯法從C點(diǎn)移動(dòng)到B點(diǎn)產(chǎn)生路徑CB,而CB路徑長(zhǎng)度明顯小于AB路徑長(zhǎng)度,這意味著高效模板算法的重復(fù)覆蓋率更低,并且回溯法能夠處理任何位置的死區(qū)問(wèn)題。因此,相較于原模板算法,使用高效模板算法對(duì)靜態(tài)區(qū)域進(jìn)行覆蓋的整體效率更高。

        圖5 原模板算法

        圖6 高效模板算法

        在高效模板中引入回溯法可以使清掃機(jī)器人逃離死區(qū),實(shí)現(xiàn)所有可行區(qū)域的全覆蓋,完整的基于回溯法的高效模板算法流程如下所示。

        輸入:環(huán)境模型M。

        輸出:一條遍歷所有自由柵格的全局路徑L。

        步驟1柵格化環(huán)境模型,確定遍歷的初始位置;

        步驟2依照地圖中的環(huán)境特征匹配對(duì)應(yīng)的高效模板進(jìn)行運(yùn)動(dòng),直到陷入無(wú)法逃離的死區(qū)位置;

        步驟3根據(jù)環(huán)境信息更新回溯列表lback;

        步驟4以死區(qū)位置和回溯點(diǎn)之間的歐式距離為貪心策略,利用貪心算法選擇未覆蓋區(qū)域的回溯點(diǎn),并移動(dòng)到該回溯點(diǎn)。

        步驟5重復(fù)步驟2~4,直至回溯列表lback中元素為空,結(jié)束算法。

        3 動(dòng)態(tài)環(huán)境下全覆蓋路徑規(guī)劃方法

        3.1 動(dòng)態(tài)窗口法

        動(dòng)態(tài)窗口法(DWA)將局部路徑規(guī)劃問(wèn)題描述為速度矢量空間上的約束優(yōu)化問(wèn)題,是一種有效的局部避障算法[21]。DWA算法的主要思想是,根據(jù)機(jī)器人速度、加速度以及環(huán)境障礙約束,將速度矢量空間(v,ω)限制在一個(gè)動(dòng)態(tài)窗口中,對(duì)此窗口內(nèi)的線速度v和角速度ω進(jìn)行多組采樣;然后,預(yù)測(cè)每個(gè)采樣速度在下一個(gè)周期內(nèi)對(duì)應(yīng)的機(jī)器人運(yùn)動(dòng)軌跡;最后,引入一個(gè)評(píng)價(jià)函數(shù)對(duì)預(yù)測(cè)的運(yùn)動(dòng)軌跡進(jìn)行評(píng)估,選擇得分最高的軌跡對(duì)應(yīng)的速度來(lái)控制機(jī)器人運(yùn)動(dòng)。DWA算法的核心在于動(dòng)態(tài)窗口的建立以及評(píng)價(jià)函數(shù)的選擇,下面根據(jù)清掃機(jī)器人自身性能和環(huán)境的約束建立速度采樣動(dòng)態(tài)窗口。

        清掃機(jī)器人受硬件性能的約束,其最大、最小速度都被限制在一定范圍內(nèi),所以清掃機(jī)器人允許的極限速度矢量集合Vs為:

        Vs={(v,ω)|v∈[vmin,vmax],

        ω∈[ωmin,ωmax]} (4)

        式中,vmax、vmin為清掃機(jī)器人的最大、最小線速度,ωmax、ωmin為清掃機(jī)器人的最大、最小角速度。

        為了保護(hù)自身的安全,清掃機(jī)器人要與障礙物保持一定距離,并且在碰到障礙物前能夠及時(shí)停止,因此,清掃機(jī)器人的安全速度矢量集合Va可根據(jù)下式確定:

        (5)

        根據(jù)清掃機(jī)器人的最大加減速能力,可以計(jì)算出某時(shí)刻采樣速度在下一個(gè)周期Δt內(nèi)的變化范圍,用Vd表示:

        (6)

        將滿足Vs、Va、Vd的速度矢量空間構(gòu)建成動(dòng)態(tài)窗口,可得到最終速度搜索空間Vr:

        Vr=Vs∩Va∩Vd

        (7)

        對(duì)于采樣的速度空間Vr,每一組采樣速度對(duì)應(yīng)的預(yù)測(cè)軌跡都滿足約束條件,需引入評(píng)價(jià)函數(shù)評(píng)估軌跡的優(yōu)劣性。最優(yōu)軌跡應(yīng)使清掃機(jī)器人在避開(kāi)障礙物的情況下更快更準(zhǔn)地向目標(biāo)移動(dòng),因此本文采用的評(píng)價(jià)函數(shù)如下:

        G(v,ω)=σ(α·heading(v,ω)+β·dist(v,ω)

        +γ·vel(v,ω))

        (8)

        式中,heading(v,ω)為清掃機(jī)器人軌跡終點(diǎn)的航向與目標(biāo)點(diǎn)的夾角,dist(v,ω)為軌跡與障礙物的最小距離,vel(v,ω)為采樣速度,α、β、γ為權(quán)重比。

        3.2 基于高效模板法與DWA算法的全覆蓋路徑規(guī)劃方法

        前面提出了一種基于回溯法的高效模板算法,該算法能夠?qū)崿F(xiàn)已知地圖下所有可行區(qū)域的全覆蓋,但對(duì)于環(huán)境中未記錄或突然出現(xiàn)的障礙物沒(méi)有應(yīng)對(duì)策略。因此,本節(jié)將高效模板算法的靜態(tài)規(guī)劃能力與DWA算法的局部避障能力結(jié)合起來(lái),提出一種適用動(dòng)態(tài)環(huán)境下的全覆蓋路徑規(guī)劃方法。該方法可讓清掃機(jī)器人在已知環(huán)境中靜態(tài)規(guī)劃出全局覆蓋路徑后再進(jìn)行清掃,即使遇到環(huán)境中的動(dòng)態(tài)障礙物也能順利避開(kāi),大大提高了清掃機(jī)器人的工作效率。

        本節(jié)將結(jié)合如圖7所示的算法流程圖,詳細(xì)描述提出的全覆蓋路徑規(guī)劃方法的具體實(shí)現(xiàn)步驟。

        圖7 基于高效模板法與DWA算法的全覆蓋路徑規(guī)劃流程圖

        (1)建立清掃機(jī)器人工作區(qū)域的環(huán)境模型。利用激光雷達(dá)傳感器掃描環(huán)境,生成包含障礙物的代價(jià)地圖,然后根據(jù)機(jī)器人的實(shí)際尺寸確定劃分的柵格大小,用于全局的遍歷路徑規(guī)劃。

        (2)高效模板算法對(duì)先驗(yàn)靜態(tài)地圖規(guī)劃出可行的全局覆蓋路徑。首先確定清掃機(jī)器人在柵格地圖的起始位置S,然后根據(jù)地圖信息匹配相應(yīng)的模板,并按照TL、TD、TU、TR的優(yōu)先級(jí)執(zhí)行模板,最后得到一條能夠遍歷所有自由柵格的全局總路徑L。

        (3)總路徑分解。按照關(guān)鍵拐點(diǎn)將全局總路徑L分解成若干條子路徑集合P,這些子路徑皆由簡(jiǎn)單的直線組成,易于清掃機(jī)器人的執(zhí)行,而子路徑的首末端點(diǎn)則組成了子目標(biāo)點(diǎn)集合Q。P和Q的數(shù)學(xué)描述分別如式(9)、(10)所示。

        P={L1,L2,L3, …,Ln}

        (9)

        Q={O0,O1,O2, …,On}

        (10)

        其中n的值與全局總路徑L的長(zhǎng)短有關(guān),O0和On分別為全局總路徑L的起點(diǎn)和終點(diǎn),當(dāng)清掃機(jī)器人到達(dá)On點(diǎn)時(shí)表示遍歷完成。

        全局總路徑L分解得到子路徑集合P以及子目標(biāo)點(diǎn)集合Q,如圖8所示。

        圖8 總路徑分解圖

        (4)將子目標(biāo)集合Q中的第一個(gè)點(diǎn)O0設(shè)為清掃機(jī)器人的工作起始點(diǎn),則O0的下一個(gè)點(diǎn)Oi作為機(jī)器人在當(dāng)前位置需要到達(dá)的子目標(biāo)點(diǎn)。在步驟2、3中,已通過(guò)高效模板算法得到全局遍歷路徑L并將其分解為子路徑集合P,因此集合P中的子路徑Li作為機(jī)器人在當(dāng)前位置規(guī)劃出的子路徑。以速度v0驅(qū)動(dòng)機(jī)器人沿著子路徑方向移動(dòng),并根據(jù)機(jī)器人目前姿態(tài)和相關(guān)速度約束構(gòu)建的動(dòng)態(tài)窗口。動(dòng)態(tài)窗口是連續(xù)的,實(shí)時(shí)接收傳感器數(shù)據(jù)并在地圖上更新動(dòng)態(tài)障礙物信息。當(dāng)沿著子路徑Li方向的速度v0不滿足動(dòng)態(tài)窗口要求(即Li與障礙物將發(fā)生碰撞)時(shí),DWA算法會(huì)重新在動(dòng)態(tài)窗口中采樣,選擇最優(yōu)軌跡對(duì)應(yīng)的速度v驅(qū)動(dòng)機(jī)器人進(jìn)行局部路徑規(guī)劃避開(kāi)障礙物,其原理如圖9所示。

        圖9 DWA局部路徑規(guī)劃避障圖

        在圖9中,DWA算法的關(guān)鍵在于動(dòng)態(tài)窗口實(shí)時(shí)檢測(cè)環(huán)境信息,并判斷子路徑Li在動(dòng)態(tài)窗口中是否與動(dòng)態(tài)障礙物發(fā)生碰撞,若是,則規(guī)劃局部路徑進(jìn)行避障,否則繼續(xù)沿著子路徑Li移動(dòng),這樣的優(yōu)點(diǎn)在于避免了用DWA算法進(jìn)行長(zhǎng)距離的全局規(guī)劃,可完美發(fā)揮其局部規(guī)劃的能力。

        (5)當(dāng)清掃機(jī)器人到達(dá)子目標(biāo)點(diǎn)Oi時(shí),將當(dāng)前位置設(shè)為Oi,令i值加1,作為下一個(gè)子目標(biāo)點(diǎn)。

        (6)判斷清掃機(jī)器人當(dāng)前位置是否已到達(dá)集合Q中最終目標(biāo)點(diǎn)On,若否,則繼續(xù)迭代移動(dòng)到一下個(gè)子目標(biāo)點(diǎn)。若是,則算法結(jié)束,表示清掃機(jī)器人已經(jīng)完成了全覆蓋的清潔任務(wù)。

        以上是本文所提的基于高效模板與DWA算法全覆蓋路徑規(guī)劃方法的全過(guò)程,大致可以分為全局靜態(tài)規(guī)劃與局部動(dòng)態(tài)規(guī)劃。高效模板算法在進(jìn)行全遍歷的同時(shí)也解決了清掃機(jī)器人陷入死區(qū)的問(wèn)題,生成的簡(jiǎn)單路徑易于機(jī)器人執(zhí)行,提高了算法的效率。與DWA算法的融合有效改善了當(dāng)前全覆蓋算法對(duì)未知?jiǎng)討B(tài)障礙物無(wú)法避障的能力,增加了機(jī)器人的安全性能。接下來(lái)將通過(guò)仿真和實(shí)驗(yàn)聯(lián)合驗(yàn)證本文所提全覆蓋算法的正確性和有效性。

        4 仿真與實(shí)驗(yàn)

        4.1 實(shí)驗(yàn)平臺(tái)

        本文自主搭建的雙輪差速清掃機(jī)器人實(shí)驗(yàn)平臺(tái)如圖10所示。機(jī)器人底盤的左右主動(dòng)輪分別由帶有減速器和編碼器的直流電機(jī)獨(dú)立驅(qū)動(dòng),構(gòu)成雙輪差分系統(tǒng),前后再輔以2個(gè)從動(dòng)萬(wàn)向輪。在機(jī)器人平臺(tái)的中間層安裝有2維激光雷達(dá)傳感器、STM32控制板、電源模塊以及Intel NUC迷你主機(jī),上層放置1塊用于人機(jī)交互的顯示屏。在本實(shí)驗(yàn)平臺(tái)中,上位機(jī)通過(guò)RS232串口與STM32控制板進(jìn)行通訊,控制左右電機(jī)的轉(zhuǎn)速并獲取編碼器的里程信息,而激光雷達(dá)的數(shù)據(jù)則直接傳給上位機(jī)處理。實(shí)驗(yàn)中清掃機(jī)器人規(guī)格及運(yùn)動(dòng)參數(shù)如表1所示。

        圖10 清掃機(jī)器人平臺(tái)

        表1 清掃機(jī)器人參數(shù)配置表

        4.2 全覆蓋路徑規(guī)劃仿真與實(shí)驗(yàn)分析

        本文在如圖11所示的實(shí)驗(yàn)環(huán)境驗(yàn)證所提出的基于高效模板與DWA算法的全覆蓋路徑規(guī)劃方法。該實(shí)驗(yàn)場(chǎng)地由多條走廊和過(guò)道組成,可行區(qū)域面積約為230 m2,且整個(gè)場(chǎng)地被墻體隔斷成多個(gè)連通區(qū)域,具有代表性和普遍性。實(shí)驗(yàn)中將通過(guò)行人來(lái)模擬地圖中的高動(dòng)態(tài)障礙物,以驗(yàn)證算法的局部動(dòng)態(tài)性能。

        圖11 多走廊和過(guò)道組成的大面積實(shí)驗(yàn)環(huán)境

        本文使用安裝在機(jī)器人上的2維激光雷達(dá)傳感器掃描圖11中的環(huán)境,通過(guò)SLAM[22]技術(shù)建立環(huán)境的2維柵格地圖,如圖12所示。圖12中數(shù)字標(biāo)記的區(qū)域是門或電梯口等地方,限于機(jī)器人尺寸,本文將這7處區(qū)域從可行區(qū)域中除去,作為清掃機(jī)器人的工作空間。

        圖12 實(shí)驗(yàn)場(chǎng)景的SLAM地圖

        Stage是機(jī)器人操作系統(tǒng)(ROS)下的一個(gè)小型仿真器,能夠模擬激光雷達(dá)數(shù)據(jù)且具備物理引擎,因此,本文將stage模擬器作為仿真平臺(tái)。將SLAM地圖導(dǎo)入stage平臺(tái)中,配置機(jī)器人相關(guān)參數(shù),得到仿真環(huán)境如圖13所示,圖中位于地圖下方的方塊表示機(jī)器人的初始位置,位于地圖中間的方塊模擬地圖中未記錄的動(dòng)態(tài)障礙物。選取地圖中間的一個(gè)通道來(lái)驗(yàn)證算法的局部動(dòng)態(tài)性能,假定模板算法與本文所提算法規(guī)劃的靜態(tài)覆蓋路徑同為MN。從圖14可以看出,當(dāng)清掃機(jī)器人前方突然出現(xiàn)地圖中未記錄的障礙物時(shí),模板算法直接撞向障礙物,而本文提出的算法根據(jù)傳感器信息檢測(cè)到障礙物,依靠DWA算法重新規(guī)劃路徑,并調(diào)整速度避開(kāi)該障礙物。

        圖13 Stage仿真地圖

        圖14 模板算法與本文算法動(dòng)態(tài)性能對(duì)比圖

        本文所提算法對(duì)靜態(tài)地圖規(guī)劃的全局覆蓋路徑如圖15所示。根據(jù)關(guān)鍵拐點(diǎn)將其拆解成若干條子目標(biāo)路徑,然后清掃機(jī)器人按照子目標(biāo)路徑進(jìn)行清掃任務(wù),圖16是機(jī)器人工作時(shí)的覆蓋軌跡圖。圖16(b)、(d)分別模擬了行人從門內(nèi)、電梯口突然出現(xiàn)的情況,由圖16(c)、(e)可知機(jī)器人檢測(cè)到了行人,立即調(diào)用DWA算法規(guī)劃出了一條局部路徑來(lái)繞開(kāi)行人,隨后回歸到全局子路徑上。圖16(f)中機(jī)器人陷入死區(qū),此時(shí)回溯法起作用,選擇最近的回溯點(diǎn)并移動(dòng)到該點(diǎn),如圖16(g)所示。

        圖15 靜態(tài)全局覆蓋路徑

        圖16 清掃機(jī)器人覆蓋軌跡圖

        通常情況下,覆蓋率和重復(fù)率是衡量全覆蓋算法性能的重要指標(biāo)。覆蓋率是機(jī)器人已覆蓋面積占總面積的百分比,重復(fù)率是指機(jī)器人執(zhí)行覆蓋任務(wù)時(shí),重復(fù)覆蓋面積占總面積的百分比。表2是本文算法在仿真環(huán)境下的覆蓋實(shí)驗(yàn)結(jié)果,通過(guò)表中的數(shù)據(jù)可知在發(fā)生2次避障的情況下,本文所提的全覆蓋算法的覆蓋率高達(dá)98.3%,重復(fù)率僅為2.6%,該結(jié)果表明本文算法在高動(dòng)態(tài)環(huán)境下的全覆蓋路徑規(guī)劃中有著良好的表現(xiàn)。

        表2 清掃機(jī)器人覆蓋實(shí)驗(yàn)結(jié)果

        以上是在stage仿真器中的測(cè)試結(jié)果,下面進(jìn)行實(shí)際場(chǎng)景中清掃機(jī)器人的工作演示。圖17是清掃機(jī)器人在圖11環(huán)境中的實(shí)驗(yàn)結(jié)果圖,圖中的覆蓋軌跡以及避障情況與仿真結(jié)果一致,再次驗(yàn)證本文所提算法的正確性和有效性。

        圖17 清掃機(jī)器人實(shí)驗(yàn)結(jié)果圖

        5 結(jié) 論

        本文提出了基于高效模板算法和DWA算法的清掃服務(wù)機(jī)器人的全覆蓋路徑規(guī)劃方法。該方法首先提出基于回溯法的高效模板算法,解決了原模板算法中效率低、無(wú)法逃離死區(qū)的問(wèn)題;然后利用高效模板算法對(duì)先驗(yàn)靜態(tài)地圖規(guī)劃全局覆蓋路徑,將全局覆蓋路徑分解成子目標(biāo)路徑后與傳感器信息融合構(gòu)成動(dòng)態(tài)窗口,使機(jī)器人沿著子目標(biāo)路徑進(jìn)行清掃任務(wù),窗口檢測(cè)到地圖上未記錄的動(dòng)態(tài)障礙物時(shí)調(diào)用DWA算法規(guī)劃局部路徑進(jìn)行避障;最后,通過(guò)仿真和實(shí)驗(yàn)驗(yàn)證了本文算法在動(dòng)態(tài)環(huán)境下全覆蓋路徑規(guī)劃的正確性和有效性。目前,本文提出的全覆蓋路徑規(guī)劃方法在逃離死區(qū)時(shí)會(huì)產(chǎn)生一定的重復(fù)路徑,以后會(huì)針對(duì)該問(wèn)題進(jìn)一步提高算法的性能。

        猜你喜歡
        柵格障礙物動(dòng)態(tài)
        國(guó)內(nèi)動(dòng)態(tài)
        國(guó)內(nèi)動(dòng)態(tài)
        國(guó)內(nèi)動(dòng)態(tài)
        基于鄰域柵格篩選的點(diǎn)云邊緣點(diǎn)提取方法*
        高低翻越
        SelTrac?CBTC系統(tǒng)中非通信障礙物的設(shè)計(jì)和處理
        動(dòng)態(tài)
        不同剖面形狀的柵格壁對(duì)柵格翼氣動(dòng)特性的影響
        基于CVT排布的非周期柵格密度加權(quán)陣設(shè)計(jì)
        土釘墻在近障礙物的地下車行通道工程中的應(yīng)用
        色优网久久国产精品| 白白白在线视频免费播放| 久久精品日本不卡91| 国产人妻高清国产拍精品| 色费女人18毛片a级毛片视频| 久久国内精品自在自线图片| jizz国产精品免费麻豆| 国产精品国产三级国产专区5o| 国产亚洲av人片在线播放| av一区二区在线网站| www夜插内射视频网站| 少妇无码av无码专区线| 狠干狠爱无码区| 日韩精品一区二区三区毛片| 蜜桃av一区在线观看| 一本色道久久亚洲精品| 性按摩xxxx在线观看| 妇女性内射冈站hdwwwooo| 日本理论片一区二区三区| 国产又湿又爽又猛的视频| 97cp在线视频免费观看| 日本大骚b视频在线| 大地资源网更新免费播放视频| 无码一区二区三区网站| 麻豆视频黄片在线免费观看| 麻豆亚洲av熟女国产一区二| 黑人巨大跨种族video| 91av小视频| 成av人片一区二区三区久久| 中文字幕一区二区人妻秘书| 国产一区二区精品久久| 久久国产自偷自免费一区100| 亚洲综合一区二区三区蜜臀av| 久久精品国产亚洲av一般男女| 无码人妻一区二区三区免费视频 | 亚洲不卡电影| 日本女优久久精品久久| 久久国产劲爆∧v内射| 亚洲国产成人久久综合下载| 免费无码又爽又刺激高潮的视频网站 | 女人夜夜春高潮爽a∨片传媒|