亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

用于軌跡規(guī)劃的物體度量的實時確定的制作方法

文檔序號:11159757閱讀:512來源:國知局
用于軌跡規(guī)劃的物體度量的實時確定的制造方法與工藝

本申請要求2014年7月16日遞交的美國專利申請第14/333,258號的優(yōu)先權(quán),特此通過引用將該美國專利申請全部并入。



背景技術(shù):

除非本文另外指出,否則本部分中描述的材料并不是本申請中的權(quán)利要求的現(xiàn)有技術(shù),并且并不因為被包括在本部分中就被承認為是現(xiàn)有技術(shù)。

機器人系統(tǒng),例如包含抓取組件的機器人臂,可用于涉及拾起或移動物體的應(yīng)用。例如,機器人設(shè)備可用于用物體填充貨柜,創(chuàng)建物體的堆疊,或者從卡車箱卸載物體。在一些情況中,所有物體可能是相同類型的。在其他情況中,貨柜或卡車可包含不同類型的物體的混合,例如盒裝物品、金屬罐、輪胎或者其他可堆疊物體。這種機器人系統(tǒng)可基于關(guān)于物體在環(huán)境中何處的預(yù)定知識來指導(dǎo)機器人臂拾起物體。



技術(shù)實現(xiàn)要素:

本公開提供了可幫助確定用于利用機器人設(shè)備移動物體的軌跡的方法和裝置?;诓煌目赡芪矬w測量可確定多個可能的軌跡來用機器人設(shè)備的末端執(zhí)行器移動物體。在機器人設(shè)備拾起物體之后,可從指示出物體的一個或多個測量的一個或多個傳感器接收傳感器數(shù)據(jù)。然后可基于接收到的傳感器數(shù)據(jù)從多個可能的軌跡中選擇一軌跡。機器人設(shè)備隨后可被控制來通過所選軌跡移動物體。

在一個示例中,提供了一種方法,其包括基于多個可能的物體測量來確定多個可能的軌跡用于以機器人操縱器的末端執(zhí)行器移動物體。該方法還可包括使得機器人操縱器用末端執(zhí)行器拾起物體。在使得機器人操縱器利用末端執(zhí)行器拾起物體之后,該方法還可包括從一個或多個傳感器接收指示出物體的一個或多個測量的傳感器數(shù)據(jù)。基于接收到的傳感器數(shù)據(jù),該方法還可包括從多個可能軌跡之中選擇用于移動物體的軌跡。該方法還可包括使得機器人操縱器通過所選軌跡移動物體。

在另外的示例中,公開了一種包括機器人操縱器、至少一個傳感器和控制系統(tǒng)的系統(tǒng)。該控制系統(tǒng)可被配置為基于多個可能的物體測量確定用于利用機器人操縱器的末端執(zhí)行器移動物體的多個可能軌跡。該控制系統(tǒng)還可被配置為使得機器人操縱器用末端執(zhí)行器拾起物體。在使得機器人操縱器利用末端執(zhí)行器拾起物體之后,該控制系統(tǒng)還可被配置為從至少一個傳感器接收指示出物體的一個或多個測量的傳感器數(shù)據(jù)?;诮邮盏降膫鞲衅鲾?shù)據(jù),該控制系統(tǒng)還可被配置為從多個可能軌跡之中選擇用于移動物體的軌跡。該控制系統(tǒng)還可被配置為使得機器人操縱器通過所選軌跡移動物體。

在另一示例中,公開了一種非暫態(tài)計算機可讀介質(zhì),其中存儲有指令,這些指令當(dāng)被計算系統(tǒng)執(zhí)行時使得該計算系統(tǒng)執(zhí)行功能。這些功能可包括基于多個可能的物體測量確定用于利用機器人操縱器的末端執(zhí)行器移動物體的多個可能軌跡。這些功能還可包括使得機器人操縱器用末端執(zhí)行器拾起物體。在使得機器人操縱器利用末端執(zhí)行器拾起物體之后,這些功能還可包括從一個或多個傳感器接收指示出物體的一個或多個測量的傳感器數(shù)據(jù)。基于接收到的傳感器數(shù)據(jù),這些功能還可包括從多個可能軌跡之中選擇用于移動物體的軌跡。這些功能還可包括使得機器人操縱器通過所選軌跡移動物體。

在另外一個示例中,一種系統(tǒng)可包括用于基于多個可能的物體測量來確定用于利用機器人操縱器的末端執(zhí)行器移動物體的多個可能軌跡的裝置。該系統(tǒng)還可包括用于使得機器人操縱器用末端執(zhí)行器拾起物體的裝置。在使得機器人操縱器利用末端執(zhí)行器拾起物體之后,該系統(tǒng)還可包括用于從一個或多個傳感器接收指示出物體的一個或多個測量的傳感器數(shù)據(jù)的裝置?;诮邮盏降膫鞲衅鲾?shù)據(jù),該系統(tǒng)還可包括用于從多個可能軌跡之中選擇用于移動物體的軌跡的裝置。該系統(tǒng)還可包括用于使得機器人操縱器通過所選軌跡移動物體的裝置。

前述總結(jié)只是例示性的,而并不打算以任何方式進行限定。除了以上描述的例示性方面、實施例和特征以外,通過參考附圖和接下來的詳細描述和附圖,更多的方面、實施例和特征將變得清楚。

附圖說明

圖1A根據(jù)示例實施例示出了安裝在可動推車上的機器人臂。

圖1B是根據(jù)示例實施例圖示出機器人設(shè)備的功能框圖。

圖2A根據(jù)示例實施例示出了機器人臂和一堆箱子。

圖2B根據(jù)示例實施例示出了由安裝在機器人臂上的傳感器掃描來自圖2A的那堆箱子。

圖2C根據(jù)示例實施例示出了來自圖2A的機器人臂移動箱子。

圖3是根據(jù)示例實施例的方法的框圖。

圖4A根據(jù)示例實施例圖示了用機器人移動物體的不同軌跡。

圖4B根據(jù)示例實施例圖示了由來自圖4A的機器人拾起物體。

圖4C根據(jù)示例實施例圖示了用于測量來自圖4A的物體的傳感器。

圖4D根據(jù)示例實施例圖示了用于移動來自圖4A的物體的所選軌跡。

圖4E根據(jù)示例實施例圖示了通過來自圖4D的所選軌跡移動物體。

圖5根據(jù)示例實施例圖示了三角測量深度傳感器。

圖6A根據(jù)示例實施例圖示了具有力-扭矩傳感器的機器人操縱器。

圖6B根據(jù)示例實施例圖示了使用來自圖6A的力-扭矩傳感器來確定物體維度。

具體實施方式

本文描述了示例方法和系統(tǒng)。本文描述的任何示例實施例或特征不一定要被解釋為比其他實施例或特征更優(yōu)選或有利。本文描述的示例實施例不欲進行限定。容易理解,公開的系統(tǒng)和方法的某些方面可按許多種不同的配置來布置和組合,所有這些在這里都已設(shè)想到。

另外,附圖中示出的特定布置不應(yīng)當(dāng)被視為限制性的。應(yīng)當(dāng)理解,其他實施例可包括更多或更少的給定附圖中所示的每種元素。另外,一些圖示的元素可被組合或省略。此外,示例實施例可包括附圖中沒有圖示的元素。

示例實施例可幫助提供對用于軌跡規(guī)劃的物體度量的確定。例如,機器人操縱器(例如,機器人臂)可配備有末端執(zhí)行器(例如,吸取抓具)來拾起和移動諸如箱子之類的物體。在箱子拾取期間,關(guān)于被拾取的箱子的一些信息可能是未知的,直到箱子已經(jīng)被拾起和/或移動了一定量之后。例如,箱子重量或箱子深度可能只有在箱子在空中之后才可由一個或多個傳感器測量。在一些示例中,這些測量可影響機器人應(yīng)當(dāng)使用什么軌跡來運輸箱子。例如,箱子度量可影響機器人可在不掉落箱子的情況下運輸箱子的速度或者影響是否可使用特定路徑而不會引起碰撞。因此,對于不同的可能物體測量可確定多個可能的軌跡。在從傳感器數(shù)據(jù)確定了物體測量之后,可從可能的軌跡中選擇用于運輸物體的軌跡,并且該軌跡被機器人用于運輸物體。

