本申請要求2014年7月16日遞交的美國專利申請第14/333,288號的優(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)要素:
本公開提供了可對包括多個吸盤的吸取抓具提供控制的方法和裝置。真空泵可被控制來通過吸取抓具的一個或多個活躍吸盤向物體施加吸力以使得抓具抓取物體。與吸盤相對應(yīng)的數(shù)字或模擬傳感器隨后可用于測量活躍吸盤中的一個或多個的真空壓力。基于來自數(shù)字或模擬傳感器的傳感器數(shù)據(jù),控制系統(tǒng)可識別出活躍吸盤中的一個或多個被解除激活。
在一個示例中,公開了一種包括吸取抓具和控制系統(tǒng)的系統(tǒng)。吸取抓具可包括真空泵、與真空泵耦合的多個吸盤和與吸盤相對應(yīng)的多個傳感器,其中傳感器被定位在真空泵與吸盤中的相應(yīng)一個之間并且測量吸盤中的相應(yīng)一個的真空壓力。控制系統(tǒng)可被配置為激活真空泵以使得吸取抓具通過多個吸盤之中的一個或多個活躍吸盤向物體施加吸力,從相應(yīng)傳感器接收指示一個或多個活躍吸盤的真空壓力的傳感器數(shù)據(jù),基于接收到的傳感器數(shù)據(jù),從一個或多個活躍吸盤中識別要解除激活的至少一個吸盤,并且解除激活所識別的至少一個吸盤。
在另一示例中,提供了一種方法,包括激活真空泵來使得吸取抓具通過吸取抓具的一個或多個吸盤向物體施加吸力。該方法還可包括從與一個或多個吸盤相對應(yīng)的一個或多個傳感器接收指示一個或多個吸盤的真空壓力的傳感器數(shù)據(jù),其中一傳感器被定位在真空泵與吸盤中的相應(yīng)一個吸盤之間并且確定吸盤中的相應(yīng)一個吸盤的真空壓力。基于接收到的傳感器數(shù)據(jù),該方法還可包括由計算設(shè)備從一個或多個吸盤中識別要解除激活的至少一個吸盤。該方法還可包括解除激活所識別的至少一個吸盤。
在另一示例中,公開了一種非暫態(tài)計算機可讀介質(zhì),其中存儲有指令,這些指令當(dāng)被計算系統(tǒng)執(zhí)行時使得該計算系統(tǒng)執(zhí)行功能。這些功能可包括激活真空泵來使得吸取抓具通過吸取抓具的一個或多個吸盤向物體施加吸力。這些功能還可包括從與一個或多個吸盤相對應(yīng)的一個或多個傳感器接收指示一個或多個吸盤的真空壓力的傳感器數(shù)據(jù),其中一傳感器被定位在真空泵與吸盤中的相應(yīng)一個吸盤之間并且確定吸盤中的相應(yīng)一個吸盤的真空壓力?;诮邮盏降膫鞲衅鲾?shù)據(jù),這些功能還可包括從一個或多個吸盤中識別要解除激活的至少一個吸盤。這些功能還可包括解除激活所識別的至少一個吸盤。
在另外一個示例中,一種系統(tǒng)可包括用于激活真空泵來使得吸取抓具通過吸取抓具的一個或多個吸盤向物體施加吸力的裝置。該系統(tǒng)還可包括用于從與一個或多個吸盤相對應(yīng)的一個或多個傳感器接收指示一個或多個吸盤的真空壓力的傳感器數(shù)據(jù)的裝置,其中一傳感器被定位在真空泵與吸盤中的相應(yīng)一個吸盤之間并且確定吸盤中的相應(yīng)一個吸盤的真空壓力?;诮邮盏降膫鞲衅鲾?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ù)示例實施例圖示了具有多個吸盤和相應(yīng)傳感器的抓具。
圖4C根據(jù)示例實施例圖示了來自圖4B的傳感器的示例傳感器數(shù)據(jù)。
圖4D根據(jù)示例實施例圖圖示了具有不同的活躍吸盤的來自圖4A的抓具。
具體實施方式
本文描述了示例方法和系統(tǒng)。本文描述的任何示例實施例或特征不一定要被解釋為比其他實施例或特征更優(yōu)選或有利。本文描述的示例實施例不欲進行限定。容易理解,公開的系統(tǒng)和方法的某些方面可按許多種不同的配置來布置和組合,所有這些在這里都已設(shè)想到。
另外,附圖中示出的特定布置不應(yīng)當(dāng)被視為限制性的。應(yīng)當(dāng)理解,其他實施例可包括更多或更少的給定附圖中所示的每種元素。另外,一些圖示的元素可被組合或省略。此外,示例實施例可包括附圖中沒有圖示的元素。
示例實施例可提供對具有多個吸盤的吸取抓具的控制。機器人操縱器(例如,機器人臂)可配備有這種抓具以便拾起和/或移動物體,比如箱子。示例吸取抓具可包括能夠附著到物體的多個吸盤。為了抓取物體,吸取抓具可通過與物體的表面相鄰或相連接的一個或多個活躍吸盤向物體施加吸力。在一些示例中,共同的真空泵可用于通過活躍吸盤施加吸力。在另外的示例中,可用吸盤的不同子集可被激活來抓取特定物體,同時其他吸盤被解除激活。
在示例內(nèi),模擬或數(shù)字傳感器可用于測量吸取抓具的個體吸盤的真空壓力。更具體而言,模擬或數(shù)字傳感器可被內(nèi)嵌放置在特定吸盤和共同的真空泵之間以便確定特定吸盤的使用水平。在另外的示例中,控制系統(tǒng)可使用來自內(nèi)嵌傳感器的傳感器數(shù)據(jù)來識別出一個或多個吸盤來解除激活(例如,通過關(guān)閉一個或多個閥門以防止真空泵通過被解除激活的吸盤施加吸力)。通過解除激活一個或多個吸盤,抓具可通過剩余的活躍吸盤向抓取的物體施加更大的吸取力。
在示例實施例中,控制系統(tǒng)可首先確定一種取向來將吸取抓具定位到物體上以使得吸盤中的一個或多個接觸物體。例如,控制系統(tǒng)可使用來自一個或多個光學(xué)傳感器的指示物體的大小和形狀的光學(xué)傳感器數(shù)據(jù)來確定如何定位抓具??刂葡到y(tǒng)隨后可激活與物體接觸的吸盤以向物體施加吸力。內(nèi)嵌傳感器隨后可向控制系統(tǒng)提供指示出每個活躍吸盤的真空壓力的傳感器數(shù)據(jù)??刂葡到y(tǒng)可使用個體吸盤的真空壓力測量值來修改用于抓取物體的活躍吸盤的集合。
在一些示例中,控制系統(tǒng)可從活躍吸盤的群組中解除激活具有最低真空壓力的特定數(shù)目的吸盤。例如,十個吸盤最初可被激活來抓取物體,然后這十個之中的具有最低真空壓力的兩個吸盤可被解除激活。在其他示例中,任何具有低于一定閾值水平(例如,低于10英寸汞柱或低于20英寸汞柱)的真空壓力的活躍吸盤可被解除激活。在另外的示例中,傳感器可幫助識別并解除激活未能實現(xiàn)良好吸取的吸盤(例如,當(dāng)吸盤未被正確定位來抓取物體時或者當(dāng)物體的特定表面難以抓取時)。
在額外的示例中,控制系統(tǒng)可解除激活吸盤中的一個或多個以力圖最大化由吸取抓具向物體施加的整體抓取力。例如,控制系統(tǒng)可基于個體吸盤的真空壓力的當(dāng)前水平來預(yù)測當(dāng)激活吸盤的不同子集時抓具將會實現(xiàn)的抓取力。在另外的示例中,在解除激活一個或多個吸盤之后,控制系統(tǒng)可從內(nèi)嵌傳感器接收指示出剩余活躍吸盤的真空壓力的額外傳感器數(shù)據(jù)。在一些示例中,控制系統(tǒng)隨后可解除激活額外的吸盤和/或重新激活某些被解除激活的吸盤來進一步優(yōu)化吸取抓具的抓取力。
在額外的示例中,指示個體吸盤的真空壓力的傳感器數(shù)據(jù)可被接收并存儲用于多次使用吸取抓具來拾起和/或移動物體。在一些示例中,隨著時間流逝接收的這個傳感器數(shù)據(jù)可用于識別一個或多個吸盤以替換。例如,如果傳感器數(shù)據(jù)指示出特定吸盤(例如,左上吸盤)的反復(fù)不佳性能和/或控制系統(tǒng)在撿拾物體時經(jīng)常解除激活特定吸盤,則該吸盤可被標記為被新吸盤所替換。
在示例內(nèi),吸取抓具可耦合到機器人設(shè)備并且被機器人設(shè)備用于拾起和/或移動物體。在一些示例中,可確定軌跡來移動物體而不引起吸取抓具掉落物體(例如,由于移動得太快和/或在抓具上產(chǎn)生了太大的力)。在額外的示例中,可部分基于對吸取抓具向物體施加的總抓取力的測量來確定軌跡,該總抓取力可基于個體活躍吸盤的真空壓力來估計。
在一些示例中,機器人設(shè)備也可配備有力-扭矩傳感器來用于測量抓具上的力。在另外的示例中,通過將吸取抓具向物體施加的抓取力與測量到的由于移動經(jīng)過給定軌跡而產(chǎn)生的抓具上的力相比較,來自力-扭矩傳感器的數(shù)據(jù)可用于確定或修改軌跡來防止吸取抓具掉落物體。
在額外的示例中,來自吸取抓具的內(nèi)嵌傳感器的傳感器數(shù)據(jù)可用于細調(diào)未來用于移動物體的抓取策略。例如,可基于抓具和/或吸盤的過去性能來隨著時間流逝改善用于抓取不同類型的物體的抓具和/或吸盤的定位。在另外的示例中,額外地或替換地,可隨著時間流逝調(diào)整對于不同類型的物體激活哪些吸盤。在一些示例中,一個或多個機器學(xué)習(xí)算法也可與來自吸取抓具的內(nèi)嵌傳感器的數(shù)據(jù)反饋結(jié)合使用來確定或細調(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ī)劃軟件的計算機)用來高效地拾取和移動箱子。控制系統(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傳感器提取平面表面信息來對墻壁、地板和/或箱面建模。在對地板建模之后,將物體投影到地板平面上可使得能夠分割障礙物和/或諸如箱子之類的目標物體。地板平面投影也可用于對貨柜或卡車的波形側(cè)建模,這些波形側(cè)可能不會被準確建模為平面。在另外的示例中,側(cè)壁角度、地板平面滾轉(zhuǎn)和俯仰和/或與側(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??刂葡到y(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)的固定安裝相機進行。在額外的示例中,可從視覺上對準掃描以幫助精細的姿勢估計,可能給出更好的集成結(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。控制系統(tǒng)隨后可確定箱子222是下一個要拾取的箱子,其中可能基于其形狀和大小、其在箱子220的堆疊的頂部的位置和/或基于用于箱子的目標貨柜或位置的特性來確定。隨后可控制機器人臂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)化器可接受以成本為形式的任意約束,例如與物體保持一定距離或者從給定角度接近目標位置。此外,優(yōu)化器可通過在關(guān)節(jié)空間中工作、保持跟蹤纏繞和從多個相反的動力學(xué)解決方案之中選擇目標位置來避免機器人故障狀況。用于運動規(guī)劃的一個策略可涉及向前展望若干次移動來了解選擇的目標關(guān)節(jié)位置對于下一次移動是否將會是可接受的。
在一些實施例中,路徑約束,例如對于機器人臂、相機、線纜和/或其他組件的碰撞避免,可被放入基于約束的規(guī)劃解決器中并被求解來得出為了感知而移動臂的最佳路徑。此外,在一些實施例中,解決器可確定用于拾起、移動和放置物體的最佳路徑。
根據(jù)各種實施例,3D和/或視覺傳感器可被校準來確定其相對于工作空間的姿勢。在固定傳感器的情況下,校準可確定其在工作空間中的固定姿勢。在臂上的傳感器的情況下,校準可確定傳感器從其附著到的臂鏈節(jié)的偏移姿勢。
在示例內(nèi),校準技術(shù)可允許對工作空間中的任意數(shù)目的傳感器的校準。校準可涉及確定多種參數(shù)和系數(shù)中的一些或全部。例如,校準可解出一個或多個固有參數(shù),例如焦距和圖像中心。作為另一示例,校準可確定一個或多個畸變系數(shù),例如徑向和切向畸變的模型。作為另外一個示例,校準可解出一個或多個外部參數(shù),其中物體在相對于圖案或其他傳感器的場景中,這些傳感器識別了場景中的同一圖案。
在一些示例中,校準可至少部分利用校準圖案來執(zhí)行,校準圖案可以是2D或3D的特征的已知集合。例如,可以使用點的已知圖案,其中每個點和其他點之間的距離是已知的。校準可至少部分通過收集物體的多個不同視圖來執(zhí)行。在另外的示例中,在不同的位置捕捉校準圖案的多個視圖可允許(1)對相機的一個或多個系數(shù)的校準和/或(2)關(guān)于相機相對于坐標系統(tǒng)在何處的知識,該坐標系統(tǒng)是由校準圖案固定之處確立的。在特定實施例中,場景中的相機可識別機器人臂上的校準圖案,同時臂上的相機識別場景中的校準圖案。
在額外的示例中,校準可涉及固定在場景中的相機。在此情況下,校準圖案可被放置在機器人臂上。機器人臂可被配置為隨著機器人臂上的校準圖案的多個視圖被收集而移動穿過場景。這可幫助校準相機和/或?qū)τ趯⑾鄼C的坐標系統(tǒng)與機器人的坐標系統(tǒng)聯(lián)系起來是有用的。另外,每個設(shè)備相對于其他設(shè)備的關(guān)系可由每個設(shè)備隨著機器人臂移動而確定。
在某些示例中,校準可涉及位于機器人臂上的相機。校準圖案可被安裝在墻壁或桌子上。然后,相機可被四處移動,從不同的機器人或機器人臂位置收集校準圖案的多個視圖。當(dāng)收集不同的3D或2D視圖時(例如,2、20、200),這些視圖可用于解出校準關(guān)系。在校準之后,當(dāng)臂上的相機移動時,系統(tǒng)可確定其相對于基于場景中的校準圖案的位置設(shè)置的坐標系統(tǒng)在何處。在特定實施例中,校準圖案和相機都可以是可動的。例如,校準圖案可位于傳送帶上,機器人臂可被配置為在該傳送帶上放置箱子。在校準之后,系統(tǒng)可確定相機相對于傳送帶上的該地點在何處。
在另外的示例中,為了3D傳感器校準的魯棒估計,可在兩階段過程中執(zhí)行非線性優(yōu)化。在一個階段中,可從目標和傳感器的相對姿勢偏移得出初始化。在另一階段中,給定初始化,批束調(diào)整可用于找到相機與目標點一起的最優(yōu)姿勢。校準可被擴展到對諸如關(guān)節(jié)長度和關(guān)節(jié)角度偏移之類的機器人參數(shù)的估計。
在其他示例中,相機在校準圖案上的或者校準圖案在相機上的已知的、精確的機器人運動可用于改善校準結(jié)果。例如,關(guān)于相機確切地如何移動的信息可用于獲得更準確的相機校準。也就是說,如果相機被向右移動50mm,則可檢測從校準物體的相應(yīng)(透視投影)移動量。此信息可用于聯(lián)合或單獨優(yōu)化校準和跟蹤參數(shù)。
在額外的示例中,機器人可著眼于其正在進行的校準并且以使獲得更好校準的信息最大化的方式來移動。例如,其可檢測到一些視圖區(qū)域尚未被看到并且去到這些視圖。
在另外的示例中,提出了用于大體上從雜亂的收集區(qū)域到限定的容器的異種分類物品的實際操縱的系統(tǒng)。在一些實施例中,包含物品的拾取位置可能對于精確物體取向(一個或多個取向)不敏感并且物品可被混合在一起。在額外的示例中,物品的放置位置可能對物體取向敏感或不敏感。在一些示例中,拾取和放置區(qū)域可被定義為對于拾取或放置物體可接受的3D區(qū)域,帶有一些容差。拾取和放置區(qū)域可能是非常雜亂的,具有相似的和/或全異的物體。在其他實施例中,物品可來自固定裝置或者被放入固定裝置中,固定裝置例如是將分類的物品保持在特定取向的金屬或塑料搭扣。
在額外的示例中,拾取和放置位置的環(huán)境建??捎糜谥悄茏ト∥恢煤瓦\動,以及事件報告(例如,當(dāng)放置區(qū)域滿了或者拾取區(qū)域空了時)。在一些示例中,可計算物體包圍盒并且可找出物體的區(qū)別特征(例如紋理、顏色、條碼或OCR)。在一些實施例中,通過對照由物體類型或物體ID索引的位置指派的數(shù)據(jù)庫進行匹配,可將物體分類到指派目的地位置中。例如,物體的位置可通過讀取條碼、考慮物體的大小和/或通過識別物體的特定種類來得出。
在一些示例中,可以確定機器人設(shè)備的規(guī)劃以便實現(xiàn)物體的目標位置內(nèi)物體的特定配置。例如,裝載/卸載或構(gòu)造/解構(gòu)貨盤的目標可以是實現(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ù)該過程直到已放置了所有箱子或者目標貨柜不再能夠裝入另一箱子為止。
圖3圖示了根據(jù)示例實施例示出可允許對具有多個吸盤的吸取抓具的控制的方法300的流程圖。方法300可利用如聯(lián)系圖1A-1B圖示和描述的可配備有吸取抓具的任何機器人設(shè)備執(zhí)行,例如包括安裝在可動推車上的機器人臂的設(shè)備。在其他示例中,方法300可利用安裝在不同類型的可動裝置上、安裝在鐵軌或軌道上或者安裝在固定位置的機器人操縱器來執(zhí)行。在另外的示例中,方法300的一部分或全部可由位于吸取抓具內(nèi)、位于機器人設(shè)備上和/或與機器人設(shè)備遠程通信的一個或多個控制系統(tǒng)來執(zhí)行。此外,雖然描述了在單個機器人臂上具有安裝了末端執(zhí)行器的吸取抓具的示例,但各種替換實施例可包括其他類型的機器人操縱器,或者可包括集成了機器人操縱器的其他自動化系統(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最初可涉及激活真空泵來使得吸取抓具通過一個或多個吸盤向物體施加吸力。更具體而言,吸取抓具可配備有一定數(shù)目的吸盤(例如,4個或9個或16個),這些吸盤各自可附著到物體的表面??刂葡到y(tǒng)可通過使得真空泵通過活躍吸盤施加吸力(例如,以便抓取物體)來“激活”吸盤中的一個或多個。在一些示例中,一個或多個吸盤也可被解除激活,使得真空泵不通過被解除激活的吸盤施加吸力。例如,與每個被解除激活的吸盤相對應(yīng)的閥門可被關(guān)閉來將真空泵與被解除激活的吸盤分離。
在示例內(nèi),吸取抓具可附著到使用吸取抓具來拾起和/或移動物體的機器人操縱器(例如,機器人臂)。在另外的示例中,機器人操縱器和/或吸取抓具的控制系統(tǒng)最初可將吸取抓具定位成使得抓具的吸盤中的一些或全部鄰近物體并且可被激活來抓取物體。在額外的示例中,機器人操縱器可配備有能夠檢測物體的形狀和/或大小的一個或多個光學(xué)傳感器(例如,深度和/或視覺傳感器)。控制系統(tǒng)可使用來自光學(xué)傳感器的數(shù)據(jù)來定位抓具和/或確定最初激活抓具的哪些吸盤。
在一些示例中,所有吸盤可被定位成與物體的表面接觸并且最初被激活來抓取物體。例如,吸取抓具可包含16個吸盤并且所有16個吸盤可被激活來拾起特定類型的物體。在額外的示例中,吸盤可被導(dǎo)向成貼附物體的不同表面。例如,在一個示例中,吸盤中的八個可被導(dǎo)向成貼附到箱子的頂表面,并且吸盤中的另外八個可貼附到箱子的前表面。在另外的示例中,吸取抓具在抓具的多個表面上可包括具有不同取向的吸盤群組來抓取物體的多個面。
在額外的示例中,最初可只激活吸取抓具的吸盤的某個部分來抓取物體。例如,吸取抓具可包含16個吸盤,但這些吸盤中只有10個可被定位成貼附到特定物體以便抓取該物體。在另外的示例中,取決于物體的哪些表面可被抓取,吸盤的特定子群組可被激活以便撿拾物體。例如,系統(tǒng)可執(zhí)行“頂部撿拾”來僅利用箱子的頂表面抓取物體,并且只有用于為了頂部撿拾而向箱子的頂表面施加吸力的吸盤可被激活。
在額外的示例中,感知控制系統(tǒng)可利用光學(xué)傳感器數(shù)據(jù)和/或其他類型的數(shù)據(jù)來確定如何定位抓具和/或激活哪些吸盤來撿拾特定物體。在另外的示例中,三維視覺數(shù)據(jù)可用于確定相對于吸盤性能而言物體表面的表面質(zhì)量的估計。表面質(zhì)量的估計可用于在抓取開始之前初始化吸盤的狀態(tài),包括放置和/或真空流。在一些示例中,這個初始化可使得基于真空傳感器反饋的控制算法能夠更迅速地收斂。
在額外的示例中,表面質(zhì)量度量可基于表面的曲率(例如,表面有多接近平面)、表面的連續(xù)性(例如,表面是否具有孔洞或其他變形)和/或表面的紋理(例如,表面是粗糙還是光滑的)。在另外的示例中,表面質(zhì)量度量也可基于面積(例如,吸盤是將覆蓋整個區(qū)域還是區(qū)域的某個部分)。指示在特定表面上的吸盤性能的其他因素也可額外地或替換地用于確定度量的表面質(zhì)量。
在一些示例中,表面質(zhì)量度量可用作抓取搜索算法的一部分來找到良好的抓取放置。在其他示例中,表面質(zhì)量度量也可用于估計抓具可能施加的可能抓取力。在一些情況下,此估計可被控制算法用于中止抓取或者選擇更保守的軌跡來移動物體。在另外的示例中,表面質(zhì)量度量和可能抓取力的相應(yīng)估計可用作真空吸盤控制算法的先驗。
圖4A根據(jù)示例實施例圖示了具有多個吸盤的吸取抓具。更具體而言,吸取抓具400可包括多個吸盤404-420來抓取諸如箱子402之類的物體。吸取抓具400還可包括真空泵430,真空泵430能夠通過吸盤404-420中的任何一者或全部施加吸力以便向物體施加吸力。在一些示例中,吸取抓具400可被安裝在末端執(zhí)行器上或者以其他方式耦合到機器人操縱器來移動已被抓具抓取的物體。在圖4A中,吸取抓具400被示為具有9個吸盤,但可使用不同數(shù)目的吸盤。此外,諸如真空泵或吸盤之類的吸取抓具的組件也可按不同方式配置和/或位于不同位置,與這里具體例示的不同。
在另外的示例中,吸取抓具400的吸盤404-420中的一個或多個可被激活來抓取物體。例如,控制系統(tǒng)可首先通過打開將特定吸盤與真空泵分離的閥門來激活這些吸盤,然后其可激活真空泵以通過打開的吸盤來施加吸力。在一些示例中,吸盤404-420中只有某一部分可被激活來抓取特定物體。例如,如圖4A中的陰影圓圈所示,被定位得鄰近箱子402的表面的六個吸盤406、408、412、414、418和420可被激活來使得吸取抓具400抓取箱子402。此外,吸取抓具400的其他吸盤404、410和416在撿拾箱子402期間可被解除激活,如圖4A中的開放圓圈所示。因此,吸取抓具430最初在抓取箱子402時可只通過活躍吸盤406、408、412、414、418和420施加吸力。在另外的示例中,抓具400的控制系統(tǒng)可使用光學(xué)傳感器數(shù)據(jù)來確定如何定位抓具400和/或最初激活哪些吸盤來抓取箱子402。
返回參考圖3,方法300還可涉及從一個或多個傳感器接收指示出一個或多個活躍吸盤的真空壓力的傳感器數(shù)據(jù),如方框304所示。更具體而言,一個或多個數(shù)字或模擬傳感器可被內(nèi)嵌定位在吸盤和真空泵之間以測量個體吸盤的真空壓力。可在吸取抓具已激活了吸盤來向物體施加吸力之后接收傳感器數(shù)據(jù)以便測量在抓取物體期間個體吸盤的利用率。
在一些示例中,傳感器可測量個體吸盤的真空響應(yīng)水平(例如,0到30英寸汞柱之間的真空響應(yīng)水平)。在其他示例中,傳感器可以額外地或替換地以其他方式報告?zhèn)鞲衅鲾?shù)據(jù)。例如,傳感器可以只報告特定吸盤的真空壓力是否高于閾值水平(例如,高于10英寸汞柱)。在另外的示例中,傳感器可在抓取物體之后的特定時間點、按特定時間間隔和/或連續(xù)地報告?zhèn)鞲衅鲾?shù)據(jù)。
圖4B根據(jù)示例實施例圖示了具有多個吸盤和相應(yīng)傳感器的吸取抓具。更具體而言,吸取抓具400可包括與吸盤404-420相對應(yīng)的數(shù)字或模擬傳感器454-470。傳感器454-470可被定位在真空泵430和吸盤404-420之間以便測量吸盤404-420的真空壓力。
在一些示例中,傳感器454-470的每一者可對應(yīng)于吸盤404-420中的特定一個以測量特定的對應(yīng)吸盤的真空響應(yīng)。例如,傳感器456可對應(yīng)于吸盤406以在吸盤406被激活時測量吸盤406的真空壓力,傳感器462可對應(yīng)于吸盤412以在吸盤412被激活時測量吸盤412的真空壓力,等等。在另外的示例中,可只從對應(yīng)于活躍吸盤的傳感器接收傳感器數(shù)據(jù)。例如,參考圖4B,可以只從與被吸取抓具400用來抓取箱子402的六個活躍吸盤406、408、412、414、418和420相對應(yīng)的傳感器456、458、462、464、468和470接收傳感器數(shù)據(jù)。
在一些示例中,如圖4B中所示對于每個吸盤可以有一個傳感器與之相對應(yīng)來測量相應(yīng)吸盤的真空壓力。在其他示例中,傳感器可只被包括來測量吸取抓具中的某些吸盤的真空壓力。例如,對于來自吸盤的若干個子群組的每一者的一個吸盤可包括一傳感器,其中不同的子群組可用于抓取不同的表面和/或物體的不同片段。在這種示例中,對于一個吸盤接收的傳感器數(shù)據(jù)可用于控制整個子群組(例如,關(guān)閉或開啟該子群組中的所有吸盤)。在另一示例中,一傳感器可改為測量吸盤的整個子群組而不是個體吸盤的真空響應(yīng)(例如,通過安排多個吸盤經(jīng)過單個傳感器)。在另外的示例中,傳感器的不同類型或配置也可被一起用于單個吸取抓具內(nèi)。
返回參考圖3,方法300還可涉及從一個或多個活躍吸盤中識別至少一個吸盤來解除激活,如方框306所示。更具體而言,控制系統(tǒng)可使用從內(nèi)嵌傳感器接收的指示個體吸盤的真空壓力的傳感器數(shù)據(jù)來識別一個或多個吸盤來解除激活以力圖改善吸取抓具的性能。
在一些示例中,控制系統(tǒng)可從活躍吸盤的群組中解除激活具有最壞性能的一定數(shù)目的吸盤。例如,控制系統(tǒng)可解除激活十個活躍吸盤之中的具有最低真空壓力的兩個或三個吸盤。通過解除激活一個或多個吸盤,真空泵可通過剩余的活躍吸盤施加更大的吸取力。
在另外的示例中,控制系統(tǒng)可解除激活具有低于某個閾值水平的真空響應(yīng)的吸盤。例如,該閾值水平可被設(shè)置為八英寸汞柱,并且具有低于八英寸汞柱的傳感器讀數(shù)的任何吸盤可被解除激活。在額外的示例中,可依據(jù)諸如要抓取的物體的大小或類型、活躍吸盤的數(shù)目和/或使用不同閾值水平的抓具的過去性能之類的因素來改變該閾值水平。
在另外的示例中,控制系統(tǒng)可解除激活吸盤以力圖最大化吸取抓具的整體抓取力。例如,控制系統(tǒng)可使用個體吸盤的真空響應(yīng)來為活躍吸盤的不同組合預(yù)測吸取抓具的抓取力。在另外的示例中,控制系統(tǒng)可求解優(yōu)化問題來識別最大化整體抓取力的一組吸盤。在其他示例中,一個或多個試探也可用于識別要解除激活的吸盤。在另外的示例中,這些試探可利用一個或多個機器學(xué)習(xí)算法來學(xué)習(xí)。例如,可確定如果抓取物體的特定表面或片段的一個或多個吸盤具有較差的真空響應(yīng),則抓取該物體的同一表面或片段的一個或多個其他吸盤也應(yīng)當(dāng)被解除激活。
在額外的示例中,控制系統(tǒng)可采用實時切換來在一個或多個時間點激活和/或解除激活一個或多個吸盤。例如,在解除激活一個或多個吸盤之后,控制系統(tǒng)可接收指示出仍然活躍的一個或多個吸盤的真空壓力的額外傳感器數(shù)據(jù)。控制系統(tǒng)隨后可重新評估使用哪些吸盤來抓取物體。在一些情況下,控制系統(tǒng)可解除激活一個或多個額外的吸盤和/或重新激活一個或多個被解除激活的吸盤來進一步微調(diào)抓具的性能。在另外的示例中,活躍吸盤的集合可隨著時間流逝被控制系統(tǒng)周期性地修改(例如,隨著機器人臂在用抓具抓取物體的同時移動物體)。
圖4C根據(jù)示例實施例圖示了可被控制系統(tǒng)用于識別要解除激活的一個或多個吸盤的傳感器數(shù)據(jù)。更具體而言,從內(nèi)嵌傳感器接收的傳感器數(shù)據(jù)可指示活躍吸盤406、408、412、414、418和420的當(dāng)前真空壓力水平。真空壓力水平在圖4C中被描繪為條柱476、478、482、484、488和490,它們可表示相應(yīng)吸盤406、408、412、414、418和420的每一者的真空響應(yīng)的不同水平。例如,條柱476可高于條柱488,表明吸盤406具有比吸盤418更強的真空響應(yīng)。在一些示例中,可從0到30英寸汞柱測量真空響應(yīng),其中30是完全真空。
在另外的示例中,吸取抓具400的控制系統(tǒng)可基于由條柱476、478、482、484、488和490描繪的傳感器數(shù)據(jù)來識別要解除激活的活躍吸盤406、408、412、414、418和420中的一個或多個。例如,在一個示例中,控制系統(tǒng)可從活躍吸盤的群組中解除激活具有最低真空壓力的兩個吸盤。因此,控制系統(tǒng)可解除激活吸盤418和吸盤420。在其他示例中,可以替換地或者額外地使用識別要解除激活的吸盤的不同方法。例如,吸盤418和420可被識別為要被解除激活,因為由條柱488和490圖示的它們的相應(yīng)真空壓力水平可低于閾值真空水平。在另一示例中,優(yōu)化問題的解可指示出吸取抓具400的整體抓取力可通過解除激活吸盤418和420來改善。在另外的示例中,可以額外地或替換地解除激活來自活躍吸盤的群組的一個或多個不同的吸盤。
返回參考圖3,方法300還可涉及解除激活一個或多個所識別的吸盤,如方框308所示。在識別出要解除激活的吸盤之后,控制系統(tǒng)可解除激活這些吸盤以力圖改善整體抓具性能。在一些示例中,控制系統(tǒng)可通過防止真空泵通過被解除激活的吸盤施加吸力來解除激活一個或多個吸盤。例如,抓具可包括與吸盤相對應(yīng)的可打開且可關(guān)閉的閥門,它們將吸盤與真空泵分離。為了解除激活特定的吸盤,控制系統(tǒng)于是可使得相應(yīng)閥門被關(guān)閉。在另外的示例中,替代閥門或者除了閥門以外,也可使用防止真空泵通過被解除激活的吸盤施加吸力的其他機制。
圖4D根據(jù)示例實施例圖示了在吸盤中的一個或多個被解除激活之后的具有多個吸盤的吸取抓具。更具體而言,控制系統(tǒng)可通過防止真空泵430通過吸盤418和420向箱子402施加吸力來解除激活吸取抓具400的兩個吸盤418和420。在一些示例中,與吸盤418和420相對應(yīng)的閥門可被關(guān)閉以將真空泵430與吸盤418和420分離來解除激活這些吸盤。在額外的示例中,可通過解除激活吸盤418和420來增大由真空泵430通過剩余活躍吸盤406、408、412和414施加的真空壓力。在另外的示例中,通過解除激活吸盤418和420也可增大吸取抓具400的整體抓取力。
在額外的示例中,控制系統(tǒng)可在吸盤418和420已被解除激活之后接收指示剩余活躍吸盤406、408、412和414的真空壓力的額外傳感器數(shù)據(jù)。在另外的示例中,控制系統(tǒng)隨后可從活躍吸盤406、408、412和414中解除激活一個或多個額外的吸盤和/或重新激活被解除激活的吸盤418和420的一者或兩者來進一步細調(diào)整體系統(tǒng)性能。例如,解除激活吸盤418和420可導(dǎo)致剩余活躍吸盤中的一個或多個的性能的非預(yù)期下降,這可引起對用于抓取箱子402的活躍吸盤的集合的進一步修改。在另一示例中,取決于箱子是否在用于移動箱子的軌跡內(nèi),不同的吸盤可被解除激活和/或重新激活。
在另外的示例中,吸取抓具,例如來自圖4A-4D的吸取抓具400,可被安裝在機器人操縱器上或者以其他方式耦合到機器人操縱器(例如,機器人臂)來用吸取抓具移動物體。例如,機器人操縱器如前所述可被控制為向貨盤或外觀面裝載或從貨盤或外觀面卸載箱子或其他物體。在一些示例中,機器人操縱器可首先將吸取抓具定位成使得一個或多個吸盤鄰近物體。鄰近的吸盤隨后可最初被激活來抓取物體。在另外的示例中,例如圖3的方法300那樣的示例方法隨后可用于在由機器人操縱器移動物體之前和/或期間對用于抓取物體的吸盤的集合進行細調(diào)。
在額外的示例中,可以為機器人操縱器確定軌跡來移動抓取的物體,而不引起抓具掉落物體。更具體而言,導(dǎo)致活躍吸盤的特定子集的吸取抓具的特定優(yōu)化可在物體上產(chǎn)生一定量的抓取力。在一些示例中,可利用來自內(nèi)嵌傳感器的指示個體吸盤的真空壓力的傳感器數(shù)據(jù)來估計這個總抓取力??傋ト×芍甘咀ゾ叩漠?dāng)前最大抓取能力,其可用于確定不會引起抓具掉落物體的軌跡。例如,給定物體上的當(dāng)前抓取力,可以控制物體的速度或加速度以避免達到可能引起抓具掉落物體的水平。
在另外的示例中,機器人操縱器也可配備有力-扭矩傳感器來測量抓具上的力(例如,從用抓具移動物體產(chǎn)生的力)。在一些示例中,來自力-扭矩傳感器的傳感器數(shù)據(jù)也可被控制系統(tǒng)用來確定軌跡來供機器人操縱器移動物體。例如,控制系統(tǒng)可考慮吸取抓具在物體上的抓取力和抓具本身隨著物體被移動而經(jīng)歷的力兩者來確定不會引起抓具掉落物體的軌跡。在另外的示例中,控制系統(tǒng)可以基于從力-扭矩傳感器接收到的傳感器數(shù)據(jù)周期性地修改軌跡來安全地移動物體而不掉落它。在另外的示例中,來自力-扭矩傳感器的傳感器數(shù)據(jù)也可被控制系統(tǒng)用于影響何時解除激活和/或激活吸盤和/或解除激活和/或激活哪些吸盤。
在額外的示例中,可以控制機器人操縱器來隨著時間流逝用吸取抓具移動不同物體。在一些示例中,來自內(nèi)嵌傳感器的傳感器數(shù)據(jù)可被控制系統(tǒng)用于標記吸取抓具的一個或多個吸盤要替換。例如,可以識別與吸取抓具使用的其他吸盤相比一貫性能不佳的特定吸盤。在這種示例中,性能不佳的吸盤可被識別并被替換吸盤所替換。
在另一示例實施例中,控制系統(tǒng)可接連循環(huán)過個體吸盤和/或吸盤的群組來測試泄漏的吸盤。例如,控制算法可最初涉及將抓具定位在要抓取的物體上方,其中所有吸盤處于關(guān)閉狀態(tài)。然后,每個吸盤可按串行順序被開啟來了解該吸盤是否泄漏。例如,控制系統(tǒng)可順序激活每個吸盤,等待平衡以確定該吸盤是否泄漏,然后如果其泄漏則解除激活該吸盤。
在另外的示例中,這種接連測試吸盤的控制系統(tǒng)可與本文描述的一個或多個其他控制策略一起使用。在其他示例中,該控制算法可用作后備方案,如果更激進的策略未能識別故障吸盤和/或在物體上實現(xiàn)良好抓取的話。在另外的示例中,接連測試吸盤可允許在抓具內(nèi)使用不那么靈敏的傳感器,尤其是在因為泵無法跟上該流程而造成一個或若干個吸盤上的吸力的失去使得在所有吸盤上壓力上升的情況下更是如此。
在額外的示例中,控制算法可接連測試兩個或更多個吸盤的群組。在一些示例中,可假定最壞預(yù)測流速來計算可被并行測試的吸盤的數(shù)目。允許控制系統(tǒng)一次激活多個未測量吸盤可允許更快完成測試過程。具體地,對于平衡的等待可被分攤在要測試的每組吸盤上。在其他示例中,預(yù)測每個吸盤的性能的先驗知識可能是可用的,其也可用于加速收斂。
在另外的示例中,可利用來自內(nèi)嵌傳感器的傳感器數(shù)據(jù)隨著時間流逝細調(diào)機器人操縱器和/或吸取抓具使用的抓取策略。例如,指示不同吸盤抓取物體的利用率的傳感器數(shù)據(jù)可用于確定未來如何定位抓具和/或最初激活哪些吸盤來抓取物體。在另外的示例中,也可利用過去的吸盤性能數(shù)據(jù)來確定如何細調(diào)活躍吸盤的集合(例如,激活和/或解除激活哪些吸盤)。在額外的示例中,控制系統(tǒng)可應(yīng)用機器學(xué)習(xí)過程來改善對吸取抓具的未來控制決策。例如,控制系統(tǒng)可應(yīng)用多種不同的可能機器學(xué)習(xí)過程中的任何一種或全部,包括人工神經(jīng)網(wǎng)絡(luò)、支持向量機、遺傳算法、貝葉斯推理、貝葉斯網(wǎng)絡(luò)、強化學(xué)習(xí)方法、回歸分析和/或決策樹。
本公開不限于本申請中描述的特定實施例,這些實施例意圖作為各種方面的例示。在不脫離其精神和范圍的情況下可做出許多修改和變化,這是本領(lǐng)域技術(shù)人員將會清楚的。除了本文列舉的那些以外,本領(lǐng)域技術(shù)人員通過以上描述將會清楚在本公開的范圍內(nèi)的功能上等同的方法和裝置。這種修改和變化意圖被包括在所附權(quán)利要求的范圍內(nèi)。
以上詳細描述參考附圖對公開的系統(tǒng)、設(shè)備和方法的各種特征和功能進行了描述。在附圖中,相似的符號通常標識相似的組件,除非上下文另有指示。本文和附圖中描述的示例實施例不欲進行限定。在不脫離本文給出的主題的精神或范圍的情況下,可以利用其他實施例,并且可以作出其他改變。容易理解,本文概括描述并且在附圖中圖示的本公開的各方面可按許多種不同的配置來布置、替換、組合、分離和設(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)利要求指示。