一種智能機器人用的柵格地圖創建方法
【專利摘要】本發明公開了一種智能機器人用的柵格地圖創建方法,包括繪制工作區域邊界線步驟、邊界特征點標注步驟和SLAM地圖構建步驟。本發明提供的智能機器人用的柵格地圖創建方法,能夠直觀第表示出機器人在某個時刻對整體環境的理解,而且容易存儲和管理,因此適用于機器人在運行過程中對區域的記憶;同時能夠對機器人的路徑規劃、自主返回充電等技術研究提供基礎。
【專利說明】一種智能機器人用的柵格地圖創建方法
【技術領域】
[0001]本發明涉及智能機器人技術,尤其涉及一種智能機器人用的柵格地圖創建方法。【背景技術】
[0002]信息感知與多信息融合技術
[0003]信息感知來源于傳感器,這是智能移動機器人決策規劃和運動控制的基礎。移動機器人在行駛時,必須持續不斷地感知周圍環境信息及自身狀態信息,由于移動機器人工作環境的復雜性,機器人自身狀態的不確定性,只靠單一的傳感器獲取的環境信息,往往是局部的、片面的,而高精度和高可靠性的傳感器往往價格較高,且會增加系統的復雜性。
[0004]機器人通常都需要安裝多種傳感器來感知環境信息。通過多種傳感器獲得同類或不同類的壞境,利用相關的算法進行多傳感器信息融合,比如割草機器人可獲得環境的真實、可靠信息,也即多傳感器集成和融合(Mult1-sensor integration and Fusion),多傳感器信息融合的優點在于提供了信息冗余、互補和適時(Timelines),從而提高了信息的可靠性。
[0005]智能機器人內部最常使用的傳感器類型有接觸式傳感器和非接觸式傳感器。接觸式傳感器可以測出受動器端與其他物體間的實際接觸;非接觸傳感器則主要是通過傳感器對外部信息的理解和感知,從而進行環境信息的提取。一般對于非接觸式的傳感器根據其采集信息種類以和采集方式的不同,可以分成外部傳感器和內部傳感器兩類:外部傳感器主要用來采集機器人外界環境信息(主要是距離信息),包括超聲波測距儀、激光測距儀、視覺傳感器等;內部傳感器負責采集機器人系統內部狀態的信息(主要是自身的方位角等信息),包括陀螺儀、羅盤等。
[0006]移動機器人的導航與自主定位技術
[0007]移動機器人的準確定位是保證其正確完成導航、控制任務的關鍵之一。定位技術可以分為絕對定位技術和相對定位技術。
[0008]相對定位技術通常包括測距法和慣導法。測距法采用隨時間累積路程增量的原理,在短期、短距離內具有良好的精度,系統較為簡單,成本低廉,并且具有較高的數據采樣率;最常用的有里程儀和光電編碼器。慣導法包括陀螺儀和加速度計,是用測量值的一次、二次積分計算向對其實位置的偏移量;慣導法具有自包含的優點。相對定位技術成本低、可靠性較高、對外部環境無特殊要求,可在一段時間內獲得較高定位精度,但其定位誤差往往會隨時間不斷積累而導致測量結果失效,定位誤差主要來源于初始位姿誤差、模型不確定性以及運動過程中的擾動等,通常可以利用多個內部傳感器信息融合的方法來獲得較為精確的位姿。
[0009]絕對定位的技術一般包括磁羅盤定位、GPS衛星定位、路標導航法、地圖模型的匹配等。絕對定位不存在累積誤差問題,但是絕對定位技術的定位算法如路標識別、地圖匹配等通常都比較復雜、費時、實時性差。
[0010]根據絕對定位技術和相對定位技術的優缺點,通常在定位系統中綜合使用相對定位技術和絕對定位技術,對其數據進行融合以達到實時、準確的定位。
[0011]工作區域邊界識別
[0012]對于智能移動機器人的邊界識別研究可分成兩種,一種是基于有信標的邊界識另IJ,另一種是基于無信標的邊界識別。
[0013]對于第一種方法,國外的專利中給出了一些方法和觀點:預先使用電纜包圍整個工作區域,然后在電纜中通上電流,機器人工作過程中通過探測通電電纜所形成的磁場來獲取邊界信息。
[0014]對于第二種方法,先由人工推著機器人在整個工作區域內無遺漏的行走一遍,機器人記錄下所有的軌跡,然后機器人在以后的工作中重復先前記錄的路徑。
[0015]地圖的表示方式
[0016]移動機器人在運動過程中需要獲知傳感器對環境的感知信息,而后通過處理這些數據,計算機器人周圍的環境信息以及機器人當前的位置,同時創建環境地圖。目前使用的比較多的地圖表示方法有很多,可以大致分成如下三類:柵格地圖、幾何特征地圖以及拓撲地圖。
[0017]柵格地圖是是將環境分解成一系列離散的柵格,每個柵格有一個值,用每一個柵格被占據的概率值來表示環境信息,一般標識為是否是障礙物,每個地圖柵格都與實際環境中的一個小塊區域對應,反映出環境的信息,易于機器人進行地圖信息的存儲。柵格地圖可以詳細地描述環境信息,并且很容易創建和維護。
[0018]幾何特征地圖對于真實場景中機器人的位姿的判定,有著較高的精度,一般對這種地圖進行抽象描述,從而大量減少計算上的耗費。幾何特征地圖能夠精確的表示出機器人當前的位置信息以及障礙物信息,很完整的表示出實際的室內環境,方便角點的提取以及數據關聯計算,但是同時也有一系列的問題,由于精度比較高,因此在計算上帶來了一系列的問題,計算復雜度比較高,硬件的要求也就同樣比較高了,對于家用機器人很顯然是不太符合條件的;另外對于室內清掃機器人來說要避免多次重復的清掃則是十分重要的,因此這就要求對地圖有一個記憶的功能,然而如果通過幾何地圖進行地圖存儲,勢必會大量增加了時間以及空間上的復雜度。
[0019]拓撲地圖是將環境中的特殊的位置用節點表示,然后通過連線表示環境中的路徑。節點對應著環境中的關鍵特征點,連線表示的是環境中各個節點彼此之間的連接關系。拓撲地圖將環境中的信息用一些特定的環境信息來描述,根據拓撲地圖的特點,拓撲地圖常常用于結構化的環境下,而拓撲地圖應用在非結構化環境中,其結構將變得十分復雜,節點的描述也會非常困難,往往不利于處理。拓撲地圖表示法使環境具有緊湊性與連貫性。相對于上述的兩種地圖表示方法,拓撲地圖具有占用內存較小的優點,但是同時也帶來了嚴重的問題:即環境的信息量的大量缺乏,使得對清掃機器人對自身的定位產生了困難;如果存在環境中兩個節點相似的時候,通過傳統的處理算法,機器人很難對這兩個節點進行區分,同時若傳感器存在有較大的誤差的時候,機器人將很難根據撲地圖對自身的位置實現實時的定位。
【發明內容】
[0020]發明目的:為了克服現有技術中存在的不足,本發明提供一種智能機器人用的柵格地圖創建方法,能夠全區域覆蓋移動機器人活動范圍,并自動創建一種低成本、高精度的全局柵格地圖。
[0021]技術方案:為實現上述目的,本發明采用的技術方案為:
[0022]一種智能機器人用的柵格地圖創建方法,包括如下步驟:
[0023](1)在X-Y平面坐標系的第一象限內繪制機器人的工作區域邊界線;
[0024](2)標記出工作區域邊界線上的所有邊界特征點在X-Y平面坐標系上的坐標位置,并將邊界特征點記錄到地圖節點特征點數組中;
[0025](3)在X-Y平面坐標系中構建SLAM地圖,包括如下步驟:
[0026](31)設計柵格的寬度為d,作表達式為Xi=IXd的直線,i=0,1,2,3-;然后求得直線Xi與工作區域邊界線的交點的集合N= {NJ,Ni= (NijI = ((XilYij)}, j=l,2,3...,其中Xfi X d,Yij<Yi (j+D ;
[0027](32)設計候選內部特征點的集合 M= {Mj , Mi=(Mik) = Kxi, yik) I,k=l, 2,3...,其中yik=mXd,m=0, I, 2,3...;yijmin ≤ yik ≤ yiJmax ;
[0028](33)判斷出候選內部特征點的集合M中實際存在于工作區域內部的點,將實際存在與工作區域內部的點記錄到地圖節點特征點數組中;候選內部特征點的集合M中實際存在于工作區域內部的點的判斷條件為:點(Xi,yik)中yik的值必須位于yijPyia+1)之間,且j為奇數;
[0029](34)判斷Xi=i X d的值大小,若Xi=i X d>Xmax成立,則跳轉至步驟(35),否則跳轉至步驟(32);其中Xmax為所有邊界特征點中的最大X值;
[0030](35)構建柵格地圖數據庫,遍歷地圖特征數組,并將其記錄紙存儲單元中。
[0031]優選的,所述步驟(35)中,在構建柵格地圖數據庫時,地圖節點特征數組中的元素按照X由小到大插入,遍歷地圖節點特征數組中的節點時,建立多維地圖數組,以二維地圖坐標Map [a] [b]的格式保存節點坐標信息,且Map [a] [b]滿足如下要求:Map[a] [b]的X值小于 Map [a] [b+1]的 X 值;Map [a] [b]的 Y 值小于 Map [a+1] [b]的 Y 值;a=0,1,2,3...,b=0, I, 2,3...;所述多維地圖數組中同時包含節點坐標位置處的環境信息,比如相應位置處的地貌特征、是否含有假山、河流或其他可能的信息等。
[0032]優選的,所述步驟(I)的具體實現方法包括如下步驟:
[0033](11)為機器人裝載加速度傳感器、陀螺儀和電子羅盤;
[0034](12)在機器人工作區域內任取一點,記該點為輔助原點(0,0),任取一經過輔助原點(0,0)的直線L,以直線L為輔助Y軸,以與輔助Y軸垂直并交與輔助原點的直線為輔助X軸,建立輔助X-Y平面坐標系;
[0035](13)讓機器人從原點出發,沿著直線L行走至工作區域邊界,并按照逆時針方向沿著工作區域邊界線行走一圈;在機器人沿著工作區域邊界線行走一圈的過程中,通過加速度傳感器、陀螺儀和電子羅盤采集數據并定位計算出行走過程中出現的邊界特征點在輔助X-Y平面坐標系上的相對位置坐標;
[0036](14)將輔助X-Y平面坐標系向輔助X軸負方向平移、向輔助Y軸負方向平移,將平移后的輔助X-Y平面坐標系記為X-Y平面坐標系,使得所有邊界特征點均位于X-Y平面坐標系的第一象限內。
[0037]需要說明的是,對于所有邊界特征點的確定,可以通過人工繪制也可以通過上述提供的方法進行確定;當然,在使用上述方法進行確定的時候,所使用的機器人可以不是最終所要工作的機器人,即相關傳感器(加速度傳感器、陀螺儀和電子羅盤)并不一定裝載在最終工作的機器人上。
[0038]地圖創建的目的是對機器人當前的位姿進行準確的估計,智能機器人利用傳感器傳送的數據作為對環境的感知信息,對實際中的環境進行模型的建立,同時創建地圖。機器人在創建地圖的時候,需要從傳感器接收環境信息,從而進行分析以及地圖的創建工作,用以對外界環境和當前位姿做出正確的理解,進行正確的分析決策。對傳感器數據的關鍵分析就是特征點的確定,通過傳感器傳送的數據,特征點比較容易確定,且不受外界干擾。因此在SLAM的時候,一般都是通過特征點行進相對定位,特征點理解為邊界線上的的拐點,這些點有一個共同的特征,即可以近似為兩條直線直接相交的點。
[0039]有益效果:本發明提供的智能機器人用的柵格地圖創建方法,能夠直觀第表示出機器人在某個時刻對整體環境的理解,而且容易存儲和管理,因此適用于機器人在運行過程中對區域的記憶;同時能夠對機器人的路徑規劃、自主返回充電等技術研究提供基礎。
【專利附圖】
【附圖說明】
[0040]圖1為工作區域示意圖;
[0041]圖2為工作區域在輔助X-Y平面坐標系上的示意圖;
[0042]圖3為工作區域在X-Y平面坐標系上的示意圖;
[0043]圖4為地圖節點特征點提取示意圖。
【具體實施方式】
[0044]下面結合附圖對本發明作更進一步的說明。
[0045]柵格地圖創建的關鍵就是柵格大小的選取,過大的柵格會導致相對定位計算精度降低;而過小的柵格會導致運算的復雜度增加,對處理器的要求比較高,增加成本。本發明中,選擇的柵格的寬度,考慮機器人每秒行走的距離與實際工作區域尺寸做動態調整,更具有適應性。這樣智能機器人每在一個位置,就能在柵格地圖中找到一個柵格與之對應,從而滿足了區域覆蓋問題。由于智能機器人無法在工作之前得知地理環境,因此必須在工作的時候必須擁有對柵格地圖的映射表示。本發明中,機器人在工作之前,首先獲得邊界特征點,獲取邊界特征點方法不限,如人工手動繪制邊界特征點(需注意精度、比例問題)、攜帶設備(安裝有加速度傳感器、陀螺儀、電子羅盤等傳感器)繞邊界行走記錄特征點等方法,這樣就能知道柵格地圖的邊界區域。隨后通過柵格劃分算法,創建柵格地圖。以下,舉例通過這種攜帶設備(安裝有加速度傳感器、陀螺儀、電子羅盤等傳感器)繞邊界行走的方法來獲取特征點后,介紹SLAM地圖構建過程。
[0046]智能機器人安裝有加速度傳感器、陀螺儀、電子羅盤。加速度傳感器的強項在于測量設備的受力情況。對但用來測量設備相對于地面的擺放姿勢,則精確度不高。加速度傳感器可用于有固定的重力參考坐標系、存在線性或傾斜運動但旋轉運動被限制在一定范圍內的應用。對加速度傳感器進行一次積分,就變成了單位時間里的速度變化量,從而測出在死區內物體的移動。同時處理直線運動和旋轉運動時,就需要把加速度傳感器和陀螺儀傳感器結合起來使用。如果還想設備在運動時不至于迷失方向,就再加上磁傳感器,陀螺儀、磁傳感器和加速度傳感器常常是相互配合使用的有一種相互補償的關系。應用磁傳感器的電子羅盤是通過測量磁通量的大小來確定方向的。當磁傳感器發生傾斜時,通過磁傳感器的地磁通量將發生變化,從而使方向指向產生誤差。利用加速度傳感器可以測量傾角的這一原理,可以對電子羅盤的傾斜進行補償。
[0047]基于上述分析,下面給出本案提供的智能機器人用的柵格地圖創建方法,包括如下步驟:
[0048](I)在X-Y平面坐標系的第一象限內繪制機器人的工作區域邊界線;如圖1、圖2、圖3所示,具體包括如下步驟:
[0049](11)為機器人裝載加速度傳感器、陀螺儀和電子羅盤;
[0050](12)在機器人工作區域內任取一點,記該點為輔助原點(0,0),任取一經過輔助原點(0,O)的直線L,以直線L為輔助Y軸,以與輔助Y軸垂直并交與輔助原點的直線為輔助X軸,建立輔助X-Y平面坐標系;
[0051](13)讓機器人從原點出發,沿著直線L行走至工作區域邊界,并按照逆時針方向沿著工作區域邊界線行走一圈;在機器人沿著工作區域邊界線行走一圈的過程中,通過加速度傳感器、陀螺儀和電子羅盤采集數據并定位計算出行走過程中出現的邊界特征點在輔助X-Y平面坐標系上的相對位置坐標;
[0052](14)將輔助X-Y平面坐標系向輔助X軸負方向平移、向輔助Y軸負方向平移,將平移后的輔助X-Y平面坐標系記為X-Y平面坐標系,使得所有邊界特征點均位于X-Y平面坐標系的第一象限內;
[0053](2)標記出工作區域邊界線上的所有邊界特征點在X-Y平面坐標系上的坐標位置,并將邊界特征點記錄到地圖節點特征點數組中;
[0054](3)在X-Y平面坐標系中構建SLAM地圖,包括如下步驟:
[0055](31)設計柵格的寬度為d,作表達式為Xi=IXd的直線,i=0,1,2,3-;然后求
得直線Xi與工作區域邊界線的交點的集合N= {NJ,Ni= (NijI = ((XilYij)I, j=l,2,3...,其中Xfi X d,Yij^Yi (j+D ;
[0056](32)設計候選內部特征點的集合 M={MJ , Mi= {Mik} = {(xi; yik)}, k=l,2,3...,其中yik=mXd,Xi=IXd, m=0, I, 2,3...;yiJmin ( yik ( yiJmax ;
[0057](33)判斷出候選內部特征點的集合M中實際存在于工作區域內部的點,將實際存在與工作區域內部的點記錄到地圖節點特征點數組中;候選內部特征點的集合M中實際存在于工作區域內部的點的判斷條件為:點(Xi,yik)中yik的值必須位于yijPyia+1)之間,且j為奇數;
[0058](34)判斷Xi=i X d的值大小,若Xi=i X d>Xmax成立,則跳轉至步驟(35),否則跳轉至步驟(32);其中Xmax為所有邊界特征點中的最大X值;
[0059](35)構建柵格地圖數據庫,遍歷地圖特征數組,并將其記錄紙存儲單元中;本步驟中,在構建柵格地圖數據庫時,地圖節點特征數組中的元素按照X由小到大插入,遍歷地圖節點特征數組中的節點時,建立多維地圖數組,以二維地圖坐標Map[a] [b]的格式保存節點坐標信息,且Map [a] [b]滿足如下要求:Map [a] [b]的X值小于Map [a] [b+1]的X值;Map [a] [b]的 Y 值小于 Map [a+1] [b]的 Y 值;a=0,1,2,3-, b=0, 1,2,3-;所述多維地圖數組中同時包含節點坐標位置處的環境信息[0060]以上所述僅是本發明的優選實施方式,應當指出:對于本【技術領域】的普通技術人員來說,在不脫離本發明原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也應視為本發明的保護范圍。
【權利要求】
1.一種智能機器人用的柵格地圖創建方法,其特征在于:包括如下步驟: (1)在X-Y平面坐標系的第一象限內繪制機器人的工作區域邊界線; (2)標記出工作區域邊界線上的所有邊界特征點在X-Y平面坐標系上的坐標位置,并將邊界特征點記錄到地圖節點特征點數組中; (3 )在X-Y平面坐標系中構建SLAM地圖,包括如下步驟: (31)設計柵格的寬度為d,作表達式為Xi=IXd的直線,i=0,1,2,3-;然后求得直線Xi與工作區域邊界線的交點的集合N=仉},Ni=(NijHKxiJij)K j=l,2,3...,其中Xi=iXd,yi i (j+1); (32)設計候選內部特征點的集合M={Mj , Mi=(Mik) = Kxi, yik)},k=l, 2,3...,其中yik=mXd,m=0, I, 2,3...;yiJmin ( yik ( yiJmax ; (33)判斷出候選內部特征點的集合M中實際存在于工作區域內部的點,將實際存在于工作區域內部的點記錄到地圖節點特征點數組中;候選內部特征點的集合M中實際存在于工作區域內部的點的判斷條件為:點(Xi,yik)中yik的值必須位于7〃和7&+1)之間,且j為奇數; (34)判斷\=iX d的值大小,若Xi=i X d>Xmax成立,則跳轉至步驟(35),否則跳轉至步驟(32);其中Xmax為所有邊界特征點中的最大X值; (35)構建柵格地圖數據庫,遍歷地圖特征數組,并將其記錄紙存儲單元中。
2.根據權利要求1所述的智能機器人用的柵格地圖創建方法,其特征在于:所述步驟(35)中,在構建柵格地圖數據庫時,地圖節點特征數組中的元素按照X由小到大插入,遍歷地圖節點特征數組中的節點時,建立多維地圖數組,以二維地圖坐標Map[a] [b]的格式保存節點坐標信息,且Map [a] [b]滿足如下要求:Map[a] [b]的X值小于Map [a] [b+1]的X值;Map [a] [b]的 Y 值小于 Map[a+1] [b]的 Y 值;a=0,1,2,3-, b=0, 1,2,3-;所述多維地圖數組中同時包含節點坐標位置處的環境信息。
3.根據權利要求1所述的智能機器人用的柵格地圖創建方法,其特征在于:所述步驟(O的具體實現方法包括如下步驟: (11)為機器人裝載加速度傳感器、陀螺儀和電子羅盤; (12)在機器人工作區域內任取一點,記該點為輔助原點(O,0),任取一經過輔助原點(O, O)的直線L,以直線L為輔助Y軸,以與輔助Y軸垂直并交與輔助原點的直線為輔助X軸,建立輔助X-Y平面坐標系; (13)讓機器人從原點出發,沿著直線L行走至工作區域邊界,并按照逆時針方向沿著工作區域邊界線行走一圈;在機器人沿著工作區域邊界線行走一圈的過程中,通過加速度傳感器、陀螺儀和電子羅盤采集數據并定位計算出行走過程中出現的邊界特征點在輔助X-Y平面坐標系上的相對位置坐標; (14)將輔助X-Y平面坐標系向輔助X軸負方向平移、向輔助Y軸負方向平移,將平移后的輔助X-Y平面坐標系記為X-Y平面坐標系,使得所有邊界特征點均位于X-Y平面坐標系的第一象限內。
【文檔編號】G05D1/02GK103472823SQ201310363428
【公開日】2013年12月25日 申請日期:2013年8月20日 優先權日:2013年8月20日
【發明者】陳國慶, 薛超, 王俊杰 申請人:蘇州兩江科技有限公司