本技術(shù)涉及機(jī)械臂路徑規(guī)劃領(lǐng)域,具體而言,涉及一種多機(jī)械臂的路徑規(guī)劃方法、多機(jī)械臂的控制方法、計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)和電子設(shè)備。
背景技術(shù):
1、現(xiàn)有的機(jī)械臂路徑規(guī)劃方案專注于單臺(tái)機(jī)械臂的運(yùn)動(dòng)路徑仿真與分析,主要用于確定單個(gè)機(jī)械臂的關(guān)節(jié)運(yùn)動(dòng)、避障策略,從而分析優(yōu)化單一性能指標(biāo)。然而在裝配單元的實(shí)際工序中,任務(wù)的實(shí)現(xiàn)多需要多臺(tái)機(jī)械臂設(shè)備協(xié)作完成,現(xiàn)有的規(guī)劃方案無法發(fā)揮各機(jī)械臂的最大效率,使得任務(wù)整體的完成效率較低。
技術(shù)實(shí)現(xiàn)思路
1、本技術(shù)的主要目的在于提供一種多機(jī)械臂的路徑規(guī)劃方法、多機(jī)械臂的控制方法、計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)和電子設(shè)備,以至少解決現(xiàn)有技術(shù)中多機(jī)械臂協(xié)作完成的任務(wù)效率較低的問題。
2、為了實(shí)現(xiàn)上述目的,根據(jù)本技術(shù)的一個(gè)方面,提供了一種多機(jī)械臂的路徑規(guī)劃方法,包括:獲取待執(zhí)行的多個(gè)任務(wù),根據(jù)多個(gè)所述任務(wù)的安全指標(biāo)、緊急度指標(biāo)、關(guān)聯(lián)性指標(biāo)、數(shù)據(jù)量指標(biāo)以及穩(wěn)定性指標(biāo),至少確定多個(gè)所述任務(wù)的執(zhí)行順序,至少部分的所述任務(wù)為采用多個(gè)機(jī)械臂協(xié)同執(zhí)行的任務(wù),所述安全指標(biāo)用于表征執(zhí)行所述任務(wù)的過程中多個(gè)所述機(jī)械臂的運(yùn)動(dòng)范圍的交疊程度,所述緊急度指標(biāo)用于表征所述任務(wù)的緊急程度,所述關(guān)聯(lián)性指標(biāo)用于表征所述任務(wù)與任意一個(gè)其他任務(wù)之間的依賴程度,所述數(shù)據(jù)量指標(biāo)用于表征執(zhí)行所述任務(wù)所需的數(shù)據(jù)量大小,所述穩(wěn)定性指標(biāo)用于表征所述任務(wù)的歷史執(zhí)行成功率;構(gòu)建裝配單元的數(shù)字孿生模型,所述裝配單元包括多個(gè)所述機(jī)械臂;識(shí)別所述裝配單元所在的環(huán)境中的動(dòng)態(tài)障礙物和靜態(tài)障礙物,根據(jù)所述動(dòng)態(tài)障礙物與各所述機(jī)械臂的距離,確定第一碰撞體類型,根據(jù)所述靜態(tài)障礙物的三角面片信息以及所述靜態(tài)障礙物與各所述機(jī)械臂的距離,確定第二碰撞體類型,所述第一碰撞體類型為所述動(dòng)態(tài)障礙物的碰撞體類型,所述第二碰撞體類型為所述靜態(tài)障礙物的碰撞體類型;根據(jù)所述第一碰撞體類型和所述動(dòng)態(tài)障礙物的運(yùn)動(dòng)軌跡,建立動(dòng)態(tài)障礙物模型,以及根據(jù)所述第二碰撞體類型,建立靜態(tài)障礙物模型;根據(jù)所述執(zhí)行順序、所述數(shù)字孿生模型、所述動(dòng)態(tài)障礙物模型以及所述靜態(tài)障礙物模型,確定各所述機(jī)械臂按照所述執(zhí)行順序執(zhí)行多個(gè)所述任務(wù)的可行運(yùn)動(dòng)路徑;在所述可行運(yùn)動(dòng)路徑存在多個(gè)的情況下,以多個(gè)所述任務(wù)的執(zhí)行用時(shí)最短為最優(yōu)目標(biāo),從多個(gè)所述可行運(yùn)動(dòng)路徑中確定各所述機(jī)械臂的最優(yōu)運(yùn)動(dòng)路徑。
3、可選地,根據(jù)多個(gè)所述任務(wù)的安全指標(biāo)、緊急度指標(biāo)、關(guān)聯(lián)性指標(biāo)、數(shù)據(jù)量指標(biāo)以及穩(wěn)定性指標(biāo),至少確定多個(gè)所述任務(wù)的執(zhí)行順序,包括:在所述關(guān)聯(lián)性指標(biāo)大于預(yù)定閾值的情況下,對(duì)大于所述預(yù)定閾值的所述關(guān)聯(lián)性指標(biāo)對(duì)應(yīng)的兩個(gè)所述任務(wù)進(jìn)行預(yù)定處理,使得預(yù)定處理后的所述關(guān)聯(lián)性指標(biāo)小于或等于所述預(yù)定閾值,得到多個(gè)新的任務(wù),所述預(yù)定處理包括以下至少之一:將所述任務(wù)拆分為多個(gè)子任務(wù)、將多個(gè)任務(wù)進(jìn)行重組、將拆分后的部分所述子任務(wù)進(jìn)行重組;在所述關(guān)聯(lián)性指標(biāo)小于或等于所述預(yù)定閾值的情況下,對(duì)各所述任務(wù)的所述安全指標(biāo)、所述緊急度指標(biāo)、所述關(guān)聯(lián)性指標(biāo)、所述數(shù)據(jù)量指標(biāo)以及所述穩(wěn)定性指標(biāo)進(jìn)行加權(quán)求和,得到所述任務(wù)的優(yōu)先權(quán)指標(biāo);按照所述優(yōu)先權(quán)指標(biāo)由大到小的順序?qū)Χ鄠€(gè)所述任務(wù)進(jìn)行排序,得到所述執(zhí)行順序。
4、可選地,根據(jù)所述動(dòng)態(tài)障礙物與各所述機(jī)械臂的距離,確定第一碰撞體類型,包括:在所述動(dòng)態(tài)障礙物與各所述機(jī)械臂的距離大于或等于機(jī)械臂安全距離的第一預(yù)定倍數(shù)的情況下,確定所述第一碰撞體類型為膠囊體;在所述動(dòng)態(tài)障礙物與各所述機(jī)械臂的距離小于所述機(jī)械臂安全距離的所述第一預(yù)定倍數(shù),且大于或等于所述機(jī)械臂安全距離的第二預(yù)定倍數(shù)的情況下,確定所述第一碰撞體類型為三角網(wǎng)格體,其中,所述第一預(yù)定倍數(shù)和所述第二預(yù)定倍數(shù)均大于或等于1。
5、可選地,所述三角面片信息包括構(gòu)成所述靜態(tài)障礙物的三角面片的數(shù)量以及各所述三角面片的法向量方向,根據(jù)所述靜態(tài)障礙物的三角面片信息以及所述靜態(tài)障礙物與各所述機(jī)械臂的距離,確定第二碰撞體類型,包括:根據(jù)所述法向量方向,從多個(gè)所述三角面片中確定所述靜態(tài)障礙物的外表面三角面片,得到所述外表面三角面片的數(shù)量;在所述外表面三角面片的數(shù)量小于數(shù)量閾值且所述靜態(tài)障礙物與各所述機(jī)械臂的距離大于或等于機(jī)械臂安全距離的第一預(yù)定倍數(shù)的情況下,確定所述第二碰撞體類型為球體;在所述外表面三角面片的數(shù)量大于或等于所述數(shù)量閾值且所述靜態(tài)障礙物與各所述機(jī)械臂的距離大于或等于所述機(jī)械臂安全距離的所述第一預(yù)定倍數(shù)的情況下,確定所述第二碰撞體類型為盒體;在所述外表面三角面片的數(shù)量小于所述數(shù)量閾值且所述靜態(tài)障礙物與各所述機(jī)械臂的距離小于所述機(jī)械臂安全距離的所述第一預(yù)定倍數(shù),且大于或等于所述機(jī)械臂安全距離的第二預(yù)定倍數(shù)的情況下,確定所述第二碰撞體類型為凹多面體;在所述外表面三角面片的數(shù)量大于或等于所述數(shù)量閾值,所述靜態(tài)障礙物與各所述機(jī)械臂的距離小于所述機(jī)械臂安全距離的所述第一預(yù)定倍數(shù),且大于或等于所述機(jī)械臂安全距離的第二預(yù)定倍數(shù)的情況下,確定所述第二碰撞體類型為網(wǎng)格體,其中,所述第一預(yù)定倍數(shù)和所述第二預(yù)定倍數(shù)均大于或等于1。
6、可選地,根據(jù)所述執(zhí)行順序、所述數(shù)字孿生模型、所述動(dòng)態(tài)障礙物模型以及所述靜態(tài)障礙物模型,確定各所述機(jī)械臂按照所述執(zhí)行順序執(zhí)行多個(gè)所述任務(wù)的可行運(yùn)動(dòng)路徑,包括:根據(jù)所述執(zhí)行順序,為所述數(shù)字孿生模型中的每個(gè)所述機(jī)械臂分配任務(wù)清單,根據(jù)所述任務(wù)清單確定每個(gè)所述機(jī)械臂的起始位置和終點(diǎn)位置;構(gòu)建每個(gè)所述機(jī)械臂的運(yùn)動(dòng)學(xué)模型;根據(jù)目標(biāo)機(jī)械臂的所述起始位置和所述終點(diǎn)位置,以避讓所述動(dòng)態(tài)障礙物模型、所述靜態(tài)障礙物模型以及其他機(jī)械臂的所述運(yùn)動(dòng)學(xué)模型為規(guī)劃目標(biāo),采用apf(artificialpotential?field,人工勢場)-rrt(rapidly-exploring?random?tree,快速探索隨機(jī)樹)算法規(guī)劃所述目標(biāo)機(jī)械臂的所述可行運(yùn)動(dòng)路徑,得到每個(gè)所述機(jī)械臂對(duì)應(yīng)的所述可行運(yùn)動(dòng)路徑,所述目標(biāo)機(jī)械臂為多個(gè)所述機(jī)械臂中之一,所述其他機(jī)械臂為除所述目標(biāo)機(jī)械臂之外的所述機(jī)械臂。
7、可選地,構(gòu)建裝配單元的數(shù)字孿生模型,包括:獲取所述裝配單元內(nèi)物理實(shí)體的圖像信息以及點(diǎn)云信息,得到第一信息,所述物理實(shí)體包括多個(gè)所述機(jī)械臂、待抓取物料以及物料運(yùn)輸軌道;根據(jù)所述第一信息,采用數(shù)字化建模技術(shù)構(gòu)建與所述物理實(shí)體對(duì)應(yīng)的初始孿生模型;周期性地獲取所述物理實(shí)體的所述圖像信息以及所述點(diǎn)云信息,得到第二信息;比較所述第一信息和所述第二信息,過濾所述第二信息中與所述第一信息相同的信息,剩余的所述第二信息為區(qū)別信息;根據(jù)所述區(qū)別信息,在所述初始孿生模型中添加所述區(qū)別信息對(duì)應(yīng)的模型部件,得到所述數(shù)字孿生模型。
8、可選地,根據(jù)所述第一信息,采用數(shù)字化建模技術(shù)構(gòu)建與所述物理實(shí)體對(duì)應(yīng)的初始孿生模型,包括:根據(jù)所述第一信息,確定所述物理實(shí)體的尺寸信息、位置信息以及裝配關(guān)系;根據(jù)所述尺寸信息、所述位置信息以及所述裝配關(guān)系,采用所述數(shù)字化建模技術(shù)在虛擬環(huán)境中1:1構(gòu)建所述物理實(shí)體對(duì)應(yīng)的三維模型;為所述三維模型添加所述物理實(shí)體的屬性信息,所述屬性信息包括材質(zhì)屬性、握持力屬性以及接觸力屬性;獲取各所述機(jī)械臂中多個(gè)關(guān)節(jié)的運(yùn)動(dòng)范圍以及多個(gè)所述關(guān)節(jié)間的父子關(guān)系,所述父子關(guān)系表征連接的兩個(gè)關(guān)節(jié)之間的跟隨關(guān)系;根據(jù)所述運(yùn)動(dòng)范圍以及所述父子關(guān)系,為添加有所述屬性信息的所述機(jī)械臂的三維模型添加運(yùn)動(dòng)范圍限制以及父子關(guān)系限制,得到所述初始孿生模型。
9、可選地,識(shí)別所述裝配單元所在的環(huán)境中的動(dòng)態(tài)障礙物和靜態(tài)障礙物,包括:獲取所述裝配單元所在的所述環(huán)境的歷史像素特征,所述歷史像素特征為對(duì)多個(gè)歷史環(huán)境圖像進(jìn)行像素特征提取得到的;獲取初始高斯混合模型,并根據(jù)所述歷史像素特征,采用迭代學(xué)習(xí)算法對(duì)所述初始高斯混合模型進(jìn)行訓(xùn)練,得到高斯混合模型;獲取所述環(huán)境的連續(xù)多幀圖像,并提取所述連續(xù)多幀圖像的像素特征;采用所述高斯混合模型分析所述像素特征,確定所述環(huán)境中的所述動(dòng)態(tài)障礙物和所述靜態(tài)障礙物。
10、根據(jù)本技術(shù)的另一方面,提供了一種多機(jī)械臂的控制方法,包括:根據(jù)任一種所述的方法確定各所述機(jī)械臂的最優(yōu)運(yùn)動(dòng)路徑;根據(jù)多個(gè)所述最優(yōu)運(yùn)動(dòng)路徑,控制各所述機(jī)械臂運(yùn)動(dòng)。
11、可選地,根據(jù)多個(gè)所述最優(yōu)運(yùn)動(dòng)路徑,控制各所述機(jī)械臂運(yùn)動(dòng),包括:對(duì)各所述機(jī)械臂的所述最優(yōu)運(yùn)動(dòng)路徑進(jìn)行轉(zhuǎn)換得到裝配單元的控制器的指令代碼;控制所述控制器執(zhí)行所述指令代碼,以使得所述控制器控制各所述機(jī)械臂運(yùn)動(dòng);在任一所述機(jī)械臂的運(yùn)動(dòng)情況不滿足預(yù)定要求的情況下,對(duì)所述最優(yōu)運(yùn)動(dòng)路徑的確定過程中的目標(biāo)參數(shù)進(jìn)行調(diào)整,并根據(jù)調(diào)整后的目標(biāo)參數(shù)重新確定所述最優(yōu)運(yùn)動(dòng)路徑,所述目標(biāo)參數(shù)包括以下至少部分:任意兩個(gè)所述機(jī)械臂的相對(duì)位置關(guān)系、所述機(jī)械臂與靜態(tài)障礙物模型之間的相對(duì)位置關(guān)系、所述機(jī)械臂與動(dòng)態(tài)障礙物模型之間的相對(duì)位置關(guān)系。
12、根據(jù)本技術(shù)的再一方面,提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)包括存儲(chǔ)的程序,其中,在所述程序運(yùn)行時(shí)控制所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)所在設(shè)備執(zhí)行任意一種所述的方法。
13、根據(jù)本技術(shù)的又一方面,提供了一種電子設(shè)備,包括:一個(gè)或多個(gè)處理器,存儲(chǔ)器,以及一個(gè)或多個(gè)程序,其中,所述一個(gè)或多個(gè)程序被存儲(chǔ)在所述存儲(chǔ)器中,并且被配置為由所述一個(gè)或多個(gè)處理器執(zhí)行,所述一個(gè)或多個(gè)程序包括用于執(zhí)行任意一種所述的方法。
14、應(yīng)用本技術(shù)的技術(shù)方案,通過多個(gè)任務(wù)的安全指標(biāo)、緊急度指標(biāo)、關(guān)聯(lián)性指標(biāo)、數(shù)據(jù)量指標(biāo)以及穩(wěn)定性指標(biāo)來確定多個(gè)任務(wù)的順序,實(shí)現(xiàn)了多個(gè)任務(wù)的優(yōu)先級(jí)排序;通過對(duì)裝配單元所在環(huán)境的動(dòng)靜態(tài)障礙物進(jìn)行識(shí)別和碰撞體類型確定,實(shí)現(xiàn)了環(huán)境中的動(dòng)態(tài)障礙物模型和靜態(tài)障礙物模型的自動(dòng)構(gòu)建;通過數(shù)字孿生技術(shù),綜合任務(wù)優(yōu)先級(jí)順序和環(huán)境中的障礙物模型,對(duì)多個(gè)機(jī)械臂進(jìn)行執(zhí)行任務(wù)的路徑規(guī)劃,從而得到多任務(wù)執(zhí)行耗時(shí)最短的最優(yōu)運(yùn)動(dòng)路徑,實(shí)現(xiàn)了對(duì)多個(gè)機(jī)械臂的協(xié)同路徑規(guī)劃,保證了多機(jī)械臂的協(xié)同工作效率較高。