TW201941887A - 儲存一離散環境於一或多個處理器之一機器人之運動規劃及其改良操作 - Google Patents

儲存一離散環境於一或多個處理器之一機器人之運動規劃及其改良操作 Download PDF

Info

Publication number
TW201941887A
TW201941887A TW108104094A TW108104094A TW201941887A TW 201941887 A TW201941887 A TW 201941887A TW 108104094 A TW108104094 A TW 108104094A TW 108104094 A TW108104094 A TW 108104094A TW 201941887 A TW201941887 A TW 201941887A
Authority
TW
Taiwan
Prior art keywords
robot
processor
volume
environment
shape
Prior art date
Application number
TW108104094A
Other languages
English (en)
Other versions
TWI822729B (zh
Inventor
丹尼爾 索倫
喬治 柯尼達瑞斯
尚恩 莫瑞
瓊斯 威廉 佛洛伊德
Original Assignee
美商即時機器人股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 美商即時機器人股份有限公司 filed Critical 美商即時機器人股份有限公司
Publication of TW201941887A publication Critical patent/TW201941887A/zh
Application granted granted Critical
Publication of TWI822729B publication Critical patent/TWI822729B/zh

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme controls characterised by safety, monitoring, diagnostic
    • B25J9/1676Avoiding collision or forbidden zones
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • B25J9/1666Avoiding collision or forbidden zones
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1671Programme controls characterised by programming, planning systems for manipulators characterised by simulation, either to verify existing program or to create and verify new program, CAD/CAM oriented, graphic oriented programming systems
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0214Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with safety or protection criteria, e.g. avoiding hazardous areas
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40442Voxel map, 3-D grid map
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40446Graph based
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40448Preprocess nodes with arm configurations, c-space and planning by connecting nodes

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

本發明揭示一種機器人控制系統,其判定使用數個離散化之何者以產生機器人掃掠體積之離散表示且產生其中該機器人將操作之環境之離散表示。表示該環境及其中之障礙物之障礙物三維像素(或盒)經串流傳輸至該處理器中且儲存於晶片上環境記憶體中。在運行時間,該機器人控制系統可在儲存於晶片外或晶片上記憶體中之多個運動規劃圖之間動態地切換。在運行時間在多個運動規劃圖之間動態地切換使該機器人能夠在該機器人自身之特性改變時以一相對低成本執行運動規劃。

Description

儲存一離散環境於一或多個處理器之一機器人之運動規劃及其改良操作
本發明大體上係關於機器人運動規劃且特定言之,係關於促進儲存環境之一離散表示於一或多個處理器上之一機器人之運動規劃之系統及方法。
相關技術之描述
運動規劃係機器人控制及機器人學之一基本問題。一運動規劃完全指定一機器人自一起始狀態至一目標狀態可遵循之一路徑,通常不與一操作環境中之任何障礙物碰撞或具有與操作環境中之任何障礙物碰撞之一減小之可能性。運動規劃之挑戰涉及即使在機器人自身之特性改變時仍以一相對低成本及非常快的速度執行運動規劃之能力。例如,此等特性可包含當機器人固持具有不同大小之物件時,當改變至一不同末端受動器時或當改變至一不同附肢時被視為由機器人佔用之體積。又,亦存在關於可儲存於處理器晶片電路上之一有限量之運動規劃資訊之挑戰。
一種在一機器人控制系統中之操作方法可概括為包含:針對將在一環境中操作之一第一機器人,判定複數個規劃圖,各規劃圖分別包括由複數個邊緣連接之複數個節點,各節點隱含或明確地表示特性化該第一機器人之一各自狀態之變數,且各邊緣表示該第一機器人之各自一對該等狀態之間之一轉變,其中該各自對狀態由藉由該各自規劃圖中之一各自邊緣耦合之一對節點之各自者表示;針對該等規劃圖之各者之該等邊緣之至少兩者或兩者以上,產生表示由該第一機器人之至少一部分在於由藉由該各自邊緣耦合之該等各自節點表示之該等狀態之間轉變時掃掠之一體積之一各自邊緣資訊集;將該複數個規劃圖及該等邊緣資訊集儲存於至少一個非暫時性處理器可讀儲存器中;基於該第一機器人之至少一部分在一第一時間具有一第一組實體尺寸,將針對該等規劃圖之一第一者之該等邊緣資訊集提供至至少一個處理器;及基於該第一機器人之至少一部分在一第二時間具有一第二組實體尺寸,該第二組實體尺寸中之至少一個尺寸不同於該第一組之該等尺寸之一對應者,將針對該等規劃圖之一第二者之該等邊緣資訊集提供至該至少一個處理器。
該第一機器人可具有可選擇性地操作用於相對於其中該第一機器人操作之該環境移動之至少一第一附肢,且該第一機器人可具有附接至該第一附肢之一第一末端受動器,該第一末端受動器可選擇性地操作用於在至少一第一末端受動器配置與一第二末端受動器配置之間移動,且其可進一步包含:判定附接至該第一附肢之該第一末端受動器處於一第一末端受動器配置中,其中該第一組實體尺寸表示處於該第一末端受動器配置中之該第一末端受動器之一組尺寸;及其中將針對該等規劃圖之一第一者之該等邊緣資訊集提供至至少一個處理器可係回應於附接至該第一附肢之該第一末端受動器處於該第一末端受動器配置中之該判定。
在一機器人控制系統中之該操作方法可進一步包含:判定附接至該第一附肢之該第一末端受動器處於一第二末端受動器配置中,其中該第二組實體尺寸表示處於該第二末端受動器配置中之該第一末端受動器之一組尺寸;及其中將針對該等規劃圖之一第二者之該等邊緣資訊集提供至至少一個處理器係回應於附接至該第一附肢之該第一末端受動器處於該第二末端受動器配置中之該判定。
該第一機器人可具有可選擇性地操作用於相對於其中該第一機器人操作之該環境移動之至少一第一附肢,且一第一末端受動器可附接至該第一附肢,該第一末端受動器可選擇性地操作用於在至少一未抓緊配置與一抓緊配置之間移動,由處於該抓緊配置中之該第一末端受動器佔用之一體積之一大小或形狀之至少一者不同於由處於該未抓緊配置中之該第一末端受動器佔用之一體積之一大小或形狀之至少一者,且其可進一步包含:判定附接至該第一附肢之該第一末端受動器處於該未抓緊配置中;其中將針對該等規劃圖之一第一者之該等邊緣資訊集提供至至少一個處理器可係回應於附接至該第一附肢之該第一末端受動器處於該未抓緊配置中之該判定;及判定附接至該第一附肢之該第一末端受動器可處於該抓緊配置中;其中將針對該等規劃圖之一第二者之該等邊緣資訊集提供至至少一個處理器可係回應於附接至該第一附肢之該第一末端受動器處於抓緊配置中之該判定。該第一機器人可具有可選擇性地操作用於相對於其中該第一機器人操作之該環境移動之至少一第一附肢,且其可進一步包含:判定該第一機器人具有附接至該第一附肢之一第一末端受動器,其中該第一組實體尺寸可表示附接至該第一附肢之該第一末端受動器之一組尺寸;及其中將針對該等規劃圖之一第一者之該等邊緣資訊集提供至至少一個處理器可係回應於該第一機器人具有附接至該第一附肢之一第一末端受動器之該判定。
在一機器人控制系統中之該操作方法可進一步包含判定該第一機器人具有附接至該第一附肢之一第二末端受動器,該第二末端受動器在形狀或大小之至少一者上不同於該第一末端受動器,其中該第二組實體尺寸可表示附接至該第一附肢之該第二末端受動器之一組尺寸;及其中將針對該等規劃圖之一第二者之該等邊緣資訊集提供至至少一個處理器可係回應於該第一機器人具有附接至該第一附肢之一第二末端受動器之該判定。
該第一機器人可係一自主或半自主車輛之至少一者,由處於一第一實體狀態中之一自主或半自主車輛之該至少一者佔用之一體積之一大小或形狀之至少一者可不同於由處於該第二實體狀態中之一自主或半自主車輛之該至少一者佔用之一體積之一大小或形狀之至少一者(例如,重量可歸因於燃料之消耗而改變,因此速度可改變且所行進之距離改變),且其可進一步包含:判定一自主或半自主車輛之該至少一者處於該第一實體狀態中;其中將針對該等規劃圖之一第一者之該等邊緣資訊集提供至至少一個處理器可係回應於一自主或半自主車輛之該至少一者處於該第一實體狀態中之該判定;及判定一自主或半自主車輛之該至少一者可處於該第二實體狀態中;其中將針對該等規劃圖之一第二者之該等邊緣資訊集提供至至少一個處理器可係回應於一自主或半自主車輛之該至少一者處於第二實體狀態中之該判定。將針對該等規劃圖之一第一者之該等邊緣資訊集提供至至少一個處理器可包含將針對該等邊緣之一者之該邊緣資訊應用至該至少一個處理器之複數個電路之各者以判定哪些邊緣與由其中該機器人操作之該環境中之一障礙物佔用之一單位體積碰撞。將針對該等規劃圖之一第一者之該等邊緣資訊集提供至至少一個處理器可包含將針對該等邊緣之一者之該邊緣資訊並行應用至該至少一個處理器之複數個電路之各者。產生表示由該第一機器人之至少一部分在於由藉由該各自邊緣耦合之該等各自節點表示之該等狀態之間轉變時掃掠之一體積之一各自邊緣資訊集可包含產生以三維像素表示由該第一機器人之至少一部分在於由藉由該各自邊緣耦合之該等各自節點表示之該等狀態之間轉變時掃掠之一體積之一各自邊緣資訊集。產生表示由該第一機器人之至少一部分在於由藉由該各自邊緣耦合之該等各自節點表示之該等狀態之間轉變時掃掠之一體積之一各自邊緣資訊集可包含產生以體積單位,即涵蓋兩個或兩個以上三維像素之體積單位表示由該第一機器人之至少一部分在於由藉由該各自邊緣耦合之該等各自節點表示之該等狀態之間轉變時掃掠之一體積。產生表示由該第一機器人之至少一部分在於由藉由該各自邊緣耦合之該等各自節點表示之該等狀態之間轉變時掃掠之一體積之一各自邊緣資訊集可包含產生以矩形稜柱(平行六面體)表示由該第一機器人之至少一部分在於由藉由該各自邊緣耦合之該等各自節點表示之該等狀態之間轉變時掃掠之一體積之一各自邊緣資訊集。產生以矩形稜柱(平行六面體)表示由該第一機器人之至少一部分在於由藉由該各自邊緣耦合之該等各自節點表示之該等狀態之間轉變時掃掠之一體積之一各自邊緣資訊集可包含針對該等矩形稜柱之各者,儲存完全定義該各自矩形稜柱之該體積之一對三維座標。該判定複數個規劃圖及該產生一各自邊緣資訊集可在一預運行時間段期間執行。該提供針對該等規劃圖之一第二者之該等邊緣資訊集至該至少一個處理器可在一運行時間段期間執行。
一種基於處理器之機器人控制系統可概括為包含:至少一個處理器;及至少一個非暫時性處理器可讀媒體,其儲存在藉由該至少一個處理器執行時引起該至少一個處理器執行以下項之處理器可執行指令或資料之至少一者:針對將在一環境中操作之一第一機器人,判定複數個規劃圖,各規劃圖分別包括由複數個邊緣連接之複數個節點,各節點隱含或明確地表示特性化該第一機器人之一各自狀態之變數,且各邊緣表示該第一機器人之各自一對該等狀態之間之一轉變,其中該各自對狀態由藉由該各自規劃圖中之一各自邊緣耦合之一對節點之各自者表示;針對該等規劃圖之各者之該等邊緣之至少兩者或兩者以上,產生表示由該第一機器人之至少一部分在於由藉由該各自邊緣耦合之該等各自節點表示之該等狀態之間轉變時掃掠之一體積之一各自邊緣資訊集;將該複數個規劃圖及該等邊緣資訊集儲存於至少一個非暫時性處理器可讀儲存器中;基於該第一機器人之至少一部分在一第一時間具有一第一組實體尺寸,將針對該等規劃圖之一第一者之該等邊緣資訊集提供至至少一個處理器;及基於該第一機器人之至少一部分在一第二時間具有一第二組實體尺寸,該第二組實體尺寸中之至少一個尺寸不同於該第一組之該等尺寸之一對應者,將針對該等規劃圖之一第二者之該等邊緣資訊集提供至該至少一個處理器。
處理器可執行指令或資料之該至少一者在藉由該至少一個處理器執行時可進一步引起該至少一個處理器執行上文描述之方法之任何者。
一種在一機器人控制系統中之操作方法可概括為包含:針對其中至少一第一機器人將操作之一環境,即由一或多個障礙物佔用之該環境之一第一離散表示,將該環境之該第一離散表示之至少一部分供應至至少一個處理器;針對儲存於與該至少一個處理器相關之記憶體中之複數個規劃圖之一第一規劃圖之各邊緣,其中該複數個規劃圖之各規劃圖與該第一機器人之一組不同實體尺寸相關聯,將一各自邊緣資訊集提供至該至少一個處理器,該各自邊緣資訊集表示由該第一機器人之至少一部分在於該第一機器人之一對狀態之間轉變時掃掠之一體積,該第一機器人之該對狀態由該第一規劃圖之一對節點之各自者表示,該各自對節點由該第一規劃圖之一各自邊緣耦合,該各自邊緣表示在該第一機器人之該各自對狀態之間之一轉變;及識別該對應轉變將導致該機器人之至少一部分與該環境中之該一或多個障礙物之至少一者之至少一部分之間之一碰撞之該第一規劃圖之該等邊緣之任何者。
將一各自邊緣資訊集提供至該至少一個處理器可包含將針對該等邊緣之一者之該邊緣資訊並行應用至該至少一個處理器之複數個電路之各者。將一各自邊緣資訊集提供至該至少一個處理器可包含針對各邊緣,將針對該各自邊緣之該邊緣資訊並行應用至該至少一個處理器之複數個電路之各者。將一各自邊緣資訊集提供至該至少一個處理器可包含針對各邊緣,將以三維像素表示由該第一機器人之至少一部分在於由藉由該各自邊緣耦合之該等各自節點表示之該等狀態之間轉變時掃掠之一體積之一各自邊緣資訊集應用至該至少一個處理器之電路。將一各自邊緣資訊集提供至該至少一個處理器可包含針對各邊緣,將以體積單位表示由該第一機器人之至少一部分在於由藉由該各自邊緣耦合之該等各自節點表示之該等狀態之間轉變時掃掠之一體積之一各自邊緣資訊集應用至該至少一個處理器之電路,該等體積單位各涵蓋兩個或兩個以上三維像素。將一各自邊緣資訊集提供至該至少一個處理器可包含針對各邊緣,將以矩形稜柱表示由該第一機器人之至少一部分在於由藉由該各自邊緣耦合之該等各自節點表示之該等狀態之間轉變時掃掠之一體積之一各自邊緣資訊集應用至該至少一個處理器之電路,該等體積單位各涵蓋兩個或兩個以上三維像素。將以矩形稜柱表示由該第一機器人之至少一部分在於由藉由該各自邊緣耦合之該等各自節點表示之該等狀態之間轉變時掃掠之一體積之一各自邊緣資訊集應用至該等電路可包含針對該等矩形稜柱之各者,儲存完全定義該各自矩形稜柱之該體積之一對三維座標。
在一機器人控制系統中之該操作方法可進一步包含:判定該第一機器人將或已自一第一配置改變至一第二配置,該第二配置不同於該第一配置;針對該複數個規劃圖之一第二規劃圖之各邊緣,將一各自邊緣資訊集提供至該至少一個處理器,該各自邊緣資訊集表示由該第一機器人之至少一部分在於該第一機器人之一對狀態之間轉變時掃掠之一體積,該第一機器人之該對狀態由該第二規劃圖之一對節點之各自者表示,該各自對節點由該第二規劃圖之一各自邊緣耦合,該各自邊緣表示在該第一機器人之該各自對狀態之間之一轉變,該第二規劃圖不同於該第一規劃圖;及識別該對應轉變將導致該機器人之至少一部分與該環境中之該一或多個障礙物之至少一者之至少一部分之間之一碰撞之該第二規劃圖之該等邊緣之任何者。
該第一機器人可包含可選擇性地操作用於相對於其中該第一機器人操作之該環境移動之一第一附肢,且判定該第一機器人將或已自一第一配置改變至一第二配置可包含判定一第二末端受動器代替一第一末端受動器附接或正在附接至該第一附肢。該第一機器人可包含可選擇性地操作用於相對於其中該第一機器人操作之該環境移動之一第一附肢,且一第一末端受動器可附接至該第一附肢,該第一末端受動器可選擇性地操作用於在至少一未抓緊配置與一抓緊配置之間移動,由處於該抓緊配置中之該第一末端受動器佔用之一體積之一大小或形狀之至少一者不同於由處於該未抓緊配置中之該第一末端受動器佔用之一體積之一大小或形狀之至少一者,且判定該第一機器人將或已自一第一配置改變至一第二配置可包含判定附接至該第一附肢之該第一末端受動器正在或已改變一抓緊配置。判定附接至該第一附肢之該第一末端受動器正在或已改變一抓緊配置可包含判定該第一末端受動器在或已在一未抓緊配置與一抓緊配置之間轉變。該第一機器人可係一自主或半自主車輛之至少一者,由處於一第一配置中之一自主或半自主車輛之該至少一者佔用之一體積之一大小或形狀之至少一者不同於由處於該第二配置中之一自主或半自主車輛之該至少一者佔用之一體積之一大小或形狀之至少一者,且其中判定該第一機器人將或已自一第一配置改變至一第二配置可包含判定一自主或半自主車輛之該至少一者正在或已在一自主或半自主車輛之該至少一者之該第一配置與該第二配置之間轉變。該提供針對該第一規劃圖之各邊緣之一各自邊緣資訊集至該至少一個處理器可包含在一運行時間段期間自一非暫時性儲存器擷取該各自邊緣資訊集,該各自邊緣資訊集在一預運行時間段期間被儲存至該非暫時性儲存器。該至少一個處理器可係一場可程式化閘陣列或特定應用積體電路之至少一者,且將該各自邊緣資訊集提供至至少一個處理器可包含將針對該等邊緣之一者之該邊緣資訊應用至實施於一場可程式化閘陣列或特定應用積體電路之該至少一者中之該至少一個處理器之複數個電路之各者。
在一機器人控制系統中之該操作方法可進一步包含:將該環境之該第一離散表示儲存於該至少一個處理器上之一記憶體中;及在將該環境之該第一離散表示儲存於該至少一個處理器上之一記憶體中之後,藉由該至少一個處理器自與該至少一個處理器分離之一儲存器接收該邊緣資訊集。
一種基於處理器之機器人控制系統可概括為包含:至少一個處理器;及至少一個非暫時性處理器可讀媒體,其儲存在藉由該至少一個處理器執行時引起該至少一個處理器執行以下項之處理器可執行指令或資料之至少一者:針對其中至少一第一機器人將操作之一環境,即由一或多個障礙物佔用之該環境之一第一離散表示,將該環境之該第一離散表示之至少一部分供應至至少一個處理器;針對儲存於與該至少一個處理器相關之記憶體中之複數個規劃圖之一第一規劃圖之各邊緣,其中該複數個規劃圖之各規劃圖與該第一機器人之一組不同實體尺寸相關聯,將一各自邊緣資訊集提供至該至少一個處理器,該各自邊緣資訊集表示由該第一機器人之至少一部分在於該第一機器人之一對狀態之間轉變時掃掠之一體積,該第一機器人之該對狀態由該第一規劃圖之一對節點之各自者表示,該各自對節點由該第一規劃圖之一各自邊緣耦合,該各自邊緣表示在該第一機器人之該各自對狀態之間之一轉變;及識別該對應轉變將導致該機器人之至少一部分與該環境中之該一或多個障礙物之至少一者之至少一部分之間之一碰撞之該第一規劃圖之該等邊緣之任何者。
處理器可執行指令或資料之該至少一者在藉由該至少一個處理器執行時可進一步引起該至少一個處理器執行上文描述之方法之任何者。
一種用於促進運動規劃之一系統中之操作方法可概括為包含:針對包含一組複數個任務及環境對之至少一第一案例,針對該至少該第一案例之該等任務及環境對之各者,針對複數個反覆之各者,藉由至少一個處理器產生其中一機器人將操作之一環境之一表示之一各自離散化,該等各自離散化之至少兩者包括各自一組三維像素,其中該等各自離散化之該至少兩者之該等三維像素在該各自離散化內在大小及形狀之至少一者上係非均勻的,且該等各自離散化之該至少兩者之該等三維像素之該非均勻性之一各自分佈彼此不同;評估其中該機器人將操作之該環境之該表示之該等經產生各自離散化之一有效性;及將經評估為針對至少該第一案例最有效之其中該機器人將操作之該環境之該表示之至少該等經產生各自離散化儲存至至少一個非暫時性處理器可讀媒體。
藉由至少一個處理器產生其中一機器人將操作之一環境之一表示之一各自離散化可包含產生其中相較於在該機器人後方之至少一個區域中之複數個該等三維像素之各者之一各自體積,在該機器人前方之至少一個區域之複數個該等三維像素之各者具有一相對小體積之一第一各自離散化。藉由至少一個處理器產生其中一機器人將操作之一環境之一表示之一各自離散化可包含產生其中在該機器人前方之一第一區域之複數個該等三維像素之各者具有一第一體積,在該機器人前方之一第二區域之複數個該等三維像素具有一第二體積,該第二體積不同於該第一體積之一第一各自離散化。藉由至少一個處理器產生其中一機器人將操作之一環境之一表示之一各自離散化可包含產生其中在該機器人前方之一第一區域之複數個該等三維像素之各者具有一第一體積,在該機器人前方之一第二區域之複數個該等三維像素具有一第二體積,且在該機器人前方之一第三區域之複數個該等三維像素具有一第三體積,該第三體積不同於該第二體積之一第一各自離散化。藉由至少一個處理器產生其中一機器人將操作之一環境之一表示之一各自離散化可包含產生其中在該機器人前方之一第一區域之複數個該等三維像素之各者具有一第一體積,在該機器人前方之一第二區域之複數個該等三維像素具有一第二體積,且在該機器人前方之一第三區域之複數個該等三維像素具有一第三體積,該第二體積不同於該第一體積,且該第三體積不同於該第二體積之一第一各自離散化。藉由至少一個處理器產生其中一機器人將操作之一環境之一表示之一各自離散化可包含產生其中在該機器人正前方之一第一區域中之複數個該等三維像素之各者具有一第一體積,在該機器人前方且相對於該機器人自該第一區域相對向外間隔之一第二區域中之複數個該等三維像素具有一第二體積,且在該機器人前方且相對於該機器人自該第二區域相對向外間隔之一第三區域中之複數個該等三維像素具有一第三體積,該第二體積不同於該第一體積,且該第三體積不同於該第二體積之一第一各自離散化。藉由至少一個處理器產生其中一機器人將操作之一環境之一表示之一各自離散化可包含產生其中在該機器人前方之至少一個區域中之複數個該等三維像素之各者之一形狀不同於在該機器人後方之至少一個區域之複數個該等三維像素之各者之一形狀之一第一各自離散化。藉由至少一個處理器產生其中一機器人將操作之一環境之一表示之一各自離散化可包含產生其中在該機器人前方之一第一區域中之複數個該等三維像素之各者具有一第一形狀,在該機器人前方之一第二區域中之複數個該等三維像素具有一第二形狀,該第二形狀不同於該第一形狀之一第一各自離散化。藉由至少一個處理器產生其中一機器人將操作之一環境之一表示之一各自離散化可包含產生其中在該機器人前方之一第一區域中之複數個該等三維像素之各者具有一第一形狀,在該機器人前方之一第二區域中之複數個該等三維像素具有一第二形狀,且在該機器人前方之一第三區域中之複數個該等三維像素具有一第三形狀,該第三形狀不同於該第二形狀之一第一各自離散化。藉由至少一個處理器產生其中一機器人將操作之一環境之一表示之一各自離散化可包含產生其中在該機器人前方之一第一區域中之複數個該等三維像素之各者具有一第一形狀,在該機器人前方之一第二區域中之複數個該等三維像素具有一第二形狀,且在該機器人前方之一第三區域中之複數個該等三維像素具有一第三形狀,該第二形狀不同於該第一形狀,且該第三形狀不同於該第二形狀之一第一各自離散化。藉由至少一個處理器產生其中一機器人將操作之一環境之一表示之一各自離散化可包含產生其中在該機器人正前方之一第一區域中之複數個該等三維像素之各者具有一第一形狀,在該機器人前方且相對於該機器人自該第一區域相對向外間隔之一第二區域中之複數個該等三維像素具有一第二形狀,且在該機器人前方且相對於該機器人自該第二區域相對向外間隔之一第三區域中之複數個該等三維像素具有一第三形狀,該第二形狀不同於該第一形狀,且該第三形狀不同於該第二形狀之一第一各自離散化。藉由至少一個處理器產生其中一機器人將操作之一環境之一表示之一各自離散化可包含產生其中在該機器人前方之至少一個區域中之複數個該等三維像素之各者之一形狀及一體積兩者不同於在該機器人後方之至少一個區域之複數個該等三維像素之各者之一形狀及一體積兩者之一第一各自離散化。藉由至少一個處理器產生其中一機器人將操作之一環境之一表示之一各自離散化可包含產生其中在該機器人前方之至少一個區域中之複數個該等三維像素之各者之一形狀及一體積兩者不同於在該機器人後方之至少一個區域之複數個該等三維像素之各者之一形狀及一體積兩者,且該等形狀之至少一者係非立方體之一第一各自離散化。評估其中該機器人將操作之該環境之該表示之該等經產生各自離散化之一有效性可包含判定其中該機器人將操作之該環境之該表示之經產生各自離散化之何者最可能導致無碰撞之一路徑。評估其中該機器人將操作之該環境之該表示之該等經產生各自離散化之一有效性可包含判定其中該機器人將操作之該環境之該表示之經產生各自離散化之何者最可能導致具有碰撞之一最低可能性之一路徑。評估其中該機器人將操作之該環境之該表示之該等經產生各自離散化之一有效性可包含判定其中該機器人將操作之該環境之該表示之經產生各自離散化之何者最可能導致一最低成本無碰撞路徑。將經評估為針對至少該第一案例最有效之其中該機器人將操作之該環境之該表示之至少該等經產生各自離散化儲存至至少一個非暫時性處理器可讀媒體可包含儲存針對複數個案例之各者之至少一個經產生各自離散化以及針對該複數個案例之各者應使用該等經產生各自離散化之何者之一指示。
一種用於促進運動規劃之基於處理器之系統可概括為包含:至少一個處理器;及至少一個非暫時性處理器可讀媒體,其儲存在藉由該至少一個處理器執行時引起該至少一個處理器執行以下項之處理器可執行指令或資料之至少一者:針對包含一組複數個任務及環境對之至少一第一案例,針對該至少該第一案例之該等任務及環境對之各者,針對複數個反覆之各者,藉由至少一個處理器產生其中一機器人將操作之一環境之一表示之一各自離散化,該等各自離散化之至少兩者包括各自一組三維像素,其中該等各自離散化之該至少兩者之該等三維像素在該各自離散化內在大小及形狀之至少一者上係非均勻的,且該等各自離散化之該至少兩者之該等三維像素之該非均勻性之一各自分佈彼此不同;評估其中該機器人將操作之該環境之該表示之該等經產生各自離散化之一有效性;及將經評估為針對至少該第一案例最有效之其中該機器人將操作之該環境之該表示之至少該等經產生各自離散化儲存至至少一個非暫時性處理器可讀媒體。
處理器可執行指令或資料之該至少一者在藉由該至少一個處理器執行時可進一步引起該至少一個處理器執行上文描述之方法之任何者。
一種用於促進運動規劃之一系統中之操作方法可概括為包含:至少部分基於對一機器人將執行之一任務及其中該機器人將操作之一環境之一對分類之一經識別案例,判定使用數個離散化之何者以產生表示該機器人之至少一部分在於該機器人之一個狀態與該機器人之另一狀態之間轉變時將通過之各自區域之數個掃掠體積;針對一規劃圖中之複數個邊緣之各者,使用該經判定離散化判定該邊緣之一各自掃掠體積,該規劃圖包括複數個節點及複數個邊緣,各節點表示該機器人之複數個狀態之一各自者,該等邊緣之各者耦合各自一對該等節點且表示由該機器人在由藉由該各自邊緣耦合之該等各自節點表示之該等狀態之間之一各自轉變;及將經評估為針對至少該經識別案例最有效之其中該機器人將操作之該環境之該表示之該等經判定掃掠體積之各自離散化之至少一者儲存至至少一個非暫時性處理器可讀媒體。
判定使用數個離散化之何者以產生數個掃掠體積可包含基於該經識別案例在至少兩個離散化之間選擇,其中該等各自離散化之至少兩者之三維像素在該各自離散化內在大小及形狀之至少一者上可係非均勻的,且該等各自離散化之該至少兩者之該等三維像素之該非均勻性之一各自分佈可彼此不同。使用該經判定離散化判定該邊緣之一各自掃掠體積可包含使用其中相較於在該機器人後方之至少一個區域中之複數個該等三維像素之各者之一各自體積,在該機器人前方之至少一個區域之複數個該等三維像素之各者可具有一相對小體積之該經判定離散化判定該邊緣之該各自掃掠體積。使用該經判定離散化判定該邊緣之一各自掃掠體積可包含使用其中在該機器人前方之一第一區域中之複數個該等三維像素之各者可具有一第一體積,在該機器人前方之一第二區域中之複數個該等三維像素可具有一第二體積,該第二體積不同於該第一體積之該經判定離散化判定該邊緣之該各自掃掠體積。使用該經判定離散化判定該邊緣之一各自掃掠體積可包含使用其中在該機器人前方之一第一區域中之複數個該等三維像素之各者可具有一第一體積,在該機器人前方之一第二區域中之複數個該等三維像素可具有一第二體積,且在該機器人前方之一第三區域中之複數個該等三維像素可具有一第三體積,該第三體積不同於該第二體積之該經判定離散化判定該邊緣之該各自掃掠體積。使用該經判定離散化判定該邊緣之一各自掃掠體積可包含使用其中在該機器人前方之一第一區域中之複數個該等三維像素之各者可具有一第一體積,在該機器人前方之一第二區域中之複數個該等三維像素可具有一第二體積,且在該機器人前方之一第三區域中之複數個該等三維像素可具有一第三體積,該第二體積不同於該第一體積,且該第三體積不同於該第二體積之該經判定離散化判定該邊緣之該各自掃掠體積。使用該經判定離散化判定該邊緣之一各自掃掠體積可包含使用其中在該機器人正前方之一第一區域中之複數個該等三維像素之各者可具有一第一體積,在該機器人前方且相對於該機器人自該第一區域相對向外間隔之一第二區域中之複數個該等三維像素可具有一第二體積,且在該機器人前方且相對於該機器人自該第二區域相對向外間隔之一第三區域中之複數個該等三維像素可具有一第三體積,該第二體積不同於該第一體積,且該第三體積不同於該第二體積之該經判定離散化判定該邊緣之該各自掃掠體積。使用該經判定離散化判定該邊緣之一各自掃掠體積可包含使用其中在該機器人前方之至少一個區域中之複數個該等三維像素之各者之一形狀可不同於在該機器人後方之至少一個區域之複數個該等三維像素之各者之一形狀之該經判定離散化判定該邊緣之該各自掃掠體積。使用該經判定離散化判定該邊緣之一各自掃掠體積可包含使用其中在該機器人前方之一第一區域中之複數個該等三維像素之各者可具有一第一形狀,且在該機器人前方之一第二區域中之複數個該等三維像素可具有一第二形狀,該第二形狀不同於該第一形狀之該經判定離散化判定該邊緣之該各自掃掠體積。使用該經判定離散化判定該邊緣之一各自掃掠體積可包含使用其中在該機器人前方之一第一區域中之複數個該等三維像素之各者可具有一第一形狀,在該機器人前方之一第二區域中之複數個該等三維像素可具有一第二形狀,且在該機器人前方之一第三區域中之複數個該等三維像素可具有一第三形狀,該第三形狀不同於該第二形狀之該經判定離散化判定該邊緣之該各自掃掠體積。使用該經判定離散化判定該邊緣之一各自掃掠體積可包含使用其中在該機器人前方之一第一區域中之複數個該等三維像素之各者可具有一第一形狀,在該機器人前方之一第二區域中之複數個該等三維像素可具有一第二形狀,且在該機器人前方之一第三區域中之複數個該等三維像素可具有一第三形狀,該第二形狀不同於該第一形狀,且該第三形狀不同於該第二形狀之該經判定離散化判定該邊緣之該各自掃掠體積。使用該經判定離散化判定該邊緣之一各自掃掠體積可包含使用其中在該機器人正前方之一第一區域中之複數個該等三維像素之各者可具有一第一形狀,在該機器人前方且相對於該機器人自該第一區域相對向外間隔之一第二區域中之複數個該等三維像素可具有一第二形狀,且在該機器人前方且相對於該機器人自該第二區域相對向外間隔之一第三區域中之複數個該等三維像素可具有一第三形狀,該第二形狀不同於該第一形狀,且該第三形狀不同於該第二形狀之該經判定離散化判定該邊緣之該各自掃掠體積。使用該經判定離散化判定該邊緣之一各自掃掠體積可包含使用其中在該機器人前方之至少一個區域中之複數個該等三維像素之各者之一形狀及一體積兩者不同於在該機器人後方之至少一個區域之複數個該等三維像素之各者之一形狀及一體積兩者之該經判定離散化判定該邊緣之該各自掃掠體積。
用於促進運動規劃之一系統中之該操作方法可進一步包含接收該經識別案例。
用於促進運動規劃之一系統中之該操作方法可進一步包含將一各自邊緣資訊集提供至至少一個處理器,該各自邊緣資訊集表示由該第一機器人之至少一部分在於該機器人之一對狀態之間轉變時掃掠之該各自掃掠體積。
該至少一個處理器可係一場可程式化閘陣列或特定應用積體電路之至少一者,且該操作方法可進一步包含將一各自邊緣資訊集應用至實施於一場可程式化閘陣列或特定應用積體電路之該至少一者中之該至少一個處理器之複數個電路之各者,該各自邊緣資訊集表示由該機器人之至少一部分在於該機器人之一對狀態之間轉變時掃掠之該各自掃掠體積。
一種用於促進運動規劃之基於處理器之系統可概括為包含:至少一個處理器;及至少一個非暫時性處理器可讀媒體,其儲存在藉由該至少一個處理器執行時引起該至少一個處理器執行以下項之處理器可執行指令或資料之至少一者:至少部分基於對一機器人將執行之一任務及其中該機器人將操作之一環境之一對分類之一經識別案例,判定使用數個離散化之何者以產生表示該機器人之至少一部分在於該機器人之一個狀態與該機器人之另一狀態之間轉變時將通過之各自區域之數個掃掠體積;針對一規劃圖中之複數個邊緣之各者,使用該經判定離散化判定該邊緣之一各自掃掠體積,該規劃圖包括複數個節點及複數個邊緣,各節點表示該機器人之複數個狀態之一各自者,該等邊緣之各者耦合各自一對該等節點且表示由該機器人在由藉由該各自邊緣耦合之該等各自節點表示之該等狀態之間之一各自轉變;及將經評估為針對至少該經識別案例最有效之其中該機器人將操作之該環境之該表示之該等經判定掃掠體積之各自離散化之至少一者儲存至至少一個非暫時性處理器可讀媒體。
處理器可執行指令或資料之該至少一者在藉由該至少一個處理器執行時可進一步引起該至少一個處理器執行上文描述之方法之任何者。
一種用於促進運動規劃之一系統中之操作方法可概括為包含:至少部分基於對一機器人將執行之一任務及其中該機器人操作之一環境之一對分類之一經識別案例,判定使用數個離散化之何者以產生該環境,若有則包含該環境中之障礙物之一離散表示;接收由感測該環境之一或多個感測器產生之感測器資訊,該感測器資訊表示該環境,若有則包含該環境中之障礙物;及使用該經判定離散化產生該環境,若有則包含該環境中之障礙物之一離散表示,其中該經判定離散化之複數個三維像素在該各自離散化內在大小及形狀之至少一者上係非均勻的,且該經判定離散化之該等三維像素之該非均勻性之一各自分佈不同於該數個離散化之另一者。
用於促進運動規劃之一系統中之該操作方法可進一步包含將該環境,若有則包含該環境中之障礙物之該經判定之經產生離散表示儲存至至少一個非暫時性處理器可讀媒體。
產生該環境,若有則包含該環境中之障礙物之一離散表示可包含使用匹配用於產生一掃掠體積之一離散表示之三維像素大小及形狀之一分佈之三維像素大小及形狀之一分佈產生該環境之該離散表示。產生該環境,若有則包含該環境中之障礙物之一離散表示可包含使用匹配用於產生由一機器人之至少一部分掃掠之一掃掠體積之一離散表示之三維像素大小及形狀之一分佈之三維像素大小及形狀之一分佈產生該環境之該離散表示。判定使用數個離散化之何者以產生該環境,若有則包含該環境中之障礙物之一離散表示可包含基於該經識別案例在至少兩個離散化之間選擇,其中該等各自離散化之至少兩者之該等三維像素在該各自離散化內在大小及形狀之至少一者上可係非均勻的,且該等各自離散化之該至少兩者之該等三維像素之該非均勻性之一各自分佈可彼此不同。產生該環境,若有則包含該環境中之障礙物之一離散表示可包含使用其中相較於在該機器人後方之至少一個區域中之複數個該等三維像素之各者之一各自體積,在該機器人前方之至少一個區域之複數個該等三維像素之各者可具有一相對小體積之該經判定離散化產生該環境之該離散表示。產生該環境,若有則包含該環境中之障礙物之一離散表示可包含使用其中在該機器人前方之一第一區域中之複數個該等三維像素之各者可具有一第一體積,且在該機器人前方之一第二區域中之複數個該等三維像素可具有一第二體積,該第二體積不同於該第一體積之該經判定離散化產生該環境之該離散表示。產生該環境,若有則包含該環境中之障礙物之一離散表示可包含使用其中在該機器人前方之一第一區域中之複數個該等三維像素之各者可具有一第一體積,在該機器人前方之一第二區域中之複數個該等三維像素可具有一第二體積,且在該機器人前方之一第三區域中之複數個該等三維像素可具有一第三體積,該第三體積不同於該第二體積之該經判定離散化產生該環境之該離散表示。產生該環境,若有則包含該環境中之障礙物之一離散表示可包含使用其中在該機器人前方之一第一區域中之複數個該等三維像素之各者可具有一第一體積,在該機器人前方之一第二區域中之複數個該等三維像素可具有一第二體積,且在該機器人前方之一第三區域中之複數個該等三維像素可具有一第三體積,該第二體積不同於該第一體積,且該第三體積不同於該第二體積之該經判定離散化產生該環境之該離散表示。產生該環境,若有則包含該環境中之障礙物之一離散表示可包含使用其中在該機器人正前方之一第一區域中之複數個該等三維像素之各者可具有一第一體積,在該機器人前方且相對於該機器人自該第一區域相對向外間隔之一第二區域中之複數個該等三維像素可具有一第二體積,且在該機器人前方且相對於該機器人自該第二區域相對向外間隔之一第三區域中之複數個該等三維像素可具有一第三體積,該第二體積不同於該第一體積,且該第三體積不同於該第二體積之該經判定離散化產生該環境之該離散表示。產生該環境,若有則包含該環境中之障礙物之一離散表示可包含使用其中在該機器人前方之至少一個區域中之複數個該等三維像素之各者之一形狀可不同於在該機器人後方之至少一個區域之複數個該等三維像素之各者之一形狀之該經判定離散化產生該環境之該離散表示。產生該環境,若有則包含該環境中之障礙物之一離散表示可包含使用其中在該機器人前方之一第一區域中之複數個該等三維像素之各者可具有一第一形狀,且在該機器人前方之一第二區域中之複數個該等三維像素可具有一第二形狀,該第二形狀不同於該第一形狀之該經判定離散化產生該環境之該離散表示。產生該環境,若有則包含該環境中之障礙物之一離散表示可包含使用其中在該機器人前方之一第一區域中之複數個該等三維像素之各者可具有一第一形狀,在該機器人前方之一第二區域中之複數個該等三維像素可具有一第二形狀,且在該機器人前方之一第三區域中之複數個該等三維像素可具有一第三形狀,該第三形狀不同於該第二形狀之該經判定離散化產生該環境之該離散表示。產生該環境,若有則包含該環境中之障礙物之一離散表示可包含使用其中在該機器人前方之一第一區域中之複數個該等三維像素之各者可具有一第一形狀,在該機器人前方之一第二區域中之複數個該等三維像素可具有一第二形狀,且在該機器人前方之一第三區域中之複數個該等三維像素可具有一第三形狀,該第二形狀不同於該第一形狀,且該第三形狀不同於該第二形狀之該經判定離散化產生該環境之該離散表示。產生該環境,若有則包含該環境中之障礙物之一離散表示可包含使用其中在該機器人正前方之一第一區域中之複數個該等三維像素之各者可具有一第一形狀,在該機器人前方且相對於該機器人自該第一區域相對向外間隔之一第二區域中之複數個該等三維像素可具有一第二形狀,且在該機器人前方且相對於該機器人自該第二區域相對向外間隔之一第三區域中之複數個該等三維像素可具有一第三形狀,該第二形狀不同於該第一形狀,且該第三形狀不同於該第二形狀之該經判定離散化產生該環境之該離散表示。產生該環境,若有則包含該環境中之障礙物之一離散表示可包含使用其中在該機器人前方之至少一個區域中之複數個該等三維像素之各者之一形狀及一體積兩者可不同於在該機器人後方之至少一個區域之複數個該等三維像素之各者之一形狀及一體積兩者之該經判定離散化產生該環境之該離散表示。
用於促進運動規劃之一系統中之該操作方法可進一步包含:接收表示欲由該機器人執行之該任務及其中該機器人欲操作之該環境之資訊;至少部分基於經接收資訊識別該經識別案例。
用於促進運動規劃之一系統中之該操作方法可進一步包含將該環境之該離散表示提供至至少一個處理器。
該至少一個處理器可係一場可程式化閘陣列或特定應用積體電路之至少一者,且該操作方法可進一步包含將該環境之該離散表示應用至實施於一場可程式化閘陣列或特定應用積體電路之該至少一者中之複數個電路之各者。
一種用於促進運動規劃之基於處理器之系統可概括為包含:至少一個處理器;及至少一個非暫時性處理器可讀媒體,其儲存在藉由該至少一個處理器執行時引起該至少一個處理器執行以下項之處理器可執行指令或資料之至少一者:至少部分基於對一機器人將執行之一任務及其中該機器人操作之一環境之一對分類之一經識別案例,判定使用數個離散化之何者以產生該環境,若有則包含該環境中之障礙物之一離散表示;接收由感測該環境之一或多個感測器產生之感測器資訊,該感測器資訊表示該環境,若有則包含該環境中之障礙物;及使用該經判定離散化產生該環境,若有則包含該環境中之障礙物之一離散表示,其中該經判定離散化之複數個三維像素在該各自離散化內在大小及形狀之至少一者上係非均勻的,且該經判定離散化之該等三維像素之該非均勻性之一各自分佈不同於該數個離散化之另一者。
處理器可執行指令或資料之該至少一者在藉由該至少一個處理器執行時可進一步引起該至少一個處理器執行上文描述之方法之任何者。
一種在採用複數個規劃圖之一機器人控制系統中之操作方法,各規劃圖分別包括由複數個邊緣連接之複數個節點,各節點隱含或明確地表示特性化該第一機器人之一各自狀態之變數,且各邊緣表示該第一機器人之各自一對該等狀態之間之一轉變,其中該各自對狀態由藉由該各自規劃圖中之一各自邊緣耦合之一對節點之各自者表示,該方法可概括為包含:針對該複數個規劃圖之一第一規劃圖,針對該第一規劃圖之複數個邊緣之各者,針對與該邊緣相關聯之一掃掠體積之一離散表示與其中該機器人將操作之一環境中之任何障礙物之一離散表示之間之碰撞執行碰撞檢查;基於該碰撞檢查更新該第一規劃圖;執行該經更新第一規劃圖之一最佳化以若有則自該經更新第一規劃圖識別一或多個最佳化結果;若有,則判定來自該經更新第一規劃圖之該一或多個最佳化結果是否符合一滿足條件;回應於判定該最佳化結果不符合該滿足條件:針對第二規劃圖之複數個邊緣之各者,針對與該邊緣相關聯之一掃掠體積之一離散表示與其中該機器人將操作之一環境中之任何障礙物之一離散表示之間之碰撞執行碰撞檢查,基於該碰撞檢查更新該第二規劃圖;及執行該經更新第二規劃圖之一最佳化以若有則自該經更新第二規劃圖識別一或多個最佳化結果。
在採用複數個規劃圖之一機器人控制系統中之該操作方法,各規劃圖分別包括由複數個邊緣連接之複數個節點,各節點隱含或明確地表示特性化該第一機器人之一各自狀態之變數,且各邊緣表示該第一機器人之各自一對該等狀態之間之一轉變,其中該各自對狀態由藉由該各自規劃圖中之一各自邊緣耦合之一對節點之各自者表示,該方法可進一步包含若有,則判定來自該經更新第二規劃圖之該一或多個最佳化結果是否符合一滿足條件。
在採用複數個規劃圖之一機器人控制系統中之該操作方法,各規劃圖分別包括由複數個邊緣連接之複數個節點,各節點隱含或明確地表示特性化該第一機器人之一各自狀態之變數,且各邊緣表示該第一機器人之各自一對該等狀態之間之一轉變,其中該各自對狀態由藉由該各自規劃圖中之一各自邊緣耦合之一對節點之各自者表示,該方法可回應於若有,則判定來自該經更新第二規劃圖之該一或多個最佳化結果符合該滿足條件,將由來自該經更新第二規劃圖之該一或多個最佳化結果之一者識別之一轉變應用至該機器人。
在採用複數個規劃圖之一機器人控制系統中之該操作方法,各規劃圖分別包括由複數個邊緣連接之複數個節點,各節點隱含或明確地表示特性化該第一機器人之一各自狀態之變數,且各邊緣表示該第一機器人之各自一對該等狀態之間之一轉變,其中該各自對狀態由藉由該各自規劃圖中之一各自邊緣耦合之一對節點之各自者表示,該方法可回應於若有,則判定來自該經更新第二規劃圖之該一或多個最佳化結果不符合該滿足條件:針對一第三規劃圖之複數個邊緣之各者,針對與該邊緣相關聯之一掃掠體積之一離散表示與其中該機器人將操作之一環境中之任何障礙物之一離散表示之間之碰撞執行碰撞檢查,基於該碰撞檢查更新該第三規劃圖;及執行該經更新第三規劃圖之一最佳化以若有則自該經更新第三規劃圖識別一或多個最佳化結果。
在採用複數個規劃圖之一機器人控制系統中之該操作方法,各規劃圖分別包括由複數個邊緣連接之複數個節點,各節點隱含或明確地表示特性化該第一機器人之一各自狀態之變數,且各邊緣表示該第一機器人之各自一對該等狀態之間之一轉變,其中該各自對狀態由藉由該各自規劃圖中之一各自邊緣耦合之一對節點之各自者表示,該方法可回應於若有,則判定來自該經更新第三規劃圖之該一或多個最佳化結果符合該滿足條件:將由來自該經更新第三規劃圖之該一或多個最佳化結果之一者識別之一轉變應用至該機器人。
若有,則判定來自該經更新第二規劃圖之該一或多個最佳化結果符合該滿足條件可包含判定該最佳化是否產生任何路徑。若有,則判定來自該經更新第二規劃圖之該一或多個最佳化結果符合該滿足條件可包含判定該最佳化是否產生任何無碰撞路徑。針對與該邊緣相關聯之一掃掠體積之一離散表示與其中該機器人將操作之一環境中之任何障礙物之一離散表示之間之碰撞執行碰撞檢查可包含針對該第一規劃圖中之該等邊緣之各者,將針對該等邊緣之一邊緣資訊集並行應用至複數個電路之各者,該等電路各表示由其中該機器人操作之該環境中之一障礙物佔用之一各自單位體積。
在採用複數個規劃圖之一機器人控制系統中之該操作方法,各規劃圖分別包括由複數個邊緣連接之複數個節點,各節點隱含或明確地表示特性化該第一機器人之一各自狀態之變數,且各邊緣表示該第一機器人之各自一對該等狀態之間之一轉變,其中該各自對狀態由藉由該各自規劃圖中之一各自邊緣耦合之一對節點之各自者表示,該方法可進一步包含組態至少一個處理器以實施表示由其中至少該第一機器人將操作之該環境中之一或多個障礙物佔用之複數個單位體積之各者之各自者之複數個電路。
一種採用複數個規劃圖之基於處理器之機器人控制系統,各規劃圖分別包括由複數個邊緣連接之複數個節點,各節點隱含或明確地表示特性化該第一機器人之一各自狀態之變數,且各邊緣表示該第一機器人之各自一對該等狀態之間之一轉變,其中該各自對狀態由藉由該各自規劃圖中之一各自邊緣耦合之一對節點之各自者表示,該基於處理器之機器人控制系統可概括為包含:至少一個處理器;及至少一個非暫時性處理器可讀媒體,其儲存在藉由該至少一個處理器執行時引起該至少一個處理器執行以下項之處理器可執行指令或資料之至少一者:針對該複數個規劃圖之一第一規劃圖,針對該第一規劃圖之複數個邊緣之各者,針對與該邊緣相關聯之一掃掠體積之一離散表示與其中該機器人將操作之一環境中之任何障礙物之一離散表示之間之碰撞執行碰撞檢查;基於該碰撞檢查更新該第一規劃圖;執行該經更新第一規劃圖之一最佳化以若有則自該經更新第一規劃圖識別一或多個最佳化結果;若有,則判定來自該經更新第一規劃圖之該一或多個最佳化結果是否符合一滿足條件;回應於判定該最佳化結果不符合該滿足條件:針對第二規劃圖之複數個邊緣之各者,針對與該邊緣相關聯之一掃掠體積之一離散表示與其中該機器人將操作之一環境中之任何障礙物之一離散表示之間之碰撞執行碰撞檢查,基於該碰撞檢查更新該第二規劃圖;及執行該經更新第二規劃圖之一最佳化以若有則自該經更新第二規劃圖識別一或多個最佳化結果。
處理器可執行指令或資料之該至少一者在藉由該至少一個處理器執行時可進一步引起該至少一個處理器執行上文描述之方法之任何者。
在以下描述中,闡述某些具體細節以便提供各種所揭示實施例之一透徹理解。然而,熟習相關技術者將認知,可在不具有此等具體細節之一或多者之情況下或使用其他方法、組件、材料等實踐實施例。在其他例項中,未詳細展示或描述與電腦系統、致動器系統及/或通信網路相關聯之熟知結構以避免不必要地使實施例之描述不清楚。在其他例項中,未詳細描述用於產生一或多個物件及類似者之感知資料及體積表示之熟知電腦視覺方法及技術以避免不必要地使實施例之描述不清楚。
除非背景內容另外需要,否則貫穿下文之說明書及發明申請專利範圍,詞「包括(comprise)」及其變動(諸如「包括(comprises)」及「包括(comprising)」)應在一開放、包含性意義上被解釋為「包含,但不限於」。
貫穿本說明書提及「一項實施例」或「一實施例」意謂結合實施例描述之一特定特徵、結構或特性包含於至少一項實施例中。因此,在貫穿本說明書之各種位置中出現之片語「在一項實施例中」或「在一實施例中」不一定全部係指相同實施例。此外,可在一或多項實施例中以任何適合方式組合特定特徵、結構或特性。
如在本說明書及隨附發明申請專利範圍中使用,單數形式「一(a/an)」及「該」包含複數指示物,除非內容另外清楚指示。亦應注意,術語「或」通常在其包含「及/或」之意義上被採用,除非內容另外清楚指示。
本文中提供之本發明之摘要及標題僅係為了方便且不解譯實施例之範疇或意義。
圖1展示根據一項經繪示實施例之其中一機器人102可操作之一操作環境100。為了簡潔起見,操作環境100在本文中被稱為環境100。環境表示其中機器人102可操作且移動之二維或三維空間。機器人102可係任何類型之機器人,包含但不限於:笛卡爾(Cartesian)、用於機器人組裝之選擇性順應性臂(SCARA)、圓柱形、三角形、極性及垂直鉸接。機器人亦可係一汽車、飛機、無人機或可自主地或半自主地(即,至少部分自主地)操作且在由環境100表示之空間中移動之任何其他車輛。環境100係其中機器人操作且不同於下文關於圖4A及圖4B之運動規劃圖提及且如在以下申請案中解釋之機器人之「組態空間」(通常稱為「C空間」)之二維或三維空間:2017年6月9日申請之標題為「MOTION PLANNING FOR AUTONOMOUS VEHICLES AND RECONFIGURABLE MOTION PLANNING PROCESSORS」之國際專利申請案第PCT/US2017/036880號,該案之全文藉此以引用的方式併入本文中;及2016年1月5日申請之標題為「SPECIALIZED ROBOT MOTION PLANNING HARDWARE AND METHODS OF MAKING AND USING SAME」之國際專利申請公開案第WO 2016/122840號,該案之全文藉此以引用的方式併入本文中。組態空間通常係許多維的(即,大於3個維度)。特定言之,規劃圖之各節點表示機器人之一狀態,該狀態可包含但不限於機器人之一特定組態(其係機器人之一組特定關節位置之完整規範)、機器人之姿勢、速度及前進方向(heading)。規劃圖之各邊緣表示機器人自一個狀態至另一狀態之一轉變。
參考圖1,環境100可包含障礙物碰撞區域。此等障礙物碰撞區域可係歸因於環境100中之靜態物件(例如,建築物、樹、岩石、家具等)或動態物件(例如,其他機器人、車輛、人、動物、滾石、鳥等)。例如,障礙物A 112及障礙物B 104表示在環境100中產生碰撞區域,使得若機器人102嘗試與障礙物A 112或障礙物B 104同時佔用環境100內之相同空間,則機器人102可與障礙物A 112或障礙物B 104碰撞之物件。在各項實施例中,可存在比圖1中展示之物件更少或額外的物件。
運動規劃之挑戰涉及在機器人自身之特性改變時,以一相對低成本但以非常快的速度且頻繁地執行運動規劃之能力。例如,此等特性可包含但不限於當機器人固持具有各種大小之物件時,當改變至一不同末端受動器時或當改變至一不同附肢時被視為由機器人佔用之體積。因此,機器人102跟上該等改變以便執行運動係有利的。此涉及有效地表示、傳達及比較被視為由機器人102佔用之空間與環境100中之障礙物之挑戰。例如,如圖1中展示,障礙物A 112當前在機器人102前方。機器人102能夠快速地且有效地判定機器人臂106之哪些移動(及機器人102之任何移動)將導致與障礙物A 112之一碰撞係有利的。因此,本發明提供將使機器人102能夠有效地表示、傳達且比較由機器人102佔用之空間與環境100中之障礙物A 112以促進判定機器人臂106之哪些移動將導致與障礙物A 112之一碰撞之解決方案。
雖然圖1繪示一代表性環境100,但典型環境可包含許多額外物件及實體,包含對應於其他機器人之物件以及各種其他自然或人工靜態及動態物件及障礙物。本文中教示之概念可以一類似方式與比所繪示之環境更人口稠密之一環境一起採用。
圖2及以下論述提供根據一項經繪示實施例之其中可實施各種經繪示及經描述運動規劃系統及方法之一適合機器人控制系統200之一簡要概述。
雖然不需要,但將在電腦可執行指令(諸如儲存於電腦或處理器可讀媒體上且由可執行碰撞評估及運動規劃操作之一或多個電腦或處理器執行之程式應用模組、物件或巨集)之一般背景內容中描述許多實施例。此等運動規劃操作可包含但不限於以下項之一或多者:產生與規劃圖之邊緣相關聯之機器人掃掠體積之一或多個離散表示;判定使用數個離散化之何者以產生機器人掃掠體積之離散表示;產生其中機器人102將操作之環境(包含環境中之障礙物)之離散表示;判定使用數個離散化之何者以產生環境之一離散表示;判定複數個規劃圖;儲存經判定複數個規劃圖及各自邊緣資訊集;產生表示由機器人102之至少一部分在由規劃圖之節點表示之狀態之間轉變時掃掠之一體積之資訊;執行對一規劃圖之邊緣之一碰撞評估;提供規劃圖之邊緣資訊集;自規劃圖識別一或多個最佳化結果;針對與規劃圖之邊緣相關聯之掃掠體積之離散表示與其中機器人102將操作之環境中之障礙物之離散表示之間之碰撞進行碰撞檢查;判定最佳化是否產生機器人102之任何無碰撞路徑;及實施機器人102之一運動規劃。
圖1之機器人102具有感測器(諸如圖2中展示之感測器282),該等感測器將感知資料發送至一或多個處理器(諸如處理器212a)。感知資料係當前環境中存在之三維像素或盒(box)之一串流。此資料由一或多個處理器(諸如處理器212a)以一佔用柵格之形式產生(或提供至該一或多個處理器)。特定言之,當表示環境100中之一機器人或一物件(例如,一障礙物)時,吾等可將其等表面表示為三維像素(3D像素)或多邊形(通常三角形)網格。將空間之各離散區域稱為一「三維像素」,其等效於一3D (體積)像素。在一些情況中,代替性地將物件表示為盒(矩形稜柱)係有利的。歸因於物件非隨機塑形之事實,可存在如何組織三維像素之大量結構;一物件中之許多三維像素在3D空間中彼此緊鄰。因此,將物件表示為盒可需要遠更少之位元(即,可僅需要針對盒之兩個相對邊角之x、y、z笛卡爾座標)。又,對盒進行交叉測試之複雜性相當於對三維像素進行交叉測試。
許多實施例可組合多個感測器之輸出且感測器可提供一非常精細粒度三維像素化。然而,為了使機器人102有效地執行運動規劃,機器人102之處理器212a可使用較粗糙三維像素(即,「處理器三維像素」)以表示3D空間中由機器人102在各種狀態之間進行轉變時掃掠之環境及體積。因此,系統200可相應地轉換感測器282之輸出。例如,感測器282之輸出可在各軸上使用10位元之精確度,因此直接源自感測器282之各三維像素(即,一「感測器三維像素」)具有一30位元ID,且存在230 個感測器三維像素。系統200 (在設計時間及運行時間)針對一18位元處理器三維像素ID在各軸上使用6位元之精確度,且存在218 個處理器三維像素。因此,每一處理器三維像素存在212 個感測器三維像素。在運行時間,若系統200判定一處理器三維像素內之任何感測器三維像素被佔用,則系統200將處理器三維像素視為被佔用且相應地產生佔用柵格。
機器人102之一規劃圖之各邊緣亦具有對應於3D空間中由機器人102在於規劃圖中進行由該邊緣表示之自一個狀態至另一狀態之轉變時掃掠之體積之某一數目個三維像素(或盒)。由機器人102在於規劃圖中進行由該邊緣表示之自一個狀態至另一狀態之轉變時掃掠之該等三維像素或盒可針對規劃圖之各邊緣儲存於專用於規劃圖之晶片外記憶體中,諸如規劃圖邊緣資訊記憶體284中。在各項其他實施例中,由機器人102在於規劃圖中進行由該邊緣表示之自一個狀態至另一狀態之轉變時掃掠之三維像素或盒可針對規劃圖之各邊緣儲存於其他位置中,諸如(例如)一或多個特定應用積體電路(ASIC)中之晶片上記憶體中。
在一項實施例中,藉由首先將全部障礙物三維像素(或盒)串流傳輸至一處理器(諸如處理器212a)上而執行碰撞評估。例如,表示環境100 (包含障礙物A 112及障礙物B 104)之障礙物三維像素(或盒)可串流傳輸至處理器212a中且儲存於環境記憶體294上。環境記憶體294係處理器212a之晶片上記憶體。在一些實施例中,環境記憶體294可係一場可程式化閘陣列(FPGA)中之區塊RAM (BRAM)。在一些實施例中,BRAM可係含有數千位元之隨機存取記憶體(RAM)之一專屬、可組態雙埠記憶體單元。FPGA含有此等區塊之若干者。接著,針對機器人102之規劃圖之各邊緣之邊緣資訊自專用於規劃圖之晶片外記憶體(諸如自規劃圖邊緣資訊記憶體284)串流傳輸。針對各邊緣三維像素(或盒),當其自一邊緣之掃掠體積串流傳輸入時,若其與任何障礙物三維像素(或盒)碰撞,則處理器212a判定與規劃圖中之該邊緣之一碰撞。
例如,當一邊緣三維像素自規劃圖之邊緣x之掃掠體積串流傳輸入時,處理器212a可使用布林(Boolean)電路以比較邊緣三維像素與儲存於環境記憶體294上之全部障礙物三維體積(或盒)。若系統200基於比較判定邊緣三維像素與任何障礙物三維像素(或盒)碰撞,則系統200備註與邊緣x之一碰撞。此實施例改良碰撞評估之技術,此係因為如相較於其中在規劃圖之全部邊緣上並行執行碰撞評估之其他設計,此實施例實現在碰撞評估中使用遠更大的規劃圖。特定言之,此幫助克服其他設計關於可儲存於處理器晶片電路上之一有限量之規劃圖資訊之缺點。使用本文中描述之碰撞評估方法,晶片上儲存器(諸如環境記憶體294)通常完全足以儲存全部障礙物盒(雖然其在使用三維像素之情況下可能不這麼足夠)。此提供將大規劃圖及/或多個規劃圖儲存於較不昂貴晶片外儲存器中之能力。例如,此提供將大規劃圖及/或多個規劃圖儲存於規劃圖邊緣資訊記憶體284中之能力,在一些實施例中,該規劃圖邊緣資訊記憶體284係一較不昂貴類型之記憶體,諸如動態隨機存取記憶體(DRAM)。
在各項實施例中,此等操作可完全在硬體電路中執行或作為儲存於一記憶體儲存器(諸如系統記憶體214)中之軟體,且由一或多個硬體處理器212a (諸如一或多個微處理器、數位信號處理器(DSP)、場可程式化閘陣列(FPGA)、特定應用積體電路(ASIC)、圖形處理單元(GPU)處理器、程式化邏輯控制器(PLC)、電可程式化唯讀記憶體(EEPROM))執行,或作為硬體電路及儲存於記憶體儲存器中之軟體之一組合。
又,感知、規劃圖建構、碰撞偵測及路徑搜尋之各種相關態樣之實施方案亦描述於以下申請案中:2017年6月9日申請之標題為「MOTION PLANNING FOR AUTONOMOUS VEHICLES AND RECONFIGURABLE MOTION PLANNING PROCESSORS」之國際專利申請案第PCT/US2017/036880號;2016年1月5日申請之標題為「SPECIALIZED ROBOT MOTION PLANNING HARDWARE AND METHODS OF MAKING AND USING SAME」之國際專利申請公開案第WO 2016/122840號;及________________申請之標題為「APPARATUS, METHOD AND ARTICLE TO FACILITATE MOTION PLANNING OF AN AUTONOMOUS VEHICLE IN AN ENVIRONMENT HAVING DYNAMIC OBJECTS」之美國專利申請案第_________號(代理人檔案號碼790139.404P1),且其等之全文以引用的方式併入本文中。熟習相關技術者將瞭解,經繪示實施例以及其他實施例可使用其他系統結構及配置及/或其他運算系統結構及配置(包含機器人、手持式裝置、多處理器系統、基於微處理器或可程式化消費者電子器件、個人電腦「PC」、聯網PC、迷你電腦、主機電腦及類似者之系統結構及配置)實踐。實施例或其等之部分(例如,在設計時間及預運行時間)可在其中任務或模組由遠端處理裝置(其等透過一通信網路連結)執行之分散式運算環境中實踐。在一分散式運算環境中,程式模組可位於本端及遠端記憶體儲存裝置或媒體兩者中。然而,何處及如何儲存某些類型之資訊對於幫助改良運動規劃係重要的。
例如,各種運動規劃解決方案將一路線圖(即,一規劃圖) 「併入(bake in)」至處理器中,且路線圖中之各邊緣對應於處理器之一不可重新組態布林電路。其中規劃圖被「併入」至處理器之設計提出具有有限處理器電路以儲存多個或大規劃圖之一問題。
一個解決方案提供將規劃圖資訊放置於記憶體儲存器中之一可重新組態設計。使用此一解決方案,再次存在針對規劃圖之各邊緣之資訊,但此資訊儲存於記憶體中而非併入至一電路中。各邊緣對應於機器人102之一運動,且各運動掃掠3D空間中之一體積。此掃掠體積與某一數目個障礙物三維像素(或盒,或然而,在各項實施例中,其可被決定為表示障礙物)碰撞。使用此一解決方案,此邊緣與其碰撞之三維像素係儲存於記憶體中之資訊。
本發明提供一解決方案,該解決方案提供以一更有效方式在運行時間(即,重新組態處理器)於多個規劃圖之間動態地切換,從而提供優於其他設計之若干改良。例如,考量具有可抓緊物件之一末端受動器之一機器人。機器人臂在固持某物時與在不固持某物時不同之3D空間之部分碰撞。一個實例係使用末端受動器在臂之末端處固持一大球之機器人臂106。若機器人102正固持某物,則對應於當機器人102 「不固持任何東西」時之規劃圖不起作用。相反地,即使機器人102不固持任何東西,吾等仍可非常保守地使用「固持某物」規劃圖,但其既效率低且將需要使用對應於其中機器人102固持最大可能物件之案例之一單一規劃圖。代替性地,在各項實施例中,系統200建置對應於不同可能特性(例如,「不固持任何東西」、「固持具有大小x之一小球體」、「固持具有大小y之一矩形稜柱」等)之一系列規劃圖。在機器人102將物品拾取且將其等放下時,可藉由處理器212a將此等規劃圖自規劃圖邊緣資訊記憶體284換入且換出。此解決方案亦適用於其末端受動器有時改變之一機器人。例如,機器人102可在一配置中具有具備一第一組尺寸之一第一末端受動器。可以具有一第二組尺寸之一第二末端受動器交換此第一末端受動器。當以具有一第二組尺寸之一第二末端受動器交換第一末端受動器時,機器人102將處於具有第二末端受動器之一不同配置中。在第二組尺寸之尺寸不同於第一組尺寸之尺寸之情況下,由機器人掃掠之體積在交換末端受動器時改變。又例如,在機器人係一自主或部分自主車輛之情況下,車輛可在一第一時段期間在一第一配置中具有一第一組尺寸且在一第二時段期間在一第二配置中具有一第二組尺寸。例如,一車輛可在一第一配置中係空的且在一第二配置中滿載,從而改變車輛之重量且潛在地改變車輛在一道路上方之一高度、車輛下方之一間隙或甚至一車輛之一軌跡(例如,當其繞一轉角或曲線轉彎時)。在第二組尺寸之尺寸不同於第一組尺寸之尺寸之情況下,由車輛掃掠之體積在第一配置與第二配置之間改變。同樣地,在軌跡於第一配置與第二配置之間改變之情況下,由車輛掃掠之體積在該等配置之間改變。因此,系統200針對不同末端受動器將不同規劃圖儲存於規劃圖邊緣資訊記憶體284中。
規劃圖耗費大量時間及資源來建置,但使用本文中提供之解決方案,吾等將僅需要(例如)在運行時間之前建置規劃圖一次。一旦規劃圖經產生,其等便可全部儲存於規劃圖邊緣資訊記憶體284中且處理器212a相對快速且有效地將其等換入且換出,或基於機器人102之當前特性(諸如當機器人抓緊具有一特定大小之一物件時)選擇使用哪一者。
如上文提及,一些預處理活動可在運行時間之前執行且因此,在一些實施例中,此等操作可由遠端處理裝置執行,該等遠端處理裝置係經由網路介面260透過一通信網路連結至機器人控制系統200。例如,一程式化階段容許針對所關注問題準備機器人。在此等實施例中,利用廣泛預處理來避免運行時間運算。關於3D空間中由機器人102在於規劃圖中進行由路線圖中之邊緣表示之自一個狀態至另一狀態之轉變時掃掠之空間之經預運算資料可儲存於規劃圖邊緣資訊記憶體284中且在運行時間期間由處理器212a存取。系統200亦可在運行時間之前建置對應於在運行時間期間可發生之機器人之不同可能改變尺寸特性之一系列規劃圖。接著,系統200將此等規劃圖儲存於規劃圖邊緣資訊記憶體284中。
在運行時間階段期間,感測器282將感知資料發送至處理器212a。感知資料可係存在於當前環境中且儲存於晶片上環境記憶體294中之三維像素或盒之一串流。使用布林電路以比較自環境記憶體294擷取之感知資料與儲存於規劃圖邊緣資訊記憶體284中之資訊,處理器212a計算哪些運動避免碰撞且在機器人102之規劃圖中選擇用於遵循之一對應路徑。接著,處理器212a運行且傳回所得路徑至致動器系統266。
圖2展示一機器人控制系統200 (諸如機器人102之機器人控制系統),其包括由處理器212a表示之一或多個處理器及一或多個相關聯非暫時性機器可讀儲存媒體,諸如系統記憶體214、規劃圖邊緣資訊記憶體284及與碟機224相關聯之電腦可讀媒體226。相關聯非暫時性電腦或處理器可讀儲存媒體(包含系統記憶體214、規劃圖邊緣資訊記憶體284及與碟機224相關聯之電腦可讀媒體226)經由一或多個通信通道(諸如系統匯流排216)通信地耦合至處理器212a。系統匯流排216可採用任何已知匯流排結構或架構,包含具有記憶體控制器之一記憶體匯流排、一周邊匯流排及/或一區域匯流排。一或多個感測器282及一致動器系統266亦經由系統匯流排216通信地耦合至處理器212a。一或多個此等組件可亦或代替性地經由一或多個其他通信通道(例如,一或多個並列電纜、串列電纜或能夠進行高速通信之無線網路通道(例如,通用串列匯流排(USB) 3.0、周邊組件互連快速(PCIe)或經由Thunderbolt® ))彼此通信。
機器人控制系統200亦可通信地耦合至遠端系統(未展示)(例如,桌上型電腦、膝上型電腦、超攜帶型電腦、平板電腦、智慧型電話、穿戴型電腦),該等遠端系統直接可通信地耦合至機器人控制系統200之各種組件或經由網路介面260間接可通信地耦合至機器人控制系統200之各種組件。此等遠端系統可用於程式化、組態、控制或以其他方式介接於機器人控制系統200及機器人控制系統200內之各種組件或將資料輸入至機器人控制系統200及機器人控制系統200內之各種組件。此一連接可係透過一或多個通信通道(例如,一或多個廣域網路(WAN)(例如,網際網路,其使用網際網路協定))。如上文提及,預運行時間計算(例如,該系列規劃圖之產生)可由與機器人102分開之一系統或其他機器人執行,而運行時間計算可在處理器212 (其在機器人102上)上執行,此係因為系統200能夠改變規劃圖以即時對機器人102之改變之實體尺寸作出反應係重要的。
除非另外描述,否則圖2中展示之各種區塊之建構及操作具有習知設計或描述於以下申請案中:2017年6月9日申請之標題為「MOTION PLANNING FOR AUTONOMOUS VEHICLES AND RECONFIGURABLE MOTION PLANNING PROCESSORS」之國際專利申請案第PCT/US2017/036880號;2016年1月5日申請之標題為「SPECIALIZED ROBOT MOTION PLANNING HARDWARE AND METHODS OF MAKING AND USING SAME」之國際專利申請公開案第WO 2016/122840號;及/或________________申請之標題為「APPARATUS, METHOD AND ARTICLE TO FACILITATE MOTION PLANNING OF AN AUTONOMOUS VEHICLE IN AN ENVIRONMENT HAVING DYNAMIC OBJECTS」之美國專利申請案第_________號(代理人檔案號碼790139.404P1),且其等之全文以引用的方式併入本文中。因此,此等區塊不需要進一步詳細描述,此係因為鑑於以引用的方式併入本文中之參考案,熟習相關技術者將理解此等區塊。
機器人控制系統200可包含一或多個處理單元212、系統記憶體214、規劃圖邊緣資訊記憶體284及系統匯流排216,該系統匯流排216將包含系統記憶體214及規劃圖邊緣資訊記憶體284之各種系統組件耦合至處理單元212。在一些實施例中,規劃圖邊緣資訊記憶體284可係系統記憶體214或係系統記憶體214之部分。處理單元可係任何邏輯處理單元,諸如一或多個中央處理單元(CPU) 212a、數位信號處理器(DSP) 212b、特定應用積體電路(ASIC)、場可程式化閘陣列(FPGA)等。系統記憶體214可包含唯讀記憶體(「ROM」) 218及隨機存取記憶體(「RAM」) 220。規劃圖邊緣資訊記憶體284可包含RAM,諸如DRAM。可形成ROM 218之部分之一基本輸入/輸出系統(「BIOS」) 222含有基本常式,該等基本常式幫助諸如在起動期間在機器人控制系統200內之元件之間傳送資訊。
機器人控制系統200可包含一碟機224,該碟機224可係(例如)用於自一硬碟讀取且寫入至一硬碟之一硬碟機、用於自一可抽換式快閃記憶體裝置讀取且寫入至一可抽換式快閃記憶體裝置之一快閃記憶體驅動機、用於自可抽換式光碟讀取或寫入至可抽換式光碟之一光碟驅動器或用於自磁碟讀取或寫入至磁碟之一磁碟機。在各項不同實施例中,機器人控制系統200亦可包含此等碟機之任何組合。碟機224可經由系統匯流排216與處理單元212通信。碟機224可包含耦合於此等驅動機與系統匯流排216之間之介面或控制器(未展示),如熟習相關技術者已知。碟機224及其相關聯電腦可讀媒體226提供電腦可讀指令、資料結構、程式模組及機器人控制系統200之其他資料之非揮發性儲存。熟習相關技術者將瞭解,可採用可儲存可由一電腦存取之資料之其他類型之電腦可讀媒體,諸如WORM驅動機、RAID驅動機、磁帶盒、數位視訊光碟(「DVD」)、柏努利盒(Bernoulli cartridge)、RAM、ROM、智慧卡等。
程式模組可儲存於系統記憶體214中,諸如一作業系統236、一或多個應用程式238、其他程式或模組240及程式資料242。應用程式238可包含引起(若干)處理器212執行以下項之一或多者之指令:產生與規劃圖之邊緣相關聯之機器人掃掠體積之一或多個離散表示;判定使用數個離散化之何者以產生機器人掃掠體積之離散表示;產生其中機器人將操作之環境100 (包含環境100中之障礙物)之離散表示;判定使用數個離散化之何者以產生環境100之一離散表示;判定複數個規劃圖;儲存經判定複數個規劃圖及各自邊緣資訊集;產生表示由機器人之至少一部分在由規劃圖之節點表示之狀態之間轉變時掃掠之一體積之資訊;執行對一規劃圖之邊緣之一碰撞評估;提供針對規劃圖之邊緣資訊集;識別來自規劃圖之一或多個最佳化結果;針對與規劃圖之邊緣相關聯之掃掠體積之離散表示與其中機器人102將操作之環境100中之障礙物之離散表示之間之碰撞進行碰撞檢查;判定最佳化是否產生機器人之任何無碰撞路徑;及實施機器人之一運動規劃。應用程式238可另外包含引起(若干)處理器212執行以下其他操作之一或多個機器可讀指令集:感知(經由感測器282)、規劃圖建構、碰撞偵測及路徑搜尋,如在本文中且在以引用的方式併入本文中之參考案中描述。
應用程式238可另外包含引起(若干)處理器212執行以下項之一或多個機器可讀指令集:產生表示由機器人102在對應於機器人102具有不同尺寸時之狀態之間轉變時掃掠之不同體積之各自規劃圖邊緣資訊集;及將對應於各自規劃圖邊緣資訊集之複數個規劃圖儲存於規劃圖邊緣資訊記憶體284中。
應用程式238可另外包含引起(若干)處理器212執行以下項之一或多個機器可讀指令集:針對其中機器人102將操作之一環境100之一第一離散表示,供應環境100之第一離散表示之至少一部分且將其儲存於環境記憶體294中;針對規劃圖之各邊緣,提供一各自邊緣資訊集且將其儲存於規劃圖邊緣資訊記憶體284中;及識別對應轉變將導致機器人102之至少一部分與一或多個障礙物(諸如環境100中之障礙物A 112及障礙物B 104)之至少一者之至少一部分之間之一碰撞之規劃圖之任何邊緣。
術語「環境」在本實例中用於指機器人之當前工作空間(包含障礙物)。術語「任務」在本實例中用於指其中機器人102必須自姿勢A變至姿勢B (可能抓緊或丟下某物)而不與其環境中之障礙物碰撞之一機器人任務。術語「案例」在本實例中用於指一種類別之環境/任務對。例如,一案例可係「在具有一3英呎桌之一環境中及在具有在一給定範圍中之大小及尺寸之x障礙物與y障礙物之間之取置任務」。取決於目標之位置以及障礙物之大小及形狀,可存在符合此準則之許多不同任務/環境對。系統200可包含經由網路介面260透過一通信網路連結之一或多個遠端處理裝置。此一或多個遠端處理裝置可執行一或多個機器可讀指令集,該一或多個機器可讀指令集引起系統200針對各種不同案例之任務及環境對產生其中機器人102將操作之一環境100之一表示之一各自離散化。在一例示性實施例中,各自離散化之至少兩者包括各自一組三維像素。各自離散化之三維像素可在各自離散化內在大小及形狀之至少一者上係非均勻的。又,各自離散化之三維像素之非均勻性之一各自分佈可彼此不同。特定言之,離散化可包括各自一組三維像素,其中各自離散化之至少兩者之三維像素在各自離散化內在大小及形狀之至少一者上係非均勻的,且各自離散化之至少兩者之三維像素之非均勻性之一各自分佈彼此不同。應用程式238可包含引起(若干)處理器212接著執行以下項之一或多個機器可讀指令集:評估其中機器人將操作之環境100之表示之經產生各自離散化之一有效性;及儲存經評估為針對特定案例最有效之經產生各自離散化。
應用程式238可另外包含引起(若干)處理器212執行以下項之一或多個機器可讀指令集:基於對機器人102將執行之一任務及其中機器人將操作之環境100之一對進行分類之一經識別案例,判定使用數個離散化之何者以產生表示機器人102在機器人之一個狀態與機器人102之另一狀態之間轉變時將通過之各自區域之數個掃掠體積;及針對一規劃圖中之複數個邊緣之各者,使用經判定離散化判定邊緣之一各自掃掠體積。應用程式238可另外包含引起(若干)處理器212執行以下項之一或多個機器可讀指令集:儲存經評估為針對經識別案例最有效之其中機器人102將操作之環境100之表示之經判定掃掠體積之各自離散化。
應用程式238可另外包含引起(若干)處理器212執行以下項之一或多個機器可讀指令集:至少部分基於對機器人102將執行之任務及其中機器人將操作之一環境100之一對進行分類之一經識別案例,判定使用數個離散化之何者以產生環境100之一離散表示。應用程式238可另外包含引起(若干)處理器212執行以下項之一或多個機器可讀指令集:接收由感測環境100之一或多個感測器282產生之感測器資訊且使用經判定離散化產生環境(包含環境中之障礙物(若有))之一離散表示。經判定離散化之複數個三維像素可在各自離散化內在大小及形狀之至少一者上係非均勻的,且經判定離散化之三維像素之非均勻性之一各自分佈可不同於數個離散化之另一者。
應用程式238可另外包含引起(若干)處理器212執行以下項之一或多個機器可讀指令集:針對多個規劃圖在規劃圖之邊緣與其中機器人將操作之一環境中之任何障礙物之間執行碰撞檢查。(若干)處理器212可對各規劃圖執行此碰撞檢查,相應地暫時更新規劃圖,且執行一最佳化且判定來自經更新規劃圖之最佳化結果(若有)是否符合一滿足條件。若不符合滿足條件,則(若干)處理器212可移動至下一規劃圖且執行相同操作。一旦發現其中符合滿足條件之一規劃圖,(若干)處理器212便將由來自規劃圖之最佳化結果之一者識別之符合滿足條件之一轉變應用至機器人102。
應用程式238可另外包含引起(若干)處理器212執行本文中描述之各種其他方法(包含但不限於圖6至圖10中繪示之方法)之一或多個機器可讀指令集。
在各項實施例中,上文描述之一或多個操作可藉由系統200之一或多個遠端處理裝置(其或其等經由網路介面260透過一通信網路連結)或藉由定位於機器人102上之一或多個處理器212執行。
雖然在圖2中展示為儲存於系統記憶體214中,但作業系統236、應用程式238、其他程式/模組240及程式資料242可儲存於碟機224之相關聯電腦可讀媒體226上。
(若干)處理器212可係任何邏輯處理單元,諸如一或多個中央處理單元(CPU)、數位信號處理器(DSP)、特定應用積體電路(ASIC)、場可程式化閘陣列(FPGA)等。市售電腦系統之非限制性實例包含但不限於由美國的Intel® 公司提供之Celeron、Core、Core 2、Itanium及Xeon系列微處理器;由美國的Advanced Micro Devices提供之K8、K10、Bulldozer及Bobcat系列微處理器;由美國的Apple Computer提供之A5、A6及A7系列微處理器;由美國的Qualcomm, Inc.提供之Snapdragon系列微處理器;及由美國的Oracle Corp.提供之SPARC系列微處理器。除非另外描述,否則圖2中展示之各種區塊之建構及操作具有習知設計。因此,此等區塊不需要在本文中進一步詳細描述,此係因為熟習相關技術者將理解其等。
圖3係根據一項經繪示實施例之其中機器人102可操作之圖1之環境100之一示意圖,其繪示機器人102自3D空間中之一個位置轉變至環境100中之3D空間中之另一位置及由機器人之一附肢在進行自3D空間中之一個位置至3D空間中之另一位置之轉變時掃掠之一體積之一表示。
在圖3中繪示之實例中,機器人102被展示為具有兩個附肢,即臂106及臂108。在一個實例中,機器人可藉由將臂106自一第一位置移動至一第二位置而在3D空間中改變一位置,如圖3中展示。在3D空間中由機器人102在藉由將臂106自一第一位置移動至一第二位置(如圖3中展示)而在3D空間中之一個位置與3D空間中之另一位置之間轉變時掃掠之體積由區域302表示。然而,如圖3中展示,此一轉變將引起機器人臂106與區域304中之障礙物A 112碰撞。
因此,為了促進避免碰撞,在設計時間(在運行時間之前),藉由系統200產生一或多個規劃圖以判定哪些區域由機器人102在進行自一個狀態至另一狀態之各種轉變時佔用。例如,機器人102之一規劃圖之一邊緣具有對應於3D空間中由對應於區域302之機器人102掃掠之體積之某一數目個三維像素(或盒)。由對應於區域302之機器人102在於規劃圖中進行對應轉變時掃掠之該等三維像素或盒可如對應於規劃圖之一邊緣儲存於專用於規劃圖之晶片外記憶體中,諸如規劃圖邊緣資訊記憶體284中。接著,在運行時間,表示環境100 (包含障礙物A 112 (及亦障礙物B 104))之障礙物三維像素(或盒)以一佔用柵格之形式串流傳輸至處理器212a中且儲存於晶片上環境記憶體294上。系統200 (基於佔用柵格)判定哪些三維像素被佔用,且判定不使用將與任何當前被佔用三維像素碰撞之任何運動。特定言之,針對表示一邊緣之掃掠體積之一部分之各邊緣三維像素(或盒),當其自規劃圖邊緣資訊記憶體284串流傳輸入時,處理器基於佔用柵格判定其是否與已儲存於環境記憶體294中之任何障礙物三維像素(或盒)碰撞。若邊緣三維像素(或盒)與任何障礙物三維像素(或盒)碰撞,則系統200判定與規劃圖中之該邊緣之一碰撞且將判定不使用與規劃圖中之該邊緣相關聯之機器人102之運動。
例如,在執行圖3中描繪之機器人臂106之運動之前,系統200將開始自規劃圖邊緣記憶體284串流傳輸入可應用規劃圖之全部邊緣之邊緣三維像素(或盒)。針對各邊緣,當處理器212a遇到各邊緣三維像素(或盒)時,其將檢查看任何邊緣三維像素(或盒)是否與儲存於環境記憶體294中之任何障礙物三維像素(或盒)(包含針對障礙物A 112之三維像素(或盒))碰撞。如圖3中展示,區域304內之任何邊緣三維像素(或盒)將導致此一碰撞,此係因為根據佔用柵格,儲存於環境記憶體294中之障礙物A 112之障礙物三維像素(或盒)佔用該相同區域。一旦處理器212a遇到與任何障礙物三維像素(或盒)碰撞之一邊緣三維像素(或盒),處理器212a便接著判定不使用規劃圖之該邊緣。一旦完成處理規劃圖之邊緣,處理器212a便使用未經判定以與儲存於環境記憶體294中之障礙物三維像素(或盒)碰撞之剩餘邊緣判定規劃圖內將引起機器人自初始位置移動至目標位置之一路徑。
系統200亦可做出關於如何表示由各規劃圖表示之掃掠體積以及如何表示環境100中之障礙物之決策。此等決策可包含由處理器212a做出之關於如何執行離散化(諸如(例如)使用三維像素還是盒表示掃掠體積、要使用之三維像素或盒之形狀及大小、是否使用在所使用之三維像素或盒之大小及/或形狀上非均勻之一離散化及在哪些案例中使用三維像素或盒之不同形狀及/或大小)之決策。在各項實施例中,上文描述之用於做出關於如何表示由各規劃圖表示之掃掠體積以及如何表示環境100中之障礙物之決策之一或多個此等操作可藉由系統200之一或多個遠端處理裝置(其或其等經由網路介面260透過一通信網路連結)或藉由定位於機器人102上之一或多個處理器212執行。
特定言之,系統200可決定機器人102之工作空間將經離散化為三維像素(其等可隨後被分組為盒)。一個例示性實施方案執行3個維度之各者中之均勻量化。然而,具有非立方體形狀之三維像素及/或在機器人之工作空間之不同部分中較小/較大之三維像素可係有利的。例如,一項實施例在機器人102正前方之空間中使用較小三維像素(較精細解析度)且在機器人伸距(reach)之最末端處使用較大三維像素(較粗糙解析度)。因此,各項實施例可使用非均勻量化及/或使用非立方體形狀三維像素。本發明亦提供關於系統200如何選擇三維像素大小及/或形狀之一演算法。
一項例示性實施例使用一訓練演算法以供在運行時間之前執行以判定哪些三維像素大小及形狀可較佳用於各種不同案例。藉由使用來自一或多個案例之給定或經產生之一大組任務/環境對訓練系統200。系統200接著選擇經評估為對大組訓練樣品最有效之離散化。
例如,針對任何給定環境/任務對,存在一最佳離散化(或同樣最佳之多個離散化)。系統200可對T個環境/任務對進行測試/訓練(其中T係一大數目),且接著記錄各者之最佳離散化。此可導致許多不同離散化,該等離散化之各者針對僅一個或小數目個環境/任務對最佳。在測試全部T個環境/任務對之後,系統選擇經評估為對整組樣品最有效之離散化。此方法將亦涉及對每一可能環境/任務對嘗試每一可能離散化,其將係難處理的。
為了克服上文之問題,系統200執行如同上文解釋之訓練之訓練,惟系統200考量有限數目(G)個可能離散化除外。針對各環境/任務對,系統記錄所提供之G個離散化之哪些經評估為最有效。在處理全部T個環境/任務對之後,系統200選擇經評估為在大多數環境/任務對中最有效之離散化。
作為一實例,機器人102可面對在其前方之空間之一盒。系統可判定離散化空間,使得使用6位元以描述各維度中之位置(即,在各軸上存在26 個可能位置)。此導致218 個三維像素,該等三維像素之各者具有一唯一18位元ID。在設計時間,系統200預計算每一邊緣之運動之掃掠體積,且將其記錄為該掃掠體積中之三維像素ID之集合。若掃掠體積甚至與一三維像素部分地相交,則其包含於該掃掠體積中之三維像素ID之集合中。此係使用一較精細解析度係較佳之原因。接著,在運行時間,感測器282告知處理器212a什麼在機器人102前方,但以比表示經預計算掃掠體積之三維像素遠更精細之一粒度,因此系統200處理感測器輸入且將三維像素之何者當前被佔用傳達至處理器212a。在一些實施例中,處理器212a處理感測器輸入且在其他實施例中,存在處理感測器輸入且傳達至處理器212a之單獨處理器,諸如感測器282之處理器。處理器212a基於儲存於環境記憶體294中之資訊比較當前在環境中之三維像素或盒與針對儲存於規劃圖邊緣資訊記憶體284中之規劃圖邊緣資訊之各邊緣所列出之三維像素或盒以判定哪些邊緣當前在碰撞中。在此等實施例中,在設計時間使用與在運行時間相同之離散化以便實現比較係重要的。
當系統200選擇使用非均勻離散化時,系統200仍可使用18位元三維像素ID及218 個三維像素,但三維像素不需要為立方體(或其等可係立方體但不全部具有相同大小)。再次,在此實施例中,系統在設計時間使用與在運行時間相同之離散化係重要的。當使用一非均勻離散化時,系統200使用訓練(諸如上文描述之訓練)選擇各三維像素之大小及形狀為何,使得系統選取將在設計時間及在運行時間使用之經評估為最有效之三維像素大小及形狀。在此訓練中使用之評估準則可包含關於可解決之任務之部分(例如,系統200可發現用於完成機器人102之目標之某一無碰撞路徑)及經發現之路徑之品質之準則。
圖4A係根據一項經繪示實施例之圖1及圖3之機器人102之一例示性運動規劃圖400,其包含已判定對應轉變將導致機器人102與環境100中之一或多個障礙物之間之一碰撞之規劃圖400之邊緣。圖4B係根據一項經繪示實施例之一例示性運動規劃圖400,其中已移除已判定對應轉變將導致機器人102與環境100中之一或多個障礙物之間之一碰撞之規劃圖400之邊緣。規劃圖400之各節點表示機器人102之一狀態且規劃圖400之各邊緣表示機器人102自一個狀態至另一狀態之一轉變。例如,邊緣410a表示由節點408a表示之機器人102之一狀態與由節點408b表示之機器人102之一狀態之間之一轉變。邊緣410i表示由節點408c表示之機器人102之一狀態與由節點408d表示之機器人102之一狀態之間之一轉變。
機器人102之規劃圖400之各邊緣具有對應於3D空間中由機器人102在於規劃圖400中進行由該邊緣表示之自一個狀態至另一狀態之轉變時掃掠之體積之某一數目個三維像素(或盒)。此資訊可作為規劃圖邊緣資訊儲存於晶片外規劃圖邊緣資訊記憶體284中,使得系統200可換出不同規劃圖以適應機器人102之改變之尺寸。在運行時間使用自感測器282接收之表示當前環境之資訊,系統200判定哪些三維像素(或盒)當前被佔用,且系統200判定不使用將與任何當前被佔用三維像素(或盒)碰撞之任何運動。
在一些實施例中,系統藉由在運行時間比較自感測器282接收且儲存於晶片上環境記憶體294中之表示當前環境(及其中之障礙物)之資訊與儲存於規劃圖邊緣資訊記憶體284中之規劃圖邊緣資訊而判定不使用將與任何被佔用三維像素(或盒)碰撞之任何運動。基於此比較,系統200判定哪些規劃圖邊緣表示將導致機器人102與環境100中之一或多個障礙物之間之一碰撞之轉變(及因此對應運動)。作為一實例,圖4A展示已被判定為表示將導致機器人102與環境100中之一或多個障礙物之間之一碰撞之轉變(及因此對應運動)之邊緣410b、410c、410d、410e、410f、410g、410h、410i、410j、410k及410l。
例如,為了使機器人102達成自由節點408a表示之一狀態移動至由節點408d表示之一狀態之一目標,機器人102將必須避免由邊緣410b、410c、410d、410e、410f、410g、410h、410i、410j、410k及410l表示之已被判定為表示將導致機器人102與環境100中之一或多個障礙物之間之一碰撞之轉變之轉變。因此,圖4B展示規劃圖,其中此等邊緣被移除且其具有規劃圖400中由系統200識別之其中機器人102可遵循以達成自由節點408a表示之狀態移動至由節點408d表示之狀態而不與環境100中之一或多個障礙物碰撞之一目標之一潛在路徑416。
圖5係展示根據一項經繪示實施例之用於藉由根據特定境況提供不同規劃圖之邊緣資訊而促進運動規劃之一機器人控制系統200中之一操作方法500之一流程圖。用於藉由根據特定境況提供不同規劃圖之邊緣資訊而促進運動規劃之一機器人控制系統200中之操作方法500在502處開始。
在504處,針對將在一環境中操作之一機器人102,系統200判定複數個規劃圖。各規劃圖分別包括由複數個邊緣連接之複數個節點,各節點隱含或明確地表示特性化機器人102之一各自狀態之變數。各邊緣表示機器人102之各自一對狀態之間之一轉變。該各自對狀態由藉由各自規劃圖中之一各自邊緣耦合之一對節點之各自者表示。
在506處,針對規劃圖之各者之邊緣之至少兩者或兩者以上,系統200產生表示由機器人102之至少一部分在於由藉由各自邊緣耦合之各自節點表示之狀態之間轉變時掃掠之一體積之一各自邊緣資訊集。在至少一項實施例中,系統200在運行時間之前產生各自邊緣資訊集。
在508處,系統200將複數個規劃圖及邊緣資訊集儲存於至少一個非暫時性處理器可讀儲存器中。
在510處,基於機器人102之至少一部分在一第一時間具有一第一組實體尺寸,系統200將針對規劃圖之一第一者之邊緣資訊集提供至至少一個處理器。
在512處,基於機器人102之至少一部分在一第二時間具有一第二組實體尺寸,系統200將針對規劃圖之一第二者之邊緣資訊集提供至至少一個處理器。第二組實體尺寸中之至少一個尺寸不同於第一組之尺寸之一對應者。用於藉由根據特定境況提供不同規劃圖之邊緣資訊而促進運動規劃之一機器人控制系統200中之操作方法500在514處結束。
機器人102可具有可選擇性地操作用於相對於其中機器人102操作之環境移動之至少一第一附肢。機器人102亦可具有附接至第一附肢之一第一末端受動器。第一末端受動器可選擇性地操作用於在至少一第一末端受動器配置與一第二末端受動器配置(例如,一抓緊配置及未抓緊配置)之間移動。系統200可判定附接至第一附肢之第一末端受動器處於一第一末端受動器配置中。例如,末端受動器可處於一未抓緊或打開位置中。此係一第一末端受動器配置之一實例。處於一抓緊位置中之末端受動器係一第二末端受動器配置之一實例。第一組實體尺寸表示處於第一末端受動器配置中之第一末端受動器之一組尺寸。特定言之,第一組實體尺寸係當末端受動器處於一未抓緊位置中時機器人之實體尺寸。在此一情況中,將針對規劃圖之一第一者之邊緣資訊集提供至至少一個處理器係回應於附接至第一附肢之第一末端受動器處於第一末端受動器配置中(即,處於一未抓緊或打開位置中)之判定。
又,系統200可判定附接至第一附肢之第一末端受動器處於一第二末端受動器配置中。例如,末端受動器可處於一抓緊或閉合位置中。此係一第二末端受動器配置之一實例。處於一未抓緊或打開位置中之末端受動器係一第一末端受動器配置之一實例。在其中第一附肢處於一第二末端受動器配置中(即,處於一抓緊或閉合位置中)之一情況中,第二組實體尺寸表示處於第二末端受動器配置中之第一末端受動器之一組尺寸。特定言之,第二組實體尺寸係當末端受動器處於一抓緊位置中時機器人之實體尺寸。將針對規劃圖之一第二者之邊緣資訊集提供至至少一個處理器係接著回應於附接至第一附肢之第一末端受動器處於第二末端受動器配置中(即,處於一抓緊或閉合位置中)之判定。
在一些實施例中,機器人102具有可選擇性地操作用於相對於其中機器人102操作之環境移動之至少一第一附肢,且一第一末端受動器附接至第一附肢。第一末端受動器可選擇性地操作用於在一未抓緊配置與一抓緊配置之間移動。由處於抓緊配置中之第一末端受動器佔用之一體積之一大小或形狀之至少一者不同於由處於未抓緊配置中之第一末端受動器佔用之一體積之一大小或形狀之至少一者。在此一情況中,系統200可判定附接至第一附肢之第一末端受動器處於未抓緊配置中。將針對規劃圖之一第一者之邊緣資訊集提供至至少一個處理器係接著回應於附接至第一附肢之第一末端受動器處於未抓緊配置中之判定。
圖6係展示根據一項經繪示實施例之用於藉由識別對應轉變將導致一碰撞之一規劃圖之邊緣而促進運動規劃之一機器人控制系統200中之一操作方法600之一流程圖,規劃圖係儲存於晶片外記憶體中之複數個規劃圖之一者,該等規劃圖之各者與機器人之一組不同實體尺寸相關聯。用於藉由識別對應轉變將導致一碰撞之一規劃圖之邊緣而促進運動規劃之一機器人控制系統200中之操作方法600在602處開始。
在604處,針對其中至少一機器人102將操作之一環境之一第一離散表示,系統200將環境之第一離散表示之至少一部分供應至至少一個處理器。環境由一或多個障礙物佔用。
在606處,針對一第一規劃圖之各邊緣,系統200將一各自邊緣資訊集提供至至少一個處理器。第一規劃圖係儲存於與處理器相關之晶片外記憶體中之複數個規劃圖之一者。複數個規劃圖之各規劃圖與第一機器人之一組不同實體尺寸相關聯。各自邊緣資訊集表示由機器人102之至少一部分在於機器人102之一對狀態之間轉變時掃掠之一體積。機器人102之該對狀態由第一規劃圖之一對節點之各自者表示。該各自對節點之節點由第一規劃圖之一各自邊緣耦合且各自邊緣表示機器人102之該各自對狀態之間之一轉變。
在608處,系統200識別對應轉變將導致機器人102之至少一部分與環境中之一或多個障礙物之至少一者之至少一部分之間之一碰撞之第一規劃圖之邊緣之任何者。用於藉由識別對應轉變將導致一碰撞之一規劃圖之邊緣而促進運動規劃之一機器人控制系統200中之操作方法600在610處結束。
圖7係展示根據一項經繪示實施例之用於藉由評估其中機器人102將操作之環境之一表示之經產生非均勻離散化之一有效性而促進運動規劃之一機器人控制系統200中之一操作方法700之一流程圖。用於藉由評估其中機器人102將操作之環境之一表示之經產生非均勻離散化之一有效性而促進運動規劃之一機器人控制系統200中之操作方法700在702處開始。
在704處,針對複數個反覆之各者,系統200產生其中一機器人102將操作之一環境之一表示之一各自離散化。系統200針對包含一組複數個任務及環境對之至少一第一案例且針對至少第一案例之任務及環境對之各者執行此。各自離散化之至少兩者包括各自一組三維像素。各自離散化之至少兩者之三維像素在各自離散化內在大小及形狀之至少一者上係非均勻的。各自離散化之至少兩者之三維像素之非均勻性之一各自分佈亦彼此不同。
在706處,系統200評估其中機器人將操作之環境之表示之經產生各自離散化之一有效性。系統200針對包含一組複數個任務及環境對之至少一第一案例且針對至少第一案例之任務及環境對之各者執行此。
在708處,系統判定是否存在進一步任務及環境對以供處理。若系統200判定針對當前案例存在進一步任務及環境對以供處理,則方法700返回至704以繼續產生包含於案例中之任務及環境對組之各自離散化且接著在706處評估其等有效性。若系統200判定針對當前案例不存在進一步任務及環境對以供處理,則方法700繼續至710。
在710處,系統200將經評估為針對至少第一案例最有效之其中機器人將操作之環境之表示之至少經產生各自離散化儲存至至少一個非暫時性處理器可讀媒體。
在712處,系統200判定是否存在進一步案例以供處理。若系統200判定存在進一步案例以供處理,則方法700返回至704以繼續產生包含於下一案例中之任務及環境對組之各自離散化且在706處評估其等有效性。若系統200判定不存在進一步案例以供處理,則用於藉由評估其中機器人102將操作之環境之一表示之經產生非均勻離散化之一有效性而促進運動規劃之一機器人控制系統200中之操作方法700在714處結束。在一些實施例中,可存在與多個案例相關聯之一個規劃圖。在此等實施例中,系統200可產生與此一規劃圖相關聯之任務及環境對組之各自離散化。圖8係展示根據一項經繪示實施例之用於藉由判定使用數個離散化之何者以產生表示機器人102將通過之各自區域之數個掃掠體積而促進運動規劃之一機器人控制系統200中之一操作方法800之一流程圖。用於藉由判定使用數個離散化之何者以產生表示機器人102將通過之各自區域之數個掃掠體積而促進運動規劃之一機器人控制系統200中之操作方法800在802處開始。
在804處,至少部分基於對一機器人102將執行之一任務及其中機器人將操作之一環境之一對分類之一經識別案例,系統200判定使用數個離散化之何者以產生表示機器人102之至少一部分在於機器人102之一個狀態與機器人102之另一狀態之間轉變時將通過之各自區域之數個掃掠體積。此判定可包含基於經識別案例在至少兩個離散化之間選擇。在此一情況中,各自離散化之至少兩者之三維像素在各自離散化內在大小及形狀之至少一者上係非均勻的。又,各自離散化之至少兩者之三維像素之非均勻性之一各自分佈彼此不同。
在806處,針對一規劃圖中之複數個邊緣之各者,系統200使用經判定離散化判定邊緣之一各自掃掠體積。規劃圖包括複數個節點及複數個邊緣。各節點表示機器人之複數個狀態之一各自者。各邊緣耦合一對節點且表示機器人102在由藉由邊緣耦合之各自節點表示之狀態之間之一轉變。
在808處,系統200將經評估為針對至少經識別案例最有效之其中機器人102將操作之環境之表示之經判定掃掠體積之各自離散化之至少一者儲存至至少一個非暫時性處理器可讀媒體。用於藉由判定使用數個離散化之何者以產生表示機器人102將通過之各自區域之數個掃掠體積而促進運動規劃之一機器人控制系統200中之操作方法800在810處結束。在一些實施例中,規劃圖可與多個案例相關聯。圖9係展示根據一項經繪示實施例之用於藉由使用一經判定離散化而產生其中機器人102將操作之環境之一離散表示而促進運動規劃之一機器人控制系統200中之一操作方法900之一流程圖。用於藉由使用一經判定離散化而產生其中機器人102將操作之環境之一離散表示而促進運動規劃之一機器人控制系統200中之操作方法900在902處開始。
在904處,至少部分基於對一機器人102將執行之一任務及其中機器人102操作之一環境之一對分類之一經識別案例,系統200判定使用數個離散化之何者以產生環境(包含環境中之障礙物(若有))之一離散表示。
在906處,系統200接收由感測環境之一或多個感測器282產生之感測器資訊。感測器資訊表示環境(包含環境中之障礙物(若有))。
在908處,系統200使用經判定離散化產生環境(包含環境中之障礙物(若有))之一離散表示。經判定離散化之複數個三維像素在各自離散化內在大小及形狀之至少一者上係非均勻的。經判定離散化之三維像素之非均勻性之一各自分佈不同於數個離散化之另一者。系統使用匹配用於產生一掃掠體積之一離散表示之三維像素大小及形狀之一分佈之三維像素大小及形狀之一分佈產生環境之離散表示。用於藉由使用一經判定離散化而產生其中機器人102將操作之環境之一離散表示而促進運動規劃之一機器人控制系統200中之操作方法900在910處結束。
圖10係展示根據一項經繪示實施例之用於藉由判定規劃圖之最佳化結果是否符合滿足條件而促進運動規劃之一機器人控制系統200中之一操作方法1000之一流程圖。方法1000採用複數個規劃圖。各規劃圖分別包括由複數個邊緣連接之複數個節點。各節點隱含或明確地表示特性化第一機器人之一各自狀態之變數且各邊緣表示第一機器人之各自一對狀態之間之一轉變。該各自對狀態由藉由各自規劃圖中之一各自邊緣耦合之一對節點之各自者表示。用於藉由判定規劃圖之最佳化結果是否符合滿足條件而促進運動規劃之一機器人控制系統200中之操作方法1000在1002處開始。
在1004處,針對複數個規劃圖之一第一規劃圖,且針對第一規劃圖之複數個邊緣之各者,系統200針對與邊緣相關聯之一掃掠體積之一離散表示與其中機器人將操作之一環境中之任何障礙物之一離散表示之間之碰撞執行碰撞檢查。
在1006處,系統200基於碰撞檢查更新第一規劃圖。
在1008處,系統200執行經更新第一規劃圖之一最佳化以自經更新第一規劃圖識別一或多個最佳化結果(若有)。
在1010處,系統200判定來自經更新第一規劃圖之一或多個最佳化結果(若有)是否符合一滿足條件。
在1012處,若系統200判定來自經更新第一規劃圖之一或多個最佳化結果(若有)不符合滿足條件,則方法1000繼續至1014。若系統200判定來自經更新第一規劃圖之一或多個最佳化結果(若有)符合滿足條件,則方法1000在1020處結束。回應於判定來自經更新第一規劃圖之一或多個最佳化結果(若有)符合滿足條件,系統200可將由來自經更新第一規劃圖之一或多個最佳化結果之一者識別之一轉變應用至機器人102 (例如,移動機器人)。
在1014處,回應於系統200判定來自經更新第一規劃圖之一或多個最佳化結果(若有)不符合滿足條件,針對第二規劃圖之複數個邊緣之各者,系統200針對與邊緣相關聯之一掃掠體積之一離散表示與其中機器人102將操作之一環境中之任何障礙物之一離散表示之間之碰撞執行碰撞檢查。
在1016處,系統200基於碰撞檢查更新第二規劃圖。
在1018處,系統200執行經更新第二規劃圖之一最佳化以自經更新第二規劃圖識別一或多個最佳化結果(若有)。用於藉由判定規劃圖之最佳化結果是否符合滿足條件而促進運動規劃之一機器人控制系統200中之操作方法1000在1020處結束。
系統200亦可判定來自經更新第二規劃圖之一或多個最佳化結果(若有)是否符合一滿足條件。回應於判定來自經更新第二規劃圖之一或多個最佳化結果(若有)符合滿足條件,系統200可將由來自經更新第二規劃圖之一或多個最佳化結果之一者識別之一轉變應用至機器人102 (例如,移動機器人)。
此外,回應於判定來自經更新第二規劃圖之一或多個最佳化結果(若有)不符合滿足條件,系統可重複碰撞檢查,更新規劃圖,對後續規劃圖執行最佳化直至系統識別符合滿足條件之一規劃圖。系統200可接著將由來自經識別規劃圖之一或多個最佳化結果識別之一轉變應用至機器人102。在一些實施例中,在此一程序中判定來自經更新規劃圖之最佳化結果是否符合滿足條件可包含判定最佳化是否產生任何無碰撞路徑。此等無碰撞路徑係避免與環境中之全部障礙物之碰撞之路徑。
前述詳細描述已經由使用方塊圖、示意圖及實例闡述裝置及/或程序之各項實施例。在此等方塊圖、示意圖及實例含有一或多個功能及/或操作之範圍內,熟習此項技術者將理解,此等方塊圖、流程圖或實例內之各功能及/或操作可由廣範圍之硬體、軟體、韌體或基本上其等之任何組合個別地及/或共同地實施。在一項實施例中,本標的物可經由布林電路、特定應用積體電路(ASIC)及/或FPGA實施。然而,熟習此項技術者將認知,本文中揭示之實施例整體或部分可實施於標準積體電路中之各種不同實施方案中,作為在一或多個電腦上運行之一或多個電腦程式(例如,作為在一或多個電腦系統上運行之一或多個程式),作為在一或多個控制器(例如,微控制器)上運行之一或多個程式,作為在一或多個處理器(例如,微處理器)上運行之一或多個程式,作為韌體或作為基本上其等之任何組合,且鑑於本發明,一般技術者將良好地掌握設計電路及/或撰寫軟體及/或韌體之程式碼。
熟習此項技術者將認知,本文中陳述之許多方法或演算法可採用額外動作,可省略一些動作及/或可以不同於所指示之一順序執行動作。
另外,熟習此項技術者將瞭解,本文中教示之機構能夠以各種形式分佈為一程式產品,且一闡釋性實施例相等地適用而無關於用於實際上實行分佈之信號承載媒體之特定類型。信號承載媒體之實例包含但不限於以下項:可記錄類型媒體,諸如硬碟機、CD ROM及電腦記憶體。
可組合上文描述之各項實施例以提供進一步實施例。本說明書中提及及/或在申請案資料頁中列出之共同讓與之美國專利申請公開案、美國專利申請案、外國專利及外國專利申請案之全部之全文以引用的方式併入本文中,包含但不限於 2017年6月9日申請之標題為「MOTION PLANNING FOR AUTONOMOUS VEHICLES AND RECONFIGURABLE MOTION PLANNING PROCESSORS」之國際專利申請案第PCT/US2017/036880號,及2016年1月5日申請之標題為「SPECIALIZED ROBOT MOTION PLANNING HARDWARE AND METHODS OF MAKING AND USING SAME」之國際專利申請公開案第WO 016/122840號。鑑於上文詳細描述,可對實施例進行此等及其他改變。一般言之,在以下發明申請專利範圍中,所使用之術語不應被解釋為將發明申請專利範圍限於說明書及發明申請專利範圍中揭示之特定實施例,但應解釋為包含全部可能實施例以及此等發明申請專利範圍所授權之等效物之全範疇。因此,發明申請專利範圍不由本發明限制。
100‧‧‧操作環境
102‧‧‧機器人
104‧‧‧障礙物B
106‧‧‧機器人臂
108‧‧‧臂
112‧‧‧障礙物A
200‧‧‧機器人控制系統
212a‧‧‧處理器/中央處理單元(CPU)
212b‧‧‧數位信號處理器(DSP)
214‧‧‧系統記憶體
216‧‧‧系統匯流排
218‧‧‧唯讀記憶體(ROM)
220‧‧‧隨機存取記憶體(RAM)
222‧‧‧基本輸入/輸出系統(BIOS)
224‧‧‧碟機
226‧‧‧電腦可讀媒體
236‧‧‧作業系統
238‧‧‧應用程式
240‧‧‧其他程式或模組
242‧‧‧程式資料
260‧‧‧網路介面
266‧‧‧致動器系統
282‧‧‧感測器
284‧‧‧規劃圖邊緣資訊記憶體
294‧‧‧環境記憶體
302‧‧‧區域
304‧‧‧區域
400‧‧‧運動規劃圖
408a至408d‧‧‧節點
410a至410l‧‧‧邊緣
416‧‧‧潛在路徑
500‧‧‧方法
502‧‧‧步驟
504‧‧‧步驟
506‧‧‧步驟
508‧‧‧步驟
510‧‧‧步驟
512‧‧‧步驟
514‧‧‧步驟
600‧‧‧方法
602‧‧‧步驟
604‧‧‧步驟
606‧‧‧步驟
608‧‧‧步驟
610‧‧‧步驟
700‧‧‧方法
702‧‧‧步驟
704‧‧‧步驟
706‧‧‧步驟
708‧‧‧步驟
710‧‧‧步驟
712‧‧‧步驟
714‧‧‧步驟
800‧‧‧方法
802‧‧‧步驟
804‧‧‧步驟
806‧‧‧步驟
808‧‧‧步驟
810‧‧‧步驟
900‧‧‧方法
902‧‧‧步驟
904‧‧‧步驟
906‧‧‧步驟
908‧‧‧步驟
910‧‧‧步驟
1000‧‧‧方法
1002‧‧‧步驟
1004‧‧‧步驟
1006‧‧‧步驟
1008‧‧‧步驟
1010‧‧‧步驟
1012‧‧‧步驟
1014‧‧‧步驟
1016‧‧‧步驟
1018‧‧‧步驟
1020‧‧‧步驟
在圖式中,相同元件符號識別類似元件或動作。圖式中之元件之大小及相對位置不必按比例繪製。例如,各種元件之形狀及角度未按比例繪製,且此等元件之一些經任意放大及定位以改良圖式易讀性。此外,如繪製之元件之特定形狀不旨在傳達關於特定元件之實際形狀之任何資訊,且僅為了易於在圖式中辨識而選擇。
圖1係根據一項經繪示實施例之其中一機器人可操作之一環境之一示意圖。
圖2係根據一項經繪示實施例之可在圖1之環境中操作之一機器人之一機器人控制系統之一功能方塊圖。
圖3係根據一項經繪示實施例之其中機器人可操作之圖1之環境之一示意圖,其繪示機器人自三維(3D)空間中之一個位置轉變至環境中之3D空間中之另一位置及由機器人之一附肢在3D空間中之一個位置與3D空間中之另一位置之間之轉變時掃掠之一體積之一表示。
圖4A係根據一項經繪示實施例之圖1之機器人之一例示性運動規劃圖,其包含已判定對應轉變將導致機器人與環境中之一或多個障礙物之間之一碰撞之規劃圖之邊緣。
圖4B係根據一項經繪示實施例之圖1之機器人之一例示性運動規劃圖,其中已移除已判定對應轉變將導致機器人與環境中之一或多個障礙物之間之一碰撞之規劃圖之邊緣。
圖5係展示根據一項經繪示實施例之用於藉由根據特定境況提供不同規劃圖之邊緣資訊而促進運動規劃之一機器人控制系統中之一操作方法之一流程圖。
圖6係展示根據一項經繪示實施例之用於藉由識別對應轉變將導致一碰撞之一規劃圖之邊緣而促進運動規劃之一機器人控制系統中之一操作方法之一流程圖,規劃圖係儲存於晶片外記憶體中之複數個規劃圖之一者,該等規劃圖之各者與機器人之一組不同實體尺寸相關聯。
圖7係展示根據一項經繪示實施例之用於藉由評估其中機器人將操作之環境之一表示之經產生非均勻離散化之一有效性而促進運動規劃之一機器人控制系統中之一操作方法之一流程圖。
圖8係展示根據一項經繪示實施例之用於藉由判定使用數個離散化之何者以產生表示機器人將通過之各自區域之數個掃掠體積而促進運動規劃之一機器人控制系統中之一操作方法之一流程圖。
圖9係展示根據一項經繪示實施例之用於藉由使用一經判定離散化產生其中機器人將操作之環境之一離散表示而促進運動規劃之一機器人控制系統中之一操作方法之一流程圖。
圖10係展示根據一項經繪示實施例之用於藉由判定規劃圖之最佳化結果是否符合滿足條件而促進運動規劃之一機器人控制系統中之一操作方法之一流程圖。

Claims (103)

  1. 一種在一機器人控制系統中之操作方法,該方法包括: 針對將在一環境中操作之一第一機器人,判定複數個規劃圖,各規劃圖分別包括由複數個邊緣連接之複數個節點,各節點隱含或明確地表示特性化該第一機器人之一各自狀態之變數,且各邊緣表示該第一機器人之各自一對該等狀態之間之一轉變,其中該各自對狀態由藉由該各自規劃圖中之一各自邊緣耦合之一對節點之各自者表示; 針對該等規劃圖之各者之該等邊緣之至少兩者或兩者以上,產生表示由該第一機器人之至少一部分在於由藉由該各自邊緣耦合之該等各自節點表示之該等狀態之間轉變時掃掠之一體積之一各自邊緣資訊集; 將該複數個規劃圖及該等邊緣資訊集儲存於至少一個非暫時性處理器可讀儲存器中; 基於該第一機器人之至少一部分在一第一時間具有一第一組實體尺寸,將針對該等規劃圖之一第一者之該等邊緣資訊集提供至至少一個處理器;及 基於該第一機器人之至少一部分在一第二時間具有一第二組實體尺寸,該第二組實體尺寸中之至少一個尺寸不同於該第一組之該等尺寸之一對應者,將針對該等規劃圖之一第二者之該等邊緣資訊集提供至該至少一個處理器。
  2. 如請求項1之方法,其中該第一機器人具有可選擇性地操作用於相對於其中該第一機器人操作之該環境移動之至少一第一附肢,且該第一機器人具有附接至該第一附肢之一第一末端受動器,該第一末端受動器可選擇性地操作用於在至少一第一末端受動器配置與一第二末端受動器配置之間移動,且其進一步包括: 判定附接至該第一附肢之該第一末端受動器處於一第一末端受動器配置中,其中該第一組實體尺寸表示處於該第一末端受動器配置中之該第一末端受動器之一組尺寸;及 其中將針對該等規劃圖之一第一者之該等邊緣資訊集提供至至少一個處理器係回應於附接至該第一附肢之該第一末端受動器處於該第一末端受動器配置中之該判定。
  3. 如請求項2之方法,且其進一步包括: 判定附接至該第一附肢之該第一末端受動器處於一第二末端受動器配置中,其中該第二組實體尺寸表示處於該第二末端受動器配置中之該第一末端受動器之一組尺寸;及 其中將針對該等規劃圖之一第二者之該等邊緣資訊集提供至至少一個處理器係回應於附接至該第一附肢之該第一末端受動器處於該第二末端受動器配置中之該判定。
  4. 如請求項1之方法,其中該第一機器人具有可選擇性地操作用於相對於其中該第一機器人操作之該環境移動之至少一第一附肢,且一第一末端受動器附接至該第一附肢,該第一末端受動器可選擇性地操作用於在至少一未抓緊配置與一抓緊配置之間移動,由處於該抓緊配置中之該第一末端受動器佔用之一體積之一大小或形狀之至少一者不同於由處於該未抓緊配置中之該第一末端受動器佔用之一體積之一大小或形狀之至少一者,且其進一步包括: 判定附接至該第一附肢之該第一末端受動器處於該未抓緊配置中; 其中將針對該等規劃圖之一第一者之該等邊緣資訊集提供至至少一個處理器係回應於附接至該第一附肢之該第一末端受動器處於該未抓緊配置中之該判定;及 判定附接至該第一附肢之該第一末端受動器處於該抓緊配置中; 其中將針對該等規劃圖之一第二者之該等邊緣資訊集提供至至少一個處理器係回應於附接至該第一附肢之該第一末端受動器處於抓緊配置中之該判定。
  5. 如請求項1之方法,其中該第一機器人具有可選擇性地操作用於相對於其中該第一機器人操作之該環境移動之至少一第一附肢,且其進一步包括: 判定該第一機器人具有附接至該第一附肢之一第一末端受動器,其中該第一組實體尺寸表示附接至該第一附肢之該第一末端受動器之一組尺寸;及 其中將針對該等規劃圖之一第一者之該等邊緣資訊集提供至至少一個處理器係回應於該第一機器人具有附接至該第一附肢之一第一末端受動器之該判定。
  6. 如請求項5之方法,其進一步包括: 判定該第一機器人具有附接至該第一附肢之一第二末端受動器,該第二末端受動器在形狀或大小之至少一者上不同於該第一末端受動器,其中該第二組實體尺寸表示附接至該第一附肢之該第二末端受動器之一組尺寸;及 其中將針對該等規劃圖之一第二者之該等邊緣資訊集提供至至少一個處理器係回應於該第一機器人具有附接至該第一附肢之一第二末端受動器之該判定。
  7. 如請求項1之方法,其中該第一機器人係一自主或半自主車輛之至少一者,由處於一第一實體狀態中之一自主或半自主車輛之該至少一者佔用之一體積之一大小或形狀之至少一者不同於由處於該第二實體狀態中之一自主或半自主車輛之該至少一者佔用之一體積之一大小或形狀之至少一者(例如,重量可歸因於燃料之消耗而改變,因此速度可改變且所行進之距離改變),且其進一步包括: 判定一自主或半自主車輛之該至少一者處於該第一實體狀態中; 其中將針對該等規劃圖之一第一者之該等邊緣資訊集提供至至少一個處理器係回應於一自主或半自主車輛之該至少一者處於該第一實體狀態中之該判定;及 判定一自主或半自主車輛之該至少一者處於該第二實體狀態中; 其中將針對該等規劃圖之一第二者之該等邊緣資訊集提供至至少一個處理器係回應於一自主或半自主車輛之該至少一者處於第二實體狀態中之該判定。
  8. 如請求項1至7中任一項之方法,其中將針對該等規劃圖之一第一者之該等邊緣資訊集提供至至少一個處理器包含將針對該等邊緣之一者之該邊緣資訊應用至該至少一個處理器之複數個電路之各者以判定哪些邊緣與由其中該機器人操作之該環境中之一障礙物佔用之一單位體積碰撞。
  9. 如請求項1至7中任一項之方法,其中將針對該等規劃圖之一第一者之該等邊緣資訊集提供至至少一個處理器包含將針對該等邊緣之一者之該邊緣資訊並行應用至該至少一個處理器之複數個電路之各者。
  10. 如請求項1至7中任一項之方法,其中產生表示由該第一機器人之至少一部分在於由藉由該各自邊緣耦合之該等各自節點表示之該等狀態之間轉變時掃掠之一體積之一各自邊緣資訊集包含產生以三維像素表示由該第一機器人之至少一部分在於由藉由該各自邊緣耦合之該等各自節點表示之該等狀態之間轉變時掃掠之一體積之一各自邊緣資訊集。
  11. 如請求項1至7中任一項之方法,其中產生表示由該第一機器人之至少一部分在於由藉由該各自邊緣耦合之該等各自節點表示之該等狀態之間轉變時掃掠之一體積之一各自邊緣資訊集包含產生以體積單位,即涵蓋兩個或兩個以上三維像素之體積單位表示由該第一機器人之至少一部分在於由藉由該各自邊緣耦合之該等各自節點表示之該等狀態之間轉變時掃掠之一體積。
  12. 如請求項1至7中任一項之方法,其中產生表示由該第一機器人之至少一部分在於由藉由該各自邊緣耦合之該等各自節點表示之該等狀態之間轉變時掃掠之一體積之一各自邊緣資訊集包含產生以矩形稜柱(平行六面體)表示由該第一機器人之至少一部分在於由藉由該各自邊緣耦合之該等各自節點表示之該等狀態之間轉變時掃掠之一體積之一各自邊緣資訊集。
  13. 如請求項12之方法,其中產生以矩形稜柱(平行六面體)表示由該第一機器人之至少一部分在於由藉由該各自邊緣耦合之該等各自節點表示之該等狀態之間轉變時掃掠之一體積之一各自邊緣資訊集包含針對該等矩形稜柱之各者,儲存完全定義該各自矩形稜柱之該體積之一對三維座標。
  14. 如請求項1至7中任一項之方法,其中該判定複數個規劃圖及該產生一各自邊緣資訊集係在一預運行時間段期間執行。
  15. 如請求項1至7中任一項之方法,其中該提供針對該等規劃圖之一第二者之該等邊緣資訊集至該至少一個處理器係在一運行時間段期間執行。
  16. 一種基於處理器之機器人控制系統,其包括: 至少一個處理器;及 至少一個非暫時性處理器可讀媒體,其儲存在藉由該至少一個處理器執行時引起該至少一個處理器執行以下項之處理器可執行指令或資料之至少一者: 針對將在一環境中操作之一第一機器人,判定複數個規劃圖,各規劃圖分別包括由複數個邊緣連接之複數個節點,各節點隱含或明確地表示特性化該第一機器人之一各自狀態之變數,且各邊緣表示該第一機器人之各自一對該等狀態之間之一轉變,其中該各自對狀態由藉由該各自規劃圖中之一各自邊緣耦合之一對節點之各自者表示; 針對該等規劃圖之各者之該等邊緣之至少兩者或兩者以上,產生表示由該第一機器人之至少一部分在於由藉由該各自邊緣耦合之該等各自節點表示之該等狀態之間轉變時掃掠之一體積之一各自邊緣資訊集; 將該複數個規劃圖及該等邊緣資訊集儲存於至少一個非暫時性處理器可讀儲存器中; 基於該第一機器人之至少一部分在一第一時間具有一第一組實體尺寸,將針對該等規劃圖之一第一者之該等邊緣資訊集提供至至少一個處理器;及 基於該第一機器人之至少一部分在一第二時間具有一第二組實體尺寸,該第二組實體尺寸中之至少一個尺寸不同於該第一組之該等尺寸之一對應者,將針對該等規劃圖之一第二者之該等邊緣資訊集提供至該至少一個處理器。
  17. 如請求項16之基於處理器之系統,其中處理器可執行指令或資料之該至少一者在藉由該至少一個處理器執行時進一步引起該至少一個處理器執行如請求項2至15之方法之任何者。
  18. 一種在一機器人控制系統中之操作方法,該方法包括: 針對其中至少一第一機器人將操作之一環境,即由一或多個障礙物佔用之該環境之一第一離散表示,將該環境之該第一離散表示之至少一部分供應至至少一個處理器; 針對儲存於與該至少一個處理器相關之記憶體中之複數個規劃圖之一第一規劃圖之各邊緣,其中該複數個規劃圖之各規劃圖與該第一機器人之一組不同實體尺寸相關聯,將一各自邊緣資訊集提供至該至少一個處理器,該各自邊緣資訊集表示由該第一機器人之至少一部分在於該第一機器人之一對狀態之間轉變時掃掠之一體積,該第一機器人之該對狀態由該第一規劃圖之一對節點之各自者表示,該各自對節點由該第一規劃圖之一各自邊緣耦合,該各自邊緣表示在該第一機器人之該各自對狀態之間之一轉變;及 識別該對應轉變將導致該機器人之至少一部分與該環境中之該一或多個障礙物之至少一者之至少一部分之間之一碰撞之該第一規劃圖之該等邊緣之任何者。
  19. 如請求項18之方法,其中將一各自邊緣資訊集提供至該至少一個處理器包含將針對該等邊緣之一者之該邊緣資訊並行應用至該至少一個處理器之複數個電路之各者。
  20. 如請求項18之方法,其中將一各自邊緣資訊集提供至該至少一個處理器包含針對各邊緣,將針對該各自邊緣之該邊緣資訊並行應用至該至少一個處理器之複數個電路之各者。
  21. 如請求項18之方法,其中將一各自邊緣資訊集提供至該至少一個處理器包含針對各邊緣,將以三維像素表示由該第一機器人之至少一部分在於由藉由該各自邊緣耦合之該等各自節點表示之該等狀態之間轉變時掃掠之一體積之一各自邊緣資訊集應用至該至少一個處理器之電路。
  22. 如請求項18之方法,其中將一各自邊緣資訊集提供至該至少一個處理器包含針對各邊緣,將以體積單位表示由該第一機器人之至少一部分在於由藉由該各自邊緣耦合之該等各自節點表示之該等狀態之間轉變時掃掠之一體積之一各自邊緣資訊集應用至該至少一個處理器之電路,該等體積單位各涵蓋兩個或兩個以上三維像素。
  23. 如請求項18之方法,其中將一各自邊緣資訊集提供至該至少一個處理器包含針對各邊緣,將以矩形稜柱表示由該第一機器人之至少一部分在於由藉由該各自邊緣耦合之該等各自節點表示之該等狀態之間轉變時掃掠之一體積之一各自邊緣資訊集應用至該至少一個處理器之電路,該等體積單位各涵蓋兩個或兩個以上三維像素。
  24. 如請求項23之方法,其中將以矩形稜柱表示由該第一機器人之至少一部分在於由藉由該各自邊緣耦合之該等各自節點表示之該等狀態之間轉變時掃掠之一體積之一各自邊緣資訊集應用至該等電路包含針對該等矩形稜柱之各者,儲存完全定義該各自矩形稜柱之該體積之一對三維座標。
  25. 如請求項18之方法,其進一步包括: 判定該第一機器人將或已自一第一配置改變至一第二配置,該第二配置不同於該第一配置; 針對該複數個規劃圖之一第二規劃圖之各邊緣,將一各自邊緣資訊集提供至該至少一個處理器,該各自邊緣資訊集表示由該第一機器人之至少一部分在於該第一機器人之一對狀態之間轉變時掃掠之一體積,該第一機器人之該對狀態由該第二規劃圖之一對節點之各自者表示,該各自對節點由該第二規劃圖之一各自邊緣耦合,該各自邊緣表示在該第一機器人之該各自對狀態之間之一轉變,該第二規劃圖不同於該第一規劃圖;及 識別該對應轉變將導致該機器人之至少一部分與該環境中之該一或多個障礙物之至少一者之至少一部分之間之一碰撞之該第二規劃圖之該等邊緣之任何者。
  26. 如請求項25之方法,其中該第一機器人包含可選擇性地操作用於相對於其中該第一機器人操作之該環境移動之一第一附肢,且判定該第一機器人將或已自一第一配置改變至一第二配置包含判定一第二末端受動器代替一第一末端受動器附接或正在附接至該第一附肢。
  27. 如請求項25之方法,其中該第一機器人包含可選擇性地操作用於相對於其中該第一機器人操作之該環境移動之一第一附肢,且一第一末端受動器可附接至該第一附肢,該第一末端受動器可選擇性地操作用於在至少一未抓緊配置與一抓緊配置之間移動,由處於該抓緊配置中之該第一末端受動器佔用之一體積之一大小或形狀之至少一者不同於由處於該未抓緊配置中之該第一末端受動器佔用之一體積之一大小或形狀之至少一者,且判定該第一機器人將或已自一第一配置改變至一第二配置包含判定附接至該第一附肢之該第一末端受動器正在或已改變一抓緊配置。
  28. 如請求項27之方法,其中判定附接至該第一附肢之該第一末端受動器正在或已改變一抓緊配置包含判定該第一末端受動器在或已在一未抓緊配置與一抓緊配置之間轉變。
  29. 如請求項25之方法,其中該第一機器人係一自主或半自主車輛之至少一者,由處於一第一配置中之一自主或半自主車輛之該至少一者佔用之一體積之一大小或形狀之至少一者不同於由處於該第二配置中之一自主或半自主車輛之該至少一者佔用之一體積之一大小或形狀之至少一者,且其中判定該第一機器人將或已自一第一配置改變至一第二配置包含判定一自主或半自主車輛之該至少一者正在或已在處於一自主或半自主車輛之該至少一者之該第一配置與該第二配置之間轉變。
  30. 如請求項18至29中任一項之方法,其中該提供針對該第一規劃圖之各邊緣之一各自邊緣資訊集至該至少一個處理器包含在一運行時間段期間自一非暫時性儲存器擷取該各自邊緣資訊集,該各自邊緣資訊集在一預運行時間段期間被儲存至該非暫時性儲存器。
  31. 如請求項30之方法,其中該至少一個處理器係一場可程式化閘陣列或特定應用積體電路之至少一者,且將該各自邊緣資訊集提供至至少一個處理器包含將針對該等邊緣之一者之該邊緣資訊應用至實施於一場可程式化閘陣列或特定應用積體電路之該至少一者中之該至少一個處理器之複數個電路之各者。
  32. 如請求項18之方法,其進一步包括: 將該環境之該第一離散表示儲存於該至少一個處理器上之一記憶體中;及 在將該環境之該第一離散表示儲存於該至少一個處理器上之一記憶體中之後,藉由該至少一個處理器自與該至少一個處理器分離之一儲存器接收該邊緣資訊集。
  33. 一種基於處理器之機器人控制系統,其包括: 至少一個處理器;及 至少一個非暫時性處理器可讀媒體,其儲存在藉由該至少一個處理器執行時引起該至少一個處理器執行以下項之處理器可執行指令或資料之至少一者: 針對其中至少一第一機器人將操作之一環境,即由一或多個障礙物佔用之該環境之一第一離散表示,將該環境之該第一離散表示之至少一部分供應至至少一個處理器; 針對儲存於與該至少一個處理器相關之記憶體中之複數個規劃圖之一第一規劃圖之各邊緣,其中該複數個規劃圖之各規劃圖與該第一機器人之一組不同實體尺寸相關聯,將一各自邊緣資訊集提供至該至少一個處理器,該各自邊緣資訊集表示由該第一機器人之至少一部分在於該第一機器人之一對狀態之間轉變時掃掠之一體積,該第一機器人之該對狀態由該第一規劃圖之一對節點之各自者表示,該各自對節點由該第一規劃圖之一各自邊緣耦合,該各自邊緣表示在該第一機器人之該各自對狀態之間之一轉變;及 識別該對應轉變將導致該機器人之至少一部分與該環境中之該一或多個障礙物之至少一者之至少一部分之間之一碰撞之該第一規劃圖之該等邊緣之任何者。
  34. 如請求項33之基於處理器之系統,其中處理器可執行指令或資料之該至少一者在藉由該至少一個處理器執行時進一步引起該至少一個處理器執行如請求項19至32之方法之任何者。
  35. 一種用於促進運動規劃之一系統中之操作方法,該方法包括: 針對包含一組複數個任務及環境對之至少一第一案例, 針對該至少該第一案例之該等任務及環境對之各者, 針對複數個反覆之各者,藉由至少一個處理器產生其中一機器人將操作之一環境之一表示之一各自離散化,該等各自離散化之至少兩者包括各自一組三維像素,其中該等各自離散化之該至少兩者之該等三維像素在該各自離散化內在大小及形狀之至少一者上係非均勻的,且該等各自離散化之該至少兩者之該等三維像素之該非均勻性之一各自分佈彼此不同; 評估其中該機器人將操作之該環境之該表示之該等經產生各自離散化之一有效性;及 將經評估為針對至少該第一案例最有效之其中該機器人將操作之該環境之該表示之至少該等經產生各自離散化儲存至至少一個非暫時性處理器可讀媒體。
  36. 如請求項35之方法,其中藉由至少一個處理器產生其中一機器人將操作之一環境之一表示之一各自離散化包含產生其中相較於在該機器人後方之至少一個區域中之複數個該等三維像素之各者之一各自體積,在該機器人前方之至少一個區域之複數個該等三維像素之各者具有一相對小體積之一第一各自離散化。
  37. 如請求項35之方法,其中藉由至少一個處理器產生其中一機器人將操作之一環境之一表示之一各自離散化包含產生其中在該機器人前方之一第一區域之複數個該等三維像素之各者具有一第一體積,在該機器人前方之一第二區域之複數個該等三維像素具有一第二體積,該第二體積不同於該第一體積之一第一各自離散化。
  38. 如請求項35之方法,其中藉由至少一個處理器產生其中一機器人將操作之一環境之一表示之一各自離散化包含產生其中在該機器人前方之一第一區域之複數個該等三維像素之各者具有一第一體積,在該機器人前方之一第二區域之複數個該等三維像素具有一第二體積,且在該機器人前方之一第三區域之複數個該等三維像素具有一第三體積,該第三體積不同於該第二體積之一第一各自離散化。
  39. 如請求項35之方法,其中藉由至少一個處理器產生其中一機器人將操作之一環境之一表示之一各自離散化包含產生其中在該機器人前方之一第一區域之複數個該等三維像素之各者具有一第一體積,在該機器人前方之一第二區域之複數個該等三維像素具有一第二體積,且在該機器人前方之一第三區域之複數個該等三維像素具有一第三體積,該第二體積不同於該第一體積,且該第三體積不同於該第二體積之一第一各自離散化。
  40. 如請求項35之方法,其中藉由至少一個處理器產生其中一機器人將操作之一環境之一表示之一各自離散化包含產生其中在該機器人正前方之一第一區域中之複數個該等三維像素之各者具有一第一體積,在該機器人前方且相對於該機器人自該第一區域相對向外間隔之一第二區域中之複數個該等三維像素具有一第二體積,且在該機器人前方且相對於該機器人自該第二區域相對向外間隔之一第三區域中之複數個該等三維像素具有一第三體積,該第二體積不同於該第一體積,且該第三體積不同於該第二體積之一第一各自離散化。
  41. 如請求項35之方法,其中藉由至少一個處理器產生其中一機器人將操作之一環境之一表示之一各自離散化包含產生其中在該機器人前方之至少一個區域中之複數個該等三維像素之各者之一形狀不同於在該機器人後方之至少一個區域之複數個該等三維像素之各者之一形狀之一第一各自離散化。
  42. 如請求項35之方法,其中藉由至少一個處理器產生其中一機器人將操作之一環境之一表示之一各自離散化包含產生其中在該機器人前方之一第一區域中之複數個該等三維像素之各者具有一第一形狀,且在該機器人前方之一第二區域中之複數個該等三維像素具有一第二形狀,該第二形狀不同於該第一形狀之一第一各自離散化。
  43. 如請求項35之方法,其中藉由至少一個處理器產生其中一機器人將操作之一環境之一表示之一各自離散化包含產生其中在該機器人前方之一第一區域中之複數個該等三維像素之各者具有一第一形狀,在該機器人前方之一第二區域中之複數個該等三維像素具有一第二形狀,且在該機器人前方之一第三區域中之複數個該等三維像素具有一第三形狀,該第三形狀不同於該第二形狀之一第一各自離散化。
  44. 如請求項35之方法,其中藉由至少一個處理器產生其中一機器人將操作之一環境之一表示之一各自離散化包含產生其中在該機器人前方之一第一區域中之複數個該等三維像素之各者具有一第一形狀,在該機器人前方之一第二區域中之複數個該等三維像素具有一第二形狀,且在該機器人前方之一第三區域中之複數個該等三維像素具有一第三形狀,該第二形狀不同於該第一形狀,且該第三形狀不同於該第二形狀之一第一各自離散化。
  45. 如請求項35之方法,其中藉由至少一個處理器產生其中一機器人將操作之一環境之一表示之一各自離散化包含產生其中在該機器人正前方之一第一區域中之複數個該等三維像素之各者具有一第一形狀,在該機器人前方且相對於該機器人自該第一區域相對向外間隔之一第二區域中之複數個該等三維像素具有一第二形狀,且在該機器人前方且相對於該機器人自該第二區域相對向外間隔之一第三區域中之複數個該等三維像素具有一第三形狀,該第二形狀不同於該第一形狀,且該第三形狀不同於該第二形狀之一第一各自離散化。
  46. 如請求項35之方法,其中藉由至少一個處理器產生其中一機器人將操作之一環境之一表示之一各自離散化包含產生其中在該機器人前方之至少一個區域中之複數個該等三維像素之各者之一形狀及一體積兩者不同於在該機器人後方之至少一個區域之複數個該等三維像素之各者之一形狀及一體積兩者之一第一各自離散化。
  47. 如請求項35之方法,其中藉由至少一個處理器產生其中一機器人將操作之一環境之一表示之一各自離散化包含產生其中在該機器人前方之至少一個區域中之複數個該等三維像素之各者之一形狀及一體積兩者不同於在該機器人後方之至少一個區域之複數個該等三維像素之各者之一形狀及一體積兩者,且該等形狀之至少一者係非立方體之一第一各自離散化。
  48. 如請求項35之方法,其中評估其中該機器人將操作之該環境之該表示之該等經產生各自離散化之一有效性包含判定其中該機器人將操作之該環境之該表示之經產生各自離散化之何者最可能導致無碰撞之一路徑。
  49. 如請求項35之方法,其中評估其中該機器人將操作之該環境之該表示之該等經產生各自離散化之一有效性包含判定其中該機器人將操作之該環境之該表示之經產生各自離散化之何者最可能導致具有碰撞之一最低可能性之一路徑。
  50. 如請求項35之方法,其中評估其中該機器人將操作之該環境之該表示之該等經產生各自離散化之一有效性包含判定其中該機器人將操作之該環境之該表示之經產生各自離散化之何者最可能導致一最低成本無碰撞路徑。
  51. 如請求項35之方法,其中將經評估為針對至少該第一案例最有效之其中該機器人將操作之該環境之該表示之至少該等經產生各自離散化儲存至至少一個非暫時性處理器可讀媒體包含儲存針對複數個案例之各者之至少一個經產生各自離散化以及針對該複數個案例之各者應使用該等經產生各自離散化之何者之一指示。
  52. 一種用於促進運動規劃之基於處理器之系統,該系統包括: 至少一個處理器;及 至少一個非暫時性處理器可讀媒體,其儲存在藉由該至少一個處理器執行時引起該至少一個處理器執行以下項之處理器可執行指令或資料之至少一者: 針對包含一組複數個任務及環境對之至少一第一案例, 針對該至少該第一案例之該等任務及環境對之各者, 針對複數個反覆之各者,藉由至少一個處理器產生其中一機器人將操作之一環境之一表示之一各自離散化,該等各自離散化之至少兩者包括各自一組三維像素,其中該等各自離散化之該至少兩者之該等三維像素在該各自離散化內在大小及形狀之至少一者上係非均勻的,且該等各自離散化之該至少兩者之該等三維像素之該非均勻性之一各自分佈彼此不同; 評估其中該機器人將操作之該環境之該表示之該等經產生各自離散化之一有效性;及 將經評估為針對至少該第一案例最有效之其中該機器人將操作之該環境之該表示之至少該等經產生各自離散化儲存至至少一個非暫時性處理器可讀媒體。
  53. 如請求項52之基於處理器之系統,其中處理器可執行指令或資料之該至少一者在藉由該至少一個處理器執行時進一步引起該至少一個處理器執行如請求項36至51之方法之任何者。
  54. 一種用於促進運動規劃之一系統中之操作方法,該方法包括: 至少部分基於對一機器人將執行之一任務及其中該機器人將操作之一環境之一對分類之一經識別案例,判定使用數個離散化之何者以產生表示該機器人之至少一部分在於該機器人之一個狀態與該機器人之另一狀態之間轉變時將通過之各自區域之數個掃掠體積; 針對一規劃圖中之複數個邊緣之各者,使用該經判定離散化判定該邊緣之一各自掃掠體積,該規劃圖包括複數個節點及複數個邊緣,各節點表示該機器人之複數個狀態之一各自者,該等邊緣之各者耦合各自一對該等節點且表示由該機器人在由藉由該各自邊緣耦合之該等各自節點表示之該等狀態之間之一各自轉變;及 將經評估為針對至少該經識別案例最有效之其中該機器人將操作之該環境之該表示之該等經判定掃掠體積之各自離散化之至少一者儲存至至少一個非暫時性處理器可讀媒體。
  55. 如請求項54之方法,其中判定使用數個離散化之何者以產生數個掃掠體積包含基於該經識別案例在至少兩個離散化之間選擇,其中該等各自離散化之至少兩者之三維像素在該各自離散化內在大小及形狀之至少一者上係非均勻的,且該等各自離散化之該至少兩者之該等三維像素之該非均勻性之一各自分佈彼此不同。
  56. 如請求項54之方法,其中使用該經判定離散化判定該邊緣之一各自掃掠體積包含使用其中相較於在該機器人後方之至少一個區域中之複數個該等三維像素之各者之一各自體積,在該機器人前方之至少一個區域之複數個該等三維像素之各者具有一相對小體積之該經判定離散化判定該邊緣之該各自掃掠體積。
  57. 如請求項54之方法,其中使用該經判定離散化判定該邊緣之一各自掃掠體積包含使用其中在該機器人前方之一第一區域中之複數個該等三維像素之各者具有一第一體積,且在該機器人前方之一第二區域中之複數個該等三維像素具有一第二體積,該第二體積不同於該第一體積之該經判定離散化判定該邊緣之該各自掃掠體積。
  58. 如請求項54之方法,其中使用該經判定離散化判定該邊緣之一各自掃掠體積包含使用其中在該機器人前方之一第一區域中之複數個該等三維像素之各者具有一第一體積,在該機器人前方之一第二區域中之複數個該等三維像素具有一第二體積,且在該機器人前方之一第三區域中之複數個該等三維像素具有一第三體積,該第三體積不同於該第二體積之該經判定離散化判定該邊緣之該各自掃掠體積。
  59. 如請求項54之方法,其中使用該經判定離散化判定該邊緣之一各自掃掠體積包含使用其中在該機器人前方之一第一區域中之複數個該等三維像素之各者具有一第一體積,在該機器人前方之一第二區域中之複數個該等三維像素具有一第二體積,且在該機器人前方之一第三區域中之複數個該等三維像素具有一第三體積,該第二體積不同於該第一體積,且該第三體積不同於該第二體積之該經判定離散化判定該邊緣之該各自掃掠體積。
  60. 如請求項54之方法,其中使用該經判定離散化判定該邊緣之一各自掃掠體積包含使用其中在該機器人正前方之一第一區域中之複數個該等三維像素之各者具有一第一體積,在該機器人前方且相對於該機器人自該第一區域相對向外間隔之一第二區域中之複數個該等三維像素具有一第二體積,且在該機器人前方且相對於該機器人自該第二區域相對向外間隔之一第三區域中之複數個該等三維像素具有一第三體積,該第二體積不同於該第一體積,且該第三體積不同於該第二體積之該經判定離散化判定該邊緣之該各自掃掠體積。
  61. 如請求項54之方法,其中使用該經判定離散化判定該邊緣之一各自掃掠體積包含使用其中在該機器人前方之至少一個區域中之複數個該等三維像素之各者之一形狀不同於在該機器人後方之至少一個區域之複數個該等三維像素之各者之一形狀之該經判定離散化判定該邊緣之該各自掃掠體積。
  62. 如請求項54之方法,其中使用該經判定離散化判定該邊緣之一各自掃掠體積包含使用其中在該機器人前方之一第一區域中之複數個該等三維像素之各者具有一第一形狀,且在該機器人前方之一第二區域中之複數個該等三維像素具有一第二形狀,該第二形狀不同於該第一形狀之該經判定離散化判定該邊緣之該各自掃掠體積。
  63. 如請求項54之方法,其中使用該經判定離散化判定該邊緣之一各自掃掠體積包含使用其中在該機器人前方之一第一區域中之複數個該等三維像素之各者具有一第一形狀,在該機器人前方之一第二區域中之複數個該等三維像素具有一第二形狀,且在該機器人前方之一第三區域中之複數個該等三維像素具有一第三形狀,該第三形狀不同於該第二形狀之該經判定離散化判定該邊緣之該各自掃掠體積。
  64. 如請求項54之方法,其中使用該經判定離散化判定該邊緣之一各自掃掠體積包含使用其中在該機器人前方之一第一區域中之複數個該等三維像素之各者具有一第一形狀,在該機器人前方之一第二區域中之複數個該等三維像素具有一第二形狀,且在該機器人前方之一第三區域中之複數個該等三維像素具有一第三形狀,該第二形狀不同於該第一形狀,且該第三形狀不同於該第二形狀之該經判定離散化判定該邊緣之該各自掃掠體積。
  65. 如請求項54之方法,其中使用該經判定離散化判定該邊緣之一各自掃掠體積包含使用其中在該機器人正前方之一第一區域中之複數個該等三維像素之各者具有一第一形狀,在該機器人前方且相對於該機器人自該第一區域相對向外間隔之一第二區域中之複數個該等三維像素具有一第二形狀,且在該機器人前方且相對於該機器人自該第二區域相對向外間隔之一第三區域中之複數個該等三維像素具有一第三形狀,該第二形狀不同於該第一形狀,且該第三形狀不同於該第二形狀之該經判定離散化判定該邊緣之該各自掃掠體積。
  66. 如請求項54之方法,其中使用該經判定離散化判定該邊緣之一各自掃掠體積包含使用其中在該機器人前方之至少一個區域中之複數個該等三維像素之各者之一形狀及一體積兩者不同於在該機器人後方之至少一個區域之複數個該等三維像素之各者之一形狀及一體積兩者之該經判定離散化判定該邊緣之該各自掃掠體積。
  67. 如請求項54之方法,其進一步包括接收該經識別案例。
  68. 如請求項54之方法,其進一步包括: 將一各自邊緣資訊集提供至至少一個處理器,該各自邊緣資訊集表示由該第一機器人之至少一部分在於該機器人之一對狀態之間轉變時掃掠之該各自掃掠體積。
  69. 如請求項54至68中任一項之方法,其中該至少一個處理器係一場可程式化閘陣列或特定應用積體電路之至少一者,且其進一步包括: 將一各自邊緣資訊集應用至實施於一場可程式化閘陣列或特定應用積體電路之該至少一者中之該至少一個處理器之複數個電路之各者,該各自邊緣資訊集表示由該機器人之至少一部分在於該機器人之一對狀態之間轉變時掃掠之該各自掃掠體積。
  70. 一種用於促進運動規劃之基於處理器之系統,該系統包括: 至少一個處理器;及 至少一個非暫時性處理器可讀媒體,其儲存在藉由該至少一個處理器執行時引起該至少一個處理器執行以下項之處理器可執行指令或資料之至少一者: 至少部分基於對一機器人將執行之一任務及其中該機器人將操作之一環境之一對分類之一經識別案例,判定使用數個離散化之何者以產生表示該機器人之至少一部分在於該機器人之一個狀態與該機器人之另一狀態之間轉變時將通過之各自區域之數個掃掠體積; 針對一規劃圖中之複數個邊緣之各者,使用該經判定離散化判定該邊緣之一各自掃掠體積,該規劃圖包括複數個節點及複數個邊緣,各節點表示該機器人之複數個狀態之一各自者,該等邊緣之各者耦合各自一對該等節點且表示由該機器人在由藉由該各自邊緣耦合之該等各自節點表示之該等狀態之間之一各自轉變;及 將經評估為針對至少該經識別案例最有效之其中該機器人將操作之該環境之該表示之該等經判定掃掠體積之各自離散化之至少一者儲存至至少一個非暫時性處理器可讀媒體。
  71. 如請求項70之基於處理器之系統,其中處理器可執行指令或資料之該至少一者在藉由該至少一個處理器執行時進一步引起該至少一個處理器執行如請求項55至69之方法之任何者。
  72. 一種用於促進運動規劃之一系統中之操作方法,該方法包括: 至少部分基於對一機器人將執行之一任務及其中該機器人操作之一環境之一對分類之一經識別案例,判定使用數個離散化之何者以產生該環境,若有則包含該環境中之障礙物之一離散表示; 接收由感測該環境之一或多個感測器產生之感測器資訊,該感測器資訊表示該環境,若有則包含該環境中之障礙物;及 使用該經判定離散化產生該環境,若有則包含該環境中之障礙物之一離散表示,其中該經判定離散化之複數個三維像素在該各自離散化內在大小及形狀之至少一者上係非均勻的,且該經判定離散化之該等三維像素之該非均勻性之一各自分佈不同於該數個離散化之另一者。
  73. 如請求項72之方法,其進一步包括: 將該環境,若有則包含該環境中之障礙物之該經判定之經產生離散表示儲存至至少一個非暫時性處理器可讀媒體。
  74. 如請求項72之方法,其中產生該環境,若有則包含該環境中之障礙物之一離散表示包含使用匹配用於產生一掃掠體積之一離散表示之三維像素大小及形狀之一分佈之三維像素大小及形狀之一分佈產生該環境之該離散表示。
  75. 如請求項72之方法,其中產生該環境,若有則包含該環境中之障礙物之一離散表示包含使用匹配用於產生由一機器人之至少一部分掃掠之一掃掠體積之一離散表示之三維像素大小及形狀之一分佈之三維像素大小及形狀之一分佈產生該環境之該離散表示。
  76. 如請求項72之方法,其中判定使用數個離散化之何者以產生該環境,若有則包含該環境中之障礙物之一離散表示包含基於該經識別案例在至少兩個離散化之間選擇,其中該等各自離散化之至少兩者之該等三維像素在該各自離散化內在大小及形狀之至少一者上係非均勻的,且該等各自離散化之該至少兩者之該等三維像素之該非均勻性之一各自分佈彼此不同。
  77. 如請求項72之方法,其中產生該環境,若有則包含該環境中之障礙物之一離散表示包含使用其中相較於在該機器人後方之至少一個區域中之複數個該等三維像素之各者之一各自體積,在該機器人前方之至少一個區域之複數個該等三維像素之各者具有一相對小體積之該經判定離散化產生該環境之該離散表示。
  78. 如請求項72之方法,其中產生該環境,若有則包含該環境中之障礙物之一離散表示包含使用其中在該機器人前方之一第一區域中之複數個該等三維像素之各者具有一第一體積,且在該機器人前方之一第二區域中之複數個該等三維像素具有一第二體積,該第二體積不同於該第一體積之該經判定離散化產生該環境之該離散表示。
  79. 如請求項72之方法,其中產生該環境,若有則包含該環境中之障礙物之一離散表示包含使用其中在該機器人前方之一第一區域中之複數個該等三維像素之各者具有一第一體積,在該機器人前方之一第二區域中之複數個該等三維像素具有一第二體積,且在該機器人前方之一第三區域中之複數個該等三維像素具有一第三體積,該第三體積不同於該第二體積之該經判定離散化產生該環境之該離散表示。
  80. 如請求項72之方法,其中產生該環境,若有則包含該環境中之障礙物之一離散表示包含使用其中在該機器人前方之一第一區域中之複數個該等三維像素之各者具有一第一體積,在該機器人前方之一第二區域中之複數個該等三維像素具有一第二體積,且在該機器人前方之一第三區域中之複數個該等三維像素具有一第三體積,該第二體積不同於該第一體積,且該第三體積不同於該第二體積之該經判定離散化產生該環境之該離散表示。
  81. 如請求項72之方法,其中產生該環境,若有則包含該環境中之障礙物之一離散表示包含使用其中在該機器人正前方之一第一區域中之複數個該等三維像素之各者具有一第一體積,在該機器人前方且相對於該機器人自該第一區域相對向外間隔之一第二區域中之複數個該等三維像素具有一第二體積,且在該機器人前方且相對於該機器人自該第二區域相對向外間隔之一第三區域中之複數個該等三維像素具有一第三體積,該第二體積不同於該第一體積,且該第三體積不同於該第二體積之該經判定離散化產生該環境之該離散表示。
  82. 如請求項72之方法,其中產生該環境,若有則包含該環境中之障礙物之一離散表示包含使用其中在該機器人前方之至少一個區域中之複數個該等三維像素之各者之一形狀不同於在該機器人後方之至少一個區域之複數個該等三維像素之各者之一形狀之該經判定離散化產生該環境之該離散表示。
  83. 如請求項72之方法,其中產生該環境,若有則包含該環境中之障礙物之一離散表示包含使用其中在該機器人前方之一第一區域中之複數個該等三維像素之各者具有一第一形狀,且在該機器人前方之一第二區域中之複數個該等三維像素具有一第二形狀,該第二形狀不同於該第一形狀之該經判定離散化產生該環境之該離散表示。
  84. 如請求項72之方法,其中產生該環境,若有則包含該環境中之障礙物之一離散表示包含使用其中在該機器人前方之一第一區域中之複數個該等三維像素之各者具有一第一形狀,在該機器人前方之一第二區域中之複數個該等三維像素具有一第二形狀,且在該機器人前方之一第三區域中之複數個該等三維像素具有一第三形狀,該第三形狀不同於該第二形狀之該經判定離散化產生該環境之該離散表示。
  85. 如請求項72之方法,其中產生該環境,若有則包含該環境中之障礙物之一離散表示包含使用其中在該機器人前方之一第一區域中之複數個該等三維像素之各者具有一第一形狀,在該機器人前方之一第二區域中之複數個該等三維像素具有一第二形狀,且在該機器人前方之一第三區域中之複數個該等三維像素具有一第三形狀,該第二形狀不同於該第一形狀,且該第三形狀不同於該第二形狀之該經判定離散化產生該環境之該離散表示。
  86. 如請求項72之方法,其中產生該環境,若有則包含該環境中之障礙物之一離散表示包含使用其中在該機器人正前方之一第一區域中之複數個該等三維像素之各者具有一第一形狀,在該機器人前方且相對於該機器人自該第一區域相對向外間隔之一第二區域中之複數個該等三維像素具有一第二形狀,且在該機器人前方且相對於該機器人自該第二區域相對向外間隔之一第三區域中之複數個該等三維像素具有一第三形狀,該第二形狀不同於該第一形狀,且該第三形狀不同於該第二形狀之該經判定離散化產生該環境之該離散表示。
  87. 如請求項72之方法,其中產生該環境,若有則包含該環境中之障礙物之一離散表示包含使用其中在該機器人前方之至少一個區域中之複數個該等三維像素之各者之一形狀及一體積兩者不同於在該機器人後方之至少一個區域之複數個該等三維像素之各者之一形狀及一體積兩者之該經判定離散化產生該環境之該離散表示。
  88. 如請求項72之方法,其進一步包括: 接收表示欲由該機器人執行之該任務及其中該機器人欲操作之該環境之資訊;及 至少部分基於經接收資訊識別該經識別案例。
  89. 如請求項72之方法,其進一步包括: 將該環境之該離散表示提供至至少一個處理器。
  90. 如請求項72至89中任一項之方法,其中該至少一個處理器係一場可程式化閘陣列或特定應用積體電路之至少一者,且其進一步包括: 將該環境之該離散表示應用至實施於一場可程式化閘陣列或特定應用積體電路之該至少一者中之複數個電路之各者。
  91. 一種用於促進運動規劃之基於處理器之系統,該系統包括: 至少一個處理器;及 至少一個非暫時性處理器可讀媒體,其儲存在藉由該至少一個處理器執行時引起該至少一個處理器執行以下項之處理器可執行指令或資料之至少一者: 至少部分基於對一機器人將執行之一任務及其中該機器人操作之一環境之一對分類之一經識別案例,判定使用數個離散化之何者以產生該環境,若有則包含該環境中之障礙物之一離散表示; 接收由感測該環境之一或多個感測器產生之感測器資訊,該感測器資訊表示該環境,若有則包含該環境中之障礙物;及 使用該經判定離散化產生該環境,若有則包含該環境中之障礙物之一離散表示,其中該經判定離散化之複數個三維像素在該各自離散化內在大小及形狀之至少一者上係非均勻的,且該經判定離散化之該等三維像素之該非均勻性之一各自分佈不同於該數個離散化之另一者。
  92. 如請求項91之基於處理器之系統,其中處理器可執行指令或資料之該至少一者在藉由該至少一個處理器執行時進一步引起該至少一個處理器執行如請求項73至90之方法之任何者。
  93. 一種在採用複數個規劃圖之一機器人控制系統中之操作方法,各規劃圖分別包括由複數個邊緣連接之複數個節點,各節點隱含或明確地表示特性化該第一機器人之一各自狀態之變數,且各邊緣表示該第一機器人之各自一對該等狀態之間之一轉變,其中該各自對狀態由藉由該各自規劃圖中之一各自邊緣耦合之一對節點之各自者表示,該方法包括: 針對該複數個規劃圖之一第一規劃圖, 針對該第一規劃圖之複數個邊緣之各者,針對與該邊緣相關聯之一掃掠體積之一離散表示與其中該機器人將操作之一環境中之任何障礙物之一離散表示之間之碰撞執行碰撞檢查; 基於該碰撞檢查更新該第一規劃圖; 執行該經更新第一規劃圖之一最佳化以若有則自該經更新第一規劃圖識別一或多個最佳化結果; 若有,則判定來自該經更新第一規劃圖之該一或多個最佳化結果是否符合一滿足條件; 回應於判定該最佳化結果不符合該滿足條件: 針對第二規劃圖之複數個邊緣之各者,針對與該邊緣相關聯之一掃掠體積之一離散表示與其中該機器人將操作之一環境中之任何障礙物之一離散表示之間之碰撞執行碰撞檢查, 基於該碰撞檢查更新該第二規劃圖;及 執行該經更新第二規劃圖之一最佳化以若有則自該經更新第二規劃圖識別一或多個最佳化結果。
  94. 如請求項93之方法,其進一步包括: 若有,則判定來自該經更新第二規劃圖之該一或多個最佳化結果是否符合一滿足條件。
  95. 如請求項94之方法,其中回應於若有,則判定來自該經更新第二規劃圖之該一或多個最佳化結果符合該滿足條件: 將由來自該經更新第二規劃圖之該一或多個最佳化結果之一者識別之一轉變應用至該機器人。
  96. 如請求項94之方法,其中回應於若有,則判定來自該經更新第二規劃圖之該一或多個最佳化結果不符合該滿足條件: 針對一第三規劃圖之複數個邊緣之各者,針對與該邊緣相關聯之一掃掠體積之一離散表示與其中該機器人將操作之一環境中之任何障礙物之一離散表示之間之碰撞執行碰撞檢查, 基於該碰撞檢查更新該第三規劃圖;及 執行該經更新第三規劃圖之一最佳化以若有則自該經更新第三規劃圖識別一或多個最佳化結果。
  97. 如請求項96之方法,其中回應於若有,則判定來自該經更新第三規劃圖之該一或多個最佳化結果符合該滿足條件: 將由來自該經更新第三規劃圖之該一或多個最佳化結果之一者識別之一轉變應用至該機器人。
  98. 如請求項93之方法,其中若有,則判定來自該經更新第二規劃圖之該一或多個最佳化結果符合該滿足條件包含判定該最佳化是否產生任何路徑。
  99. 如請求項93之方法,其中若有,則判定來自該經更新第二規劃圖之該一或多個最佳化結果符合該滿足條件包含判定該最佳化是否產生任何無碰撞路徑。
  100. 如請求項93至99中任一項之方法,其中針對與該邊緣相關聯之一掃掠體積之一離散表示與其中該機器人將操作之一環境中之任何障礙物之一離散表示之間之碰撞執行碰撞檢查包含針對該第一規劃圖中之該等邊緣之各者,將針對該等邊緣之一邊緣資訊集並行應用至複數個電路之各者,該等電路各表示由其中該機器人操作之該環境中之一障礙物佔用之一各自單位體積。
  101. 如請求項100之方法,其進一步包括: 組態至少一個處理器以實施表示由其中至少該第一機器人將操作之該環境中之一或多個障礙物佔用之複數個單位體積之各者之各自者之複數個電路。
  102. 一種採用複數個規劃圖之基於處理器之機器人控制系統,各規劃圖分別包括由複數個邊緣連接之複數個節點,各節點隱含或明確地表示特性化該第一機器人之一各自狀態之變數,且各邊緣表示該第一機器人之各自一對該等狀態之間之一轉變,其中該各自對狀態由藉由該各自規劃圖中之一各自邊緣耦合之一對節點之各自者表示,該系統包括: 至少一個處理器;及 至少一個非暫時性處理器可讀媒體,其儲存在藉由該至少一個處理器執行時引起該至少一個處理器執行以下項之處理器可執行指令或資料之至少一者: 針對該複數個規劃圖之一第一規劃圖, 針對該第一規劃圖之複數個邊緣之各者,針對與該邊緣相關聯之一掃掠體積之一離散表示與其中該機器人將操作之一環境中之任何障礙物之一離散表示之間之碰撞執行碰撞檢查; 基於該碰撞檢查更新該第一規劃圖; 執行該經更新第一規劃圖之一最佳化以若有則自該經更新第一規劃圖識別一或多個最佳化結果; 若有,則判定來自該經更新第一規劃圖之該一或多個最佳化結果是否符合一滿足條件; 回應於判定該最佳化結果不符合該滿足條件: 針對第二規劃圖之複數個邊緣之各者,針對與該邊緣相關聯之一掃掠體積之一離散表示與其中該機器人將操作之一環境中之任何障礙物之一離散表示之間之碰撞執行碰撞檢查, 基於該碰撞檢查更新該第二規劃圖;及 執行該經更新第二規劃圖之一最佳化以若有則自該經更新第二規劃圖識別一或多個最佳化結果。
  103. 如請求項102之基於處理器之系統,其中處理器可執行指令或資料之該至少一者在藉由該至少一個處理器執行時進一步引起該至少一個處理器執行如請求項94至101之方法之任何者。
TW108104094A 2018-02-06 2019-02-01 用於儲存一離散環境於一或多個處理器之一機器人之運動規劃及其改良操作之方法及設備 TWI822729B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201862626939P 2018-02-06 2018-02-06
US62/626,939 2018-02-06

Publications (2)

Publication Number Publication Date
TW201941887A true TW201941887A (zh) 2019-11-01
TWI822729B TWI822729B (zh) 2023-11-21

Family

ID=67475506

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108104094A TWI822729B (zh) 2018-02-06 2019-02-01 用於儲存一離散環境於一或多個處理器之一機器人之運動規劃及其改良操作之方法及設備

Country Status (6)

Country Link
US (3) US11235465B2 (zh)
EP (1) EP3723948A4 (zh)
JP (3) JP6969828B2 (zh)
CN (1) CN111989195B (zh)
TW (1) TWI822729B (zh)
WO (1) WO2019156984A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI820538B (zh) * 2020-12-31 2023-11-01 大陸商深圳市海柔創新科技有限公司 貨叉碰撞處理方法和裝置、機器人、計算機設備、計算機可讀儲存媒體及計算機程式產品

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2928250T3 (es) 2018-03-21 2022-11-16 Realtime Robotics Inc Planificación del movimiento de un robot para diversos entornos y tareas y mejora del funcionamiento del mismo
US20220193911A1 (en) * 2019-04-17 2022-06-23 Realtime Robotics, Inc. Motion planning graph generation user interface, systems, methods and articles
US11179850B2 (en) * 2019-04-24 2021-11-23 Intrinsic Innovation Llc Robot motion planning
KR102592639B1 (ko) * 2019-11-14 2023-10-23 한국전자통신연구원 시간을 분할하여 교대 작업하는 로봇 및 그 로봇들 간의 작업 교대 방법
US11724387B2 (en) 2020-04-03 2023-08-15 Fanuc Corporation Fast robot motion optimization with distance field
US11407109B2 (en) * 2020-04-16 2022-08-09 Boston Dynamics, Inc. Global arm path planning with roadmaps and precomputed domains
US11498213B2 (en) 2020-09-23 2022-11-15 Applied Materials, Inc. Robot joint space graph path planning and move execution
US11607809B2 (en) * 2020-12-22 2023-03-21 Intrinsic Innovation Llc Robot motion planning accounting for object pose estimation accuracy
US11628568B2 (en) * 2020-12-28 2023-04-18 Industrial Technology Research Institute Cooperative robotic arm system and homing method thereof

Family Cites Families (169)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2530261C2 (de) 1974-10-22 1986-10-23 Asea S.p.A., Mailand/Milano Programmiereinrichtung für einen Manipulator
US4163183A (en) 1975-10-28 1979-07-31 Unimation, Inc. Programmable automatic assembly system
US4862373A (en) 1987-05-13 1989-08-29 Texas Instruments Incorporated Method for providing a collision free path in a three-dimensional space
US4949277A (en) 1988-03-09 1990-08-14 North American Philips Corporation Differential budding: method and apparatus for path planning with moving obstacles and goals
US6089742A (en) 1989-11-01 2000-07-18 Warmerdam; Thomas P. H. Method and apparatus for controlling robots and the like using a bubble data hierarchy placed along a medial axis
US5544282A (en) 1991-04-05 1996-08-06 Chen; Pang C. Method and apparatus for planning motions of robot manipulators
US5347459A (en) 1993-03-17 1994-09-13 National Research Council Of Canada Real time collision detection
US5835684A (en) 1994-11-09 1998-11-10 Amada Company, Ltd. Method for planning/controlling robot motion
US6004016A (en) 1996-08-06 1999-12-21 Trw Inc. Motion planning and control for systems with multiple mobile objects
US5795297A (en) 1996-09-12 1998-08-18 Atlantis Diagnostics International, L.L.C. Ultrasonic diagnostic imaging system with personal computer architecture
US6049756A (en) 1997-11-12 2000-04-11 Lockheed Martin Corporation System and method for avoiding collision between vector and solid objects
JPH11296229A (ja) 1998-02-13 1999-10-29 Komatsu Ltd 車両の誘導装置
DE19831216A1 (de) 1998-07-03 2000-01-05 Amecon Gmbh Verfahren und Vorrichtung zur Bestimmung der Abhängigkeit einer ersten Meßgröße von einer zweiten Meßgröße
US6259988B1 (en) 1998-07-20 2001-07-10 Lockheed Martin Corporation Real-time mission adaptable route planner
DE19854011A1 (de) 1998-11-12 2000-05-25 Knoll Alois Einrichtung und Verfahren zum Vermessen von Mechanismen und ihrer Stellung
US6470301B1 (en) 1999-10-08 2002-10-22 Dassault Systemes Optimization tool for assembly workcell layout
US6526373B1 (en) 1999-10-08 2003-02-25 Dassault Systemes Optimization tool for robot placement
JP2002073130A (ja) 2000-06-13 2002-03-12 Yaskawa Electric Corp ロボットの大域動作経路計画方法とその制御装置
DE10063722C2 (de) 2000-12-20 2003-07-03 Siemens Ag Ruckbegrenzung mit Adaption der Bahndynamik
JP2003127077A (ja) 2001-10-19 2003-05-08 Komatsu Ltd 作業ロボットのロボットプログラム修正装置。
DE10200680B4 (de) 2002-01-10 2004-03-25 Siemens Ag Minimale Schwingungsanregung beim Verfahren mit Ruckbegrenzung durch Adaption von Ruckprofilen
US10065317B2 (en) 2016-06-30 2018-09-04 General Electric Company Control system for coordinating robotic machines to collaborate on tasks
US6671582B1 (en) 2002-08-26 2003-12-30 Brian P. Hanley Flexible agricultural automation
WO2004095520A2 (en) 2003-04-22 2004-11-04 Berkeley Process Control, Inc. System of path planning for robotic manipulators based on maximum acceleration and finite jerk constraints
JP4251545B2 (ja) 2003-07-11 2009-04-08 独立行政法人科学技術振興機構 移動ロボット用経路計画システム
JP3834307B2 (ja) 2003-09-29 2006-10-18 ファナック株式会社 ロボットシステム
US7447593B2 (en) 2004-03-26 2008-11-04 Raytheon Company System and method for adaptive path planning
WO2005103848A1 (en) 2004-04-22 2005-11-03 Frontline Robotics Open control system architecture for mobile autonomous systems
DE102004059966B3 (de) 2004-12-13 2006-06-22 Siemens Ag Verfahren und Einrichtung zur Bewegungsführung eines bewegbaren Maschinenelements einer numerisch gesteurten Maschine
JP2006224740A (ja) 2005-02-16 2006-08-31 Advics:Kk 車両用走行支援装置
US20060235610A1 (en) 2005-04-14 2006-10-19 Honeywell International Inc. Map-based trajectory generation
US20060247852A1 (en) 2005-04-29 2006-11-02 Kortge James M System and method for providing safety-optimized navigation route planning
US7577498B2 (en) 2005-08-23 2009-08-18 Motoman, Inc. Apparatus and methods for a robotic beverage server
JP4577248B2 (ja) 2006-03-23 2010-11-10 トヨタ自動車株式会社 移動体の経路探索システム、経路探索方法及び経路探索プログラム
US7609020B2 (en) 2006-07-11 2009-10-27 Delaware Capital Formation, Inc. Geometric end effector system
JP5112666B2 (ja) 2006-09-11 2013-01-09 株式会社日立製作所 移動装置
DE602006003435D1 (de) 2006-09-14 2008-12-11 Abb Research Ltd Verfahren und Vorrichtung zur Vermeidung von Kollisionen zwischen einem Industrieroboter und einem Objekt
US7974737B2 (en) 2006-10-31 2011-07-05 GM Global Technology Operations LLC Apparatus and method of automated manufacturing
KR100888475B1 (ko) 2007-02-02 2009-03-12 삼성전자주식회사 모델간 충돌 여부 검사 방법 및 장치
EP1972415B1 (en) 2007-03-23 2019-01-02 Honda Research Institute Europe GmbH Robots with collision avoidance functionality
US7865277B1 (en) 2007-05-07 2011-01-04 The United States Of America As Represented By The Secretary Of The Navy Obstacle avoidance system and method
US8082064B2 (en) 2007-08-24 2011-12-20 Elite Engineering Corporation Robotic arm and control system
US8380424B2 (en) 2007-09-28 2013-02-19 The Boeing Company Vehicle-based automatic traffic conflict and collision avoidance
EP2085279B1 (en) 2008-01-29 2011-05-25 Ford Global Technologies, LLC A system for collision course prediction
WO2009103335A1 (en) 2008-02-20 2009-08-27 Abb Research Ltd. Method and system for optimizing the layout of a robot work cell
US8571745B2 (en) 2008-04-10 2013-10-29 Robert Todd Pack Advanced behavior engine
US9144904B2 (en) 2008-05-21 2015-09-29 Fanuc Robotics America Corporation Method and system for automatically preventing deadlock in multi-robot systems
US8315738B2 (en) 2008-05-21 2012-11-20 Fanuc Robotics America, Inc. Multi-arm robot system interference check via three dimensional automatic zones
US8706452B2 (en) 2008-06-26 2014-04-22 Siemens Product Lifecycle Management Software Inc. System and method for collision-free CAD design of pipe and tube paths
JP5086942B2 (ja) 2008-09-02 2012-11-28 トヨタ自動車株式会社 経路探索装置、経路探索方法、及び経路探索プログラム
US20100145516A1 (en) 2008-12-08 2010-06-10 Illinois Tool Works Inc. High voltage monitoring system and method for spray coating systems
KR101554515B1 (ko) 2009-01-07 2015-09-21 삼성전자 주식회사 로봇의 경로계획장치 및 그 방법
US8074431B1 (en) 2009-06-01 2011-12-13 Top Tier, Inc. Hybrid palletizer
KR101105325B1 (ko) 2009-09-08 2012-01-16 부산대학교 산학협력단 실제 로봇의 다중 경로계획 방법
US8386080B2 (en) 2009-09-15 2013-02-26 Harris Corporation Robotic apparatus implementing collision avoidance scheme and associated methods
JP4975075B2 (ja) 2009-09-30 2012-07-11 クラリオン株式会社 ナビゲーション装置および経路演算方法
WO2011056633A1 (en) 2009-10-27 2011-05-12 Battelle Memorial Institute Semi-autonomous multi-use robot system and method of operation
US20110153080A1 (en) 2009-12-22 2011-06-23 Siemens Product Lifecycle Management Software Inc. Method and apparatus for industrial robotic pathscycle time optimization using fly by
CN101837591B (zh) * 2010-03-12 2011-08-24 西安电子科技大学 基于双群协同竞争粒子群和Ferguson样条的机器人路径规划方法
US20120061155A1 (en) 2010-04-09 2012-03-15 Willow Garage, Inc. Humanoid robotics system and methods
JP2011249711A (ja) 2010-05-31 2011-12-08 Kyocera Corp 配線基板およびその実装構造体
US8855812B2 (en) 2010-07-23 2014-10-07 Chetan Kapoor System and method for robot safety and collision avoidance
EP2572837B1 (en) 2010-08-31 2014-06-11 Kabushiki Kaisha Yaskawa Denki Robot, robot system, robot control device, and state determining method
JP2012056023A (ja) * 2010-09-09 2012-03-22 Toyota Motor Corp ロボットの動作生成システム及び動作生成方法
EP2619742B1 (en) 2010-09-24 2018-02-28 iRobot Corporation Systems and methods for vslam optimization
US8509982B2 (en) 2010-10-05 2013-08-13 Google Inc. Zone driving
JP2012190405A (ja) 2011-03-14 2012-10-04 Toyota Motor Corp 経路情報修正装置、軌道計画装置、及びロボット
JP5774361B2 (ja) 2011-04-28 2015-09-09 本田技研工業株式会社 軌道計画方法、軌道計画システム及び軌道計画・制御システム
JP5981215B2 (ja) * 2011-05-05 2016-08-31 ファナック アメリカ コーポレイション マルチロボットシステムのデッドロックを自動的に防止する方法及びシステム
JP2012243029A (ja) 2011-05-18 2012-12-10 Toyota Central R&D Labs Inc 経路探索機能付き移動体
US8825208B1 (en) 2011-06-10 2014-09-02 Richard Mark Benson Automated construction machinery and method
JP5472214B2 (ja) 2011-06-20 2014-04-16 株式会社安川電機 ピッキングシステム
KR101634463B1 (ko) 2011-06-29 2016-06-28 미쓰비시덴키 가부시키가이샤 부품 공급 장치
TW201318793A (zh) 2011-11-08 2013-05-16 Univ Minghsin Sci & Tech 機器人光學定位系統及其定位方法
WO2013101273A1 (en) 2011-12-30 2013-07-04 St. Jude Medical, Atrial Fibrillation Division, Inc. System and method for detection and avoidance of collisions of robotically-controlled medical devices
SG11201405840TA (en) 2012-03-22 2014-10-30 Israel Aerospace Ind Ltd Planning and monitoring of autonomous-mission
JP5724919B2 (ja) 2012-03-22 2015-05-27 トヨタ自動車株式会社 軌道生成装置、移動体、軌道生成方法及びプログラム
KR20130112507A (ko) 2012-04-04 2013-10-14 인하대학교 산학협력단 S* 알고리즘을 이용한 이동로봇의 안전경로계획 수립방법
US20130343640A1 (en) 2012-06-21 2013-12-26 Rethink Robotics, Inc. Vision-guided robots and methods of training them
JP6128767B2 (ja) 2012-07-05 2017-05-17 キヤノン株式会社 ロボット制御装置、及びロボット制御方法
KR101441187B1 (ko) 2012-07-19 2014-09-18 고려대학교 산학협력단 자율 보행 로봇 경로 계획 방법
JP6069923B2 (ja) * 2012-07-20 2017-02-01 セイコーエプソン株式会社 ロボットシステム、ロボット、ロボット制御装置
KR20150058250A (ko) 2012-08-24 2015-05-28 유니버시티 오브 휴스턴 로봇 장치 및 영상 안내 및 로봇 지원 수술을 위한 시스템
US9043025B2 (en) 2012-08-31 2015-05-26 Rethink Robotics, Inc. Systems and methods for safe robot operation
JP6273084B2 (ja) 2012-09-20 2018-01-31 株式会社安川電機 ロボットシステムおよびワークの搬送方法
EP2906396A1 (en) 2012-10-11 2015-08-19 ABB Technology Ltd. A method and an apparatus for automatically generating a collision free return program for returning a robot from a stop position to a predefined restart position
KR102009482B1 (ko) 2012-10-30 2019-08-14 한화디펜스 주식회사 로봇의 경로계획 장치와 방법 및 상기 방법을 구현하는 프로그램이 기록된 기록 매체
US9227322B2 (en) 2012-11-30 2016-01-05 Fanuc Robotics America Corporation Multi-arm robotic painting process synchronization
US9405296B2 (en) 2012-12-19 2016-08-02 Elwah LLC Collision targeting for hazard handling
US8972057B1 (en) 2013-01-09 2015-03-03 The Boeing Company Systems and methods for generating a robotic path plan in a confined configuration space
US9393686B1 (en) 2013-03-15 2016-07-19 Industrial Perception, Inc. Moveable apparatuses having robotic manipulators and conveyors to facilitate object movement
JP5962560B2 (ja) 2013-03-22 2016-08-03 トヨタ自動車株式会社 経路探索装置、移動体、経路探索方法及びプログラム
WO2015017444A1 (en) 2013-07-30 2015-02-05 Intelligrated Headquarters Llc Robotic carton unloader
US9280899B2 (en) 2013-08-06 2016-03-08 GM Global Technology Operations LLC Dynamic safety shields for situation assessment and decision making in collision avoidance tasks
JP6057862B2 (ja) * 2013-08-29 2017-01-11 三菱電機株式会社 部品供給装置および部品供給装置のプログラム生成方法
US9352465B2 (en) 2013-11-12 2016-05-31 Canon Kabushiki Kaisha Control method for robot apparatus and robot apparatus
WO2015113203A1 (en) 2014-01-28 2015-08-06 Abb Technology Ltd Method and apparatus for optimizing performance of robotic cell
JP5897624B2 (ja) 2014-03-12 2016-03-30 ファナック株式会社 ワークの取出工程をシミュレーションするロボットシミュレーション装置
JP5877867B2 (ja) 2014-04-25 2016-03-08 ファナック株式会社 複数台のロボットのシミュレーション装置
DE102014212898A1 (de) 2014-07-03 2016-01-07 Robert Bosch Gmbh Verfahren zum Ermitteln einer Notfall-Trajektorie und Verfahren zum teilautomatisierten oder automatisierten Führen eines Ego-Fahrzeugs
US9283678B2 (en) * 2014-07-16 2016-03-15 Google Inc. Virtual safety cages for robotic devices
US11576543B2 (en) 2014-07-18 2023-02-14 Ali Ebrahimi Afrouzi Robotic vacuum with rotating cleaning apparatus
US9403275B2 (en) 2014-10-17 2016-08-02 GM Global Technology Operations LLC Dynamic obstacle avoidance in a robotic system
JP5980873B2 (ja) 2014-10-17 2016-08-31 ファナック株式会社 ロボットの干渉領域設定装置
US20160121487A1 (en) 2014-11-03 2016-05-05 Qualcomm Incorporated Communicating Configurable Instruction Sets to Robots for Controlling Robot Behavior
EP3250347B1 (en) 2015-01-26 2023-11-08 Duke University Specialized robot motion planning hardware and methods of making and using same
CN107206590B (zh) 2015-02-13 2021-02-05 Abb瑞士股份有限公司 用于避免两个机器人之间的碰撞的方法
US10019006B2 (en) 2015-04-08 2018-07-10 University Of Maryland, College Park Surface vehicle trajectory planning systems, devices, and methods
US9327397B1 (en) 2015-04-09 2016-05-03 Codeshelf Telepresence based inventory pick and place operations through robotic arms affixed to each row of a shelf
US9687982B1 (en) * 2015-05-27 2017-06-27 X Development Llc Adapting programming of a robot and/or control of the robot based on one or more parameters of an end effector of the robot
US20160357187A1 (en) 2015-06-05 2016-12-08 Arafat M.A. ANSARI Smart vehicle
JP6446331B2 (ja) 2015-06-08 2018-12-26 日立オートモティブシステムズ株式会社 扁平ビーム生成アンテナを有するセンサ
US20170004406A1 (en) 2015-06-30 2017-01-05 Qualcomm Incorporated Parallel belief space motion planner
US9707681B2 (en) 2015-07-27 2017-07-18 Siemens Industry Software Ltd. Anti-collision management of overlapping robotic movements
KR101724887B1 (ko) 2015-08-10 2017-04-07 현대자동차주식회사 전방 도로 형상과 연결을 분석해 차선 변경과 타이밍을 결정하는 자율주행 제어 장치 및 방법
WO2017033352A1 (ja) 2015-08-25 2017-03-02 川崎重工業株式会社 産業用遠隔操作ロボットシステム
JP6760297B2 (ja) 2015-09-29 2020-09-23 ソニー株式会社 信号処理装置、信号処理方法およびプログラム
KR20170044987A (ko) 2015-10-16 2017-04-26 한국전기연구원 저크가 제한된 궤적 생성 방법
KR101748632B1 (ko) 2015-10-29 2017-06-20 한국과학기술연구원 로봇의 구동 경로를 계획하기 위한 로봇 제어 시스템 및 로봇 구동 경로 계획방법
US9632502B1 (en) 2015-11-04 2017-04-25 Zoox, Inc. Machine-learning systems and techniques to optimize teleoperation and/or planner decisions
US10496766B2 (en) 2015-11-05 2019-12-03 Zoox, Inc. Simulation system and methods for autonomous vehicles
EP3171133B1 (en) 2015-11-19 2020-03-11 Sikorsky Aircraft Corporation Kinematic motion planning with regional planning constraints
US10093021B2 (en) * 2015-12-02 2018-10-09 Qualcomm Incorporated Simultaneous mapping and planning by a robot
JP6690213B2 (ja) 2015-12-09 2020-04-28 セイコーエプソン株式会社 ロボット、制御装置およびロボットシステム
US10012984B2 (en) 2015-12-14 2018-07-03 Mitsubishi Electric Research Laboratories, Inc. System and method for controlling autonomous vehicles
US10705528B2 (en) 2015-12-15 2020-07-07 Qualcomm Incorporated Autonomous visual navigation
US10665115B2 (en) 2016-01-05 2020-05-26 California Institute Of Technology Controlling unmanned aerial vehicles to avoid obstacle collision
US10035266B1 (en) 2016-01-18 2018-07-31 X Development Llc Generating robot trajectories using a real time trajectory generator and a path optimizer
JP6576255B2 (ja) 2016-01-25 2019-09-18 キヤノン株式会社 ロボット軌道生成方法、ロボット軌道生成装置、および製造方法
US9645577B1 (en) 2016-03-23 2017-05-09 nuTonomy Inc. Facilitating vehicle driving and self-driving
WO2017168187A1 (en) 2016-03-31 2017-10-05 Siemens Industry Software Ltd. Method and system for determining optimal positioning of a plurality of robots in a simulated production environment
WO2017192144A1 (en) 2016-05-05 2017-11-09 Harman International Industries, Incorporated Systems and methods for driver assistance
US9687983B1 (en) * 2016-05-11 2017-06-27 X Development Llc Generating a grasp pose for grasping of an object by a grasping end effector of a robot
US9981382B1 (en) 2016-06-03 2018-05-29 X Development Llc Support stand to reorient the grasp of an object by a robot
US9880561B2 (en) 2016-06-09 2018-01-30 X Development Llc Sensor trajectory planning for a vehicle
WO2017214581A1 (en) * 2016-06-10 2017-12-14 Duke University Motion planning for autonomous vehicles and reconfigurable motion planning processors
US9981383B1 (en) 2016-08-02 2018-05-29 X Development Llc Real-time trajectory generation for actuators of a robot to reduce chance of collision with obstacle(s)
US10345815B2 (en) 2016-09-14 2019-07-09 Qualcomm Incorporated Motion planning and intention prediction for autonomous driving in highway scenarios via graphical model-based factorization
US10131053B1 (en) * 2016-09-14 2018-11-20 X Development Llc Real time robot collision avoidance
DE102016120763B4 (de) * 2016-10-31 2019-03-14 Pilz Gmbh & Co. Kg Verfahren zur kollisionsfreien Bewegungsplanung
WO2018087550A2 (en) 2016-11-09 2018-05-17 Inventive Cogs (Campbell) Limited Vehicle route guidance
KR102518532B1 (ko) 2016-11-11 2023-04-07 현대자동차주식회사 자율주행차량의 경로 결정장치 및 그 방법
US10012988B2 (en) 2016-11-29 2018-07-03 Mitsubishi Electric Research Laboratories, Inc. Methods and systems for path planning using a network of safe-sets
US10296012B2 (en) 2016-12-21 2019-05-21 X Development Llc Pre-computation of kinematically feasible roadmaps
US10480947B2 (en) 2016-12-21 2019-11-19 X Development Llc Boolean satisfiability (SAT) reduction for geometry and kinematics agnostic multi-agent planning
US20180189683A1 (en) 2016-12-29 2018-07-05 NextEv USA, Inc. Autonomous ev charging priority network
US11541543B2 (en) 2017-02-07 2023-01-03 Veo Robotics, Inc. Dynamic, interactive signaling of safety-related conditions in a monitored environment
WO2018148181A1 (en) 2017-02-07 2018-08-16 Veo Robotics, Inc. Workspace safety monitoring and equipment control
DE102017102749A1 (de) 2017-02-13 2018-08-16 Festo Ag Automatische Trajektorienerzeugung zur Ansteuerung eines Antriebssystems
US10430641B2 (en) 2017-03-08 2019-10-01 GM Global Technology Operations LLC Methods and systems for object tracking using bounding boxes
US10303180B1 (en) * 2017-04-20 2019-05-28 X Development Llc Generating and utilizing non-uniform volume measures for voxels in robotics applications
KR101937269B1 (ko) 2017-05-15 2019-01-14 한국생산기술연구원 로봇 모션 경로 계획방법
US11358337B2 (en) 2017-05-24 2022-06-14 Divergent Technologies, Inc. Robotic assembly of transport structures using on-site additive manufacturing
US11014240B2 (en) 2017-09-05 2021-05-25 Abb Schweiz Ag Robot having dynamic safety zones
US10782694B2 (en) 2017-09-07 2020-09-22 Tusimple, Inc. Prediction-based system and method for trajectory planning of autonomous vehicles
EP3486612B1 (en) 2017-11-20 2020-07-01 Robert Bosch GmbH Method for generating a trajectory
US10466707B2 (en) 2017-12-22 2019-11-05 X Development Llc Planning robot stopping points to avoid collisions
US10480952B2 (en) * 2018-02-01 2019-11-19 Didi Research America, Llc Probabilistic navigation system and method
AT520958A1 (de) 2018-03-09 2019-09-15 Tgw Logistics Group Gmbh Robotersystem mit an Warentypen angepassten Bewegungsabläufen und Betriebsverfahren hierfür
ES2928250T3 (es) 2018-03-21 2022-11-16 Realtime Robotics Inc Planificación del movimiento de un robot para diversos entornos y tareas y mejora del funcionamiento del mismo
US11216009B2 (en) 2018-06-25 2022-01-04 Intrinsic Innovation Llc Robot coordination in a shared workspace
CN112601641B (zh) 2018-08-23 2024-03-08 实时机器人有限公司 用于机器人运动规划的碰撞检测
US10809732B2 (en) 2018-09-25 2020-10-20 Mitsubishi Electric Research Laboratories, Inc. Deterministic path planning for controlling vehicle movement
JP7394853B2 (ja) 2018-12-04 2023-12-08 デューク・ユニバーシティ 動的物体を有する環境における運動計画を促進する装置、方法及び物品
EP3725472A1 (de) 2019-04-16 2020-10-21 Siemens Aktiengesellschaft Verfahren zum ermitteln einer trajektorie eines roboters
US11179850B2 (en) 2019-04-24 2021-11-23 Intrinsic Innovation Llc Robot motion planning
JP7222803B2 (ja) 2019-04-25 2023-02-15 株式会社日立製作所 軌道計画装置、軌道計画方法及びプログラム
GB202215836D0 (en) 2019-05-07 2022-12-07 Motional Ad Llc Systems and methods for planning and updating a vehicle's trajectory
TWI699636B (zh) 2019-05-21 2020-07-21 華邦電子股份有限公司 協同型機器人控制系統和方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI820538B (zh) * 2020-12-31 2023-11-01 大陸商深圳市海柔創新科技有限公司 貨叉碰撞處理方法和裝置、機器人、計算機設備、計算機可讀儲存媒體及計算機程式產品

Also Published As

Publication number Publication date
JP2021513466A (ja) 2021-05-27
US20230356400A1 (en) 2023-11-09
JP2022009305A (ja) 2022-01-14
JP2022009306A (ja) 2022-01-14
US11745346B2 (en) 2023-09-05
CN111989195B (zh) 2023-07-07
CN111989195A (zh) 2020-11-24
US20190240835A1 (en) 2019-08-08
EP3723948A4 (en) 2021-09-15
TWI822729B (zh) 2023-11-21
US20220080594A1 (en) 2022-03-17
WO2019156984A1 (en) 2019-08-15
JP6969828B2 (ja) 2021-11-24
EP3723948A1 (en) 2020-10-21
JP7055511B2 (ja) 2022-04-18
US11235465B2 (en) 2022-02-01

Similar Documents

Publication Publication Date Title
TWI822729B (zh) 用於儲存一離散環境於一或多個處理器之一機器人之運動規劃及其改良操作之方法及設備
US11970161B2 (en) Apparatus, method and article to facilitate motion planning of an autonomous vehicle in an environment having dynamic objects
JP7141665B2 (ja) ロボットの動作計画に役立つ衝突検出
US20220057803A1 (en) Apparatus, method and article to facilitate motion planning in an environment having dynamic objects
US11964393B2 (en) Motion planning of a robot for various environments and tasks and improved operation of same
US11634126B2 (en) Apparatus, methods and articles to facilitate motion planning in environments having dynamic obstacles
US11623346B2 (en) Configuration of robots in multi-robot operational environment
JP2022542239A (ja) 視角エンベディングに基づいた自律タスク実行
US20240009845A1 (en) Systems, methods, and user interfaces employing clearance determinations in robot motion planning and control
Zhang et al. Safe and efficient robot manipulation: Task-oriented environment modeling and object pose estimation
US20220193911A1 (en) Motion planning graph generation user interface, systems, methods and articles
CN116523952A (zh) 利用2d和3d逐点特征估计6d目标姿态
JP7450297B2 (ja) センサーの配置を含むロボット操作環境の構成
TW202123031A (zh) 用以便利具有動態物件環境中之運動規劃的裝置、方法及物品
US20230286156A1 (en) Motion planning and control for robots in shared workspace employing staging poses
Samiloglu et al. An experimental set-up for multi-robot applications
TW202406697A (zh) 採用前瞻規劃之共享工作空間中機器人的運動規劃和控制
KR20230115097A (ko) 딥러닝 기반 3차원 객체 인지 방법 및 장치