朱新源
(香港中文大學(xué)(深圳)理工學(xué)院,廣東 深圳)
21 世紀(jì)以來(lái),我國(guó)現(xiàn)代工業(yè)呈現(xiàn)出迅猛發(fā)展的趨勢(shì),在此過(guò)程中,大量多類(lèi)型與多用途的機(jī)器人不斷涌現(xiàn)出來(lái),尤其是應(yīng)用于餐廳、醫(yī)療等環(huán)境的服務(wù)式工業(yè)機(jī)器人受到了人們的廣泛關(guān)注。工業(yè)機(jī)器人可以自主實(shí)現(xiàn)預(yù)前設(shè)置的動(dòng)作指令,代替人在各類(lèi)特殊甚至較為惡劣的工作環(huán)境中進(jìn)行長(zhǎng)時(shí)間的工作,不僅可以降低人工成本,而且可有效提升工作質(zhì)量與工作效率。在工業(yè)機(jī)器人的實(shí)際應(yīng)用過(guò)程中,軌跡規(guī)劃的相關(guān)問(wèn)題非常關(guān)鍵,機(jī)器人運(yùn)動(dòng)軌跡的提前規(guī)劃效果對(duì)機(jī)器人的工作效率與穩(wěn)定性有著重要的影響,所以我國(guó)眾多學(xué)者針對(duì)機(jī)器人軌跡規(guī)劃紛紛展開(kāi)深入研究。文獻(xiàn)[1]作者張泮虹等人將機(jī)器人的軌跡規(guī)劃歸結(jié)為優(yōu)化問(wèn)題,通過(guò)優(yōu)化求解策略解決機(jī)器人的障礙物避碰問(wèn)題;文獻(xiàn)[2]作者楊化林等人將Delta 并聯(lián)機(jī)構(gòu)和視覺(jué)識(shí)別技術(shù)相結(jié)合,對(duì)機(jī)器人采摘軌跡進(jìn)行規(guī)劃,規(guī)劃軌跡具有良好的平滑性;文獻(xiàn)[3]作者姚學(xué)峰等人設(shè)計(jì)一種基于改進(jìn)NURBS 曲線(xiàn)插補(bǔ)算法的軌跡規(guī)劃方法,一定程度上可以縮短機(jī)器人的運(yùn)動(dòng)時(shí)間。基于此,本文針對(duì)工業(yè)機(jī)器人穩(wěn)定運(yùn)動(dòng)這個(gè)目標(biāo),對(duì)機(jī)器人軌跡規(guī)劃算法進(jìn)行設(shè)計(jì)研究,對(duì)促進(jìn)我國(guó)工業(yè)化發(fā)展具有重要的現(xiàn)實(shí)意義。
本文在設(shè)計(jì)機(jī)器人軌跡規(guī)劃算法時(shí),首先需要對(duì)機(jī)器人軌跡數(shù)據(jù)進(jìn)行挖掘,為后續(xù)軌跡規(guī)劃提供路徑搜索依據(jù)[4]。挖掘機(jī)器人軌跡數(shù)據(jù)的具體流程如下:首先進(jìn)行數(shù)據(jù)準(zhǔn)備工作,收集機(jī)器人作業(yè)環(huán)境中地理位置信息與拓?fù)鋵傩孕畔ⅲ捎萌S坐標(biāo)的形式來(lái)描述,所以本文所規(guī)劃的機(jī)器人軌跡也就是在挖掘軌跡數(shù)據(jù)中的一條線(xiàn)路,主要由起始點(diǎn)與終點(diǎn)這兩個(gè)端點(diǎn)組成;其次對(duì)上述數(shù)據(jù)做一定的預(yù)處理,由于受機(jī)器人作業(yè)現(xiàn)場(chǎng)環(huán)境等因素的影響,收集的軌跡數(shù)據(jù)存在一定數(shù)量的誤差數(shù)據(jù),這種誤差數(shù)據(jù)無(wú)法精準(zhǔn)反映機(jī)器人所在位置,從而影響軌跡規(guī)劃結(jié)果,所以在進(jìn)行挖掘之前還需要對(duì)原始數(shù)據(jù)做過(guò)濾處理,一般來(lái)說(shuō),在機(jī)器人軌跡數(shù)據(jù)中很多軌跡點(diǎn)的經(jīng)緯度嚴(yán)重偏離正常范圍,所以在進(jìn)行數(shù)據(jù)過(guò)濾時(shí),需要確定機(jī)器人作業(yè)環(huán)境所在區(qū)域的經(jīng)緯度范圍,再將那些越界的軌跡點(diǎn)進(jìn)行剔除,以此實(shí)現(xiàn)軌跡數(shù)據(jù)的過(guò)濾;最后利用聚類(lèi)算法挖掘機(jī)器人軌跡數(shù)據(jù)中的有效信息[5],聚類(lèi)算法是數(shù)據(jù)挖掘領(lǐng)域中常用的算法,可以深入挖掘機(jī)器人軌跡數(shù)據(jù)中隱含的相關(guān)信息,這里本文主要引入了基于密度聚類(lèi)的聚類(lèi)分析算法(DBSCAN聚類(lèi)),通過(guò)DBSCAN聚類(lèi)對(duì)機(jī)器人軌跡數(shù)據(jù)集進(jìn)行聚類(lèi)分析,從而挖掘出更符合實(shí)際情況的機(jī)器人軌跡數(shù)據(jù),假設(shè)機(jī)器人軌跡數(shù)據(jù)集中存在軌跡Gi與Gj,如果這兩條軌跡的編輯距離在閾值T 之下,那么就可以認(rèn)為在T 維空間中,軌跡Gj是軌跡Gi的空間近鄰,表達(dá)式如下所示:
式中,N(Gi)表示機(jī)器人軌跡Gi的積累數(shù)目;G 表示機(jī)器人軌跡數(shù)據(jù)集;D(Gi,Gj)表示軌跡Gi與Gj之間的編輯距離,也就是這兩條軌跡之間的相似度,其計(jì)算公式如下所示:
式中,(x,y)表示機(jī)器人軌跡上的坐標(biāo)點(diǎn)。然后將式(1)所求軌跡條數(shù)和T 維空間中最少軌跡積累數(shù)進(jìn)行比較,如果滿(mǎn)足下式條件則認(rèn)為軌跡Gi是機(jī)器人軌跡的核心軌跡:
式中,NT(Gi)表示機(jī)器人軌跡Gi在T 維空間中的條數(shù);NT,min表示T 維空間中機(jī)器人軌跡的最小積累數(shù)目。在通過(guò)DBSCAN聚類(lèi)進(jìn)行機(jī)器人軌跡數(shù)據(jù)挖掘時(shí),將滿(mǎn)足式(3)所示條件的軌跡當(dāng)作核心軌跡,再以該軌跡為核心進(jìn)行簇的聚類(lèi)[6],將全部符合聚類(lèi)閾值要求的軌跡歸屬到相應(yīng)的軌跡簇內(nèi),直至機(jī)器人軌跡數(shù)據(jù)集遍歷結(jié)束,即可獲取最終聚類(lèi)結(jié)果,為下一節(jié)的機(jī)器人軌跡規(guī)劃的實(shí)現(xiàn)提供有效的數(shù)據(jù)支持。
本文在設(shè)計(jì)機(jī)器人軌跡規(guī)劃算法時(shí),借助文中上述內(nèi)容得到的機(jī)器人軌跡數(shù)據(jù)集,獲取機(jī)器人的運(yùn)動(dòng)時(shí)間與能耗數(shù)據(jù)作為優(yōu)化指標(biāo),然后再通過(guò)最優(yōu)化算法構(gòu)建多目標(biāo)機(jī)器人軌跡規(guī)劃模型[7]。在本文設(shè)計(jì)的機(jī)器人軌跡規(guī)劃模型中,首先以機(jī)器人運(yùn)動(dòng)時(shí)間最優(yōu)為目的構(gòu)造下式所示目標(biāo)函數(shù):
式中,f2表示機(jī)器人在規(guī)劃軌跡中運(yùn)動(dòng)時(shí)總能量消耗;Fj表示機(jī)器人第j 個(gè)關(guān)節(jié)電機(jī)提供的控制力矩;φj表示機(jī)器人第j 個(gè)關(guān)節(jié)電機(jī)轉(zhuǎn)動(dòng)角加速度;m 表示機(jī)器人關(guān)節(jié)電機(jī)的數(shù)量;t 表示時(shí)間變量。綜上,本文建立的機(jī)器人軌跡規(guī)劃多目標(biāo)優(yōu)化模型[9]為:
式中,f 表示多目標(biāo)機(jī)器人軌跡規(guī)劃模型。當(dāng)然,在實(shí)際的機(jī)器人軌跡規(guī)劃中,由于機(jī)器人運(yùn)動(dòng)特性較為復(fù)雜,如果僅考慮上述優(yōu)化目標(biāo),所規(guī)劃的軌跡并非最佳,所以本文在軌跡規(guī)劃模型中設(shè)置了機(jī)器人運(yùn)動(dòng)學(xué)特性相關(guān)的約束條件[10],表達(dá)式如下所示:
式中,F(xiàn)j,max表示機(jī)器人關(guān)節(jié)的最大控制力矩;φj,max表示機(jī)器人關(guān)節(jié)的最大角加速度。如上述內(nèi)容所示,本文基于最優(yōu)化算法,以機(jī)器人運(yùn)動(dòng)時(shí)間和運(yùn)動(dòng)能耗最優(yōu)為目標(biāo),構(gòu)建了機(jī)器人軌跡規(guī)劃模型,并在模型中設(shè)置了式(7)所示的機(jī)器人運(yùn)動(dòng)學(xué)特性的約束條件,這樣可以避免機(jī)器人在規(guī)劃軌跡中運(yùn)動(dòng)時(shí),因各個(gè)關(guān)節(jié)達(dá)到運(yùn)動(dòng)極限導(dǎo)致機(jī)器人本體出現(xiàn)損壞。
根據(jù)文中上述內(nèi)容可知,本文以機(jī)器人運(yùn)動(dòng)時(shí)間和能量消耗最優(yōu)為目標(biāo),并在滿(mǎn)足機(jī)器人運(yùn)動(dòng)學(xué)特性約束條件下,建立了機(jī)器人軌跡規(guī)劃模型,那么在軌跡規(guī)劃模型求解過(guò)程中,由于任意兩個(gè)點(diǎn)之間的軌跡都可能是最優(yōu)軌跡,嚴(yán)重增加了模型求解中的計(jì)算量,從而影響機(jī)器人軌跡規(guī)劃的效率,所以本文引入了遺傳算法進(jìn)行機(jī)器人軌跡規(guī)劃模型的求解。遺傳算法是受自然界生物進(jìn)化過(guò)程啟發(fā)而來(lái)的一種智能尋優(yōu)算法,在求解機(jī)器人軌跡規(guī)劃模型時(shí),不僅具有較快的求解速度,而且全局搜索能力較強(qiáng),不易陷入局部最優(yōu),所以求得機(jī)器人軌跡結(jié)果更佳。那么本文利用遺傳算法求解機(jī)器人軌跡規(guī)劃模型的具體流程如下:首先對(duì)機(jī)器人軌跡規(guī)劃模型的解空間進(jìn)行編碼,一般來(lái)說(shuō),遺傳算法無(wú)法直接對(duì)模型解空間進(jìn)行搜索,所以在模型求解之前需要將機(jī)器人軌跡規(guī)劃模型的可行解轉(zhuǎn)化為基因碼串的形式,在此基礎(chǔ)上進(jìn)行搜索尋優(yōu)。然后隨機(jī)生成遺傳算法的種群,并對(duì)種群中個(gè)體進(jìn)行初始化,再利用選擇算子對(duì)種群中個(gè)體進(jìn)行適應(yīng)度評(píng)價(jià),這里本文采用了比例復(fù)制算子,其表達(dá)式如下所示:
式中,Pn表示種群中個(gè)體n 被選中的概率;Sn表示個(gè)體n的適應(yīng)度值;Q 表示種群規(guī)模。如式(8)所示,比例復(fù)制算子進(jìn)行種群個(gè)體的適應(yīng)度評(píng)價(jià),簡(jiǎn)單來(lái)說(shuō)就是在種群中每一個(gè)個(gè)體被選中的概率和其適應(yīng)度值均成正比,所以個(gè)體的適應(yīng)度值越大,那么其成為最優(yōu)解的幾率也越大,所以本文在利用遺傳算法求解機(jī)器人軌跡規(guī)劃模型時(shí),通過(guò)式(8)對(duì)種群中個(gè)體進(jìn)行初步篩選,篩選之后如果達(dá)到終止條件,則將概率最大的個(gè)體當(dāng)作最優(yōu)解進(jìn)行輸出,如果未達(dá)到終止條件,還需要對(duì)個(gè)體進(jìn)行交叉、變異等操作。其中交叉操作,就是利用交叉算子對(duì)父代個(gè)體進(jìn)行信息的交叉遺傳,促使子代個(gè)體既保存了父代個(gè)體的特征,同時(shí)又具備父代個(gè)體不同的性狀;變異操作就是利用變異算子對(duì)父代個(gè)體的編碼序列中部分基因值進(jìn)行替換,從而生成新的個(gè)體,經(jīng)過(guò)交叉與變異操作后,種群中原始個(gè)體的適應(yīng)度值就會(huì)發(fā)生變化,此時(shí)再重新利用式(8)進(jìn)行個(gè)體適應(yīng)度評(píng)價(jià),就會(huì)得到不一樣的尋優(yōu)結(jié)果。在利用遺傳算法求解機(jī)器人軌跡規(guī)劃模型時(shí),為獲得預(yù)期的求解結(jié)果,需要確定算法的終止條件,不能讓機(jī)器人軌跡規(guī)劃模型無(wú)休止地運(yùn)行下去,本文主要以時(shí)間條件作為遺傳算法的終止條件,也就是在遺傳算法執(zhí)行之前,設(shè)置算法的最大迭代次數(shù),當(dāng)算法達(dá)到提前設(shè)置的次數(shù)時(shí),就會(huì)停止求解,此時(shí)適應(yīng)度最大的個(gè)體即為最優(yōu)解,將其輸出便可得到最佳的機(jī)器人軌跡規(guī)劃方案。
本章主要通過(guò)仿真實(shí)驗(yàn)的方式對(duì)文中所設(shè)計(jì)基于聚類(lèi)與最優(yōu)化的機(jī)器人軌跡規(guī)劃算法的性能進(jìn)行驗(yàn)證,本次仿真實(shí)驗(yàn)以ZH412 型號(hào)的四軸上下料機(jī)器人為實(shí)驗(yàn)對(duì)象,并將軌跡規(guī)劃與運(yùn)動(dòng)控制程序編寫(xiě)在CPU 為Intel i7、內(nèi)存為16GB的Wins10 操作系統(tǒng)上。實(shí)驗(yàn)正式開(kāi)始之前,需要對(duì)機(jī)器人的相關(guān)參數(shù)進(jìn)行設(shè)置,詳情見(jiàn)表1。
表1 機(jī)器人運(yùn)動(dòng)參數(shù)設(shè)置
在此基礎(chǔ)上,本文針對(duì)機(jī)器人的生產(chǎn)上下料軌跡展開(kāi)規(guī)劃實(shí)驗(yàn),并根據(jù)實(shí)驗(yàn)結(jié)果評(píng)判設(shè)計(jì)方法的性能。
如前文所示,本次仿真實(shí)驗(yàn)通過(guò)規(guī)劃ZH412 四軸上下料機(jī)器人的生產(chǎn)上下料軌跡,控制機(jī)器人在生產(chǎn)設(shè)備之間任意運(yùn)動(dòng)來(lái)驗(yàn)證設(shè)計(jì)算法的合理性。在本次仿真實(shí)驗(yàn)中,以該算法為實(shí)驗(yàn)組,并以文獻(xiàn)[1]和文獻(xiàn)[2]中方法為對(duì)照組,一起規(guī)劃實(shí)驗(yàn)機(jī)器人的上下料軌跡,再對(duì)軌跡規(guī)劃對(duì)比結(jié)果進(jìn)行詳細(xì)分析。實(shí)驗(yàn)過(guò)程中,先運(yùn)行機(jī)器人,再分別采用設(shè)計(jì)算法與文獻(xiàn)[1]、文獻(xiàn)[2]中方法對(duì)機(jī)器人上下料軌跡進(jìn)行規(guī)劃,最后將上述三種目標(biāo)軌跡導(dǎo)入MATLAB軟件中進(jìn)行生成,示意圖見(jiàn)圖1。
圖1 機(jī)器人軌跡規(guī)劃結(jié)果示意
如圖1 所示,在規(guī)劃?rùn)C(jī)器人上下料軌跡時(shí),以點(diǎn)A為軌跡起點(diǎn),點(diǎn)B 為軌跡終點(diǎn),本文設(shè)計(jì)算法與對(duì)照組方法所規(guī)劃的軌跡均不一致,但這三種軌跡均呈現(xiàn)出連續(xù)且平滑的狀態(tài),且機(jī)器人均可以按照規(guī)劃的軌跡從點(diǎn)A準(zhǔn)確到達(dá)點(diǎn)B,說(shuō)明這三種軌跡規(guī)劃方法均是正確的。為進(jìn)一步驗(yàn)證設(shè)計(jì)算法的優(yōu)越性,在機(jī)器人按照規(guī)劃軌跡運(yùn)動(dòng)過(guò)程中,分別統(tǒng)計(jì)機(jī)器人的運(yùn)動(dòng)時(shí)間,并進(jìn)行對(duì)比,結(jié)果如表2 所示。
從表2 中數(shù)據(jù)可以看出,與對(duì)照組方法相比,本文設(shè)計(jì)算法所規(guī)劃的機(jī)器人運(yùn)動(dòng)軌跡下,機(jī)器人各關(guān)節(jié)運(yùn)動(dòng)時(shí)間均最小,那么在機(jī)器人關(guān)節(jié)聯(lián)動(dòng)過(guò)程中,設(shè)計(jì)算法規(guī)劃軌跡下機(jī)器人整體運(yùn)動(dòng)時(shí)間為11.557 9 s,較對(duì)照方法縮短了3.321 5 s、4.196 4 s。由此可以說(shuō)明,基于聚類(lèi)與最優(yōu)化的機(jī)器人軌跡規(guī)劃算法,所規(guī)劃的機(jī)器人運(yùn)動(dòng)軌跡最優(yōu),可以滿(mǎn)足機(jī)器人高效作業(yè)的時(shí)間需求。
綜上所述,本文以工業(yè)機(jī)器人為研究對(duì)象,為了實(shí)現(xiàn)機(jī)器人軌跡規(guī)劃,引入了聚類(lèi)算法與最優(yōu)化算法,首先通過(guò)聚類(lèi)算法深入挖掘了機(jī)器人相關(guān)軌跡數(shù)據(jù),然后再利用最優(yōu)化算法構(gòu)建了機(jī)器人軌跡規(guī)劃模型,最后求解模型即可得到最優(yōu)的機(jī)器人軌跡規(guī)劃方案。同時(shí),文中依托ZH412 四軸上下料機(jī)器人進(jìn)行了仿真實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果證明了設(shè)計(jì)算法的有效性,該算法規(guī)劃的機(jī)器人運(yùn)動(dòng)軌跡不僅平滑、連續(xù),且可以促使機(jī)器人運(yùn)動(dòng)時(shí)間明顯縮短,進(jìn)而提升機(jī)器人的作業(yè)效率,為推動(dòng)我國(guó)智能機(jī)器人的可持續(xù)發(fā)展做出貢獻(xiàn)。