專利名稱:一種用于移動平臺在未知區域的覆蓋方法
技術領域:
本發明涉及移動平臺,特別是移動平臺在未知區域的覆蓋方法。
背景技術:
移動平臺在未知區域的路徑規劃一直是移動平臺領域中重點和難點,由于在未知區域中可能存在障礙,因此移動平臺不能對該區域實現全面覆蓋。針對上述問題,中國專利ZL02137830. 4公開了一種智能吸塵器的路徑規劃方法,其通過確定未知區域邊界后再對邊界內的區域進行覆蓋清掃,但其在未知區域內存在障礙時,先對障礙的邊界進行確認,再執行清潔動作,算法非常復雜,同時智能吸塵器多次重復已清潔的區域,降低了智能吸塵器的清潔效率;中國專利申請號為201010106562. 6的專利文獻中公布了一種基于中國專利ZL02137830.4的技術方案的改進方案,其通過補償未覆蓋區域的方式來達到對整個區域的覆蓋,但這種方案重復覆蓋率較高。
發明內容
本發明所要解決的技術問題是克服上述現有技術的缺陷,提供一種用于移動平臺在未知區域的覆蓋方法,該方法具可將未知區域完全覆蓋且重復覆蓋率較低。本發明所要解決的技術問題由以下技術方案予以解決。一種用于移動平臺在未知區域的覆蓋方法,其特征在于預先建立一個包括起始點、X軸方向和Y軸方向的二維虛擬地圖,所述二維地圖由標記為未遍歷區域的大小相同的矩形子區域構成,所述方法包括I)移動平臺進入未知區域時,將移動平臺的當前位置與虛擬地圖的起始點所在的子區域對應,將移動平臺當前運動方向設定為虛擬地圖中的坐標軸的某一方向;2)將虛擬地圖中與移動平臺當前位置對應的子區域標記為已遍歷子區域,將虛擬地圖中與移動平臺當前位置對應的子區域的相鄰子區域標記為目標子區域,將目標子區域中具有障礙的區域對應的子區域標記為障礙子區域;3)將移動平臺移動至目標子區域對應的區域中;4)將虛擬地圖中與移動平臺當前位置對應的子區域標記為已遍歷子區域,將虛擬地圖中未遍歷的、與移動平臺當前位置對應的子區域的相鄰子區域標記為目標子區域,將目標子區域中具有障礙的區域對應的子區域標記為障礙子區域;5)確定虛擬地圖中與移動平臺當前位置對應的子區域的X-方向的相鄰子區域是否為目標子區域如果是,則返回步驟3),如果不是,則進入步驟6);6)確定虛擬地圖中與移動平臺當前位置對應的子區域的Y+方向的相鄰子區域是否為目標子區域如果是,則返回步驟3),如果不是,則進入步驟7);7)確定虛擬地圖中與移動平臺當前位置對應的子區域的Y-方向的相鄰子區域是否為目標子區域如果是,則返回步驟3),如果不是,則進入步驟8);8)確定虛擬地圖中與移動平臺當前位置對應的子區域的X-方向的相鄰子區域是否為目標子區域如果是,則返回步驟3),如果不是,則進入步驟9);9)搜尋目標子區域,確定唯一目標子區域并將移動平臺移動至該目標子區域;10)重復步驟3)至步驟9)直到沒有目標子區域。2.如權利要求1所述的方法,其特征在于在步驟9)中包括9-1)將虛擬地圖中、與移動平臺當前位置對應的子區域標記為死角子區域。9-2)在已遍歷子區域和目標子區域中建立位勢圖,所述死角子區域的位勢值為最聞或最低。9-3)選擇與死角子區域的位勢值之差最小的目標子區域作為選定的目標子區域。9-4)將移動平臺按照位勢值從高到低或者從低到高、依次從虛擬地圖中的已遍歷子區域對應的區域移動至選定的目標子區域對應的區域。可選地,所述選定的目標子區域為與死角子區域位勢值之差最小的目標子區域。可選地,所述選定的目標子區域為從虛擬地圖左下角從下到上按列順序搜索依次搜索到的第一個目標子區域。優選地,所述虛擬地圖中的子區域為正方形。本發明與現有技術對比的有益效果是本發明方法通過建立一個由相同的矩形子區域構成的虛擬地圖,并將虛擬地圖移動平臺要遍歷的未知區域對應,在虛擬地圖中將各個子區域劃分未遍歷子區域、已遍歷子區域、障礙于區域以及目標子區域,通過搜尋目標子區域的方式來實現對虛擬地圖中的所有子區域的探索與覆蓋,特別是通過建立位勢圖,可有效減少重復覆蓋率,提高了移動平臺的覆蓋效率。
圖1是本發明方法的流程圖;圖2是本發明實施例中的虛擬地圖中各子區域的初始狀態值;圖3是移動平臺進入未知區域時的示意圖;圖4是圖2中的移動平臺在虛擬地圖中對應位置的示意圖;圖5是移動平臺進入到目標子區域后的軌跡示意圖;圖6是圖5中的移動平臺在虛擬地圖中對應位置的示意圖;圖7是移動平臺在X-方向運動遇到障礙時軌跡示意圖;圖8是圖7中的移動平臺在虛擬地圖中對應位置的示意圖;圖9是移動平臺在Y+方向運動遇到障礙時軌跡示意圖;圖10是圖7中的移動平臺在虛擬地圖中對應位置的示意圖;圖11是移動平臺在另一位置時軌跡示意圖;圖12是圖11中的移動平臺在虛擬地圖中對應位置的示意圖;圖13是移動平臺在進入第一個死角區域后的軌跡示意圖;圖14是圖13中的移動平臺在虛擬地圖中對應位置的示意圖;;圖15是圖14中的移動平臺在實施例1中選擇目標子區域的示意圖;圖16是在虛擬地圖中以圖14中的死角子區域為中心建立的位勢圖;圖17是移動平臺在實施例1中進入第二個死角區域后的軌跡示意圖18是圖17中的移動平臺在虛擬地圖中對應位置的示意圖;;圖19是圖18中的移動平臺在在實施例1中選擇目標子區域的示意圖;圖20是在虛擬地圖中以圖18中的死角子區域為中心建立的位勢圖;圖21是移動平臺在實施例1中進入第三個死角區域后的軌跡示意圖;圖22是圖21中的移動平臺在虛擬地圖中對應位置的示意圖;;圖23是圖22中的移動平臺在實施例1中選擇目標子區域的示意圖;圖24是在虛擬地圖中以圖22中的死角子區域為中心建立的位勢圖;圖25是移動平臺在實施例1中完成未知區域遍歷后的軌跡示意圖;圖26是圖25中的移動平臺在虛擬地圖中的示意圖;圖27是圖14中的移動平臺在實施例1中的選擇目標子區域的示意圖;圖28是圖14中的移動平臺以圖14中的死角子區域為中心建立的位勢圖;圖29是移動平臺在實施例2中進入第二個死角區域后的軌跡示意圖;圖30是圖29中的移動平臺在虛擬地圖中對應位置的示意圖;;圖31是圖30中的移動平臺在實施例2中選擇目標子區域的示意圖;圖32是在虛擬地圖中以圖30中的死角子區域為中心建立的位勢圖;圖33是移動平臺在實施例2中進入第三個死角區域后的軌跡示意圖;圖34是圖33中的移動平臺在虛擬地圖中對應位置的示意圖;;圖35是圖34中的移動平臺在實施例2中選擇目標子區域的示意圖;圖36是在虛擬地圖中以圖34中的死角子區域為中心建立的位勢圖;圖37是移動平臺在實施例2中完成未知區域遍歷后的軌跡示意圖;圖38是圖37中的移動平臺在虛擬地圖中的示意圖。
具體實施例方式下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基于本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬于本發明保護的范圍。實現本發明方法的移動平臺需要至少包括以下幾個功能模塊驅動系統用于使移動平臺發生位移,可以是如清潔機器人的驅動輪,也可以是如仿生學中的動物(包括人類)的行走機構。障礙探測系統用于探測移動平臺周圍障礙并在感知到障礙后生成障礙信號傳輸給移動平臺的控制系統,包括非接觸式傳感器的如紅外傳感器、超聲波傳感器等,以及接觸式傳感器如電壓傳感器、機械式開關傳感器等。相對定位系統用于確定一段時間后,移動平臺在移動后的所在區域相對移動前所在區域的相對位置,包括方向及距離,如可使用慣性導航系統,通過計算移動平臺的加速度積分(使用加速度計)、角速度積分(使用陀螺儀)來獲得相關信息,或者使用安裝在移動平臺驅動輪上的編碼盤來計算行走輪的移動距離來確定相對位置。地圖存儲系統建立一個由多個子區域組成的足夠大的虛擬地圖,并存儲各個子區域的信息,可使用應用比較廣泛的存儲芯片或者內存,用一個字節的數據代表一個子區域的信息用O表示未遍歷子區域,用I表示已遍歷子區域,用2表示障礙子區域,用A表示目標子區域。此外,地圖存儲系統還可將未遍歷子區域的信息由O更改為I (已遍歷子區域)、2 (障礙子區域)或A (目標子區域),將目標子區域A更改為I (已遍歷子區域),然后儲存并更新虛擬地圖。本實施例中的信息標記O,1,2,A僅是為了可以區分表示各子區域的狀態,可以使用任意字符或數據代表不同的區域,只要能被地圖存儲系統識別即可。控制系統用于控制移動平臺的整體工作狀態包括使移動平臺執行預定的動作,根據障礙探測系統反饋的信息控制驅動系統改變移動平臺的運動及運動方向等。實施例1 :本發明實施例1提供了一種用于移動平臺在未知區域的覆蓋方法,預先在移動平臺的地圖存儲系統內建立一包括起始點、X軸方向和Y軸方向的二維虛擬地圖,所述二維地圖由標記為未遍歷區域的大小相同的矩形子區域構成,本實施例中的子區域為優選為正方形,移動平臺在虛擬地圖中的大小與正方形子區域大致相同,也就是正方形子區域剛好能容納移動平臺。如圖2所示,在地圖存儲系統在其內部建立一個足夠大、足夠多子區域的虛擬地圖,因此移動平臺在實際的未知區域中的每個位置都有一個在虛擬地圖中的子區域與其對應。虛擬地圖建立后,所有子區域均標記為0,即未遍歷區域。請參考圖1,為該方法的流程示意圖,該方法可以包括S1:移動平臺進入未知區域時,將移動平臺的當前位置與虛擬地圖的起始點所在的子區域對應,將移動平臺當前運動方向設定為虛擬地圖中的坐標軸的某一方向。圖3為本實施例中的移動平臺在進入未知區域的示意圖,其中,虛線標記是便于技術人員理解實際區域的劃分并將其與虛擬地圖中的子區域進行對應,即移動平臺在實際的未知區域中的每個位置都有一個在虛擬地圖中的子區域與其對應。其中,圖3中的黑色區域表示具有障礙的區域或邊界區域,白色區域表明移動平臺可以通過的區域。本實施例中將移動平臺進入未知區域的運動方向與虛擬地圖中的Y+方向對應,主要是方便移動平臺在虛擬地圖中的定位,也可將移動平臺進入未知區域的運動方向與地圖中的其他方向,比如X-,X+,Y-對應。S2 :將虛擬地圖中與移動平臺當前位置對應的子區域標記為已遍歷子區域,將虛擬地圖中未遍歷的、與移動平臺當前位置對應的子區域的相鄰子區域標記為目標子區域,將目標子區域中具有障礙的區域對應的子區域標記為障礙子區域。為了方便以后簡潔描述,接下來的文字描述都將“虛擬地圖中與移動平臺當前位置對應的子區域”簡稱為“當前子區域”,以便與圖1中流程圖的描述一致。相鄰子區域指的是移動平臺不需經過其他子區域而能到達的子區域,在本實施例中,由于子區域為正方形(其他非正方形的矩形也可以),因此包括四個相鄰子區域,該四個子區域都可被安裝在移動平臺上的障礙探測系統所探測到。如圖4所示,在地圖存儲系統的虛擬地圖中,把移動平臺所在的子區域(圓圈所在的區域)標記為1,表明該子區域已被移動平臺遍歷,將探測到的具有障礙的子區域標記為2,將探測到的沒有障礙但是移動平臺沒有遍歷的子區域標記為A,其他子區域的標記不做變化,均標記為0,然后更新地圖子區域信息并存儲。S3 :將移動平臺移動至目標子區域。移動平臺從目標子區域中選擇一個目標子區域并運動至該子區域,如圖5所示,由于當前子區域X-方向為障礙子區域,因此移動平臺沿著Y+方向移動至目標子區域。S4:將虛擬地圖中與移動平臺當前位置對應的子區域標記為已遍歷子區域,將虛擬地圖中未遍歷的、與移動平臺當前位置對應的子區域的相鄰子區域標記為目標子區域。在移動平臺進入到一個新的目標子區域對應的區域后,在虛擬地圖中將當前子區域標記為1,將具有障礙的區域對應的與當前子區域相鄰的子區域標記為2,將沒有遍歷且沒有障礙的與當前子區域相鄰的子區域標記為A,即目標子區域,移動平臺可進入目標子區域對應的區域。在經過移動平臺的探測系統的探測后,如圖6所示,將與當前子區域相鄰的子區域標記如下Y+方向的子區域標記為2 (障礙子區域),X+方向標記為2 (障礙子區域),X-方向標記為A。S5 :確定虛擬地圖中與移動平臺當前位置對應的子區域的X-方向的相鄰子區域是否為目標子區域如果是,則返回步驟3),如果不是,則進入步驟6)。如圖6所示,由于當前子區域的X-方向的子區域標記為A,即為目標子區域,因此進入步驟S3。重復步驟S3至S4后,移動平臺移動至如圖7所示的位置。如圖8所示,由于當前子區域的X-方向的相鄰子區域標記為2,即為障礙子區域,因此進入步驟S6。S6 :確定虛擬地圖中與移動平臺當前位置對應的子區域的Y+方向的相鄰子區域是否為目標子區域如果是,則返回步驟3),如果不是,則進入步驟S7。如圖8所示,由于當前子區域的Y+方向的相鄰子區域標記為A,即為目標子區域,因此進入步驟S3。重復步驟S3至S6后,移動平臺移動至圖9所示的區域。如圖10所示,由于當前子區域的Y+方向的相鄰子區域標記為2,即為障礙子區域,因此進入步驟S7。S7:確定虛擬地圖中與移動平臺當前位置對應的子區域的Y-方向的相鄰子區域是否為目標子區域如果是,則返回步驟3),如果不是,則進入步驟S8。如圖10所示,由于當前子區域的Y-方向的相鄰子區域標記為1,即已遍歷子區域,因此進入步驟S8。S8 :確定虛擬地圖中與移動平臺當前位置對應的子區域的X+方向的相鄰子區域是否為目標子區域如果是,則回到返回步驟3),如果不是,則進入步驟9)。如圖10所示,由于當前子區域的X+方向的相鄰子區域標記為A,即目標子區域,因此返回步驟3)。移動平臺移動至如圖11所示的區域。重復步驟S4至S7,移動平臺沿著Y-方向移動至圖13所示的區域。此時,請參考圖14,當前子區域的X-方向的相鄰子區域標記為1,Y+方向的相鄰子區域標記為1,Y-方向的相鄰子區域標記為1,X+方向的相鄰子區域標記為2,因此進入步驟S9。S9:搜尋目標子區域,確定唯一目標子區域并將移動平臺移動至該目標子區域。本實施例中將按以下方法搜尋目標子區域9-1)將虛擬地圖中、與移動平臺當前位置對應的子區域標記為死角子區域。其中,死角子區域的特征為其相鄰子區域全部標記為障礙子區域或已遍歷子區域。9-2)在已遍歷子區域和目標子區域中建立位勢圖,所述死角子區域的位勢值為最聞或最低。請參考圖15,在死角子區域的位勢標記為100(最低),其他已遍歷子區域或目標子區域根據其與死角子區域的遠近分別標記不同的位勢值,這些子區域的位勢值均高于100。當然,也可將死角子區域的位勢值設為最低,其他子區域的位勢值根據距離死角子區域的遠近遞減。9-3)選擇與死角子區域的位勢值之差最小的目標子區域作為選定的目標子區域。如圖15所示,在死角子區域X+,Y+方向的目標子區域的位勢值為102,其與死角子區域的位勢值之差最小,因此將其作為選定的目標子區域,如圖16所示的帶有圈的目標子區域。9-4)將移動平臺按照位勢值從高到低或者從低到高、依次從虛擬地圖中的已遍歷子區域對應的區域移動至選定的目標子區域對應的區域。如圖15所示,由于死角子區域的位勢值最低,因此移動平臺從位勢值從低到高、依次經過子區域對應的區域移動至選定的目標子區域對應的區域。也就是說,在將移動平臺運動至選定的目標子區域對應的區域時,只能從低位勢值的區域移動至高位勢值的區域。將移動平臺移動至圖16中所示的選定的目標子區域后,移動平臺再重復步驟S3至S8直到移動平臺運動至另外一個死角子區域對應的區域。如圖17、圖21所示,為本實施例中的移動平臺移動至虛擬地圖中的第二個、第三個死角子區域對應的區域時的軌跡示意圖,然后按照步驟9-1)至9-4)尋找目標子區域,再重復步驟3)至步驟8)。其目標子區域的選定以及位勢圖的標記與在第一個死角子區域的過程相似,這里不再贅述,詳細可參考附圖18至附圖20以及附圖22至附圖24如圖25所示,為移動平臺完成位置區域遍歷后的軌跡示意圖,如圖26所示,由于虛擬地圖中沒有目標子區域,因此移動平臺完成了整個未知區域的遍歷。實施例2請參考圖27至圖38,為本發明的實施例2。本實施例與實施例1大體相同,不同的地方在于在子步驟9-3)中,選定的目標子區域為從虛擬地圖左下角從左到右、從下到上按列順序搜索依次搜索到的第一個目標子區域。也就算是說,在移動平臺進入虛擬地圖中的死角子區域對應的區域后,從虛擬地圖最左下角(X-,Y-) 一列一列地從左到右邊(從X-到X+)、從下到上(從Y-到Y+)依次搜索目標子區域直到搜索到目標子區域。如圖27所示,首先搜索到死角子區域右下角的目標子區域,將其作為選定的目標子區域,即帶有圓圈的目標子區域。如圖28所示,已死角子區域為中心,在虛擬地圖中的已遍歷子區域和選定的目標子區域建立位勢圖,然后將移動平臺按照步驟9-4)將其移動至搜索到的第一個目標子區域,再重復步驟3)步驟9)直到沒有目標子區域。圖29、圖33分別為移動平臺按照本實施例中的方式選定目標子區域進入死角子區域后的軌跡示意圖。其目標子區域的選定以及位勢圖的標記可參考附圖30至圖32以及附圖34至附圖36如圖37所示,為移動平臺完成未知區域遍歷后的軌跡示意圖,請結合圖38,虛擬地圖中沒有標記為A的子區域,即表示移動平臺完成了整個未知區域的遍歷。以上內容是結合具體的優選實施方式對本發明所作的進一步詳細說明,不能認定本發明的具體實施只局限于這些說明。對于本發明所屬技術領域的普通技術人員來說,在不脫離本發明構思的前提下做出若干等同替代或明顯變型,而且性能或用途相同,都應當視為屬于本發明由所提交的權利要求書確定的專利保護范圍。
權利要求
1.一種用于移動平臺在未知區域的覆蓋方法,其特征在于預先建立一個包括起始點、X軸方向和Y軸方向的二維虛擬地圖,所述二維地圖由標記為未遍歷區域的大小相同的矩形子區域構成,所述方法包括 1)移動平臺進入未知區域時,將移動平臺的當前位置與虛擬地圖的起始點所在的子區域對應,將移動平臺當前運動方向設定為虛擬地圖中的坐標軸的某一方向; 2)將虛擬地圖中與移動平臺當前位置對應的子區域標記為已遍歷子區域,將虛擬地圖中與移動平臺當前位置對應的子區域的相鄰子區域標記為目標子區域,將目標子區域中具有障礙的區域對應的子區域標記為障礙子區域; 3)將移動平臺移動至目標子區域對應的區域中; 4)將虛擬地圖中與移動平臺當前位置對應的子區域標記為已遍歷子區域,將虛擬地圖中未遍歷的、與移動平臺當前位置對應的子區域的相鄰子區域標記為目標子區域,將目標子區域中具有障礙的區域對應的子區域標記為障礙子區域; 5)確定虛擬地圖中與移動平臺當前位置對應的子區域的X-方向的相鄰子區域是否為目標子區域如果是,則返回步驟3),如果不是,則進入步驟6); 6)確定虛擬地圖中與移動平臺當前位置對應的子區域的Y+方向的相鄰子區域是否為目標子區域如果是,則返回步驟3),如果不是,則進入步驟7); 7)確定虛擬地圖中與移動平臺當前位置對應的子區域的Y-方向的相鄰子區域是否為目標子區域如果是,則返回步驟3),如果不是,則進入步驟8); 8)確定虛擬地圖中與移動平臺當前位置對應的子區域的X-方向的相鄰子區域是否為目標子區域如果是,則返回步驟3),如果不是,則進入步驟9); 9)搜尋目標子區域,確定唯一目標子區域并將移動平臺移動至該目標子區域; 10)重復步驟3)至步驟9)直到沒有目標子區域。
2.如權利要求1所述的方法,其特征在于在步驟9)中包括 9-1)將虛擬地圖中、與移動平臺當前位置對應的子區域標記為死角子區域。
9-2)在已遍歷子區域和目標子區域中建立位勢圖,所述死角子區域的位勢值為最高或最低。
9-3)選擇與死角子區域的位勢值之差最小的目標子區域作為選定的目標子區域。
9-4)將移動平臺按照位勢值從高到低或者從低到高、依次從虛擬地圖中的已遍歷子區域對應的區域移動至選定的目標子區域對應的區域。
3.如權利要求2所述的方法,其特征在于所述選定的目標子區域為與死角子區域位勢值之差最小的目標子區域。
4.如權利要求2所述的方法,其特征在于所述選定的目標子區域為從虛擬地圖左下角從下到上按列順序搜索依次搜索到的第一個目標子區域。
5.如權利要求1至4任意一項所述的方法,其特征在于所述虛擬地圖中的子區域為正方形。
全文摘要
本申請提供一種用于移動平臺在未知區域的覆蓋方法,預先建立一標記為未遍歷子區域構成的二維地圖,包括移動平臺進入未知區域時,將移動平臺當前位置、運動方向與地圖中起始點所在的子區域及某一方向對應;將與當前子區域標記為已遍歷子區域,將與當前子區域相鄰的未遍歷子區域標記為目標子區域,將有障礙的目標子區域標記為障礙子區域;將移動平臺移動至與目標子區域對應的區域中;在移動平臺每到一個新的區域后依次檢測X-、Y+、Y-、X+相鄰子區域是否為目標子區域,如果是則進入該區域;重復上述步驟直到進入死角區域,再搜尋目標子區域并移動至對應區域。本申請提供的方法實現簡單,覆蓋率高且可降低移動平臺在未知區域的重復覆蓋率。
文檔編號G05B13/04GK103064424SQ20121057192
公開日2013年4月24日 申請日期2012年12月24日 優先權日2012年12月24日
發明者肖雙良, 劉振宇 申請人:深圳市銀星智能科技股份有限公司