周 晟,魏裔軍
(武警士官學(xué)校基層后勤管理系被裝教研室,杭州 310000)
現(xiàn)代化工業(yè)生產(chǎn)中,機(jī)械臂的適用范圍、使用頻率、工作需求越來(lái)越大。串聯(lián)機(jī)械臂是其中的基礎(chǔ)類型,在生產(chǎn)生活中扮演著重要的角色。因此,優(yōu)化工作軌跡、縮短生產(chǎn)時(shí)間、提高工作效率,具有十分重要的意義,亦是現(xiàn)代機(jī)械臂研究的重要方向。
文獻(xiàn)[1]在運(yùn)動(dòng)學(xué)約束下,以遺傳算法(GA)為工具,針對(duì)軌跡運(yùn)行時(shí)間和平穩(wěn)性性能實(shí)現(xiàn)優(yōu)化設(shè)計(jì)。文獻(xiàn)[2]針對(duì)送料機(jī)械手進(jìn)給、下降、松開、回退、夾緊、提升等基本作業(yè)運(yùn)行時(shí)間,選取遺傳算法結(jié)合B樣條曲線,對(duì)時(shí)間最優(yōu)化模型實(shí)行軌跡規(guī)劃和優(yōu)化設(shè)計(jì)。文獻(xiàn)[3]在傳統(tǒng)遺傳算法基礎(chǔ)上引入模擬退火算法(SA),有效跳出局部最優(yōu),降低求解時(shí)間,提升運(yùn)算效率。
針對(duì)機(jī)械臂軌跡規(guī)劃時(shí)間最優(yōu)模型,GA在優(yōu)化設(shè)計(jì)中能夠彌補(bǔ)SA在尋優(yōu)時(shí)的不足,因此,文中提出一種自適應(yīng)GA-SA算法[4-5]。選取PUMA762串聯(lián)機(jī)械臂運(yùn)行軌跡為優(yōu)化對(duì)象,利用3-5-3次多項(xiàng)式進(jìn)行運(yùn)行軌跡插值計(jì)算后,以最優(yōu)運(yùn)行時(shí)間為目標(biāo)構(gòu)建目標(biāo)函數(shù),合理設(shè)置約束條件下通過(guò)自適應(yīng)GA-SA算法實(shí)現(xiàn)時(shí)間最優(yōu)化設(shè)計(jì)。結(jié)合ADAMS繪制虛擬樣機(jī)模型,合理設(shè)定相關(guān)參數(shù)進(jìn)行仿真分析,驗(yàn)證算法的有效性,為后續(xù)研究提供理論支撐。
文中設(shè)置PUMA762串聯(lián)機(jī)械臂為主體對(duì)象進(jìn)行仿真模擬,以運(yùn)動(dòng)學(xué)理論為基礎(chǔ)繪制D-H參數(shù),如表1所示[6]。
表1 D-H參數(shù)表
表1中:αi表示連桿扭曲;ai表示連桿長(zhǎng)度;di表示連桿偏置;θi表示關(guān)節(jié)轉(zhuǎn)角。
以表1為基礎(chǔ)構(gòu)造機(jī)械臂連桿模型,設(shè)置關(guān)節(jié)坐標(biāo)系,如圖1所示。
圖1 關(guān)節(jié)坐標(biāo)系
運(yùn)用MATLAB工具箱構(gòu)建機(jī)械臂結(jié)構(gòu)模型圖,如圖2所示。
圖2 機(jī)械臂結(jié)構(gòu)模型圖
依據(jù)圖2機(jī)械臂結(jié)構(gòu)模型圖,驗(yàn)證正、逆解求解的正確性,并借助機(jī)械臂正解模型,采用蒙特卡洛法求解工作空間,求解步驟如下所示[7-8]:
步驟1:通過(guò)運(yùn)動(dòng)學(xué)正解模型,計(jì)算末端執(zhí)行器MARK點(diǎn)在坐標(biāo)系中的位置向量;
步驟2:末端執(zhí)行器空間位置集合Wn如下所示:
(1)
式中,f(x)為機(jī)械臂正運(yùn)動(dòng)求解;λ(x)為機(jī)械臂末端點(diǎn)空間位置。
步驟3:依據(jù)蒙特卡洛法,將rand函數(shù)隨機(jī)生成數(shù)值設(shè)置為隨機(jī)變量步長(zhǎng),關(guān)節(jié)變量等式如下:
(2)
步驟4:將步驟(3)所求N個(gè)關(guān)節(jié)變量的偽隨機(jī)值代入運(yùn)動(dòng)學(xué)方程中,求解末端執(zhí)行器MARK點(diǎn)位置向量函數(shù)值,以點(diǎn)陣方式反映實(shí)際工作空間。
根據(jù)上述步驟,繪制PUMA762機(jī)械臂末端執(zhí)行期無(wú)碰撞下,所能達(dá)到所有點(diǎn)的集合,以圖像顯示的方式構(gòu)建機(jī)械臂工作空間,如圖3所示。
圖3 PUMA762工作空間
機(jī)械臂末端執(zhí)行器在滿足運(yùn)動(dòng)學(xué)約束、動(dòng)力學(xué)約束和負(fù)載約束件下,以工作時(shí)間最優(yōu)化目標(biāo),其目標(biāo)函數(shù)與約束條件束設(shè)計(jì)如下:
(3)
式中,tij為第i個(gè)關(guān)節(jié)運(yùn)行軌跡的第1、2、3段的運(yùn)行時(shí)間;h(t)為第i個(gè)關(guān)節(jié)完成運(yùn)行軌跡總時(shí)間;j=1,2,3。
(1)運(yùn)動(dòng)學(xué)約束
(2)動(dòng)力學(xué)約束
假定機(jī)械臂未發(fā)生碰撞,則τf=0
負(fù)載約束:Fgmin≤Fk≤Fgmaxk=1,2
式中,F(xiàn)k為末端執(zhí)行器夾持力;Fgmin為最小夾持力;Fgmax為最大夾持力;
作業(yè)過(guò)程中,已知起始點(diǎn)、路徑點(diǎn)、終止點(diǎn)位于笛卡爾坐標(biāo)系的空間坐標(biāo)值,運(yùn)用運(yùn)動(dòng)學(xué)逆解模型,分析求解各關(guān)節(jié)在4個(gè)插值點(diǎn)處的關(guān)節(jié)角度,θij表示關(guān)節(jié)i的插值角度,i=1,2,…,n,n表示關(guān)節(jié)個(gè)數(shù),j=1,2,3,4,表示4個(gè)插值點(diǎn)的序號(hào)。
第i段關(guān)節(jié)3-5-3次多項(xiàng)式插值通式如下所示:
(4)
式中,hi1、hi2和hi3分別為第i個(gè)關(guān)節(jié)的第一、二、三段三次、五次、三次多項(xiàng)式運(yùn)行軌跡;αi1j、αi2j和αi3j分別為多項(xiàng)式系數(shù);ti1、ti2和ti3分別為第i個(gè)關(guān)節(jié)第一段、第二段和第三段運(yùn)行軌跡的運(yùn)行時(shí)間。合理運(yùn)用14個(gè)邊界和過(guò)渡約束條件,可求解出3-5-3次多項(xiàng)式中未知系數(shù)aij,推導(dǎo)公式如下所示。
等式(5)中A僅與第i個(gè)關(guān)節(jié)3段多項(xiàng)式的插值時(shí)間ti1、ti2和ti3有關(guān),等式(7)表示第i個(gè)關(guān)節(jié)角的位置矩陣。
(5)
θ=[0 0 0 0 0 0θi30 0θi00 0θi2θi1]T
(6)
(7)
式中,
(1)傳統(tǒng)GA設(shè)置固定的pm值與pc值,無(wú)法兼顧優(yōu)化前期,須對(duì)全局具有較強(qiáng)搜索能力,優(yōu)化后期,保障新個(gè)體產(chǎn)生等多方面需求。
(2)傳統(tǒng)SA求解時(shí)間較長(zhǎng),面多變量多、目標(biāo)函數(shù)復(fù)雜情況時(shí),若控制參數(shù)T初始值較大,迭代次數(shù)較多,若T初值較小,較難計(jì)算求解全局最優(yōu)解。并且,由于SA局部尋優(yōu)的限制,所獲取的局部最優(yōu)解質(zhì)量可能并不很高。
本文設(shè)計(jì)了GA與SA結(jié)合的自適應(yīng)GA-SA算法[9-10]。
(1)交叉概率pm與變異概率pc在GA優(yōu)化過(guò)程中所呈現(xiàn)的數(shù)值狀態(tài),對(duì)其優(yōu)化性能、分析結(jié)果具有巨大影響。GA優(yōu)化前期階段,從全局層面考慮需要較強(qiáng)的全局搜索能力,降低局部?jī)?yōu)化的干擾,此時(shí)就需要較大的pm值與較小的pc值,以保證搜索初期對(duì)全局的掌握。進(jìn)入優(yōu)化后期,就需要較小的pm值與較大的pc值,以保證新個(gè)體的產(chǎn)生,固定的pm值與pc值就無(wú)法達(dá)到這樣的要求。
因此,文中在GA設(shè)計(jì)時(shí)采用自適應(yīng)方法,使得pm值與pc值按照等式(8)、等式(9)隨適應(yīng)度函數(shù)變化而改變,實(shí)現(xiàn)自適應(yīng)變化。
(8)
pm=
(9)
式中,fmax,fmin,fave分別表示適應(yīng)度函數(shù)最大值、最小值、平均值;δ表示適應(yīng)度函數(shù)值寬度預(yù)計(jì)值;pc1、pc2分別表示設(shè)定交叉概率的最大值、最小值;pm1、pm2分別表示設(shè)定變異概率的最大值、最小值。
當(dāng)種群內(nèi)fmax-fmax>δ時(shí),表面種群內(nèi)部適應(yīng)度較為集中,應(yīng)增大pc,提升搜索進(jìn)度,求解最優(yōu)解,同時(shí)增大pm,增加產(chǎn)生新個(gè)體的速率,增強(qiáng)種群的多樣性。
(2)SA在優(yōu)化過(guò)程中能夠彌補(bǔ)GA在局部尋優(yōu)時(shí)的不足。
文中選取指數(shù)退火方式進(jìn)行降溫操作,即:
Ti=T0ki-1
(10)
式中,Ti為當(dāng)前退火進(jìn)行的溫度;k為衰減系數(shù);T0為初始溫度。
在此基礎(chǔ)上,提出一種在初始解附近,隨機(jī)鄰域拓展以產(chǎn)生新解的機(jī)制,即:
(11)
(12)
式中,Y′為新解;Y為當(dāng)前解;Ymax,Ymin為Y所在種群內(nèi)的最大解和最小解;ξ,τ為[0,1]內(nèi)均勻分布的隨機(jī)數(shù);θ(Ti)為擾動(dòng)函數(shù);ξ1,ξ2為[0,0.1]內(nèi)均勻分布的隨機(jī)數(shù)。
合理選用隨機(jī)鄰域拓展機(jī)制,既能全面搜索初始解的領(lǐng)域,又能保障新解的質(zhì)量。Y是否變?yōu)閅′,可采用Metropolis準(zhǔn)則進(jìn)行判斷,Metropolis準(zhǔn)則如下所示:
(13)
使用Metropolis準(zhǔn)則判斷時(shí),若Y′較優(yōu),則接受新解為當(dāng)前解。若新解Y′較劣,則以概率p判斷是否接受新解。
步驟1:設(shè)置種群規(guī)模N、最大進(jìn)化代數(shù)Mmax、初始退火溫度T0、最小溫度Tmin和溫度衰減系數(shù)k等初始參數(shù);
步驟2:初始種群以隨機(jī)方式生成,計(jì)算種群內(nèi)個(gè)體適應(yīng)度值,并對(duì)個(gè)體進(jìn)行選擇、交叉、變異操作,其中按照等式(8)計(jì)算是否交叉,按照等式(9)計(jì)算是否變異,生成適應(yīng)度最佳的個(gè)體;
步驟3:對(duì)SA尋找到的適應(yīng)度較大的個(gè)體,計(jì)算其適應(yīng)度值并進(jìn)行模擬退火操作,θ(Ti)按照等式(11)計(jì)算,對(duì)當(dāng)前解按照等式(12)進(jìn)行解的變換。比較新解Y′與當(dāng)前解Y的適應(yīng)度值,使用Metropolis準(zhǔn)則判斷是否采用新解,若采用,則以新解替換當(dāng)前解,否則,以概率P接受新個(gè)體,舍棄舊個(gè)體;
步驟4:判斷當(dāng)前進(jìn)化代數(shù)gen是否小于最大進(jìn)化代數(shù)Mmax,若gen 步驟5:判斷當(dāng)前溫度T是否小于最小溫度Tmin,若T 自適應(yīng)GA-SA算法流程圖如圖4所示。 圖4 自適應(yīng)GA-SA算法流程圖 在MATLAB平臺(tái)下分別選用10維、30維、50維測(cè)試函數(shù)進(jìn)行計(jì)算,驗(yàn)證自適應(yīng)GA-SA算法優(yōu)化性能,其結(jié)果如圖5~圖7所示。 圖5 10維測(cè)試函數(shù) 圖6 30維測(cè)試函數(shù) 圖7 50維測(cè)試函數(shù) 由上圖可知,算法采用自適應(yīng)方法與鄰域拓展以產(chǎn)生新解機(jī)制,在測(cè)試函數(shù)計(jì)算下,算法初期階段適應(yīng)度曲線迅速向最佳適應(yīng)度曲線靠近,收斂速度較快,具有跳出局部最優(yōu)的能力。自適應(yīng)GA-SA算法既能全面搜索初始解的領(lǐng)域,又能保障新解的質(zhì)量,確保算法全局優(yōu)化性能。 文中以PUMA762為驗(yàn)證對(duì)象,采用ADAMS繪制虛擬樣機(jī)模型,如圖8所示。合理設(shè)置相關(guān)參數(shù)后,依據(jù)機(jī)械臂結(jié)構(gòu)模型圖繪制機(jī)械臂運(yùn)行軌跡,如圖9所示。設(shè)置第一段軌跡運(yùn)行時(shí)間為1 s,第二段軌跡運(yùn)行時(shí)間為2 s,第三段軌跡運(yùn)行時(shí)間為1 s,起始點(diǎn)、終止點(diǎn)的速度加速度均為0。 (a) 虛擬樣機(jī)模型 (b) 機(jī)械臂運(yùn)行軌跡圖8 虛擬樣機(jī)模型與運(yùn)行軌跡 在提取各關(guān)節(jié)運(yùn)行軌跡點(diǎn)后,使用自適應(yīng)GA-SA進(jìn)行優(yōu)化設(shè)計(jì),經(jīng)優(yōu)化后得到第一段軌跡最優(yōu)時(shí)間為0.893 s,第二段軌跡最優(yōu)時(shí)間為1.875 s,第三段軌跡最優(yōu)時(shí)間為0.932 s,總體運(yùn)行時(shí)間為3.68 s。經(jīng)優(yōu)化后的機(jī)械臂位置曲線、速度曲線、加速度曲線如圖9所示。 (a) 位置曲線 (b) 速度曲線 (c) 加速度曲線圖9 位置、速度、加速度曲線 由上圖可知,經(jīng)優(yōu)化后的機(jī)械臂速度曲線、加速度曲線光滑連續(xù),運(yùn)行平穩(wěn),滿足運(yùn)動(dòng)學(xué)、動(dòng)力學(xué)約束。合理運(yùn)用自適應(yīng)GA-SA算法提升了串聯(lián)機(jī)械臂各關(guān)節(jié)軌跡運(yùn)行的連續(xù)、穩(wěn)定性,切實(shí)完成運(yùn)行軌跡時(shí)間優(yōu)化,提高工作效率,具有實(shí)際意義。 文中提出一種自適應(yīng)遺傳模擬退火算法,借助MATLAB工具箱繪制PUMA762串聯(lián)機(jī)械臂運(yùn)行軌跡,結(jié)合ADAMS虛擬樣機(jī)模型設(shè)置運(yùn)行時(shí)間等相關(guān)參數(shù)后,通過(guò)自適應(yīng)遺傳模擬退火算法進(jìn)行時(shí)間最優(yōu)化設(shè)計(jì),使得工作時(shí)間由4 s優(yōu)化為3.68 s。 (1)遺傳算法設(shè)計(jì)時(shí)采用自適應(yīng)方法,使得pm值與pc值隨適應(yīng)度函數(shù)變化而改變,保障優(yōu)化前期,具有較強(qiáng)的全局搜索能力,優(yōu)化后期,確保新個(gè)體的產(chǎn)生。 (2)模擬退火算法設(shè)計(jì)時(shí),選取指數(shù)退火方式進(jìn)行降溫操作,并提出在初始解附近,隨機(jī)鄰域拓展以產(chǎn)生新解的機(jī)制,既能全面搜索初始解的領(lǐng)域,又能保障新解的質(zhì)量。3.4 函數(shù)測(cè)試
4 仿真驗(yàn)證
5 結(jié)論