多種不同類型和/或組合的傳感器可用于確定箱子度量以便確定使用哪個軌跡來運輸箱子。在一些示例中,可使用安裝在機器人臂上的傳感器和安裝在固定位置的其他傳感器的組合。被機器人拾起的物體可能被遮擋,使得該物體只有一部分是單個相機可見的。一個示例是在從貨盤或外觀面拾取箱子時,其中箱子維度的至少一些可能是未知的并且是個體相機不可見的。在這種情況下,來自臂上傳感器以及在環(huán)境內(nèi)策略性放置的臂外傳感器的數(shù)據(jù)可被組合并用于在物體被拾取時分析物體的維度。在另外的示例中,物體的一個或多個未知維度可在一個或多個傳感器的前方被移動來確定或細調(diào)物體測量。此外,物體的某些維度只用視覺數(shù)據(jù)可能是不確定的。因此,除了視覺相機以外或者取代視覺相機,傳感器中的一些或全部可以是深度傳感器。

在另外的示例中,傳感器之一可以是安裝在機器人臂上的具有低剖面的深度傳感器。在一些示例中,可能難以將傳統(tǒng)的深度傳感器以合理的配置放置在抓具上來確定物體的深度維度,尤其當(dāng)抓具非常接近物體時更是如此。因此,可使用包括激光束線和偏移相機的三角測量深度傳感器。這類傳感器可具有低剖面,使得其可在抓具已與物體接觸并且因此與物體非常接近之后確定物體深度。在一些示例中,來自其他類型的深度傳感器和/或視覺傳感器的數(shù)據(jù)也可與來自低剖面三角測量傳感器的數(shù)據(jù)相結(jié)合來更好地細調(diào)對箱子維度的估計。

在額外的示例中,安裝在機器人臂上的力-扭矩傳感器可用于幫助確定箱子屬性。力-扭矩傳感器可被定位在吸取抓具上方以便確定由被抓具握持的物體引起的力和/或扭矩?;诖藬?shù)據(jù),力-扭矩傳感器可用于確定拾起的箱子的參數(shù),例如質(zhì)量、重心、質(zhì)心、質(zhì)心有多靜態(tài)、和/或慣性矩陣。在額外的示例中,力-扭矩傳感器也可用于確定物體的一個或多個維度。具體地,通過利用力控制使物體圍繞著與鄰近表面接觸的物體的邊緣轉(zhuǎn)動,系統(tǒng)可在完全拾起箱子之前確定該維度的幅度。

在一些示例中,對于不同的可能物體測量可預(yù)規(guī)劃用于運輸物體的一個或多個軌跡。規(guī)劃系統(tǒng)可要求一定量的時間來在給定特定物體測量的情況下計算軌跡。因此,在一些示例中,從預(yù)規(guī)劃的軌跡中進行選擇以避免不得不讓機器人等待規(guī)劃系統(tǒng)確定要使用的軌跡,可能是有利的。在一個示例中,可以聯(lián)合規(guī)劃軌跡的最優(yōu)“樹”,這些軌跡具有共同的起始點,并且基于一個或多個物體屬性的不同可能測量而分支。然后,一旦在運行中獲得了測量,就可選擇順著該樹下去選擇特定軌跡的路徑。例如,第一軌跡可以是為輕箱子規(guī)劃的,第二軌跡可以是為中等重量箱子規(guī)劃的,并且第三軌跡可以是為重箱子規(guī)劃的。在另外的示例中,也可考慮額外的屬性。例如,可基于箱子維度(例如,大致方形的箱子與細長的箱子)進一步細調(diào)為輕箱子規(guī)劃的第一軌跡。

在額外的示例中,軌跡規(guī)劃的一些或全部可隨著確定物體測量而在運行中(例如,實時)完成。例如,在一個示例中,在第一時段期間可以規(guī)劃并使用保守軌跡,其允許了在可能測量的極端(例如,非常重的箱子或者非常長的箱子)物體的安全移動。隨著物體測量變得可用,軌跡可被修改成允許更快速的物體運輸(例如,更輕或更小箱子的)的更激進軌跡。在一些示例中,隨著確定更精確的測量,可在不同的時間點發(fā)生多個級別的細調(diào)。在另外的示例中,可使用預(yù)規(guī)劃軌跡和運行中調(diào)整的組合。例如,對于可能測量的不同范圍(例如,對于小箱子、中等大小箱子和大箱子)可確定預(yù)規(guī)劃軌跡。基于物體落入哪個范圍中可選擇預(yù)規(guī)劃軌跡之一,然后可基于確切的物體測量和/或基于其他物體屬性來進一步細調(diào)軌跡。

現(xiàn)在將詳細述及各種實施例,這些實施例的示例在附圖中圖示。在以下詳細描述中,闡述了許多具體細節(jié)以便提供對本公開和描述的實施例的透徹理解。然而,沒有這些具體細節(jié)也可以實現(xiàn)本公開。在其他情況中,沒有詳細描述公知的方法、過程、組件和電路,以免不必要地模糊實施例的各方面。

根據(jù)各種實施例,本文描述了用于箱子和/或其他物體的自動化裝載和/或卸載的方法和系統(tǒng),例如裝載到貯存貨柜中或者從車輛卸載。在一些示例實施例中,箱子或物體可被自動組織并放置到貨盤上。在示例內(nèi),使裝載/卸載卡車的過程和/或從物體創(chuàng)建貨盤的過程自動化以便更容易貯存和運輸可提供多個工業(yè)和商業(yè)優(yōu)點。

根據(jù)各種實施例,使裝載/卸載卡車的過程和/或創(chuàng)建貨盤的過程自動化可包括包含一個或多個機器人設(shè)備來移動物體或執(zhí)行其他功能。在一些實施例中,通過與帶輪基座、萬向基座(例如,可在任何方向上移動的基座)或者天花板、墻壁或地板上的軌道耦合,可以使機器人設(shè)備可移動。在一些實施例中,基座可以是提升基座。

在一些示例中,描述了包括一個或多個傳感器、一個或多個計算機和一個或多個機器人臂的系統(tǒng)。傳感器可掃描包含一個或多個物體的環(huán)境以便捕捉視覺數(shù)據(jù)和/或三維(3D)深度信息。來自掃描的數(shù)據(jù)隨后可被集成到更大區(qū)域的表示中以便提供數(shù)字環(huán)境重建。在額外的示例中,重建的環(huán)境隨后可用于識別要拾起的物體,確定對物體的拾取位置和/或為一個或多個機器人臂和/或移動基座規(guī)劃無碰撞軌跡。

當(dāng)在本文使用時,術(shù)語“箱子”將指可被放置到貨盤上或者裝載到卡車或貨柜上或從卡車或貨柜卸載的任何物體或物品。例如,除了矩形固體以外,“箱子”還可以指罐子、鼓形物、輪胎或者任何其他“簡單”形狀的幾何物品。因此,“裝載”和“卸載”各自可用于暗示另一者。例如,如果一示例描述了用于裝載卡車的方法,則要理解基本上相同的方法也可用于卸載卡車。當(dāng)在本文使用時,“貨盤裝運”(palletizing)指的是將箱子裝載到貨盤上并且以使得貨盤上的箱子可在貨盤上被貯存或運輸?shù)姆绞絹矶询B或布置箱子。此外,術(shù)語“貨盤裝運”和“貨盤拆卸”各自可用于暗示另一者。

當(dāng)然,這里的示例也可應(yīng)用到除了箱子以外的物體,以及應(yīng)用到各種大小和形狀的物體。

根據(jù)各種實施例,機器人操縱器可被安裝在萬向推車上(例如,具有允許推車在任何方向上移動的輪子的推車)。圖1A描繪了包含機器人操縱器的示范性萬向推車。在一些實施例中,可動推車112可包括安裝在推車112上的機器人臂102。機器人臂102可包含抓取組件104,用于抓取環(huán)境內(nèi)的物體。推車可包含一個或多個輪子114,輪子114可以是以兩個自由度工作的萬向輪。在另外的示例中,在萬向推車112上可包括卷繞式前傳送帶110。在一些示例中,卷繞式前傳送帶可允許機器人在從卡車貨柜或貨盤卸載箱子或者向卡車貨柜或貨盤裝載箱子時不是必須要將其抓具向左或右旋轉(zhuǎn)。

在其他示例中,機器人操縱器可被安裝在不同類型的可動裝置上或者可完全不被安裝在可動基座上。例如,機器人操縱器可被安裝在工廠設(shè)置內(nèi)的固定位置處。在其他示例實施例中,一個或多個機器人操縱器可被安裝在卡車或貨柜的軌道上。在這種示例中,機器人操縱器可用于裝載或卸載卡車或貨柜。

