岳鵬飛
摘 要:“中國制造2025”戰(zhàn)略的提出,給工業(yè)自動化的發(fā)展與應(yīng)用帶來了更加廣闊的空間。工業(yè)機(jī)器人作為智能化工業(yè)生產(chǎn)的重要組成部分之一,其作業(yè)質(zhì)量與工作效率,直接影響到我國工業(yè)現(xiàn)代化的實(shí)現(xiàn)速度。本文以工業(yè)機(jī)器人的軌跡規(guī)劃作為研究方向,首先概述了工業(yè)機(jī)器人技術(shù)發(fā)展?fàn)顩r和應(yīng)用前景;然后詳細(xì)分析了遺傳算法的工作原理與工業(yè)機(jī)器人軌跡規(guī)劃時間最優(yōu)問題;并以PUMA560工業(yè)機(jī)器人作為課題的研究對象,通過數(shù)學(xué)遺傳算法函數(shù)規(guī)劃的方式,探究工業(yè)機(jī)器人時間軌跡規(guī)劃的最優(yōu)計(jì)算方法;最后利用MATLAB實(shí)現(xiàn)程序代碼編程、優(yōu)化與仿真,建立規(guī)范化的最優(yōu)軌跡方案。仿真結(jié)果證明,PUMA560工業(yè)機(jī)器人能夠在特定遺傳算法下高效完成工業(yè)制造任務(wù)。
關(guān)鍵詞:遺傳算法 函數(shù) 軌跡優(yōu)化 PUMA560
1 引言
在科學(xué)技術(shù)的迅猛發(fā)展進(jìn)程中,人工智能與自動化機(jī)械技術(shù)為工業(yè)機(jī)器人提供了越來越完善的自動化操作功能,也為社會生產(chǎn)與工業(yè)發(fā)展帶來了越來越廣泛的智能化與機(jī)械化技術(shù)支持[1]。當(dāng)今時代的工業(yè)機(jī)器人,在人類的現(xiàn)實(shí)生產(chǎn)與生活中,占據(jù)了舉足輕重的應(yīng)用地位,其工作效率與工作質(zhì)量的提高,將會給人類的工業(yè)生產(chǎn)帶來更大的助益。與此同時,工業(yè)機(jī)器人在驟起驟停的實(shí)踐化工作過程中,機(jī)械臂會出現(xiàn)一定的抖動現(xiàn)象。如果機(jī)械臂的抖動過于明顯,則會直接影響到工業(yè)機(jī)器人的軌跡精度[2]。所以,通過遺傳算法的技術(shù)手段,實(shí)時規(guī)劃跟蹤工業(yè)機(jī)器人的相應(yīng)軌跡,實(shí)現(xiàn)機(jī)械臂各個節(jié)點(diǎn)的平穩(wěn)、平滑運(yùn)行,不僅能夠促進(jìn)工業(yè)機(jī)器人的智能化發(fā)展,還能夠提高工業(yè)機(jī)器人的運(yùn)作穩(wěn)定性。從實(shí)用的角度來說,以時間最優(yōu)為目標(biāo)的工業(yè)機(jī)器人軌跡規(guī)劃研究,對工業(yè)機(jī)器人技術(shù)的實(shí)踐化應(yīng)用,有著十分重要的指導(dǎo)性意義。
2 工業(yè)機(jī)器人技術(shù)的發(fā)展?fàn)顩r和應(yīng)用前景
2.1 工業(yè)機(jī)器人的技術(shù)發(fā)展?fàn)顩r
從歷史的角度來說,工業(yè)機(jī)器人的發(fā)展,最早起源于1954年。當(dāng)時,美國工程師喬治·德沃爾以程序設(shè)計(jì)的方式,研制出世界上第一臺工業(yè)機(jī)器人[3]。到了20世紀(jì)80 年代時期,信息技術(shù)為工業(yè)生產(chǎn)提供了高度的自動化與集成化,也為工業(yè)機(jī)器人帶來了人工智能與機(jī)械化發(fā)展。經(jīng)歷了半個多世紀(jì)的發(fā)展,如今的工業(yè)機(jī)器人應(yīng)用較為廣泛,其應(yīng)用領(lǐng)域已經(jīng)拓展到世界各個行業(yè),如:建筑、采礦、農(nóng)業(yè)、勘探、國防、軍事等等領(lǐng)域中,都能夠看到工業(yè)機(jī)器人忙碌的身影。工業(yè)機(jī)器人技術(shù)的發(fā)展,在人類物質(zhì)文明與精神生活方面,發(fā)揮了重要的影響與作用。
2.2 工業(yè)機(jī)器人技術(shù)的應(yīng)用前景
工業(yè)機(jī)器人是伴隨電氣時代的進(jìn)步而產(chǎn)生的,在信息技術(shù)與遺傳學(xué)算法的不斷完善過程中,工業(yè)機(jī)器人技術(shù)得到了不斷地得到了不斷的創(chuàng)新與改善[5]。從工業(yè)機(jī)器人的應(yīng)用前景來看,PC技術(shù)促進(jìn)了集成電路的發(fā)展速度,工業(yè)機(jī)器人的控制系統(tǒng)也隨之向軟、硬資源融合方向進(jìn)步。標(biāo)準(zhǔn)化和網(wǎng)絡(luò)化的PC技術(shù),能夠滿足工業(yè)機(jī)器人的發(fā)展步伐,并能夠促使工業(yè)機(jī)器人朝著開放式系統(tǒng)方向發(fā)展。工業(yè)機(jī)器人的溫度、濕度等技術(shù)控制,需要依靠傳感器來實(shí)現(xiàn)。因此,硬件傳感器技術(shù)的嵌入式應(yīng)用,是工業(yè)機(jī)器人未來發(fā)展的一大主要應(yīng)用方向。與此同時,工業(yè)機(jī)器人的智能程度在AI技術(shù)的支持下,朝著更深入的邏輯分析、推理判斷與數(shù)據(jù)規(guī)劃方向發(fā)展,在不遠(yuǎn)的未來,匯集智能化、網(wǎng)絡(luò)化與模塊化特點(diǎn)的智能工業(yè)機(jī)器人,將會具有更加遼闊的應(yīng)用空間與應(yīng)用前景。而采用智能遺傳算法,能夠提高工業(yè)機(jī)器人的環(huán)境適應(yīng)度,是保障工業(yè)機(jī)器人順利完成質(zhì)作業(yè)任務(wù)的最佳措施之一。
3 工業(yè)機(jī)器人的軌跡規(guī)劃時間最優(yōu)問題
3.1 遺傳算法的工作原理
遺傳算法(Genetic Algorithm)是人工智能技術(shù)中一項(xiàng)重要的循環(huán)計(jì)算尋優(yōu)算法。從工業(yè)機(jī)器人的時間軌跡規(guī)劃角度來看,它模仿人類的生物進(jìn)化過程,以數(shù)學(xué)建模的算法求解方式,求得工業(yè)機(jī)器人所有可能的運(yùn)動軌跡,并搜索運(yùn)動軌跡的求解方案,從而找到最優(yōu)時間軌跡。因此,基于遺傳算法的工業(yè)機(jī)器人時間軌跡規(guī)劃算法,具有應(yīng)用方便、智能求解和魯棒性較強(qiáng)等優(yōu)點(diǎn)。
從算法的求解方法上來看,遺傳算法是利用遺傳算子,通過對子代種群的算法進(jìn)行求解,從而獲得更加有效的問題最優(yōu)解。因此,對遺傳算法的工作原理分析,是實(shí)現(xiàn)工業(yè)機(jī)器人軌跡規(guī)劃時間求解的最佳求解方案。本課題中的遺傳算法的求解方案為:從對PUMA560工業(yè)機(jī)器人軌跡規(guī)劃問題的分析開始,首先針對不同關(guān)節(jié)點(diǎn)的軌跡時間規(guī)劃問題進(jìn)行遺傳算法編碼,然后對其子種群進(jìn)行初始化,并設(shè)置基于人工智能的自適應(yīng)函數(shù)。當(dāng)自適應(yīng)函數(shù)滿足優(yōu)化條件時,子代種群變異并繼續(xù)遺傳算法,求解到最優(yōu)軌跡規(guī)劃時間后,保存該最優(yōu)數(shù)據(jù)。具體的工作流程如圖1所示。
3.2 基于時間最優(yōu)角度的工業(yè)機(jī)器人軌跡規(guī)劃
3.2.1 約束條件規(guī)劃
工業(yè)機(jī)器人的運(yùn)動軌跡以特定的機(jī)器人運(yùn)動關(guān)鍵節(jié)點(diǎn)為基礎(chǔ),為關(guān)鍵點(diǎn)(q)定義笛卡爾空間坐標(biāo),并把關(guān)鍵點(diǎn)對應(yīng)的時間序列定義為t,設(shè)h是兩個時間節(jié)點(diǎn)的時間間隔,則:
hi=ti+1-ti
T(hi)=h1+h2+…+hm-1=hi
這里的T(hi)指的是工業(yè)機(jī)器人從始點(diǎn)到終點(diǎn)的運(yùn)行時間總和,而工業(yè)機(jī)器人再運(yùn)動過程中,需要在各個關(guān)鍵節(jié)點(diǎn)處做到時間上的同步。所以,讓機(jī)器人達(dá)到最優(yōu)時間規(guī)劃,就需要機(jī)器人的各個關(guān)節(jié)能夠同步,如此才能降低軌跡復(fù)雜所帶來的運(yùn)動能量消耗。
因此,需要對工業(yè)機(jī)器人的各個關(guān)節(jié)進(jìn)行運(yùn)動學(xué)約束。為了能夠給工業(yè)機(jī)器人的各個關(guān)鍵運(yùn)動軌跡帶來方便,需要以關(guān)節(jié)約束的方式,描述關(guān)節(jié)位置的上、下限;根據(jù)關(guān)節(jié)最大速度求得關(guān)節(jié)的最大加速度絕對值;根據(jù)關(guān)節(jié)最大加速度求解工業(yè)機(jī)器人關(guān)節(jié)的最大二階速度絕對值。因此,求解機(jī)器人關(guān)節(jié)點(diǎn)對應(yīng)的軌跡位置時,需要對第j個關(guān)節(jié)節(jié)點(diǎn)的第i段軌跡極限值進(jìn)行計(jì)算,并與該段軌跡端點(diǎn)比較,獲得最大和最小極限值,存入value_Buffer數(shù)組中,在經(jīng)過遺傳算法的循環(huán)計(jì)算后,獲得第j關(guān)節(jié)節(jié)點(diǎn)的軌跡位置最大和最小值。求解軌跡位置的具體流程,如圖2所示。
3.3 求解軌跡函數(shù)最優(yōu)解
在求解工業(yè)機(jī)器人運(yùn)行軌跡的過程中,根據(jù)軌跡運(yùn)行函數(shù)能夠求解不同軌跡函數(shù)的最值,并根據(jù)復(fù)雜軌跡函數(shù)采用極值軌跡求解法確定軌跡函數(shù)的最值。借助Matlab求解軌跡函數(shù)的求解過程如下:
3.3.1 函數(shù)極值點(diǎn)軌跡求解
由于軌跡的求解函數(shù)屬于人工智能范疇內(nèi),其數(shù)學(xué)函數(shù)的定義屬于高階多項(xiàng)式,使用Matlab解析solve()函數(shù),能夠獲得應(yīng)用位置的極限值。
3.3.2 函數(shù)極值點(diǎn)軌跡速度求解
工業(yè)機(jī)器人的軌跡運(yùn)行速度函數(shù)也屬于高階多項(xiàng)式,所以在對其進(jìn)行Matlab求解時,利用三根表達(dá)式來求得軌跡速度函數(shù)的極限值表達(dá)式(三個極值點(diǎn))。
3.3.3 函數(shù)極值點(diǎn)軌跡加速度求解
建立工業(yè)機(jī)器人的節(jié)臂運(yùn)動軌跡二階函數(shù),即:拋物線函數(shù),求得極值點(diǎn)對應(yīng)的函數(shù)頂點(diǎn)表達(dá)式。在確定關(guān)節(jié)點(diǎn)函數(shù)極值前,對相關(guān)的極值點(diǎn)進(jìn)行校驗(yàn),并帶入軌跡函數(shù)極值中。
3.4 遺傳算法求解軌跡函數(shù)關(guān)鍵源代碼
3.4.1 變量初始化源代碼
在使用種族遺傳算法進(jìn)行最優(yōu)軌跡優(yōu)化時,首先需要對工業(yè)機(jī)器人的種群規(guī)模和變異概率進(jìn)行設(shè)置,其對應(yīng)的代數(shù)設(shè)置數(shù)據(jù)為:
(1)進(jìn)化代數(shù)設(shè)置:M=50;N=20;
(2)種群規(guī)模設(shè)置:Pm=0.3;
(3)變異概率設(shè)置:LC1=zeros(1,M);LC2=zeros(1,M);Yp=L1。
3.4.2 種群數(shù)據(jù)初始值設(shè)定
基于遺傳算法的工業(yè)機(jī)器人各關(guān)節(jié)初始種群數(shù)據(jù)通過隨機(jī)算法生成,其對應(yīng)的源代碼為:
X1=XY(R,1);Y1=XY(R,2);X2=XY(R,3);Y2=XY(R,4);
for i=1:N
farm{i}=rand(1,aaa);
End
3.4.3 雙親雙子單點(diǎn)交叉遺傳算法
在遺傳算法的進(jìn)化迭代過程中,需要設(shè)置迭代計(jì)數(shù)器counter=0,并為循環(huán)設(shè)置停止條件為達(dá)到最大迭代次數(shù),即:while counter newfarm=cell(1,2*N);%用于存儲子代的細(xì)胞結(jié)構(gòu) Ser=randperm(N);%兩兩隨機(jī)配對的配對表 A=farm{Ser(1)};%取出父代A B=farm{Ser(2)};%取出父代B P0=unidrnd(aaa-1);%隨機(jī)選擇交叉點(diǎn) a=[A(:,1:P0),B(:,(P0+1):end)];%產(chǎn)生子代a b=[B(:,1:P0),A(:,(P0+1):end)];%產(chǎn)生子代b newfarm{2*N-1}=a;%加入子代種群 newfarm{2*N}=b; for i=1:(N-1) A=farm{Ser(i)}; B=farm{Ser(i+1)}; newfarm{2*i}=b; end FARM=[farm,newfarm]。 4 時間最優(yōu)軌跡規(guī)劃仿真 為了能夠確定本課題編碼的遺傳算法有效性,采用Matlab仿真實(shí)現(xiàn)遺傳算法結(jié)果的數(shù)據(jù)分析,并通過仿真獲得的數(shù)據(jù)值,計(jì)算工業(yè)機(jī)器人軌跡關(guān)鍵節(jié)點(diǎn)的最優(yōu)軌跡信息。其中,把PUMA560工業(yè)機(jī)器人的關(guān)節(jié)關(guān)鍵起始點(diǎn)的速度設(shè)置為0,終止點(diǎn)的速度也設(shè)置為0,為其配置加速度為1,填寫初始數(shù)據(jù)后展開工業(yè)機(jī)器人的時間最優(yōu)軌跡規(guī)劃仿真。具體的遺傳算法仿真過程為: (1)設(shè)定工業(yè)機(jī)器人的所有關(guān)節(jié)運(yùn)動學(xué)約束條件,并編寫種群自適應(yīng)函數(shù)源代碼,優(yōu)化該源代碼的編寫語句,達(dá)到時間最優(yōu)。 (2)通過Matlab中提供的遺傳算法,在定義的種群函數(shù)中設(shè)置指定的個體上下限,其它相關(guān)參數(shù)與變量采用默認(rèn)設(shè)置值,展開時間最優(yōu)軌跡的計(jì)算。 (3)優(yōu)化軌跡計(jì)算過程,獲得各段軌跡的最終時間優(yōu)化仿真結(jié)果。 通過對優(yōu)化結(jié)果的計(jì)算與仿真曲線數(shù)據(jù)值,能夠計(jì)算出基于遺傳算法的工業(yè)機(jī)器人時間最優(yōu)軌跡規(guī)劃的仿真結(jié)果,如表1所示: 從仿真的結(jié)果可以看出,三個關(guān)節(jié)點(diǎn)所對應(yīng)的軌跡運(yùn)行時間差較小,為了能夠讓各個關(guān)節(jié)點(diǎn)位置在時間上基本同步,需要針對時間軌跡選擇最優(yōu)關(guān)節(jié)點(diǎn)位置,從而保障各個關(guān)鍵節(jié)點(diǎn)之間的同步性。因此,調(diào)整關(guān)節(jié)節(jié)點(diǎn)位置,使得最終的仿真結(jié)果總時間和在時間上基本同步,如表2所示: 此時,三個關(guān)節(jié)節(jié)點(diǎn)走完時間最優(yōu)軌跡所需要的時間,比遺傳算法優(yōu)化后的軌跡規(guī)劃時間,在總時間方面有所減少,且呈現(xiàn)出更加良好的同步結(jié)果。仿真結(jié)果證明,改進(jìn)后的遺傳學(xué)算法在時間規(guī)劃方面,實(shí)現(xiàn)了工業(yè)機(jī)器人的軌跡優(yōu)化,能夠讓工業(yè)機(jī)器人的各個關(guān)節(jié)點(diǎn)在時間軌跡上基本同步。 5 結(jié)語 在工業(yè)機(jī)器人的機(jī)械化生產(chǎn)與應(yīng)用過程中,時間效率與工作質(zhì)量是評價其自身性能優(yōu)劣的重要指標(biāo)。本文以PUMA560工業(yè)機(jī)器人的時間軌跡規(guī)劃作為研究對象,利用遺傳算法對工業(yè)機(jī)器人各關(guān)節(jié)節(jié)點(diǎn)的運(yùn)行時間進(jìn)行優(yōu)化,并在設(shè)定約束條件的基礎(chǔ)上,以時間最優(yōu)為目標(biāo),展開Matlab軌跡規(guī)劃編碼及仿真。仿真結(jié)果證明,優(yōu)化算法的時間軌跡具有更加良好的規(guī)劃性與可靠性。 參考文獻(xiàn): [1]殷鳳健,梁慶華,程旭,陶志遠(yuǎn).基于時間最優(yōu)的機(jī)械臂關(guān)節(jié)空間軌跡規(guī)劃算法[J].機(jī)械設(shè)計(jì)與研究,2017,33(05):12-15. [2]張舒曼.六自由度工業(yè)機(jī)器人軌跡規(guī)劃研究及仿真[D].杭州電子科技大學(xué),2015. [3]秦律,汪木蘭,朱曉春,王保升.基于改進(jìn)遺傳算法的機(jī)器人時間最優(yōu)軌跡規(guī)劃[J].機(jī)械設(shè)計(jì)與制造工程,2018,47(11):63-67.