本公開(kāi)內(nèi)容一般地涉及用于管理產(chǎn)品和其他項(xiàng)目的數(shù)據(jù)的計(jì)算機(jī)輔助設(shè)計(jì)、可視化和制造(“CAD”)系統(tǒng),產(chǎn)品壽命管理(“PLM”)系統(tǒng),產(chǎn)品數(shù)據(jù)管理(“PDM”)系統(tǒng)以及類(lèi)似的系統(tǒng)(概括地,“產(chǎn)品數(shù)據(jù)管理”系統(tǒng)或PDM系統(tǒng)),并且具體地涉及用于對(duì)具有至少部分地交疊的機(jī)器人移動(dòng)的兩個(gè)或更多個(gè)機(jī)器人進(jìn)行防碰撞管理的方法和系統(tǒng)。
背景技術(shù):
機(jī)器人在工業(yè)應(yīng)用中被廣泛使用并且履行沿著軌跡的機(jī)器人操作。要避免當(dāng)兩個(gè)或更多個(gè)機(jī)器人在同一時(shí)間共享同一空間時(shí)發(fā)生碰撞,這是因?yàn)榕鲎部梢詫?duì)機(jī)器人以及由機(jī)器人處理的工件造成嚴(yán)重的損壞。當(dāng)前,通過(guò)限定其中單獨(dú)的機(jī)器人的單個(gè)掃掠體積交疊的交疊區(qū)域來(lái)實(shí)現(xiàn)機(jī)器人的碰撞處理。由于共享該交疊區(qū)域的單獨(dú)的單個(gè)機(jī)器人的軌跡在所述交疊區(qū)域內(nèi)可能交疊,所以每次僅允許一個(gè)機(jī)器人在該時(shí)間進(jìn)入所述交疊區(qū)域。共享該交疊區(qū)域的其他機(jī)器人在此時(shí)被強(qiáng)制待機(jī)并因此不能生產(chǎn)。
由于機(jī)器人在非常擁擠的車(chē)間中常常共享整個(gè)工作區(qū)域,所以交疊區(qū)域是大量且廣泛的,這導(dǎo)致生產(chǎn)周期時(shí)間的大大增加。這減小了效率并且極大地限制了機(jī)器人同步能力。因此,需要一種用于碰撞管理的方法,該方法通過(guò)允許機(jī)器人同時(shí)執(zhí)行機(jī)器人操作來(lái)減少機(jī)器人的待機(jī)等待時(shí)間。
技術(shù)實(shí)現(xiàn)要素:
各種公開(kāi)的實(shí)施方式包括用于對(duì)執(zhí)行機(jī)器人操作的兩個(gè)或更多個(gè)單個(gè)機(jī)器人特別是工業(yè)機(jī)器人進(jìn)行防碰撞管理的方法和系統(tǒng)。所述系統(tǒng)和方法包括:接收包括每個(gè)單個(gè)機(jī)器人為了履行其機(jī)器人操作而遵循的軌跡的輸入,其中,沿著其軌跡的每個(gè)單個(gè)機(jī)器人位于單個(gè)掃掠體積內(nèi),以及其中,兩個(gè)或更多個(gè)單個(gè)機(jī)器人的機(jī)器人操作至少部分地發(fā)生于共享空間中,使得單獨(dú)的單個(gè)機(jī)器人的單個(gè)掃掠體積中的至少兩個(gè)單個(gè)掃掠體積形成其中可能發(fā)生機(jī)器人之間碰撞的交疊區(qū)域。所述系統(tǒng)和方法包括:根據(jù)一個(gè)或更多個(gè)離散化準(zhǔn)則在用于每個(gè)單個(gè)機(jī)器人的機(jī)器人路徑位置之間創(chuàng)建離散化的子掃掠體積。兩個(gè)或更多個(gè)單個(gè)機(jī)器人的僅交疊的離散化的子掃掠體積被考慮用于同步。所述系統(tǒng)和方法使得能夠在減少一個(gè)或更多個(gè)單個(gè)機(jī)器人的待機(jī)等待時(shí)間的情況下同時(shí)控制兩個(gè)或更多個(gè)機(jī)器人減少碰撞。
前述內(nèi)容已經(jīng)強(qiáng)調(diào)了本公開(kāi)內(nèi)容的相對(duì)廣泛的特征和技術(shù)優(yōu)點(diǎn),以使得本領(lǐng)域技術(shù)人員可以更好地理解下文中的詳細(xì)描述。在下文中,將描述本公開(kāi)內(nèi)容的形成權(quán)利要求書(shū)的主題的另外的特征和優(yōu)點(diǎn)。本領(lǐng)域技術(shù)人員將理解的是,他們可以容易地使用所公開(kāi)的概念和具體實(shí)施方式作為用于修改或設(shè)計(jì)用于執(zhí)行本公開(kāi)內(nèi)容的相同目的的其他結(jié)構(gòu)的基礎(chǔ)。本領(lǐng)域技術(shù)人員還將認(rèn)識(shí)到,這樣的等同構(gòu)造不會(huì)背離本公開(kāi)內(nèi)容的最廣泛的形式的精神和范圍。
在下面的“具體實(shí)施方式”之前,可以有利的是,闡述貫穿本專(zhuān)利文獻(xiàn)所使用的某些詞語(yǔ)或短語(yǔ)的定義:術(shù)語(yǔ)“包括”及其變體意味著包括但不限于;術(shù)語(yǔ)“或”是包括性的,意味著和/或;短語(yǔ)“與……相關(guān)聯(lián)”和“與其相關(guān)聯(lián)”及其變體可以意味著包括、包括在……內(nèi)、與……互聯(lián)、包含、包含在……內(nèi)、連接至或與……連接、耦接至或與……耦接、與……通信、與……協(xié)作、插入、并置、接近、接合至或與……接合、具有、具有……的屬性等;以及術(shù)語(yǔ)“控制器”意味著控制至少一個(gè)操作的任何裝置、系統(tǒng)或其部件,而不管這樣的裝置是以硬件、固件、軟件或以上中的至少兩個(gè)的組合的形式實(shí)現(xiàn)。應(yīng)當(dāng)注意,與任何特定控制器相關(guān)聯(lián)的功能可以是集中的或分布式的,而不管是本地分布還是遠(yuǎn)程分布。貫穿本專(zhuān)利文獻(xiàn)提供了某些詞語(yǔ)和短語(yǔ)的定義,并且本領(lǐng)域普通技術(shù)人員要理解,這樣的定義適用于即使不是大多數(shù)也是許多的先前實(shí)例,并且適用于將來(lái)使用這樣定義的詞語(yǔ)和短語(yǔ)。雖然一些術(shù)語(yǔ)可以包括各種實(shí)施方式,但是所附權(quán)利要求書(shū)可以將這些術(shù)語(yǔ)明確地限制成具體實(shí)施方式。
附圖說(shuō)明
為了對(duì)本公開(kāi)內(nèi)容及其優(yōu)點(diǎn)更透徹地理解,現(xiàn)在參照以下結(jié)合附圖做出的描述,其中,相似的附圖標(biāo)記指代相似的對(duì)象,并且在附圖中:
圖1示出了可以實(shí)現(xiàn)實(shí)施方式的數(shù)據(jù)處理系統(tǒng)的框圖;
圖2是根據(jù)現(xiàn)有技術(shù)的機(jī)器人同步的示意性例示;
圖3是圖2的兩個(gè)機(jī)器人的示意圖,其中,圖2的兩個(gè)機(jī)器人的單個(gè)掃掠體積被再分;
圖4示意性地示出了兩個(gè)機(jī)器人的可能產(chǎn)生的死鎖情形;以及
圖5示出了根據(jù)所公開(kāi)的實(shí)施方式的用于對(duì)機(jī)器人之間的碰撞進(jìn)行最佳管理的處理的流程圖。
具體實(shí)施方式
在本專(zhuān)利文獻(xiàn)中,以下討論的圖1至圖5以及用于描述本公開(kāi)內(nèi)容的原理的各種實(shí)施方式僅作為例示,并且不應(yīng)當(dāng)以任何方式理解成限制本公開(kāi)內(nèi)容的范圍。本領(lǐng)域技術(shù)人員要理解,本公開(kāi)內(nèi)容的原理可以在任何適當(dāng)?shù)夭贾玫难b置中實(shí)現(xiàn)。將參照示例性非限制實(shí)施方式來(lái)描述本申請(qǐng)的各種新穎教導(dǎo)。
對(duì)兩個(gè)或更多個(gè)機(jī)器人的機(jī)器人操作的協(xié)作執(zhí)行確定最有效的同步以便實(shí)現(xiàn)最小周期時(shí)間和增大效率需要考慮以下各種限制因素以及其他因素,各種限制包括:機(jī)器人之間是否發(fā)生任何碰撞;機(jī)器人是否進(jìn)入死鎖情形;以及當(dāng)由于碰撞和/或死鎖情形而不能進(jìn)行協(xié)作執(zhí)行時(shí)給予機(jī)器人中的哪個(gè)機(jī)器人優(yōu)先。
機(jī)器人執(zhí)行機(jī)器人操作,其中,沿著其軌跡的每個(gè)單個(gè)機(jī)器人位于單個(gè)掃掠體積內(nèi)。當(dāng)兩個(gè)或更多個(gè)單獨(dú)的單個(gè)機(jī)器人的機(jī)器人操作共享同一空間時(shí),單獨(dú)的單個(gè)機(jī)器人的至少一部分單個(gè)掃掠體積形成其中可能發(fā)生機(jī)器人之間的碰撞的交疊區(qū)域。每次僅允許一個(gè)單獨(dú)的單個(gè)機(jī)器人進(jìn)入交疊區(qū)域減少了碰撞風(fēng)險(xiǎn),但是大大地增大了生產(chǎn)周期時(shí)間。
在執(zhí)行機(jī)器人操作期間,每個(gè)新的交疊區(qū)域以及/或者每個(gè)另外的三個(gè)或更多個(gè)機(jī)器人共享兩個(gè)或更多個(gè)單個(gè)掃掠體積的交疊區(qū)域?qū)е铝硗獾臅r(shí)期的待機(jī)等待時(shí)間。由于通常的車(chē)間非常擁擠并且工業(yè)機(jī)器人常常共享整個(gè)工作區(qū)域,所以該問(wèn)題會(huì)進(jìn)一步被放大。
對(duì)生產(chǎn)線中的每個(gè)機(jī)器人應(yīng)用該方法大大地減少了待機(jī)等待時(shí)間,從而使得周期時(shí)間得到優(yōu)化,并且因此減少了總體生產(chǎn)成本。
圖1示出了可以實(shí)現(xiàn)實(shí)施方式的數(shù)據(jù)處理系統(tǒng)(例如如由軟件等特別配置用于進(jìn)行如本文中所描述的處理的PDM系統(tǒng)以及特別是如本文中所描述的多個(gè)互聯(lián)且通信的系統(tǒng)中的每個(gè)系統(tǒng))的框圖。所示的數(shù)據(jù)處理系統(tǒng)可以包括連接至二級(jí)緩存/橋104的處理器102,二級(jí)緩存/橋104進(jìn)而連接至本地系統(tǒng)總線106。本地系統(tǒng)總線106可以是例如外圍部件互聯(lián)(PCI)架構(gòu)總線。在所示的示例中,主存儲(chǔ)器108和圖形適配器110也連接至本地系統(tǒng)總線。圖形適配器110可以連接至顯示器111。
其他外圍設(shè)備例如局域網(wǎng)(LAN)/廣域網(wǎng)/無(wú)線(例如,WiFi)適配器112也可以連接至本地系統(tǒng)總線106。擴(kuò)展總線接口114將本地系統(tǒng)總線106連接至輸入/輸出(I/O)總線116。I/O總線116連接至鍵盤(pán)/鼠標(biāo)適配器118、磁盤(pán)控制器120和I/O適配器122。磁盤(pán)控制器120可以連接至存儲(chǔ)裝置126,存儲(chǔ)裝置126可以是任何合適的機(jī)器可用或機(jī)器可讀存儲(chǔ)介質(zhì),包括但不限于非易失性硬編碼型介質(zhì)例如只讀存儲(chǔ)器(ROM)或可擦除電可編程只讀存儲(chǔ)器(EEPROM);磁帶存儲(chǔ)裝置;以及用戶可記錄型介質(zhì)例如軟盤(pán)、硬盤(pán)驅(qū)動(dòng)器和壓縮盤(pán)只讀存儲(chǔ)器(CD-ROM)或者數(shù)字多功能盤(pán)(DVD);以及其他已知的光、電或磁存儲(chǔ)裝置。存儲(chǔ)裝置126存儲(chǔ)機(jī)器人信息150以及其機(jī)器人操作信息152。機(jī)器人操作信息152可以包括例如下文中描述的軌跡信息154、位置信息156、時(shí)間索引信息158、優(yōu)先信息160等。
在所示的示例中,音頻適配器124也連接至I/O總線116,揚(yáng)聲器(未示出)可以連接至音頻適配器124以用于播放聲音。鍵盤(pán)/鼠標(biāo)適配器118為點(diǎn)擊裝置(未示出)例如鼠標(biāo)、跟蹤球、跟蹤指針、觸摸屏等提供連接。
本領(lǐng)域普通技術(shù)人員要理解,圖1中所示的硬件對(duì)于特定實(shí)現(xiàn)方式可以變化。例如,除了所示的硬件之外或替代所示的硬件,也可以使用其他外圍裝置例如光盤(pán)驅(qū)動(dòng)器等。僅出于闡述目的來(lái)提供所示的示例,并且所示的示例不意味著暗含對(duì)本公開(kāi)內(nèi)容的架構(gòu)限制。
根據(jù)本公開(kāi)內(nèi)容的實(shí)施方式的數(shù)據(jù)處理系統(tǒng)可以包括采用圖形用戶界面的操作系統(tǒng)。操作系統(tǒng)允許在圖形用戶界面中同時(shí)呈現(xiàn)多個(gè)顯示窗口,其中,每個(gè)顯示窗口對(duì)不同的應(yīng)用或者對(duì)同一應(yīng)用的不同的實(shí)例提供界面。圖形用戶界面中的光標(biāo)可以由用戶通過(guò)點(diǎn)擊裝置來(lái)操縱。光標(biāo)的位置可以改變以及/或者生成事件例如點(diǎn)擊鼠標(biāo)按鈕以執(zhí)行所期望的響應(yīng)。
如果適當(dāng)?shù)匦薷?,也可以使用各種商用操作系統(tǒng)中之一例如位于華盛頓的雷德蒙的微軟公司的產(chǎn)品Microsoft WindowsTM版本。如所描述的,根據(jù)本公開(kāi)內(nèi)容來(lái)修改或創(chuàng)建操作系統(tǒng)。
LAN/WAN/無(wú)線適配器112可以連接至網(wǎng)絡(luò)130(不是數(shù)據(jù)處理系統(tǒng)100的一部分),網(wǎng)絡(luò)130可以是如本領(lǐng)域技術(shù)人員已知的包括因特網(wǎng)的任何公用或私用數(shù)據(jù)處理系統(tǒng)網(wǎng)絡(luò)或網(wǎng)絡(luò)的組合。數(shù)據(jù)處理系統(tǒng)100可以經(jīng)由網(wǎng)絡(luò)130與服務(wù)器系統(tǒng)140進(jìn)行通信,服務(wù)器系統(tǒng)140也不是數(shù)據(jù)處理系統(tǒng)100的一部分,但是可以例如被實(shí)現(xiàn)為單獨(dú)的數(shù)據(jù)處理系統(tǒng)100。
圖2是根據(jù)現(xiàn)有技術(shù)的用于對(duì)交疊的機(jī)器人移動(dòng)進(jìn)行防碰撞管理的方法的示意性例示:示出了兩個(gè)機(jī)器人202、204,所述機(jī)器人沿著其軌跡206、208執(zhí)行機(jī)器人操作,使得所述機(jī)器人總是位于其單個(gè)掃掠體積210、212內(nèi)。單個(gè)掃掠體積210、212表示在操作期間所捕獲的體積。機(jī)器人202、204在其單個(gè)掃掠體積210、212形成單個(gè)交疊區(qū)域214時(shí)可以彼此碰撞。還要強(qiáng)調(diào)的是,該區(qū)域用于三維對(duì)象,然而,該區(qū)域還可以更一般地用于另外描述二維對(duì)象。
當(dāng)機(jī)器人202、204位于軌跡206、208的(由十字以圖形的方式指示的)部分206z、208z上時(shí),遇到單個(gè)交疊區(qū)域214。然而,僅單個(gè)交疊區(qū)域214的交疊段214a、214b、214c實(shí)際上是可能發(fā)生碰撞的相關(guān)的易碰撞區(qū)域。為了使用現(xiàn)有技術(shù)的方法來(lái)避免碰撞,當(dāng)機(jī)器人202、204中的一個(gè)機(jī)器人如機(jī)器人204進(jìn)入交疊區(qū)域時(shí),共享該交疊區(qū)域214的另一機(jī)器人202待機(jī)并且在交疊區(qū)域214被機(jī)器人204清除之前不能移動(dòng)。
機(jī)器人202的待機(jī)等待時(shí)間占總運(yùn)行時(shí)間的相當(dāng)大的比例,假定在一些方面,運(yùn)行時(shí)間與掃掠體積彼此相關(guān)。當(dāng)在非常擁擠的車(chē)間中的處理涉及多于兩個(gè)的機(jī)器人202、204時(shí),形成許多單個(gè)交疊區(qū)域以及/或者由多于僅兩個(gè)的機(jī)器人共享該單個(gè)交疊區(qū)域。這大大地增大了生產(chǎn)周期時(shí)間,減少了效率并且限制了機(jī)器人同步能力。
圖3是圖2中的兩個(gè)單個(gè)機(jī)器人202、204的示意圖,圖2示出了根據(jù)所公開(kāi)的實(shí)施方式的用于防碰撞管理的方法。兩個(gè)單個(gè)機(jī)器人202、204執(zhí)行機(jī)器人操作,其中,數(shù)據(jù)處理系統(tǒng)接收包括每個(gè)單個(gè)機(jī)器人202、204為了履行其機(jī)器人操作而遵循的軌跡206、208的輸入。如圖2中已經(jīng)示出的,沿著其軌跡206、208的每個(gè)單個(gè)機(jī)器人202、204位于單個(gè)掃掠體積內(nèi)。兩個(gè)機(jī)器人202、204的機(jī)器人操作至少部分地發(fā)生于共享空間中,以使得其單個(gè)掃掠體積與易碰撞段214a、214b、214c形成交疊區(qū)域214。
根據(jù)一個(gè)或更多個(gè)離散化準(zhǔn)則在用于每個(gè)單個(gè)機(jī)器人的機(jī)器人路徑位置之間創(chuàng)建離散化的子掃掠體積。因此,如圖3中所示,單個(gè)掃掠體積210、212被劃分。時(shí)間索引被添加至所有子掃掠體積的機(jī)器人操作,以便允許在線獲知機(jī)器人的位置并且使得能夠應(yīng)用在下文中將更詳細(xì)地描述的智能同步技術(shù)。
指示機(jī)器人202的子掃掠體積302a、302e、302f、302i、302n、302z以及機(jī)器人204的子掃掠體積304a、304g、304k、304l、304o、304v。機(jī)器人202的所有子掃掠體積302a至302z的組合以及機(jī)器人204的所有子掃掠體積304a至304v的組合分別準(zhǔn)確地產(chǎn)生單個(gè)掃掠體積210和212。
僅子掃掠體積302e、302f、302i、302n、304g、304k、304l、304o與相應(yīng)的另一機(jī)器人的子掃掠體積交疊。相鄰的單個(gè)掃掠體積302e、302f與包括交疊段214a的單個(gè)掃掠體積304g交疊。單個(gè)掃掠體積302i與包括交疊段214b的相鄰的單個(gè)掃掠體積304k、304l交疊。單個(gè)掃掠體積302n與包括交疊段214c的單個(gè)掃掠體積304o交疊。
沿著已知軌跡移動(dòng)的每個(gè)單個(gè)機(jī)器人的操作被控制以便允許機(jī)器人操作的同步執(zhí)行。同步可以是基于事件的和/或基于時(shí)間的。對(duì)于機(jī)器人同步,僅所述交疊的離散化的子掃掠體積302e、302f、302i、302n、304g、304k、304l、304o需要被考慮用于機(jī)器人同步,而不是如現(xiàn)有技術(shù)中那樣需要考慮整個(gè)單個(gè)交疊區(qū)域214。因此,機(jī)器人202、204可以在其所有其他子掃掠體積內(nèi)同時(shí)進(jìn)行其機(jī)器人操作。機(jī)器人202、204二者可以立即開(kāi)始移動(dòng)并且繼續(xù)工作直到交疊區(qū)域214為止,更具體地,到達(dá)包括第一小交疊段214a的第一交疊子掃掠體積302e、304g為止。在進(jìn)入子掃掠體積304g之前在兩個(gè)子掃掠體積302e、302f的運(yùn)行時(shí)間期間并且不是在在整個(gè)交疊區(qū)域214內(nèi)進(jìn)行的機(jī)器人操作的整個(gè)運(yùn)行時(shí)間期間,機(jī)器人204僅需要等待待機(jī)。在機(jī)器人302已經(jīng)清除了子掃掠體積302f之后,另一機(jī)器人304可以立即進(jìn)入子掃掠體積304g。對(duì)于每個(gè)單個(gè)交疊的子掃掠體積重復(fù)地應(yīng)用所描述的方法。
當(dāng)遇到交疊段214a時(shí),基于優(yōu)先準(zhǔn)則來(lái)分配操作優(yōu)先級(jí)。特別是為了避免可能的死鎖情形,即使當(dāng)前沒(méi)有其他機(jī)器人在所述交疊段214a內(nèi)操作,也分配操作優(yōu)先級(jí)。優(yōu)先準(zhǔn)則標(biāo)識(shí)單個(gè)機(jī)器人中的哪個(gè)單個(gè)機(jī)器人具有較高的優(yōu)先級(jí),其中,優(yōu)先準(zhǔn)則選自于包括速度、重要性、運(yùn)行時(shí)間、前瞻行為、加速度特性等的組。這些優(yōu)先準(zhǔn)則使得能夠完全設(shè)想到所有可能的未來(lái)碰撞。因此,可以計(jì)劃允許通過(guò)實(shí)現(xiàn)最小周期時(shí)間來(lái)有效地完成整個(gè)處理的最佳解決方案。圖3描述了對(duì)兩個(gè)機(jī)器人202、204的防碰撞管理的基本概念,但是該基本概念可以擴(kuò)展至三個(gè)或更多個(gè)單個(gè)機(jī)器人。
圖4示意性地示出了根據(jù)所公開(kāi)的實(shí)施方式的兩個(gè)機(jī)器人402、404可能產(chǎn)生的死鎖情形。首先,兩個(gè)機(jī)器人402、404在圖形上位于圖的左手側(cè)。機(jī)器人402遵循其軌跡406移動(dòng),軌跡406沿著機(jī)器人402的移動(dòng)方向408首先向右并且然后向下并且改變至向左的方向然后再次向上移動(dòng)。另一方面,機(jī)器人404僅沿著遵循其移動(dòng)方向412的軌跡410向右線性地移動(dòng)。在用于兩個(gè)機(jī)器人402、404的機(jī)器人路徑位置之間在運(yùn)行時(shí)間處創(chuàng)建離散化的子掃掠體積414a至414n、416a至416h。當(dāng)機(jī)器人中之一進(jìn)入軌跡406、410的使用十字標(biāo)記的部分時(shí),該機(jī)器人位于可能發(fā)生碰撞的交疊區(qū)域418內(nèi)。根據(jù)一個(gè)或更多個(gè)離散化準(zhǔn)則在運(yùn)行時(shí)間處創(chuàng)建離散化的子掃掠體積414a至414n、416a至416h。一個(gè)或更多個(gè)離散化準(zhǔn)則選自于包括以下的組:時(shí)間、位置、體積、速度、為了實(shí)現(xiàn)可以最佳地處理的子掃掠體積414a至414n、416a至416h而對(duì)機(jī)器人操作的子分組。在等距的機(jī)器人路徑位置之間創(chuàng)建線性移動(dòng)的機(jī)器人404的子掃掠體積416a至416h。因此,所有的子掃掠體積416a至416h具有相等的體積。根據(jù)不同的離散化準(zhǔn)則來(lái)創(chuàng)建具有變化的移動(dòng)方向408的機(jī)器人402的子掃掠體積414a至414n。子掃掠體積414j包括所有交疊區(qū)域418。
因?yàn)闄C(jī)器人402在短暫地進(jìn)入子掃掠體積414j之后改變其移動(dòng)方向408,所以可能產(chǎn)生可能的死鎖情形。如果另一機(jī)器人404移動(dòng)至其與第一機(jī)器人402的移動(dòng)方向408相反的移動(dòng)方向412,并且進(jìn)入部分地位于其子掃掠體積416b內(nèi)的交疊區(qū)域418,則這兩個(gè)機(jī)器人可以阻擋彼此的道路。因此,為了避免死鎖,時(shí)間索引被添加至所有子掃掠體積414a至414n、416a至416h的機(jī)器人操作。時(shí)間索引使得即使當(dāng)前沒(méi)有其他機(jī)器人404在內(nèi)部,也能夠應(yīng)用防止機(jī)器人402進(jìn)入交疊區(qū)域418的智能同步技術(shù)。當(dāng)遇到交疊區(qū)域418時(shí)進(jìn)行是否允許機(jī)器人402進(jìn)入交疊區(qū)域418的決定?;趦?yōu)先準(zhǔn)則來(lái)分配操作優(yōu)先級(jí),其中,即使當(dāng)前沒(méi)有其他機(jī)器人404在交疊區(qū)域418內(nèi)操作,也分配操作優(yōu)先級(jí)。這防止了死鎖情形的發(fā)生。
在另一機(jī)器人404在其包括交疊區(qū)域418的子掃掠體積416b至416f內(nèi)執(zhí)行機(jī)器人操作時(shí),機(jī)器人402等待待機(jī)。在清除交疊區(qū)域418之后,另一機(jī)器人402進(jìn)入包括交疊區(qū)域418的子掃掠體積414j。
優(yōu)先準(zhǔn)則標(biāo)識(shí)單個(gè)機(jī)器人402、404中的哪個(gè)單個(gè)機(jī)器人具有較高的優(yōu)先級(jí)并且因此能夠?qū)崿F(xiàn)智能同步技術(shù)。優(yōu)先準(zhǔn)則選自于包括速度、重要性、運(yùn)行時(shí)間、前瞻行為、加速度特性等的組。如果機(jī)器人402、404二者在清除交疊區(qū)域418之后對(duì)于其所有剩余的子掃掠體積414a至414n、416a至416h均需要相同的運(yùn)行時(shí)間,則可以有利的是,對(duì)機(jī)器人402、404中最快地經(jīng)過(guò)交疊區(qū)域306的一個(gè)機(jī)器人給定優(yōu)先級(jí)。除了速度和運(yùn)行時(shí)間之外,其他因素例如下次可能遇到的交疊掃掠體積、機(jī)器人402、404的不同的加速度等的因素也會(huì)影響優(yōu)先級(jí)。
圖5示出了根據(jù)所公開(kāi)的實(shí)施方式的用于最佳地利用機(jī)器人的處理的流程圖。由數(shù)據(jù)處理系統(tǒng)例如圖1的數(shù)據(jù)處理系統(tǒng)100來(lái)執(zhí)行交疊機(jī)器人移動(dòng)的防碰撞管理。系統(tǒng)從執(zhí)行機(jī)器人操作的兩個(gè)或更多個(gè)單個(gè)機(jī)器人接收包括每個(gè)單個(gè)機(jī)器人遵循的軌跡的輸入(步驟502)。對(duì)于每個(gè)單個(gè)機(jī)器人,所述輸入可以具體包括機(jī)器人信息150和機(jī)器人操作信息152。據(jù)此,可以在運(yùn)行時(shí)間處計(jì)算軌跡信息154、位置信息156、時(shí)間索引信息158和優(yōu)先信息160。另一選項(xiàng)可以是提供軌跡信息154、位置信息156、時(shí)間索引信息158和優(yōu)先信息160至少部分地作為操作輸入。
機(jī)器人信息150可以包括機(jī)器人履行的具體任務(wù)、機(jī)器人的尺寸、機(jī)器人的周?chē)h(huán)境、安裝在機(jī)器人上的對(duì)象以及與機(jī)器人的放置或定位有關(guān)的任何對(duì)象。機(jī)器人操作信息152可以包括與機(jī)器人的機(jī)器人操作有關(guān)的所有信息。需要還可以從機(jī)器人操作信息152中提取的軌跡信息154連同機(jī)器人的尺寸,并且將其用于計(jì)算沿著其軌跡的每個(gè)單個(gè)機(jī)器人位于其內(nèi)的掃掠體積。機(jī)器人操作信息152連同機(jī)器人的尺寸以及其周?chē)h(huán)境使得能夠獲知沿著其軌跡的每個(gè)單個(gè)機(jī)器人位于其中的單個(gè)掃掠體積。然而,為了應(yīng)用用于防碰撞管理的方法,不需要優(yōu)先計(jì)算每個(gè)單個(gè)機(jī)器人的單個(gè)掃掠體積。兩個(gè)或更多個(gè)單個(gè)機(jī)器人的機(jī)器人操作至少部分地發(fā)生于共享區(qū)域內(nèi)。系統(tǒng)標(biāo)識(shí)單獨(dú)的單個(gè)機(jī)器人的單個(gè)掃掠體積中的哪個(gè)單個(gè)掃掠體積形成其中可能發(fā)生機(jī)器人之間的碰撞的交疊區(qū)域。處理器102以及在處理器102上運(yùn)行的存儲(chǔ)器108中的一個(gè)或更多個(gè)經(jīng)由本地系統(tǒng)總線106、適配器112、網(wǎng)絡(luò)130、服務(wù)器140、接口114、I/O總線116、磁盤(pán)控制器120、存儲(chǔ)裝置126等中的一個(gè)或更多個(gè)來(lái)接收輸入。如本文中所使用的,接收可以包括從存儲(chǔ)裝置126檢索、從另一裝置或處理接收、經(jīng)由與用戶的交互接收等。
然后,系統(tǒng)根據(jù)一個(gè)或更多個(gè)離散化準(zhǔn)則在機(jī)器人路徑位置之間創(chuàng)建離散化的子掃掠體積,以便允許機(jī)器人操作的同步執(zhí)行(步驟504)。在機(jī)器人在其操作期間來(lái)回移動(dòng)的情況下,相鄰的子掃掠體積可以至少部分地交疊。在這種情況下,交疊區(qū)域包括許多小的單獨(dú)的交疊區(qū)域。沿著已知軌跡移動(dòng)的每個(gè)單個(gè)機(jī)器人的操作被控制以便允許機(jī)器人操作的同步執(zhí)行,其中,不同的單獨(dú)的機(jī)器人的僅交疊的離散化的子掃掠體積被考慮用于同步。這使得能夠在減少另外一個(gè)或更多個(gè)單個(gè)機(jī)器人的待機(jī)等待時(shí)間的情況下同時(shí)控制兩個(gè)或更多個(gè)機(jī)器人減少碰撞。機(jī)器人可以在除了交疊區(qū)域之外的任何地方同時(shí)工作。
系統(tǒng)應(yīng)用智能同步技術(shù),以使用所提供或計(jì)算的所有子掃掠體積的時(shí)間索引信息158連同優(yōu)先信息160和機(jī)器人操作信息152特別是軌跡信息154來(lái)控制每個(gè)單個(gè)機(jī)器人。智能同步技術(shù)考慮和/或預(yù)測(cè)所有的移動(dòng)可能性,對(duì)于任何給定交疊區(qū)域決定機(jī)器人之間的優(yōu)先級(jí)以實(shí)現(xiàn)最小周期時(shí)間。為了使機(jī)器人同步,也可以使用事件和信號(hào)。例如,一個(gè)機(jī)器人可以等待另一機(jī)器人發(fā)送其已經(jīng)離開(kāi)交疊區(qū)域的信號(hào)。
根據(jù)一個(gè)或更多個(gè)離散化準(zhǔn)則來(lái)對(duì)每個(gè)單掃掠體積進(jìn)行再分,以實(shí)現(xiàn)最佳再分。一個(gè)或更多個(gè)離散化準(zhǔn)則選自于包括以下的組:時(shí)間、位置、體積、速度和機(jī)器人操作的邏輯子分組??梢赃x擇離散化準(zhǔn)則時(shí)間,使得在每個(gè)子掃掠體積內(nèi)執(zhí)行的機(jī)器人操作的運(yùn)行時(shí)間與簡(jiǎn)化時(shí)間索引的時(shí)間相等。可以選擇位置作為離散化準(zhǔn)則,使得機(jī)器人的開(kāi)始路徑位置與結(jié)束路徑位置之間的所有軌跡部分相等。當(dāng)機(jī)器人在軌跡的每個(gè)點(diǎn)處具有恒定的速度時(shí),離散化準(zhǔn)則時(shí)間和位置彼此一致。當(dāng)體積被選擇為離散化準(zhǔn)則時(shí),可以產(chǎn)生相等的初始子掃掠體積。離散化準(zhǔn)則速度可以以與時(shí)間一致的方式應(yīng)用,或者涉及機(jī)器人速度的子分組。例如,當(dāng)機(jī)器人以恒定的速度沿著其軌跡線性地移動(dòng)時(shí),可以創(chuàng)建子掃掠體積,使得機(jī)器人在其速度改變之前位于所述子掃掠體積內(nèi)。另一方面,機(jī)器人操作的子分組更廣泛地被限定并且可以與上述離散化準(zhǔn)則一致,但是另一方面,這可以意味著再分,使得機(jī)器人在另外的子掃掠體積內(nèi)僅移動(dòng)其自身的同時(shí)在一個(gè)子掃掠體積內(nèi)正在執(zhí)行具體任務(wù)。
當(dāng)然,本領(lǐng)域技術(shù)人員將會(huì)認(rèn)識(shí)到,除非特別指出或者操作順序的需要,否則上述處理中的某些步驟可以省略、同時(shí)或按順序執(zhí)行或者以不同的順序執(zhí)行。
本領(lǐng)域技術(shù)人員將會(huì)認(rèn)識(shí)到,出于簡(jiǎn)單和清楚起見(jiàn),本文中沒(méi)有示出或描述適用于本公開(kāi)內(nèi)容的所有數(shù)據(jù)處理系統(tǒng)的所有結(jié)構(gòu)和操作。替代地,僅示出和描述了如本公開(kāi)內(nèi)容獨(dú)有或?yàn)榱死斫獗竟_(kāi)內(nèi)容所需要的如此多的數(shù)據(jù)處理系統(tǒng)。創(chuàng)建和操作數(shù)據(jù)處理系統(tǒng)100的其他部分可以符合現(xiàn)有技術(shù)中已知的各種當(dāng)前實(shí)現(xiàn)和實(shí)踐中的任何一個(gè)。
重要的是,注意,雖然公開(kāi)內(nèi)容包括全部功能系統(tǒng)的上下文中的描述,但是本領(lǐng)域技術(shù)人員要理解,本公開(kāi)內(nèi)容的機(jī)制的至少部分能夠以各種形式中的任何形式機(jī)器可用介質(zhì)、計(jì)算機(jī)可用介質(zhì)或計(jì)算機(jī)可讀介質(zhì)內(nèi)的指令的形式分布,并且本公開(kāi)內(nèi)容以等同方式應(yīng)用,而不管用于實(shí)際上執(zhí)行分布的指令或信號(hào)支承介質(zhì)或存儲(chǔ)介質(zhì)的特定類(lèi)型。機(jī)器可用/可讀介質(zhì)或計(jì)算機(jī)可用/可讀介質(zhì)的示例包括:非易失性硬編碼型介質(zhì)例如只讀存儲(chǔ)器(ROM)或可擦除電可編程只讀存儲(chǔ)器(EEPROM)以及用戶可記錄型介質(zhì)例如軟盤(pán)、硬盤(pán)驅(qū)動(dòng)和壓縮盤(pán)只讀存儲(chǔ)器(CD-ROM)或數(shù)字多功能盤(pán)(DVD)。
雖然已經(jīng)詳細(xì)描述了本公開(kāi)內(nèi)容的示例性實(shí)施方式,但是本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,可以在不背離本公開(kāi)內(nèi)容的最廣泛形式的精神和范圍的情況下做出本文中所公開(kāi)的各種變化、替代、變體和改進(jìn)。
本申請(qǐng)的描述決不應(yīng)當(dāng)閱讀為暗含任何特定元件、步驟或功能為以下權(quán)利要求范圍內(nèi)所必須包括的關(guān)鍵元件:所公開(kāi)的主題的范圍僅有所允許的權(quán)利要求書(shū)來(lái)限定。此外,這些權(quán)利要求決不意在援引35 USC§112的第六段,除非詞語(yǔ)“意味著”之后跟有分詞。