圖1B是根據(jù)示例實施例圖示出機器人設(shè)備100的功能框圖。機器人設(shè)備100可包括各種子系統(tǒng),例如機械系統(tǒng)120、傳感系統(tǒng)130、控制系統(tǒng)140以及電源150。機器人設(shè)備100可包括更多或更少的子系統(tǒng),并且每個子系統(tǒng)可包括多個元素。另外,機器人設(shè)備100的每個子系統(tǒng)和元素可被互連。從而,機器人設(shè)備100的描述的功能中的一個或多個可被分割成額外的功能組件或物理組件,或者組合成更少的功能組件或物理組件。在一些另外的示例中,可向圖1A和1B所示的示例添加額外的功能組件和/或物理組件。

機械系統(tǒng)120可包括上文聯(lián)系圖1A描述的組件,包括機器人臂102、抓具104、傳送帶110、(可動或萬向)推車112和一個或多個輪子114。機械系統(tǒng)120可額外地包括馬達122,馬達122可以是由電力供能的電動機,或者可由多種不同的能量源供能,例如基于氣體的燃料或者太陽能。此外,馬達122可被配置為從電源150接收電力。電源150可向機器人設(shè)備100的各種組件提供電力,并且可表示例如可再充電鋰離子或鉛酸電池。在示例實施例中,這種電池的一個或多個電池組可被配置為提供電力。其他電源材料和類型也是可能的。

傳感系統(tǒng)130可使用附著到機器人臂102的一個或多個傳感器,例如傳感器106和傳感器108,它們可以是隨著機器人臂102移動而感測關(guān)于環(huán)境的信息的2D傳感器和/或3D深度傳感器。傳感系統(tǒng)可確定關(guān)于環(huán)境的信息,該信息可被控制系統(tǒng)140(例如,運行運動規(guī)劃軟件的計算機)用來高效地拾取和移動箱子??刂葡到y(tǒng)140可位于設(shè)備上或者可與設(shè)備遠程通信。在另外的示例中,來自在移動基座上固定安裝的一個或多個2D或3D傳感器(例如前導(dǎo)航傳感器116和后導(dǎo)航傳感器118)和安裝在機器人臂上的一個或多個傳感器(例如傳感器106和傳感器108)的掃描可被集成來構(gòu)建環(huán)境的數(shù)字模型,包括卡車或其他貨柜的側(cè)面、地板、天花板和/或前壁。利用此信息,控制系統(tǒng)140可使得移動基座導(dǎo)航到某一位置中來卸載或裝載。

在額外的示例中,可從3D傳感器提取平面表面信息來對墻壁、地板和/或箱面建模。在對地板建模之后,將物體投影到地板平面上可使得能夠分割障礙物和/或諸如箱子之類的目標(biāo)物體。地板平面投影也可用于對貨柜或卡車的波形側(cè)建模,這些波形側(cè)可能不會被準(zhǔn)確建模為平面。在另外的示例中,側(cè)壁角度、地板平面顛簸和俯仰和/或與側(cè)壁的距離可用于將移動基座調(diào)遣到貨柜中而沒有碰撞。使用擴展的3D信息而不是單線掃描可幫助使得導(dǎo)航信息的提取魯棒。例如,側(cè)壁可具有被3D傳感器捕捉的垂直幅度。使用單線的深度信息的掃描系統(tǒng)如果垂直掃描則可能更緩慢,和/或不那么魯棒,因為它們獲取更少的信息。在額外的示例中,前平面建??纱_定在卡車卸載中到要拾取的下一組物體的距離。

在另外的示例中,機器人臂102可配備有抓具104,例如數(shù)字吸取柵格抓具。在這種實施例中,抓具可包括一個或多個吸入閥,這些吸入閥可由遠程傳感開啟或關(guān)閉,或者由單點距離測量和/或通過檢測是否實現(xiàn)吸取來開啟或關(guān)閉。在額外的示例中,數(shù)字吸取柵格抓具可包括鉸接式延伸。在一些實施例中,用流變液體或粉末來促進吸取抓具的可能性可使能在具有高曲率的物體上的額外的抓取。

在一些實施例中,抓具可有可能跨越若干個箱子或物體并且對于覆蓋的物體中的一些或全部開啟吸取。在一些實施例中,吸取或粘附設(shè)備可以是“數(shù)字”柵格,使得機器人設(shè)備可開啟將會適配感測到要抓取的箱子的任何數(shù)目的吸取設(shè)備。在一些實現(xiàn)方式中,系統(tǒng)可注意到箱子中的縫隙(相鄰箱子之間的分隔),使得吸取器可在該縫隙的兩側(cè)被激活來一次拾起兩個箱子,從而使吞吐量加倍。在一些實施例中,吸取器可在一定量的時間之后感測其是否能夠成功抓住一表面,在此之后它們可自動關(guān)斷。在另外的示例中,吸取器的節(jié)段可折向下來抓住箱子的頂部。例如,抓具最初可以完全展開的形式開始,然后符合被抓取的表面。

在另外的示例中,機器人臂可實現(xiàn)擺動運動來改善吸取抓取。在另外的示例中,機器人臂可以使箱子從一側(cè)擺動到另一側(cè)來幫助將箱子與其周圍分割。在其他實施例中,臂可在拾起箱子時擺動以避免沖撞其他物體。在這種實施例中,當(dāng)嘗試粘附到物體以便利用吸取拾起它時,機器人臂可采用擺動運動來使得與物體有牢固接觸。在另外的示例中,機器人臂可在機器人臂正拾起物體時擺動物體以使得箱子可輕柔地破除與其他物品的摩擦或重疊接觸。這可幫助避免太直接或太迅速地向上拔起物體使得其他物品被拋入空中的情形。

根據(jù)各種實施例,紙箱可具有凹的、凸的或其他形式帶皺的表面,這使得吸取設(shè)備難以粘附。從而,在吸取設(shè)備進行吸取接觸時擺動吸取設(shè)備可使得能夠在紙箱和其他非平面物體上具有更可靠的抓取。在另外的示例中,當(dāng)最初抓取箱子時,幾個中心吸取設(shè)備可被開啟并且臂可隨著其開始拉出箱子而來回擺動。這可破除與其他箱子的表面粘附并且?guī)椭_始拉出箱子。一旦至少部分拉出了箱子,隨后就可將箱子與其他箱子更容易地分割。在一些實施例中,在雜亂環(huán)境中拾起物體的同時進行擺動可將其他物體從拾起的物體移除,從而防止不合需要地拾起周圍物體。

根據(jù)各種實施例,物品的分割對于成功的抓取可能是必要的。在一些實施例中,一光滑表面片可屬于兩個單獨的物體。在這種情況中,操縱器與物體的交互可用于擾亂該場景以更好地將物體與彼此分割。對于運動分離,在傳送機上的物體、在滑動裝置上的物體、在搬運物中移動的物體和/或在搬運物內(nèi)活躍推擠的物體的自然或受迫運動可被光流、視差或時間延遲視圖所跟蹤來計算立體深度以便增強物體分割。

在其他示例中,被傳感系統(tǒng)使用的傳感器中的一個或多個可以是注冊到深度傳感設(shè)備的RGBaD(RGB+主動深度)彩色或單色相機,該深度傳感設(shè)備使用主動視覺技術(shù),例如將圖案投影到場景中,來使得能夠在一個或多個相機和已知的偏移圖案投影儀之間進行深度三角測量。這種類型的傳感器數(shù)據(jù)可幫助使能魯棒的分割。根據(jù)各種實施例,諸如條碼、紋理一致性、顏色、3D表面屬性或表面上的印刷文本之類的線索也可用于識別物體和/或發(fā)現(xiàn)其姿勢以便知道在何處和/或如何放置該物體(例如,將該物體裝入固定接收容器中)。在一些實施例中,也可采用陰影或紋理差別來分割物體。

機器人設(shè)備100的許多或所有功能可受控制系統(tǒng)140控制??刂葡到y(tǒng)140可包括至少一個處理器142(其可包括至少一個微處理器),處理器142執(zhí)行存儲在例如存儲器146這樣的非暫態(tài)計算機可讀介質(zhì)中的指令144。控制系統(tǒng)140還可表示可用來以分布方式控制機器人設(shè)備100的個體組件或子系統(tǒng)的多個計算設(shè)備。

在一些實施例中,存儲器146可包含指令144(例如,程序邏輯),指令144可被處理器142執(zhí)行來執(zhí)行機器人設(shè)備100的各種功能,包括以上聯(lián)系圖1A-1B描述的那些。存儲器146也可包含額外的指令,包括向機械系統(tǒng)120、傳感器系統(tǒng)130和/或控制系統(tǒng)140中的一者或多者發(fā)送數(shù)據(jù)、從其接收數(shù)據(jù)、與其交互和/或?qū)ζ溥M行控制的指令。

