自主機(jī)器人的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明一般涉及移動(dòng)設(shè)備的導(dǎo)航。具體地,本發(fā)明涉及可用在例如移動(dòng)機(jī)器人地移動(dòng)設(shè)備中的定位和制圖技術(shù)。
【背景技術(shù)】
[0002]移動(dòng)機(jī)器人的定位技術(shù)可以包括允許機(jī)器人相對于其周邊確定其位置和導(dǎo)向(或“姿態(tài)”)的過程??梢詷?gòu)件其周邊地圖的機(jī)器人可以在地圖中定位其本身,以展示自主程度。該構(gòu)件地圖的過程和使用所生成的地圖被稱作同步定位和制圖(SLAM)t3SLAM涉及地圖的構(gòu)建(制圖)以及地圖的使用(定位),因此包括與定位相關(guān)的過程和與制圖相關(guān)的過程。機(jī)器人可同步地或以多元方式執(zhí)行這些過程。SLAM技術(shù)可包括使用測距,機(jī)械接觸傳感器,或非接觸測距傳感器例如激光測距儀或基于圖像傳感器來構(gòu)建地圖。
【發(fā)明內(nèi)容】
[0003]本發(fā)明的一方面特征在于一種自主機(jī)器人,所述自主機(jī)器人配制成在至少部分地由墻壁包圍的區(qū)域內(nèi)操作。所述機(jī)器人包括:驅(qū)動(dòng)系統(tǒng),用于推進(jìn)所述機(jī)器人穿過所述區(qū)域;以及導(dǎo)航系統(tǒng),用于控制所述驅(qū)動(dòng)系統(tǒng),并且配制成以跟隨模式操縱所述機(jī)器人。所述機(jī)器人被控制為沿著鄰近障礙物的路徑區(qū)段行進(jìn),同時(shí)記錄指示所述路徑區(qū)段的數(shù)據(jù);以覆蓋模式操縱所述機(jī)器人,其中,所述機(jī)器人被控制為穿過所述區(qū)域同時(shí)執(zhí)行功能,同時(shí)產(chǎn)生指示所述區(qū)域的物理布局的數(shù)據(jù),包括在執(zhí)行所述功能時(shí)探測到的區(qū)域邊界和障礙物周長,至少基于機(jī)器人測距數(shù)據(jù),更新指示計(jì)算的機(jī)器人姿態(tài)的數(shù)據(jù),所述計(jì)算的機(jī)器人姿態(tài)包括在所述區(qū)域內(nèi)機(jī)器人的計(jì)算的地點(diǎn)和導(dǎo)向,并且計(jì)算機(jī)器人姿態(tài)置信水平;以及對所述機(jī)器人姿態(tài)置信水平低于預(yù)定置信界限作出響應(yīng):基于所述計(jì)算的機(jī)器人姿態(tài)和指示所述區(qū)域的物理布局的數(shù)據(jù),操縱所述機(jī)器人至所述路徑區(qū)段的可疑地點(diǎn);然后,響應(yīng)于在所述路徑區(qū)段的可疑地點(diǎn)的預(yù)定距離內(nèi)探測鄰近所述障礙物的所述路徑區(qū)段,更新指示所述計(jì)算的機(jī)器人姿態(tài)的數(shù)據(jù)和指示所述區(qū)域的物理布局的數(shù)據(jù)中的至少一個(gè),從而更新在區(qū)域內(nèi)所述機(jī)器人的相對姿態(tài)。
[0004]在一些實(shí)例中,所述機(jī)器人還選擇所述路徑區(qū)段的所述可疑地點(diǎn),其被操縱以便基于來自所述路徑區(qū)段的可疑地點(diǎn)的第一穿越的時(shí)間差。所述機(jī)器人還選擇所述路徑區(qū)段的所述可疑地點(diǎn),其被操縱以便基于來自所述路徑區(qū)段的可疑地點(diǎn)的第一穿越的距離差。所述機(jī)器人可構(gòu)建在所述墻壁跟隨模式中路徑區(qū)段的庫,并且其中,響應(yīng)于下降到低于所述預(yù)定置信界限的所述機(jī)器人姿態(tài)置信水平,所述機(jī)器人被操縱至路徑區(qū)段的可疑地點(diǎn),所述可疑地點(diǎn)根據(jù)關(guān)于所述機(jī)器人的其可疑相對位置來被選定。
[0005]在某些情況下,所述機(jī)器人基于所述指示所述區(qū)域的物理布局的數(shù)據(jù),構(gòu)建路徑區(qū)段的庫,并且其中,響應(yīng)于下降到低于所述預(yù)定置信界限的所述機(jī)器人姿態(tài)置信水平,所述機(jī)器人被操縱至路徑區(qū)段的可疑地點(diǎn),所述可疑地點(diǎn)根據(jù)關(guān)于所述機(jī)器人的其可疑相對位置來被選定。所述機(jī)器人在更新所述指示計(jì)算的機(jī)器人的地點(diǎn)的數(shù)據(jù)和指示所述區(qū)域的物理布局的數(shù)據(jù)的任一個(gè)之后,再次以覆蓋模式操縱所述機(jī)器人。所述機(jī)器人響應(yīng)于探測到的障礙物同時(shí)以覆蓋模式操縱,啟動(dòng)所述跟隨模式。
[0006]在一些實(shí)例中,相對于指示所述區(qū)域的物理布局的數(shù)據(jù)更新指示所述計(jì)算的機(jī)器人姿態(tài)的數(shù)據(jù),使兩個(gè)或多個(gè)區(qū)段重新定位至所述指示所述區(qū)域的物理布局的數(shù)據(jù)。相對于指示所述區(qū)域的物理布局的數(shù)據(jù)更新指示所述計(jì)算的機(jī)器人姿態(tài)的數(shù)據(jù),使所述指示所述機(jī)器人姿態(tài)的數(shù)據(jù)重新定位至所述指示所述區(qū)域的物理布局的數(shù)據(jù)。記錄指示所述路徑區(qū)段的數(shù)據(jù)包括:從在所述機(jī)器人上的傳感器收集數(shù)據(jù)。比較所述數(shù)據(jù)包括:比較路徑長度、所述數(shù)據(jù)的開始姿態(tài)、所述數(shù)據(jù)的結(jié)束姿態(tài)、行進(jìn)的直線路程、以及曲率中的至少一個(gè)。探測所述障礙物包括物理地接觸所述探測到的障礙物
[0007]在某些情況下,所述傳感器是里程表、輻射收發(fā)器、碰撞傳感器、壓力傳感器、以及接近傳感器。
[0008]在某些情況下,所述功能包括清掃所述區(qū)域內(nèi)的地板。
[0009]在一些實(shí)施中,在操縱所述機(jī)器人至所述路徑區(qū)段的可疑地點(diǎn)后,所述機(jī)器人以跟隨模式操縱所述機(jī)器人以跟隨所述探測到的障礙物,同時(shí)記錄機(jī)器人姿態(tài)數(shù)據(jù),從所述記錄的機(jī)器人姿態(tài)數(shù)據(jù),產(chǎn)生指示沿所述探測到的障礙物的所述機(jī)器人的路徑的數(shù)據(jù)。更新所述指示計(jì)算的機(jī)器人姿態(tài)的數(shù)據(jù)可包括,將所述指示沿著所述探測到的障礙物的所述機(jī)器人的路徑的數(shù)據(jù)與指示在所述跟隨模式中記錄的所述路徑區(qū)段的數(shù)據(jù)相比較,以確定沿著所述探測到的障礙物的所述機(jī)器人的路徑是否與在所述跟隨模式中記錄的所述路徑區(qū)段充分匹配,并且在確定充分匹配時(shí),按照充分匹配的路徑區(qū)段,更新所述指示計(jì)算的機(jī)器人地點(diǎn)的數(shù)據(jù)和所述指示所述區(qū)域的物理布局的數(shù)據(jù)的任一個(gè)。
[0010]機(jī)器人系統(tǒng)的實(shí)施例可包括以下一個(gè)或多個(gè)特征。機(jī)器人系統(tǒng)可以通過跟蹤測距估算機(jī)器人的姿態(tài)并且可使用其它機(jī)載傳感器估算它的在姿態(tài)推算的置信。機(jī)器人系統(tǒng)然后通過使用姿態(tài)推算來產(chǎn)生環(huán)境的地圖。然后機(jī)器人的驅(qū)動(dòng)系統(tǒng)的測距可被用于推算姿態(tài)。因?yàn)闇y距數(shù)據(jù)可能受到偏移和誤差,在機(jī)器人上的其它傳感器可以用來校正偏移和誤差或推算偏移和誤差。在機(jī)器人上的加速度計(jì)和陀螺儀可以感應(yīng)線性和角加速度以在機(jī)器人導(dǎo)航時(shí)推算誤差累積。機(jī)器人系統(tǒng)可以為機(jī)器人系統(tǒng)推算姿態(tài)的每個(gè)情況計(jì)算置信。因此,隨著時(shí)間的推移,所述機(jī)器人系統(tǒng)可確定適當(dāng)?shù)臅r(shí)間來通過對環(huán)境重新定位恢復(fù)置信。
[0011]機(jī)器人可以使用在導(dǎo)航期間與環(huán)境物理相互作用而產(chǎn)生數(shù)據(jù),用以對環(huán)境對其本身重新定位。例如,當(dāng)機(jī)器人在周圍環(huán)境中導(dǎo)航并且執(zhí)行行為以覆蓋并清掃環(huán)境時(shí),機(jī)器人可以碰到障礙物,跟隨墻壁,或以其它方式與環(huán)境的物理元件進(jìn)行相互作用。機(jī)器人可以記錄這些物理相互作用,它們隨著機(jī)器人導(dǎo)航行為的一部分發(fā)生,用來指定存在于環(huán)境中的獨(dú)特的物理地標(biāo)。然后,當(dāng)機(jī)器人確定其姿態(tài)置信已下降到低于預(yù)定置信界限時(shí),獨(dú)特的地標(biāo)可以被用于重新定位機(jī)器人。
[0012]以上機(jī)器人系統(tǒng)的特征可以包括一個(gè)或更多的優(yōu)點(diǎn)。使用傳統(tǒng)地已經(jīng)存在于移動(dòng)機(jī)器人上的傳感器,如編碼器,碰撞傳感器,陀螺儀,以及加速度計(jì),降低了機(jī)器人系統(tǒng)的成本,并增加了整體可制造性。例如,機(jī)器人系統(tǒng)使用用于導(dǎo)航的傳感器產(chǎn)生SLAM的數(shù)據(jù),從而避免對于SLAM特定的額外傳感器的需要。由于更少的部件,機(jī)電系統(tǒng)保持更加簡單。
[0013]此外,由傳感器收集的數(shù)據(jù)在計(jì)算上是低成本的。例如,相對于使用大的文件大小的VSLAM圖像類型,在機(jī)器人系統(tǒng)中實(shí)施的SLAM系統(tǒng)需要的存儲(chǔ)更少。在常規(guī)的SLAM機(jī)器人系統(tǒng)中,可能有用于制圖、定位和導(dǎo)航的單獨(dú)的傳感器。由這些傳感器生成和存儲(chǔ)的數(shù)據(jù)量在計(jì)算上可能是昂貴的。事實(shí)上,這些系統(tǒng)可能只能夠存儲(chǔ)機(jī)器人使用時(shí)所收集的數(shù)據(jù)量的一小部分。在本申請中所描述的SLAM系統(tǒng)可以有利地以更好的效率收集更大量的數(shù)據(jù)。所述系統(tǒng)還可以通過在重新定位期間比較不太復(fù)雜的數(shù)據(jù)而有效地促進(jìn)機(jī)器人重新定位。
[0014]一個(gè)或多個(gè)實(shí)施的細(xì)節(jié)在附圖和書面描述中闡述。從說明書,附圖和權(quán)利要求書,其它特征,目的和優(yōu)點(diǎn)將變得顯而易見。。
【附圖說明】
[0015]圖1A示出了自主機(jī)器人的透視圖。
[0016]圖1B示出了圖1A的自主機(jī)器人的仰視圖。
[0017]圖1C示出了在圖1A-B所示的自主機(jī)器人上執(zhí)行的控制系統(tǒng)的框圖。
[0018]圖2示出導(dǎo)航自主機(jī)器人的流程圖。
[0019]圖3示出具有自主機(jī)器人的區(qū)域的俯視圖。
[0020]圖4六、4六’、48、48’、4(:和4(:’示出了房間和圖3的自主機(jī)器人,自主機(jī)器人跟隨的不同的路徑,以及對應(yīng)于房間的虛擬地圖。
[0021 ]在各個(gè)附圖中,相同附圖標(biāo)記表示相同的元件。
【具體實(shí)施方式】
[0022]自主機(jī)器人使用同步定位與繪圖(SLAM)圍繞房間智能地導(dǎo)航。機(jī)器人可以通過感測房間的自然特征停留在一個(gè)地方。機(jī)器人可以使用一個(gè)或多個(gè)視覺傳感器以及一個(gè)或多個(gè)航位推算傳感器來處理數(shù)據(jù)SLAM有關(guān)的并且自主地生成和更新地圖。機(jī)器人的控制器操作傳感器系統(tǒng),以隨著機(jī)器人來回移動(dòng)連續(xù)地推算房間內(nèi)的機(jī)器人的姿態(tài),并接收關(guān)于房間的信息?!白藨B(tài)”在本文中包括機(jī)器人在房間內(nèi)的位置(例如,x,y坐標(biāo)地點(diǎn)),以及相對于例如在房間中的墻壁或基本方向的所述機(jī)器人的角度導(dǎo)向。感應(yīng)的“特征”在本文中描述從環(huán)境的物理元件收集的信息和數(shù)據(jù)。例如,一特征可以對應(yīng)于隨著機(jī)器人繞環(huán)境的物理元件行駛由機(jī)器人感應(yīng)的幾何輪廓。
[0023]在機(jī)器人的智能導(dǎo)航一些實(shí)例中,機(jī)器人生成模板,或地標(biāo),對應(yīng)于機(jī)器人可以探測的環(huán)境中的一個(gè)或多個(gè)特征,使用,例如,在機(jī)器人上的傳感器。機(jī)器人構(gòu)件環(huán)境的物理布局的地圖(例如,一個(gè)或多個(gè)房間或房間內(nèi)的部分),物理布局包括獨(dú)特的地標(biāo)(在本文中也稱為“標(biāo)識”),其包括一個(gè)或多個(gè)特征。機(jī)器人推算其在環(huán)境中的姿態(tài),并使用產(chǎn)生的模板減少姿態(tài)推算中的誤差。隨著機(jī)器人跟隨環(huán)境中的障礙物(例如,家具和固定裝置)和墻壁,機(jī)器人可以生成對應(yīng)于特征的獨(dú)特組合的路徑區(qū)段的模板,其識別障礙和/或墻壁的特定布置和位置。存儲(chǔ)在模板中的特征包括來自傳感器的傳感器數(shù)據(jù)的匯編,其識別每個(gè)獨(dú)特的路徑區(qū)段。
[0024]例如,傳感器數(shù)據(jù)可以包括幾何(由非接觸式測距傳感器,例如體積點(diǎn)云傳感器,IR點(diǎn)和線測距傳感器和聲納感應(yīng)的),碰撞傳感器數(shù)據(jù),圖像數(shù)據(jù),和由傳感器系統(tǒng)的傳感器產(chǎn)生的其它數(shù)據(jù)。第二,隨著機(jī)器人繞房間移動(dòng),所述機(jī)器人生成控制器使用的指示房間的物理布局的數(shù)據(jù),以產(chǎn)生存儲(chǔ)在存儲(chǔ)器存儲(chǔ)元件上的虛擬地圖或占用網(wǎng)格。隨著占用網(wǎng)格生成,控制器追蹤不斷更新指示占用網(wǎng)格內(nèi)的機(jī)器人的姿態(tài)的數(shù)據(jù)。指示姿態(tài)的數(shù)據(jù)可以是推算值,隨著機(jī)器人繼續(xù)繞房間移動(dòng)該推算值誤差增加。在一些實(shí)例中,機(jī)器人以誤差代表與所推算的姿態(tài)相關(guān)聯(lián)的置信度量。在其它實(shí)例中,機(jī)器人以與所推算的姿態(tài)相關(guān)聯(lián)的不確定性的量度代表誤差。最后,通過移動(dòng)機(jī)器人到上述路徑區(qū)段中的可疑地點(diǎn),機(jī)器人可以減少不確定性,或增加在其姿態(tài)上的置信。在到達(dá)路徑區(qū)段時(shí),機(jī)器人的傳感器系統(tǒng)可產(chǎn)生對應(yīng)于它的圍繞路徑區(qū)段的可疑地點(diǎn)的運(yùn)動(dòng)的信號。機(jī)器人執(zhí)行模板匹配算法以確定所生成的傳感器數(shù)據(jù)是否與較早產(chǎn)生的相應(yīng)的路徑區(qū)段的模板匹配。如果傳感器數(shù)據(jù)與模板匹配,則控制器通過基于房間內(nèi)模板的位置確認(rèn)機(jī)器人的姿態(tài)或重新定位機(jī)器人,可以重新定向占用網(wǎng)格,從而恢復(fù)在姿態(tài)推算上的置信。
[0025]機(jī)器人概述
[0026]參照圖1A,機(jī)器人100包括主體102,前向部分104和后向部分106。通過相對于由主體102限定的三個(gè)互相垂直的軸線的各種運(yùn)動(dòng)組合,機(jī)器人100可移動(dòng)穿過物理環(huán)境的地板表面:橫向軸線X,前后軸線Y,中央垂直軸線Z。沿著前后軸線Y的前向驅(qū)動(dòng)方向被指定F(以下稱為“前向”),并且沿著所述前后軸線Y的后驅(qū)動(dòng)方向指定為A(以下稱為“后向”)。橫向軸線Y在機(jī)器人100的右側(cè)R和左側(cè)L之間延伸,其大致上沿著由輪子模塊108a、108b的中心點(diǎn)限定的軸線,簡要參考圖1B。在一些實(shí)施中,機(jī)器人100具有圓形外周。在其它實(shí)施中,前向部分104基本上具有矩形橫截面,并且后向部分106基本上是圓形的,具有半圓形橫截面。機(jī)器人主體102的其它幾何形狀可以預(yù)期,例如勒洛三角形或等寬多邊形。
[0027]設(shè)置在主體102的頂部的用戶界面110接收一個(gè)或多個(gè)用戶命令并且/或者顯示機(jī)器人100的狀態(tài)。設(shè)置在前向部分104上的一個(gè)或多個(gè)障礙物探測傳感器111評估障礙物距離機(jī)器人100的距離。在一個(gè)實(shí)施中,一個(gè)或多個(gè)傳感器是飛行傳感器點(diǎn)測距時(shí)間,線測距傳感器,或體積點(diǎn)云傳感器。在另一實(shí)施中,一個(gè)或多個(gè)障礙物探測傳感器111是設(shè)置在前向部分104上的聲納傳感器,用作超聲波傳感器的換能器,以評估障礙物到機(jī)器人100的距離。在機(jī)器人100右側(cè)的墻壁跟隨傳感器113是IR傳感器,可以確定機(jī)器人100何時(shí)跟隨墻壁。機(jī)器人100的左側(cè)L也可具有墻壁跟隨傳感器。主體102的前向部分還承載緩沖器115,其探測在機(jī)器人100的驅(qū)動(dòng)路徑上的障礙物。
[0028]參照圖1B,機(jī)器人100的底表面107包括帶有發(fā)動(dòng)機(jī)109a_b的輪子模塊108a_b,該發(fā)動(dòng)機(jī)差動(dòng)地驅(qū)動(dòng)輪子110a-b中。發(fā)動(dòng)機(jī)109a-b聯(lián)接到旋轉(zhuǎn)編碼器112a-b。機(jī)器人100的底表面107進(jìn)一步包括清掃頭120,帶有前滾輪122a和后滾輪122b,邊刷125,腳輪130,間隙調(diào)節(jié)器132a-b,光學(xué)鼠傳感器133,慣性測量單元(HlU) 134,和懸壁傳感器135a-135d
[0029]沿著橫向軸線X的輪子模塊108a和108b,在常規(guī)清掃程序期間推動(dòng)機(jī)器人100穿過地板表面。發(fā)動(dòng)機(jī)109a-b驅(qū)動(dòng)各自的輪子110a-b。隨著發(fā)動(dòng)機(jī)109a-b驅(qū)動(dòng)輪子110a-b中,旋轉(zhuǎn)編碼器112a_b測量發(fā)動(dòng)機(jī)109a_