用于自移動機(jī)器人柵格地圖的創(chuàng)建方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種用于自移動機(jī)器人柵格地圖的創(chuàng)建方法,屬于機(jī)器人領(lǐng)域。
【背景技術(shù)】
[0002]在自移動機(jī)器人的路徑規(guī)劃技術(shù)中,每當(dāng)機(jī)器人被應(yīng)用于一個新的環(huán)境,機(jī)器人就需對周圍環(huán)境進(jìn)行探測,并建立地圖。目前,現(xiàn)有的機(jī)器人通常采用柵格地圖,把行走區(qū)域劃分為障礙物區(qū)域和非障礙物區(qū)域,其中柵格地圖的創(chuàng)建方法可參見CN 103472823 A0采用柵格算法時,以單元格作為區(qū)分障礙物區(qū)域和非障礙物區(qū)域的最小單位。如圖1所示的陰影部分即為障礙物區(qū)域。但是實(shí)際操作過程中為了避免機(jī)器人與障礙物發(fā)生碰撞需要人為地把障礙物區(qū)域擴(kuò)大,常用的方法有膨脹算法,即在圖1所示障礙物區(qū)域的基礎(chǔ)上以單元格為基準(zhǔn)擴(kuò)大一圈,得到如圖2所示的障礙物區(qū)域。
[0003]該方法雖然可以有效解決機(jī)器人碰撞障礙物的問題,但是障礙物區(qū)域膨脹一圈的距離過大,使機(jī)器人躲避障礙物時運(yùn)動不夠靈活。為了解決該問題,容易想到的方法為細(xì)化單元格,使得柵格地圖具有更高的精度。但是細(xì)化單元格勢必會大大增大機(jī)器人的運(yùn)算量,降低機(jī)器人的信息處理速度。另外膨脹算法使機(jī)器人路徑規(guī)劃或探索時存在折線過多、轉(zhuǎn)折次數(shù)多等問題,限制了機(jī)器人平滑的運(yùn)動。
【發(fā)明內(nèi)容】
[0004]針對上述現(xiàn)有技術(shù)中存在的技術(shù)問題,本發(fā)明提供了一種用于自移動機(jī)器人柵格地圖的創(chuàng)建方法。在以初始柵格地圖的柵格頂點(diǎn)為中心輻射至單元格大小,形成新的柵格地圖。這樣既解決了中心柵格算法碰撞障礙物的問題,也解決了采用膨脹算法移動機(jī)器人不夠靈活的問題,同時避免了采用細(xì)化單元格導(dǎo)致的運(yùn)算量過大的問題。
[0005]本發(fā)明所要解決的技術(shù)問題是通過以下技術(shù)方案實(shí)現(xiàn)的:
[0006]本發(fā)明提供一種用于自移動機(jī)器人柵格地圖的創(chuàng)建方法,包括以下步驟:
[0007]步驟一:將地圖劃分為許多單元格形成初始柵格地圖,把含有障礙物的單元格定義為在先障礙物區(qū)域;步驟二:以初始柵格地圖中柵格的頂點(diǎn)為中心輻射至單元格大小,形成新的柵格地圖,其中所述頂點(diǎn)成為新的柵格地圖單元格的中心點(diǎn);步驟三:在新的柵格地圖中,把含有在先障礙物區(qū)域的單元格定義為最終障礙物區(qū)域Z。
[0008]其中,所述步驟一具體為:所述的柵格化地圖具體包括,將地圖劃分為許多單元格形成初始柵格地圖,并定義自移動機(jī)器人在初始柵格地圖中的起始位置,自移動機(jī)器人在行走的同時檢測行走區(qū)域內(nèi)是否存在障礙物100,若判斷存在障礙物100則在初始柵格地圖中把障礙物100所對應(yīng)的單元格定義為在先障礙物區(qū)域X。實(shí)驗(yàn)結(jié)果顯示,本發(fā)明的用于自移動機(jī)器人柵格地圖的創(chuàng)建方法能夠使機(jī)器人有效的避開障礙物,減少轉(zhuǎn)彎次數(shù),且能夠有效的避免碰撞問題,比膨脹算法更靈活。
【附圖說明】
[0009]圖1是現(xiàn)有技術(shù)初始柵格地圖的示意圖;
[0010]圖2是現(xiàn)有技術(shù)在圖1的基礎(chǔ)上結(jié)合膨脹算法的示意圖;
[0011]圖3和圖4是本發(fā)明對圖1中初始柵格地圖進(jìn)行更新的柵格地圖示意圖;
[0012]圖5是本發(fā)明在新的柵格地圖中形成的最終障礙物區(qū)域示意圖。
【具體實(shí)施方式】
[0013]自移動機(jī)器人包括許多功能和種類的機(jī)器人,如擦窗機(jī)器人,地面清潔機(jī)器人等,本發(fā)明以地面清潔機(jī)器人為例說明,但并不限于此。本發(fā)明的地面清潔機(jī)器人包括控制單元、驅(qū)動單元、行走單元、檢測單元和清潔單元。其中檢測單元包括檢測自身的移動方向和移動距離的碼盤及其它用于探測周圍的環(huán)境狀況的傳感器。
[0014]圖1是現(xiàn)有技術(shù)初始柵格地圖的示意圖。如圖1所示,當(dāng)需要建立障礙物區(qū)域時,其方法為:先柵格化地圖,將地圖劃分成許多單元格形成初始柵格地圖,把所有含有障礙物100的單元格定義為在先障礙物區(qū)域X。具體來說,把清潔機(jī)器人放在未知的環(huán)境中先柵格化地圖,即將地圖劃分為許多單元格形成初始柵格地圖,這些單元格都是方格,并定義清潔機(jī)器人在初始柵格地圖中的起始位置。行走過程中,清潔機(jī)器人通過碼盤記錄行走的距離和方向,即時更新清潔機(jī)器人在初始柵格地圖中的當(dāng)前位置,且清潔機(jī)器人在驅(qū)動單元驅(qū)動行走單元行走的同時通過檢測單元檢測行走區(qū)域內(nèi)是否存在障礙物100,若控制單元判斷存在障礙物則在初始柵格地圖中把障礙物100所對應(yīng)的單元格定義為在先障礙物區(qū)域X。以單元格作為區(qū)分障礙物區(qū)域和非障礙物區(qū)域的最小單位,含有障礙物100的單元格標(biāo)注為1,不含障礙物100的單元格標(biāo)注為0,所有標(biāo)注為I的單元格組成在先障礙物區(qū)域X。本實(shí)施例中,所述在先障礙物區(qū)域X為圖1的陰影區(qū)域D3-D7。
[0015]圖2為現(xiàn)有技術(shù)在圖1的基礎(chǔ)上結(jié)合膨脹算法的示意圖。如圖2所示,膨脹算法是以在先障礙物區(qū)域X的邊界向外擴(kuò)展一圈單元格形成膨脹的障礙物區(qū)域Y,本實(shí)施例中,膨脹算法形成的障礙物區(qū)域是以單元格C2的左下頂點(diǎn)、ES的右上頂點(diǎn)為對角點(diǎn)的矩形區(qū)域,如前所述,此方法雖然可以有效解決機(jī)器人碰撞障礙物的問題,但是在先障礙物區(qū)域膨脹一圈的距離過大,使機(jī)器人躲避障礙物時運(yùn)動不太靈活。
[0016]圖3和圖4為本發(fā)明對圖1中初始柵格地圖進(jìn)行更新的柵格地圖示意圖。如圖3并結(jié)合圖4所示,以初始柵格地圖中柵格的頂點(diǎn)為中心輻射至單元格大小,形成新的柵格地圖。其方法具體為:以圖1中初始柵格地圖中柵格的頂點(diǎn)為中心輻射至單元格大小,即以初始柵格地圖中每個單元格的頂點(diǎn)為中心輻射至單元格大小,形成虛線所示柵格,虛線所示柵格即新的柵格地圖中的單元格,在初始柵格地圖中柵格的頂點(diǎn)成為新的柵格地圖單元格的中心點(diǎn),進(jìn)一步,清除初始柵格地圖,在整個地圖中僅剩下如圖4所示虛線柵格,即完成地圖更新,將初始柵格地圖更新為新的柵格地圖。需要指出的是,在地圖更新的過程中,在先障礙物區(qū)域X的位置及大小不變,則在新的柵格地圖中,在先障礙物區(qū)域X如圖4所
/Jn ο
[0017]圖5是本發(fā)明在新的柵格地圖中形成的最終障礙物區(qū)域示意圖。其方法具體為:在圖4的基礎(chǔ)上,把含有在先障礙物區(qū)域的單元格定義為最終障礙物區(qū)域Z,完成自移動機(jī)器人柵格地圖的創(chuàng)建。
[0018]將圖5中最終障礙物區(qū)域Z與圖2中通過膨脹算法所得的障礙物區(qū)域Y相比,不難看出最終障礙物區(qū)域Z小于障礙物區(qū)域Y,也就是說本發(fā)明在解決機(jī)器人膨脹障礙物問題的同時有效控制了在先障礙物區(qū)域X擴(kuò)大的距離,使機(jī)器人躲避障礙物時運(yùn)動更加靈活。
[0019]綜上所述,本發(fā)明提供了一種用于自移動機(jī)器人柵格地圖的創(chuàng)建方法,在使用柵格法劃分環(huán)境的基礎(chǔ)上,對初始柵格地圖進(jìn)行更新,通過以初始柵格地圖的頂點(diǎn)為中心擴(kuò)展一個單元格形成新的柵格地圖,在新的柵格地圖中,把含有在先障礙物區(qū)域的單元格定義為最終障礙物區(qū)域。這樣既解決了初始柵格地圖碰撞障礙物的問題,也解決了采用膨脹算法移動機(jī)器人不夠靈活的問題,同時避免了采用細(xì)化單元格導(dǎo)致的運(yùn)算量過大的問題。
【主權(quán)項(xiàng)】
1.一種用于自移動機(jī)器人柵格地圖的創(chuàng)建方法,其特征在于,包括以下步驟: 步驟一:將地圖劃分為許多單元格形成初始柵格地圖,把含有障礙物的單元格定義為在先障礙物區(qū)域⑴; 步驟二:以初始柵格地圖中柵格的頂點(diǎn)為中心輻射至單元格大小,形成新的柵格地圖,其中所述頂點(diǎn)成為新的柵格地圖單元格的中心點(diǎn); 步驟三:在新的柵格地圖中,把含有在先障礙物區(qū)域(X)的單元格定義為最終障礙物區(qū)域⑵。2.如權(quán)利要求1所述的用于自移動機(jī)器人柵格地圖的創(chuàng)建方法,其特征在于,所述步驟一具體為: 所述的柵格化地圖具體包括,將地圖劃分為許多單元格形成初始柵格地圖,并定義自移動機(jī)器人在初始柵格地圖中的起始位置,自移動機(jī)器人在行走的同時檢測行走區(qū)域內(nèi)是否存在障礙物(100),若判斷存在障礙物(100)則在初始柵格地圖中把障礙物(100)所對應(yīng)的單元格定義為在先障礙物區(qū)域(X)。
【專利摘要】本發(fā)明提供一種用于自移動機(jī)器人柵格地圖的創(chuàng)建方法,包括以下步驟:步驟一:將地圖劃分為許多單元格形成初始柵格地圖,把含有障礙物的單元格定義為在先障礙物區(qū)域(X);步驟二:以初始柵格地圖中柵格的頂點(diǎn)為中心輻射至單元格大小,形成新的柵格地圖,其中所述頂點(diǎn)成為新的柵格地圖單元格的中心點(diǎn);步驟三:在新的柵格地圖中,把含有在先障礙物區(qū)域(X)的單元格定義為最終障礙物區(qū)域(Z)。本發(fā)明的用于自移動機(jī)器人柵格地圖的創(chuàng)建方法能夠使機(jī)器人有效的避開障礙物(100),減少轉(zhuǎn)彎次數(shù),且能夠有效的避免碰撞問題,比膨脹算法更靈活。
【IPC分類】G05D1/10
【公開號】CN105511485
【申請?zhí)枴緾N201410497350
【發(fā)明人】湯進(jìn)舉
【申請人】科沃斯機(jī)器人有限公司
【公開日】2016年4月20日
【申請日】2014年9月25日