根據(jù)各種實施例,描述了一種感知引導(dǎo)的機器人。例如,機器人設(shè)備可利用感知與規(guī)劃的組合來引導(dǎo)機器人臂拾起箱子并將其放置到其需要去到的地方。圖2A根據(jù)示例實施例圖示了來自圖1A的機器人設(shè)備的一部分與一堆箱子。如圖所示,機器人設(shè)備可包括如上所述的具有抓取組件104的機器人臂102、傳感器106和108以及傳送機110。在一些示例中,機器人設(shè)備可被安裝在如聯(lián)系圖1A描述的萬向推車上,可被安裝在不同類型的可動裝置上,可被安裝在鐵軌或軌道上,或者可以是固定的。機器人設(shè)備可被控制來從包含箱子的形狀和大小的異種混合的一堆箱子220中拾取箱子。

在示例內(nèi),包括2D和/或3D的物體的模型的虛擬環(huán)境可被確定并用于開發(fā)用于拾起箱子的規(guī)劃或策略。在一些示例中,機器人可使用一個或多個傳感器來掃描包含物體的環(huán)境,如圖2B中所示。隨著機器人臂102移動,臂上的傳感器106可捕捉關(guān)于該堆箱子220的傳感器數(shù)據(jù)以便確定個體箱子的形狀和/或位置。在額外的示例中,通過集成來自個體(例如3D)掃描的信息可構(gòu)建3D環(huán)境的更大圖片。執(zhí)行這些掃描的傳感器可被放置在固定位置、放置在機器人臂上和/或放置在其他位置。根據(jù)各種實施例,可根據(jù)多種不同技術(shù)中的任何一種或全部來構(gòu)造和使用掃描。

在一些示例中,可通過移動其上安裝了一個或多個3D傳感器的機器人臂來進行掃描。來自臂位置的反饋可提供關(guān)于傳感器被定位在何處的姿勢信息并且可用于幫助集成。替換地,或者額外地,可利用一個或多個2D傳感器來進行掃描,例如通過利用運動并且跟蹤環(huán)境中的關(guān)鍵點。在另外的示例中,掃描可從具有覆蓋給定領(lǐng)域的視野(fields of view,F(xiàn)OV)的固定安裝相機進行。在額外的示例中,可從視覺上對準(zhǔn)掃描以幫助精細的姿勢估計,可能給出更好的集成結(jié)果。

在另外的示例中,可利用3D體積或表面模型來構(gòu)建虛擬環(huán)境以集成信息(例如,來自不同傳感器的信息)。這可允許系統(tǒng)在更大的環(huán)境內(nèi)操作,例如在一個傳感器可能不足以覆蓋大環(huán)境的情況下。這種技術(shù)也可提高捕捉的細節(jié)水平,這可幫助機器人設(shè)備執(zhí)行各種任務(wù)。具體地,與僅僅來自單個掃描相比集成信息可產(chǎn)生更精細的細節(jié)(例如,通過降低噪聲水平)。這可使得更好的物體檢測、表面拾取或其他應(yīng)用成為可能。

在另外的示例中,通過感測環(huán)境并且將該信息提取到簡單數(shù)學(xué)3D幾何形態(tài)(例如,平面、圓柱、圓錐、半球等等)的簡化幾何模型中可執(zhí)行廣角環(huán)境重建。在一些情況中,這種技術(shù)可使得運動規(guī)劃更容易和/或可使得對模型的違反(例如,碰撞)更容易檢測。替換地,或者額外地,這種技術(shù)可允許參數(shù)化的描述來擴展環(huán)境。例如,地面可被視為在遮擋它的物體背后延伸的平面。

在額外的示例中,可以3D提取環(huán)境中的平面或其他數(shù)學(xué)表面。這些已知的“理想”表面檢測可被組合成環(huán)境的更精確模型。例如,平面可用于確定墻壁(或其數(shù)學(xué)描述)和其他障礙物的完整幅度以避免碰撞和檢測感興趣的物體在何處。另外,物體的數(shù)學(xué)表示可用于尋找異常,例如當(dāng)人進入環(huán)境中時。這種事件可違反理想模型,這可使得對其的檢測更容易。

在其他示例中,諸如箱子之類的某些物體可具有簡單的平面形態(tài)。例如,金屬罐可具有圓柱體的幾何形態(tài)并且輪胎可具有圓環(huán)面的幾何形態(tài)。示例系統(tǒng)可利用某些物體的這個特點來對它們建模和/或確定如何對這些物體進行運動規(guī)劃。例如,某些形狀的已知模板可用于細調(diào)檢測到的看起來匹配特定形狀的環(huán)境內(nèi)的物體的特征。

在一些示例中,可至少部分經(jīng)由一個或多個外觀面來表示2D和3D信息。外觀面(facade)可被定義為包含一組物體的接近平面的構(gòu)造,被表示為深度地圖(例如,作為第三維的距離的2D地圖)。外觀面的示例可包括卡車中的箱子壁、包含箱子或其他物體的貨盤堆疊的頂部或者一箱雜亂物體的頂部。

在另外的示例中,可從箱子構(gòu)造外觀面,以例如規(guī)劃應(yīng)當(dāng)以何種順序拾起箱子。例如,如圖2C中所示,箱子222可被機器人設(shè)備識別為下一個要拾起的箱子??稍诨谟梢粋€或多個傳感器(例如傳感器106和108)收集的傳感器數(shù)據(jù)構(gòu)造的表示箱子220的堆疊的前壁的外觀面內(nèi)識別箱子222??刂葡到y(tǒng)隨后可確定箱子222是下一個要拾取的箱子,其中可能基于其形狀和大小、其在箱子220的堆疊的頂部的位置和/或基于用于箱子的目標(biāo)貨柜或位置的特性來確定。隨后可控制機器人臂102利用抓具104來拾起箱子222并將箱子222放置到傳送帶110上(例如,將箱子222運輸?shù)劫A存區(qū)域中)。

在額外的示例中,外觀面可被表示為3D表面信息的正交投影。此表示可允許解析外觀面來為特定應(yīng)用確定令人感興趣的區(qū)域。例如,在卡車卸載時,可基于外觀面表示來確定要拾取的下一個箱子的左上角。在其他示例中,可確定集成的3D環(huán)境的正交投影以給出用于執(zhí)行應(yīng)用相關(guān)任務(wù)的寬FOV、易解析表示。一個這種任務(wù)可以是找到箱子的一個或多個角落(例如,左上)來拾取。另一個這種任務(wù)可涉及找到良好的表面(例如,相對平坦且較大)來將物體拾取出容器。

在另外的示例中,一堆箱子的3D模型可被構(gòu)造并用作模型來幫助規(guī)劃和跟蹤向堆疊或貨盤裝載箱子/從堆疊或貨盤卸載箱子的進度。外觀面的任何一個實際相機視圖都可遭受視點遮擋和透視變形。因此,經(jīng)由機器人臂移動的多個RGBD視圖和/或來自推車基座或固定位置的不同視圖可組合來創(chuàng)建要拾取的箱子的單個外觀面。

在其他示例中,3D模型可用于碰撞避免。在示例內(nèi),規(guī)劃無碰撞軌跡可涉及確定環(huán)境中的物體和表面的3D位置。軌跡優(yōu)化器可利用由環(huán)境重建提供的3D信息來優(yōu)化在障礙物存在的情況下的路徑。在另外的示例中,優(yōu)化器可實時工作并且可接受許多種類的約束。作為這種約束的示例,優(yōu)化器可嘗試使末端執(zhí)行器在整個軌跡中始終保持水平。

在額外的示例中,環(huán)境可被捕捉為3D點的網(wǎng)格或集合。機器人臂可被表示為平面片段的凸包以便進行快速碰撞檢查。環(huán)境的經(jīng)常性或頻繁的更新可允許機器人臂迅速地響應(yīng)變化。在另外的示例中,優(yōu)化器可在其整個路徑中到處執(zhí)行頻繁的連續(xù)碰撞檢查。優(yōu)化器可接受成本形式的任意約束,例如與物體保持一定距離或者從給定角度接近目標(biāo)位置。此外,優(yōu)化器可通過在關(guān)節(jié)空間中工作、保持跟蹤纏繞和從多個相反的動力學(xué)解決方案之中選擇目標(biāo)位置來避免機器人故障狀況。用于運動規(guī)劃的一個策略可涉及向前展望若干次移動來了解選擇的目標(biāo)關(guān)節(jié)位置對于下一次移動是否將會是可接受的。

在一些實施例中,路徑約束,例如對于機器人臂、相機、線纜和/或其他組件的碰撞避免,可被放入基于約束的規(guī)劃解決器中并被求解來得出為了感知而移動臂的最佳路徑。此外,在一些實施例中,解決器可確定用于拾起、移動和放置物體的最佳路徑。

根據(jù)各種實施例,3D和/或視覺傳感器可被校準(zhǔn)來確定其相對于工作空間的姿勢。在固定傳感器的情況下,校準(zhǔn)可確定其在工作空間中的固定姿勢。在臂上的傳感器的情況下,校準(zhǔn)可確定傳感器從其附著到的臂鏈節(jié)的偏移姿勢。

在示例內(nèi),校準(zhǔn)技術(shù)可允許對工作空間中的任意數(shù)目的傳感器的校準(zhǔn)。校準(zhǔn)可涉及確定多種參數(shù)和系數(shù)中的一些或全部。例如,校準(zhǔn)可解出一個或多個固有參數(shù),例如焦距和圖像中心。作為另一示例,校準(zhǔn)可確定一個或多個畸變系數(shù),例如徑向和切向畸變的模型。作為另外一個示例,校準(zhǔn)可解出一個或多個外部參數(shù),其中物體在相對于圖案或其他傳感器的場景中,這些傳感器識別了場景中的同一圖案。

在一些示例中,校準(zhǔn)可至少部分利用校準(zhǔn)圖案來執(zhí)行,校準(zhǔn)圖案可以是2D或3D的特征的已知集合。例如,可以使用點的已知圖案,其中每個點和其他點之間的距離是已知的。校準(zhǔn)可至少部分通過收集物體的多個不同視圖來執(zhí)行。在另外的示例中,在不同的位置捕捉校準(zhǔn)圖案的多個視圖可允許(1)對相機的一個或多個系數(shù)的校準(zhǔn)和/或(2)關(guān)于相機相對于坐標(biāo)系統(tǒng)在何處的知識,該坐標(biāo)系統(tǒng)是由校準(zhǔn)圖案固定之處確立的。在特定實施例中,場景中的相機可識別機器人臂上的校準(zhǔn)圖案,同時臂上的相機識別場景中的校準(zhǔn)圖案。

在額外的示例中,校準(zhǔn)可涉及固定在場景中的相機。在此情況下,校準(zhǔn)圖案可被放置在機器人臂上。機器人臂可被配置為隨著機器人臂上的校準(zhǔn)圖案的多個視圖被收集而移動穿過場景。這可幫助校準(zhǔn)相機和/或?qū)τ趯⑾鄼C的坐標(biāo)系統(tǒng)與機器人的坐標(biāo)系統(tǒng)聯(lián)系起來是有用的。另外,每個設(shè)備相對于其他設(shè)備的關(guān)系可由每個設(shè)備隨著機器人臂移動而確定。

在某些示例中,校準(zhǔn)可涉及位于機器人臂上的相機。校準(zhǔn)圖案可被安裝在墻壁或桌子上。然后,相機可被四處移動,從不同的機器人或機器人臂位置收集校準(zhǔn)圖案的多個視圖。當(dāng)收集不同的3D或2D視圖時(例如,2、20、200),這些視圖可用于解出校準(zhǔn)關(guān)系。在校準(zhǔn)之后,當(dāng)臂上的相機移動時,系統(tǒng)可確定其相對于基于場景中的校準(zhǔn)圖案的位置設(shè)置的坐標(biāo)系統(tǒng)在何處。在特定實施例中,校準(zhǔn)圖案和相機都可以是可動的。例如,校準(zhǔn)圖案可位于傳送帶上,機器人臂可被配置為在該傳送帶上放置箱子。在校準(zhǔn)之后,系統(tǒng)可確定相機相對于傳送帶上的該地點在何處。

在另外的示例中,為了3D傳感器校準(zhǔn)的魯棒估計,可在兩階段過程中執(zhí)行非線性優(yōu)化。在一個階段中,可從目標(biāo)和傳感器的相對姿勢偏移得出初始化。在另一階段中,給定初始化,批束調(diào)整可用于找到相機與目標(biāo)點一起的最優(yōu)姿勢。校準(zhǔn)可被擴展到對諸如關(guān)節(jié)長度和關(guān)節(jié)角度偏移之類的機器人參數(shù)的估計。

在其他示例中,相機在校準(zhǔn)圖案上的或者校準(zhǔn)圖案在相機上的已知的、精確的機器人運動可用于改善校準(zhǔn)結(jié)果。例如,關(guān)于相機確切地如何移動的信息可用于獲得更準(zhǔn)確的相機校準(zhǔn)。也就是說,如果相機被向右移動50mm,則可檢測從校準(zhǔn)物體的相應(yīng)(透視投影)移動量。此信息可用于聯(lián)合或單獨優(yōu)化校準(zhǔn)和跟蹤參數(shù)。

在額外的示例中,機器人可著眼于其正在進行的校準(zhǔn)并且以使獲得更好校準(zhǔn)的信息最大化的方式來移動。例如,其可檢測到一些視圖區(qū)域尚未被看到并且去到這些視圖。

在另外的示例中,提出了用于大體上從雜亂的收集區(qū)域到限定的容器的異種分類物品的實際操縱的系統(tǒng)。在一些實施例中,包含物品的拾取位置可能對于精確物體取向(一個或多個取向)不敏感并且物品可被混合在一起。在額外的示例中,物品的放置位置可能對物體取向敏感或不敏感。在一些示例中,拾取和放置區(qū)域可被定義為對于拾取或放置物體可接受的3D區(qū)域,帶有一些容差。拾取和放置區(qū)域可能是非常雜亂的,具有相似的和/或全異的物體。在其他實施例中,物品可來自固定裝置或者被放入固定裝置中,固定裝置例如是將分類的物品保持在特定取向的金屬或塑料搭扣。

在額外的示例中,拾取和放置位置的環(huán)境建??捎糜谥悄茏ト∥恢煤瓦\動,以及事件報告(例如,當(dāng)放置區(qū)域滿了或者拾取區(qū)域空了時)。在一些示例中,可計算物體包圍盒并且可找出物體的區(qū)別特征(例如紋理、顏色、條碼或OCR)。在一些實施例中,通過對照由物體類型或物體ID索引的位置指派的數(shù)據(jù)庫進行匹配,可將物體分類到指派目的地位置中。例如,物體的位置可通過讀取條碼、考慮物體的大小和/或通過識別物體的特定種類來得出。

在一些示例中,可以確定機器人設(shè)備的規(guī)劃以便實現(xiàn)物體的目標(biāo)位置內(nèi)物體的特定配置。例如,裝載/卸載或構(gòu)造/解構(gòu)貨盤的目標(biāo)可以是實現(xiàn):1)致密堆積,其中箱子之間的氣隙最小化,和/或2)不容易倒塌的穩(wěn)定堆積。在一些實施例中,穩(wěn)定性可要求一般來說重的物體在底部,并且輕的物體在頂部。在其他示例中,可創(chuàng)建貨盤以避免非交織列堆疊、列傾斜或者壞堆疊的其他特性。

在另外的示例中,可以裝載貨盤或卡車/貨柜以使得后續(xù)卸載過程中人類操作者的工作達到最低限度。例如,在一些實施例中,可以按后進先出順序來放置物品以使得在開包時最先需要的物品在頂部,第二需要的物品在下一層,等等依此類推。在其他示例中,貨盤的裝載可獨立于物品如何朝著包裝單元流動。從而,根據(jù)一些實施例,系統(tǒng)可處理按隨機順序或者按預(yù)先已知的順序發(fā)送的包裹。此外,在一些實施例中,系統(tǒng)可在運行中適應(yīng)于物品的流動的變化。在另外的示例中,通過將一個或多個箱子保持在臨時貯存區(qū)中可記錄并緩沖這些箱子,其中在該臨時貯存區(qū)中這些箱子的順序可沿途被改變。

根據(jù)各種實施例,2D仿真器和/或3D仿真器可被利用于卡車或貨柜裝載/卸載或用于貨盤裝載/卸載。在一些示例中,一堆箱子的狀態(tài)可在物理世界中被捕捉并被輸入到仿真器中。在一些實施例中,從一個箱子到所有箱子的可變大小箱子隊列可被仿真器用于找到下一個要拾取的箱子。例如,2個箱子或4個箱子或10個箱子的隊列可被仿真器考慮。

在另外的示例中,仿真器可搜索隊列中的箱子以通過試探算法和/或通過強力或多分辨率搜索來找到最佳箱子放置。在一些實施例中,系統(tǒng)可以以在先前更粗略水平中找到的最佳地點周圍的越來越精細的箱子放置來遞增。在一些實施例中,一旦確定了特定的下一個箱子的放置,就可使用物理規(guī)劃器來進行運動規(guī)劃以便將該箱子高效地移動到所確定的位置。在另外的示例中,可針對堆疊的質(zhì)量(例如,密度、穩(wěn)定性和/或順序放置)連續(xù)地監(jiān)視物理和仿真堆疊。在一些示例中,可重復(fù)該過程直到已放置了所有箱子或者目標(biāo)貨柜不再能夠裝入另一箱子為止。

圖3圖示了一流程圖,其根據(jù)示例實施例示出了可允許為機器人設(shè)備確定軌跡來移動物體的方法300。方法300可利用上述的任何機器人設(shè)備執(zhí)行,例如包括安裝在具有一個或多個傳感器的可動推車上的機器人臂的設(shè)備,如聯(lián)系圖1A-1B所圖示和描述的。在其他示例中,方法300可利用安裝在不同類型的可動裝置上、安裝在鐵軌或軌道上或者安裝在固定位置的機器人操縱器來執(zhí)行。在另外的示例中,方法300的一部分或全部可由位于機器人設(shè)備上和/或與機器人設(shè)備遠程通信的一個或多個控制系統(tǒng)來執(zhí)行。此外,雖然可描述具有單個機器人臂的示例,但各種替換實施例可包括任何數(shù)目的機器人臂,或者可包括與至少一個機器人操縱器集成的其他自動化系統(tǒng)。

此外,注意到聯(lián)系本文描述的流程圖描述的功能可實現(xiàn)為特殊功能和/或配置的一般功能硬件模塊,被處理器執(zhí)行來實現(xiàn)聯(lián)系圖3所示的流程圖描述的特定邏輯功能、判定和/或步驟的程序代碼的一些部分。當(dāng)被使用時,程序代碼可被存儲在任何類型的計算機可讀介質(zhì)上,例如包括盤或硬盤驅(qū)動器的存儲設(shè)備。

此外,圖3所示的流程圖的每個方框可表示被布線來執(zhí)行該過程中的特定邏輯功能的電路。除非具體指出,否則圖3所示的流程圖中的功能可不按示出或論述的順序執(zhí)行,包括基本上同時執(zhí)行分開描述的功能,或者在一些示例中甚至按相反順序執(zhí)行,這取決于所涉及的功能,只要維持描述的方法的整體功能即可。

如圖3的方框302所示,方法300最初可涉及確定多個可能的軌跡來用于以機器人操縱器的末端執(zhí)行器移動物體。更具體而言,可基于不同的可能物體測量來確定可能軌跡。在一些示例中,可對單個物體屬性的不同可能值或值的范圍確定不同的軌跡。例如,可影響軌跡的物體屬性包括物體維度、大小、形狀、質(zhì)量、重心和/或慣性矩陣。在另外的示例中,也可以為兩個或更多個不同屬性的測量的不同可能組合確定軌跡。

根據(jù)各種實施例,可基于不同的物體測量確定軌跡以便實現(xiàn)不同的可能目標(biāo)和/或最大化或最小化機器人使用的軌跡某些方面。例如,可確定軌跡來最小化將物體移動到特定位置所需要的時間量,同時確保機器人的抓具不會掉落物體。在另外的示例中,另一目標(biāo)可以是確定軌跡來在不引起涉及物體的碰撞的情況下移動該物體。在其他示例中,可基于不同的物體測量來確定機器人的末端執(zhí)行器的路徑、相應(yīng)的速度曲線和/或相應(yīng)的加速度曲線。在另外的示例中,可通過利用不同的可能物體測量作為輸入求解約束優(yōu)化問題來確定軌跡(例如,以便最小化運輸物體所需要的時間)。

在額外的示例中,可基于不同的物體屬性來確定用于運輸物體的軌跡的端點。例如,可基于物體的大小和/或維度來確定物體的放下位置(例如,以確保物體可裝入目標(biāo)放下位置內(nèi))。在另外的示例中,可額外或替換使用諸如形狀或質(zhì)量之類的其他物體屬性來確定放下位置。

在一些示例實施例中,可在拾起物體之前預(yù)先確定軌跡中的一個或多個。例如,可在拾起物體之前數(shù)分鐘或數(shù)秒鐘確定用于不同的可能物體測量的軌跡以避免由額外的運行中軌跡規(guī)劃引起的延遲。在一些示例中,對于特定屬性的物體測量的不同可能范圍(例如,輕箱子或重箱子)可確定不同的軌跡。在另外的示例中,對于兩個或更多個不同屬性的每一者的物體測量的不同可能范圍(例如,重的小箱子或輕的大箱子)可確定不同軌跡。在這種示例中,可確定可能軌跡的“樹”,其中樹的每一級對應(yīng)于特定物體屬性的不同可能值。因此,樹的最低一級可包含用于兩個或更多個不同物體屬性的值的每個可能組合的軌跡。

在額外的示例中,可基于用于選擇軌跡的傳感器數(shù)據(jù)何時將可能可用來確定可能軌跡的共同起始點。起始點可以是空間中的點(例如,持有物體的機器人的抓具的空間中的點)和/或特定的時間點(例如,在拾起物體的5秒后)。通過規(guī)劃不同可能軌跡從共同的起始點開始,機器人可在接收到了用于選擇軌跡的傳感器數(shù)據(jù)的時間點或者該時間點附近開始使用所選軌跡。

圖4A-4E共同圖示了根據(jù)示例實施例為機器人選擇軌跡來移動物體。圖4A圖示了用于移動物體的不同可能軌跡。更具體而言,機器人臂402可具有末端執(zhí)行器404,例如用于拾起和移動物體的抓具。機器人臂402可被指令(例如,由控制系統(tǒng)指令)從包含多個堆疊的箱子的外觀面406拾起箱子408。在一些示例中,箱子408的一個或多個測量在箱子408被機器人臂402拾起之前可能不是已知的。例如,如圖4A中所示,箱子408的深度可能是未知的并且在箱子408被堆疊在外觀面406內(nèi)期間可能是很難或者不可能確定的(例如,如果其他箱子或物體對于傳感器遮擋了箱子408的話)。

在一些示例中,可能可以預(yù)測兩個或更多個很可能的測量或測量的范圍。例如,在一個示例中,箱子408可能是大致立方體形狀的或者其可以是矩形的。箱子410例示了箱子408的一個可能深度,并且箱子414例示了箱子408的另一個可能深度。在另外的示例中,可使用箱子深度的多于兩個不同可能測量。在其他示例中,可額外地或替換地使用諸如質(zhì)量或重心之類的額外的未知屬性。

可基于第一可能箱子深度410確定用于移動箱子408的第一軌跡412??苫诘诙赡芟渥由疃?14確定用于移動箱子408的第二軌跡416。在一些示例中,軌跡412和416可被確定為在不引起機器人臂402的末端執(zhí)行器404掉落箱子408的情況下移動箱子408。在其他示例中,可基于預(yù)測的箱子大小確定不同的軌跡以避免碰撞。例如,與箱子形狀410相比,可能必須將箱子形狀414在空中提升得更高,以避免撞倒或以其他方式碰撞外觀面406內(nèi)的其他箱子。

在一些示例中,可以為軌跡412和416確定末端執(zhí)行器404和/或箱子408的通過空間的路徑(例如,具有6個自由度)。在其他示例中,也可確定與路徑相對應(yīng)的速度和/或加速度曲線。例如,與箱子形狀414相比,可能可以將箱子形狀410移動得更快,而不會在移動期間引起末端執(zhí)行器404掉落箱子。

在另外的示例中,在機器人臂402拾起了箱子408之后可確定可能軌跡中的一些或全部。例如,包括路徑規(guī)劃組件的控制系統(tǒng)可用于隨著關(guān)于箱子屬性的信息基于接收到的傳感器數(shù)據(jù)變得可用而在運行中確定和/或修改軌跡。

在一個示例中,在拾起箱子之后的初始時段期間可使用第一保守軌跡。保守軌跡對于任何預(yù)測的或者可能的箱子測量可能都是使用起來安全的(例如,避免碰撞或者掉落箱子)。例如,軌跡416可以是對于箱子形狀414和箱子形狀410都可行的保守軌跡。在一些示例中,隨后可接收到傳感器數(shù)據(jù),指示出可使用更激進的軌跡(例如,更小的箱子可被移動得更快)。例如,軌跡412可以是在接收到指示箱子大小的傳感器數(shù)據(jù)之后在以后某時間點確定的更激進軌跡。在另外的示例中,可隨著接收到更多傳感器數(shù)據(jù)在多個時間點確定和/或細調(diào)軌跡。

返回參考圖3,方法300還可涉及使得機器人操縱器用末端執(zhí)行器拾起物體,如方框304所示。在一些示例中,末端執(zhí)行器可包括抓具,例如吸取抓具,其附著到物體并且允許機器人操縱器(例如,機器人臂)移動物體經(jīng)過軌跡。在另外的示例中,也可使用能夠移動物體的不同類型的抓具或末端執(zhí)行器。

圖4B根據(jù)示例實施例圖示了由來自圖4A的機器人拾起物體。更具體而言,機器人臂402可被控制為將其吸取抓具404定位在箱子408上方以便將箱子408從箱子的外觀面406舉起。如這里所示,在一些示例中,軌跡可能需要被移動一定的量以允許深度傳感器收集傳感器數(shù)據(jù)來確定物體的一個或多個維度。例如,箱子408可能需要被舉起得足夠高以使得其垂直深度不會被箱子的外觀面406內(nèi)的其他箱子遮擋。

返回參考圖3,方法300還可涉及從一個或多個傳感器接收指示出物體的一個或多個測量的傳感器數(shù)據(jù),如方框306所示。更具體而言,在使得機器人操縱器拾起物體之后(例如,利用吸取抓具拾起),可從一個或多個傳感器接收數(shù)據(jù),這些傳感器可包括不同類型的傳感器的組合,例如視覺傳感器、深度傳感器、真空傳感器和/或力-扭矩傳感器。在另外的示例中,可在拾起之后的物體移動的初始“系統(tǒng)識別”階段期間接收傳感器數(shù)據(jù)。在一些示例中,在系統(tǒng)識別階段期間可以促進傳感器數(shù)據(jù)收集的方式來定位或調(diào)遣物體。在其他示例中,軌跡可以簡單地被朝著放下位置移動經(jīng)過規(guī)劃路徑的初始片段,同時也接收傳感器數(shù)據(jù)。

在一些示例中,一個或多個深度或視覺傳感器可被安裝或以其他方式定位在機器人臂上。隨著機器人臂移動來抓取并拾起物體,(一個或多個)臂上傳感器可收集傳感器數(shù)據(jù)以便估計物體的維度、大小和/或形狀。在一些示例中,僅利用臂上傳感器可能無法確定物體的一個或多個維度。例如,機器人的一部分或者環(huán)境內(nèi)的其他物體或事物可能對于臂上傳感器遮擋住了物體的一側(cè)或多側(cè)或者一面或多面。因此,在一些示例中,將來自一個或多個臂上傳感器的傳感器數(shù)據(jù)與來自定位在環(huán)境內(nèi)的一個或多個臂外視覺或深度傳感器的傳感器數(shù)據(jù)相組合可能是有利的。

圖4C根據(jù)示例實施例圖示了用于測量來自圖4A的物體的傳感器。更具體而言,機器人臂402可配備有傳感器418,傳感器418可以是深度傳感器或視覺傳感器。此外,傳感器420和422可以是安裝或定位在環(huán)境內(nèi)的點的深度或視覺傳感器。在一些示例中,傳感器420和422的位置可被選擇為接收指示出臂上傳感器418可能檢測不到的諸如箱子408之類的物體的一個或多個維度的傳感器數(shù)據(jù)。更多或更少臂上和/或臂外傳感器的其他組合,包括不同類型的傳感器,也是可能的。

在另外的示例中,機器人臂402可被控制為在初始系統(tǒng)識別階段期間在諸如傳感器420或422之類的一個或多個傳感器前方移動箱子408。在此階段期間,可首先識別箱子408的一個或多個未知維度。隨后可確定機器人402用來移動箱子408的軌跡或路徑以使得箱子408的未知維度被導(dǎo)向成使得它們可被一個或多個臂外和/或臂上傳感器檢測到。在另外的示例中,系統(tǒng)也可確定關(guān)于何時將接收到允許估計未知箱子維度的傳感器數(shù)據(jù)的估計。在一些示例中,這個時間或者這個時間的機器人402的預(yù)期位置可被用作確定機器人402移動箱子408的軌跡的起始點。

在額外的示例中,三角測量深度傳感器可被安裝在機器人臂上用于感測接近的物體,例如被機器人臂的抓具抓取的物體。三角測量深度傳感器可包括激光束投影儀和相對于該激光束投影儀具有預(yù)定偏移的相機。激光束投影儀和相機的位置隨后可用于對物體上相機檢測到激光的點的位置進行三角測量。在另外的示例中,三角測量深度傳感器可具有低剖面以避免在檢測接近物體的同時被機器人臂或安裝在機器人臂上的其他組件遮擋。

圖5根據(jù)示例實施例示出了三角測量深度傳感器。更具體而言,激光束投影儀508可被安裝在機器人臂502上的某一點,該點允許了被抓具504抓取的箱子506的一個或多個維度上的深度檢測。此外,偏移相機512可被安裝在機器人臂502上,相對于激光束投影儀508具有已知的偏移。相機512可被配置為檢測由激光束投影儀508投影到箱子506上的激光束510。激光束投影儀508可被控制為將激光510投影到箱子506上的不同點上,并且箱子506上相機512不再能夠檢測到激光束510的點可被確定。通過利用激光束投影儀508和相機512的位置對不再能夠檢測到激光束510的點進行三角測量,可以確定對箱子506的邊緣和箱子506的相應(yīng)深度的估計。在另外的示例中,三角測量深度傳感器也可與一個或多個其他臂上傳感器和/或一個或多個臂外傳感器結(jié)合使用。

在額外的示例中,機器人可配備有力-扭矩傳感器來輔助確定物體的測量。更具體而言,力-扭矩傳感器可被定位在機器人臂上抓具上方以便檢測由已被抓具拾起的物體引起的力和/或扭矩。為了軌跡規(guī)劃,力-扭矩傳感器可測量物體的多種不同屬性,可能包括質(zhì)量、重心、質(zhì)心、質(zhì)心有多靜態(tài)、和/或慣性矩陣。在另外的示例中,力-扭矩傳感器也可用于測量一個或多個維度上物體的深度。

圖6A根據(jù)示例實施例圖示了定位在機器人臂上的力-扭矩傳感器。更具體而言,機器人臂602可配備有抓具604,例如吸取抓具,用于拾起和移動物體。力-扭矩傳感器606可被定位在機器人臂602上抓具604上方某一點以檢測由被抓取的物體引起的力和/或扭矩。機器人臂602可被控制來利用抓具604抓取箱子608。來自力-扭矩傳感器606的傳感器數(shù)據(jù)隨后可被接收并用于確定箱子608的屬性,例如其質(zhì)量、重心和/或完全慣性矩陣。

在另外的示例中,力-扭矩傳感器也可用于估計未知的物體維度。更具體而言,通過使物體圍繞著與相鄰表面接近的物體邊緣轉(zhuǎn)動,系統(tǒng)可使用抓具所遵循的軌跡來確定相對于物體的該邊緣的物體的深度。在使物體轉(zhuǎn)動的同時,系統(tǒng)可使用力控制(例如,基于從力-扭矩傳感器接收的數(shù)據(jù))來維持物體的邊緣與相鄰表面的接觸,而無需關(guān)于箱子維度的先驗知識。所獲得的抓具軌跡的半徑于是可指示出相對于與相鄰表面接近的物體邊緣的物體的特定維度。

圖6B圖示了來自圖6A的力-扭矩傳感器確定物體維度的示例應(yīng)用。具體地,箱子608可被抓具604抓取并且機器人臂602可使得箱子608的邊緣圍繞著相鄰表面612上的接觸點610轉(zhuǎn)動。從力-扭矩傳感器606接收的指示出由物體608在機器人臂602上引起的力的傳感器數(shù)據(jù)可用于確保在機器人602使箱子608轉(zhuǎn)動時箱子608的邊緣與表面612在接觸點610處維持接觸。抓具604所遵循的軌跡的半徑于是可用于估計相對于與相鄰表面612接觸的物體邊緣的箱子608的深度614。

在一些示例中,相鄰表面612可以是地面或地板。在其他示例中,相鄰表面612可改為是位于箱子608下方的一個或多個其他物體的表面,例如當(dāng)箱子608被從一堆箱子拾起時。在另外的示例中,額外地或替換地,環(huán)境內(nèi)的其他表面可用作接觸點來使物體轉(zhuǎn)動。

在另外的示例中,可利用物體的一個或多個其他邊緣作為接觸點來重復(fù)使物體圍繞物體的邊緣轉(zhuǎn)動的過程以確定物體的一個或多個額外的維度。

在額外的示例中,在初始系統(tǒng)識別階段期間接收的傳感器數(shù)據(jù)也可用于差錯校正。例如,機器人可能已被指令通過在特定點抓取物體來拾起物體。來自一個或多個傳感器的傳感器數(shù)據(jù)可指示出物體被誤拾取了并且需要被放下并再次被拾起。例如,視覺或深度傳感器數(shù)據(jù)可指示出抓具沒有被定位在機器人被指令使用的物體上的點(例如,由于光學(xué)傳感或校準(zhǔn)上的誤差)。在另一示例中,力-扭矩傳感器可指示出物體具有朝著一側(cè)或另一側(cè)偏置的非預(yù)期質(zhì)心。在這種示例中,將物體放回并且在不同的點抓取它以考慮到從傳感器數(shù)據(jù)獲知的新信息,可能是有利的。

返回參考圖3,方法300還可包括從可能的軌跡中選擇一條軌跡來移動物體,如方框308所示。具體地,在接收傳感器數(shù)據(jù)以確定或估計物體的一個或多個屬性的一個或多個測量之后,可以為具有所確定或估計的測量的物體選擇一軌跡。例如,如果對于小箱子、中等大小箱子和大箱子規(guī)劃了可能的軌跡,則在確定箱子的大小之后,可以選擇相應(yīng)的軌跡來移動該箱子。

在另外的示例中,可基于多個不同的物體屬性來選擇軌跡,其中對于這些物體屬性可在不同的時間確定測量。例如,對于具有不同重量和不同深度的物體可規(guī)劃可能的軌跡。重量可在拾起物體之后不久利用力-扭矩傳感器來確定。深度可在之后某時間點利用一個或多個深度傳感器來確定。在這種示例中,一旦確定了重量就可首先選擇與所確定的重量和最保守的預(yù)測深度(例如,最大可能箱子)相對應(yīng)的軌跡。然后,在以后某時間點,當(dāng)確定了物體的深度時,就可選擇并從該時間點起使用與所確定的重量和所確定的深度兩者相對應(yīng)的軌跡。

在另外的示例中,可同時確定并選擇一個或多個軌跡。例如,在一個示例中,物體可首先被移動經(jīng)過保守軌跡,該保守軌跡假定物體具有要求最緩慢移動或最長可能路徑的測量。然后,如果傳感器數(shù)據(jù)指示出物體具有不同的測量以使得可以安全地使用更快的移動或更短的路徑,則可在運行中確定新的軌跡。在這種示例中,并且只要已利用接收到的傳感器數(shù)據(jù)確定了新軌跡,就可以選擇新的軌道并且機器人就可切換到使用新軌跡。

圖4D根據(jù)示例實施例圖示了用于移動來自圖4A的物體的所選軌跡。更具體而言,傳感器數(shù)據(jù)可指示出箱子408具有與箱子形狀410(而不是先前例示的箱子形狀414)相對應(yīng)的深度。因此,可以選擇軌跡412來供機器人臂402用于移動箱子408。在另外的示例中,可從多于兩個可能軌跡中選擇軌跡412。在額外的示例中,基于估計的或確定的箱子測量,可從預(yù)定的軌跡進一步細調(diào)軌跡412。

返回參考圖3,方法300還可涉及使得機器人移動物體經(jīng)過所選軌跡,如方框310所示。在一些示例中,機器人可在標(biāo)志系統(tǒng)識別階段結(jié)束的時間點切換到所選軌跡。在另外的示例中,基于額外的接收到的傳感器數(shù)據(jù),可在沿著路徑的一點或多點修改或調(diào)整軌跡。在一些示例中,額外的修改也可發(fā)生在額外的規(guī)劃時間點或空間點。

圖4E根據(jù)示例實施例圖示了通過來自圖4D的所選軌跡移動物體。更具體而言,機器人臂402可被命令通過所選軌跡412移動物體408。使得機器人臂402移動物體的指令可由位于機器人設(shè)備上的控制系統(tǒng)、由遠程控制系統(tǒng)和/或由機載控制系統(tǒng)和遠程控制系統(tǒng)的組合發(fā)送。

在另外的示例中,關(guān)于物體測量和/或所選軌跡的信息可被記錄并用于未來的機器人控制。例如,可確定某些可能軌跡被規(guī)劃了但很少被機器人使用,在此情況下可能不必要規(guī)劃這些軌跡。在其他示例中,可確定某些規(guī)劃的軌跡對于特定的物體測量效果不好,在此情況下這些規(guī)劃軌跡可被修改來供未來使用。其他類型的機器學(xué)習(xí)也可用于細調(diào)軌跡規(guī)劃來利用機器人設(shè)備移動物體。

本公開不限于本申請中描述的特定實施例,這些實施例意圖作為各種方面的例示。在不脫離其精神和范圍的情況下可做出許多修改和變化,這是本領(lǐng)域技術(shù)人員將會清楚的。除了本文列舉的那些以外,本領(lǐng)域技術(shù)人員通過以上描述將會清楚在本公開的范圍內(nèi)的功能上等同的方法和裝置。這種修改和變化意圖被包括在所附權(quán)利要求的范圍內(nèi)。

以上詳細描述參考附圖對公開的系統(tǒng)、設(shè)備和方法的各種特征和功能進行了描述。在附圖中,相似的符號通常標(biāo)識相似的組件,除非上下文另有指示。本文和附圖中描述的示例實施例不欲進行限定。在不脫離本文給出的主題的精神或范圍的情況下,可以利用其他實施例,并且可以作出其他改變。容易理解,本文概括描述并且在附圖中圖示的本公開的各方面可按許多種不同的配置來布置、替換、組合、分離和設(shè)計,所有這些在這里都明確地設(shè)想到了。

表示信息的處理的方框,例如以上描述的方法300的方框,可對應(yīng)于可被配置為執(zhí)行本文描述的方法或技術(shù)的具體邏輯功能的電路。替換地或額外地,表示信息的處理的方框可對應(yīng)于程序代碼(包括相關(guān)數(shù)據(jù))的模塊、片段或部分。程序代碼可包括可由處理器執(zhí)行來實現(xiàn)方法或技術(shù)中的具體邏輯功能或動作的一個或多個指令。程序代碼和/或相關(guān)數(shù)據(jù)可被存儲在任何類型的計算機可讀介質(zhì)上,例如包括盤或硬盤驅(qū)動器在內(nèi)的存儲設(shè)備或其他存儲介質(zhì)。

計算機可讀介質(zhì)還可包括非暫態(tài)計算機可讀介質(zhì),例如像寄存器存儲器、處理器緩存和隨機訪問存儲器(random access memory,RAM)那樣短時間存儲數(shù)據(jù)的計算機可讀介質(zhì)。計算機可讀介質(zhì)還可包括較長時間地存儲程序代碼和/或數(shù)據(jù)的非暫態(tài)計算機可讀介質(zhì),例如次級或永久性長期存儲裝置,比如只讀存儲器(read only memory,ROM)、光盤或磁盤、致密盤只讀存儲器(compact-disc read only memory,CD-ROM)。計算機可讀介質(zhì)還可以是任何其他易失性或非易失性存儲系統(tǒng)。計算機可讀介質(zhì)可被認為是例如計算機可讀存儲介質(zhì),或者有形存儲設(shè)備。

另外,表示一個或多個信息傳輸?shù)姆綁K可對應(yīng)于同一物理設(shè)備中的軟件和/或硬件模塊之間的信息傳輸。然而,其他信息傳輸可發(fā)生在不同物理設(shè)備中的軟件模塊和/或硬件模塊之間。

附圖中所示的特定布置不應(yīng)當(dāng)被視為限制性的。應(yīng)當(dāng)理解,其他實施例可包括更多或更少的給定附圖中所示的每種元素。另外,一些圖示的元素可被組合或省略。此外,示例實施例可包括附圖中沒有圖示的元素。

雖然本文已公開了各種方面和實施例,但本領(lǐng)域技術(shù)人員將會清楚其他方面和實施例。本文公開的各種方面和實施例是為了例示,而并不打算進行限定,真實的范圍和精神由所附權(quán)利要求指示。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1