于俊康 江維 李紅軍 陳偉 陳振
摘 要:紡織車間中通過協(xié)作機械臂代替工人實現(xiàn)對直捻機筒紗的自動更換,可降低工人勞動強度,提高筒紗卷繞的生產(chǎn)效率。在對機器人進(jìn)行運動學(xué)建模與分析時,逆運動學(xué)求解是機器人運動學(xué)中關(guān)鍵部分。傳統(tǒng)法求機器人逆解存在求解速度慢、求解過程復(fù)雜、結(jié)果穩(wěn)定性差等問題,采用傳統(tǒng)BP(Back Propa- gationg Neural Network)神經(jīng)網(wǎng)絡(luò)求解又容易陷入局部極小值,針對上述問題,提出一種基于PSO優(yōu)化算法(Particle Swarm Optimization Algorithm)的BP神經(jīng)網(wǎng)絡(luò)機械臂逆運動學(xué)求解方法,通過PSO算法對BP神經(jīng)網(wǎng)絡(luò)的權(quán)值和閾值進(jìn)行多次迭代優(yōu)化,避免了局部最小值的問題,提高了神經(jīng)網(wǎng)絡(luò)的全局搜索能力。采用 D-H法建立機器人運動學(xué)模型,根據(jù)機器人正運動學(xué)方程由關(guān)節(jié)角度解得末端位姿,將解得結(jié)果作為數(shù)據(jù)集,通過學(xué)習(xí)算法經(jīng)多次迭代確定神經(jīng)網(wǎng)絡(luò)的模型參數(shù),并對神經(jīng)網(wǎng)絡(luò)進(jìn)行性能檢驗。實驗結(jié)果表明: PSO-BP神經(jīng)網(wǎng)絡(luò)相比于傳統(tǒng)的BP神經(jīng)網(wǎng)絡(luò)收斂速度快,該模型在搬運機器人逆運動學(xué)求解中精度高,滿足紡織車間直捻機筒紗抓取作業(yè)的需要。
關(guān)鍵詞:紡織車間;直捻機;筒紗卷繞;機械臂逆運動學(xué);PSO-BP神經(jīng)網(wǎng)絡(luò)
中圖分類號:TP242?? 文獻(xiàn)標(biāo)志碼:A? 文章編號:2097-2911-(2024)01-0021-12
Study on the Inverse Kinematic Solving Method of Grasping Mechanical Arm in Loom Workshops
YU Junkang a, JIANG Weia, b*, LI Hongjuna, CHEN Weia , CHEN Zhena, b
(Wuhan Textile University a. School of Mechanical Engineering and Automation;
b. Hubei Provincial Key Laboratory of Digital Textile Equipment, Wuhan 430200, China)
Abstract:In the textile workshop, the automatic replacement of cylindrical yarn packages on the twisting ma- chine is achieved by using a collaborative robotic arm instead of human workers. It can reduce the labor intensi- ty of workers and improve the production efficiency of winding yarn packages. In the process of modeling and analyzing the robot's motion, the solution to inverse kinematics is a critical aspect of robot kinematics. Tradition- al methods for solving the inverse kinematics of robots suffer from issues such as slow computation speed, com- plex solving processes, and poor stability of results. Utilizing the traditional Back Propagation Neural Network (BPNN) for solving also tends to get stuck in local minima. To address these challenges, this paper proposes a method for solving the inverse kinematics of a robotic arm based on the Particle Swarm Optimization Algorithm (PSO) optimized Backpropagation (BP) neural network. Through multiple iterations using the PSO algorithm, the weights and thresholds of the BP neural network are optimized, preventing it from getting stuck in local min- ima and enhancing its global search capabilities. The robot's kinematic model is established using the Denavit- Hartenberg (D-H) method, and the end-effector pose is obtained by solving joint angles through the robot's for- ward kinematic equations. The results obtained serve as a dataset, and the model parameters of the neural net- work are determined through multiple iterations using a learning algorithm, followed by performance testing. Experimental results indicate that the PSO-BP neural network converges faster compared to the traditional BP neural network. The model exhibits high precision in solving the inverse kinematics of the material handling ro- bot, meeting the requirements for yarn-grabbing operations in the textile workshop.
Keywords: loom workshop;twisting machine;winding yarn packages;inverse kinematics of the robot arm; PSO-BP neural network
中國是紡織生產(chǎn)大國,紡織技術(shù)在國民經(jīng)濟、生產(chǎn)、生活中占據(jù)重要地位。直捻機是一種重要的紡織裝備,其功能是將兩根原絲加捻后合并一起形成紗線,再對紗線進(jìn)行卷繞操作形成筒紗,最后取下直捻機上卷繞好的筒紗進(jìn)行染色。傳統(tǒng)的筒紗取放依靠人工,對于大型紡織車間,該方式效率低、勞動強度大,亟需開發(fā)一款能夠輔助甚至替換人工進(jìn)行筒紗抓取作業(yè)的智能化裝備,因此,研究開發(fā)織機車間直捻機筒紗抓取智能裝備具有重要理論意義與實際應(yīng)用價值[1-2]。利用 AGV搭載機械臂輔助甚至替換人工實現(xiàn)織機車間直捻機筒紗自動抓取是一種行之有效的手段[3-4], AGV到達(dá)作業(yè)點后,機械臂抓取筒紗過程中需要通過各關(guān)節(jié)協(xié)調(diào)運動,在固定的坐標(biāo)系中,抓取筒紗其實質(zhì)是由目標(biāo)抓取點反推機械臂各關(guān)節(jié)運動參數(shù)的過程即機械臂的逆運動學(xué)問題[5]。機器人正運動學(xué)求得的位置和姿態(tài)是唯一確定的,而逆運動學(xué)求得的各關(guān)節(jié)角度通常有多個解或有不存在解的可能,甚至?xí)霈F(xiàn)奇異解[6],因此在抓取機械臂眾多逆解中尋求一組最優(yōu)解以保證機械臂實現(xiàn)高性能抓取就顯得至關(guān)重要。
對機器人各關(guān)節(jié)求逆解是機器人運動學(xué)中重要的一步[7],傳統(tǒng)的機器人逆運動學(xué)求解有代數(shù)法、幾何法和數(shù)值解法。幾何法是根據(jù)機械臂各桿件的平面幾何關(guān)系和三角學(xué)原理求解各關(guān)節(jié)角度[8]。如盧喆等[9]中針對六自由度機器人求解復(fù)雜、幾何定義模糊等問題[10],對前3個軸線不相交的關(guān)節(jié)采用幾何法求解,后3個軸線交于一點的關(guān)節(jié)采用Paden-Kahan子問題的插值法進(jìn)行求解,但對高維、非線性的方程組求解時,存在計算效率低、難度大的問題。數(shù)值解法是通過數(shù)值逼近、差值或有限元計算來求得一組滿足運動學(xué)方程的近似解。如林貞國[11]通過對偶矩陣的方法來求逆解,但該方法求解的難度較大,計算時間長,無法得到所有解,不適于實時性要求高的場合。代數(shù)法在運算速度和精度上有了較大的提升,但推導(dǎo)過程復(fù)雜,且機器人必須滿足Piper 準(zhǔn)則[12](即六關(guān)節(jié)機器人中有三個連續(xù)關(guān)節(jié)的軸線交于一點或相互平行)才能使用該方法。人工智能的發(fā)展為機器人逆運動學(xué)求解提供了新的思路[13]。最常見的是利用BP神經(jīng)網(wǎng)絡(luò)[14]和RBF 神經(jīng)網(wǎng)絡(luò)[15]求逆解,如陳平等[16]采用權(quán)值優(yōu)化后的 RBF 神經(jīng)網(wǎng)絡(luò),來對機器人運動學(xué)求逆解。楊萍等[17]通過含有兩個隱含層的BP神經(jīng)網(wǎng)絡(luò)對機器人求逆解。但當(dāng)處理的數(shù)據(jù)較多時就會降低網(wǎng)絡(luò)的運算速度。有專家提出基于智能優(yōu)化算法提高神經(jīng)網(wǎng)絡(luò)的運算性能。如石建平[18]提出一種基于改進(jìn)的克隆選擇算法來對機械臂運動學(xué)求逆解,該方法下種群多樣性的保持能力強,能夠處理常規(guī)法無法解決的冗余機械臂逆運動學(xué)求解問題。董云等[19]將傳統(tǒng)的解析法與遺傳算法相結(jié)合,提高了全局尋優(yōu)能力使機械臂在運動過程中保持良好的穩(wěn)定性和避障性能。陳睿等[20]采用競爭的多變異策略差分進(jìn)化算法分別對局部和全局種群進(jìn)行參數(shù)標(biāo)定,提高了三自由度并聯(lián)機器人的運動精度。
綜上所述,本文提出一種PSO優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的機器人逆運動學(xué)求解方法。PSO算法是基于群體智能的優(yōu)化算法[21-22],通過群體粒子間的合作與競爭搜尋最優(yōu)解,該算法計算速度快、全局搜索能力強。通過PSO算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)權(quán)值和閾值,改善網(wǎng)絡(luò)結(jié)構(gòu),解決了BP神經(jīng)網(wǎng)絡(luò)易陷入局部極小值的問題,提高了網(wǎng)絡(luò)的泛化性能和訓(xùn)練速度。將優(yōu)化后的PSO-BP神經(jīng)網(wǎng)絡(luò)算法應(yīng)用到紡織車間筒紗裝卸六自由度機械臂上,實驗結(jié)果表明,PSO-BP 神經(jīng)網(wǎng)絡(luò)比傳統(tǒng)的 BP神經(jīng)網(wǎng)絡(luò)得到的運算結(jié)果精度更高,改進(jìn)后的神經(jīng)網(wǎng)絡(luò)輸出結(jié)果的均方根誤差為0.071,且誤差波動小,為大型織機車間多自由度機械臂逆運動學(xué)求解及作業(yè)控制提供了新的思路。
1 紡織車間協(xié)作機器人運動學(xué)建模與分析
1.1 機器人結(jié)構(gòu)與作業(yè)流程
全自動紗筒更換的智能紡織系統(tǒng)包括直捻機、協(xié)作機械臂、末端夾爪、自動牽引車(AGV)和物料箱如圖1所示,協(xié)作機械臂安裝于AGV上,該機械臂系統(tǒng)是一個6-DOF機構(gòu),各關(guān)節(jié)依次為旋轉(zhuǎn)關(guān)節(jié)、俯仰關(guān)節(jié)、俯仰關(guān)節(jié)、旋轉(zhuǎn)關(guān)節(jié)、旋轉(zhuǎn)關(guān)節(jié)、旋轉(zhuǎn)關(guān)節(jié),末端執(zhí)行器,用來抓取紗筒,以完成對直捻機或倍捻機上紗筒的更換。牽引車后搭載的物料車用來存放筒紗和空紗管。
當(dāng)直捻機某一工位的紗筒卷滿紗線時,控制終端就會向機器人發(fā)送作業(yè)指令,AGV 接收到指令后通過地磁導(dǎo)引線牽引物料車移動到待作業(yè)位置,此時的機械臂處于初始狀態(tài)。機器人到達(dá)作業(yè)位置,通過機械臂各關(guān)節(jié)的配合完成末端與筒紗的初始定位,末端夾爪取下筒紗,并放置在物料箱內(nèi),再通過各關(guān)節(jié)的配合將空紗管安放在工位上,此時已完成對一個工位上紗管的更換。AGV 繼續(xù)移動到下一個待作業(yè)工位,重復(fù)上述操作,直到完成整個車間作業(yè)為止,其完整的操作流程如圖2所示。
1.2 機械臂連桿坐標(biāo)系建立
建立筒紗抓取機械臂各關(guān)節(jié)坐標(biāo)系,如圖3所示,獲得各連桿之間的相對運動和位姿關(guān)系。通過改進(jìn)D-H法描述機械臂各連桿坐標(biāo)系之間的關(guān)系,其中各關(guān)節(jié)均繞Z軸旋轉(zhuǎn),α為坐標(biāo)系繞X軸旋轉(zhuǎn)的角度,a 為連桿長度,d 為連桿關(guān)節(jié)偏移量,θ為坐標(biāo)系繞Z軸旋轉(zhuǎn)角度。
最終,得到協(xié)作機械臂 D-H 參數(shù)表,如表1所示。
1.3 機械臂正運動學(xué)推導(dǎo)
將表1中機械臂 D-H 參數(shù)帶入相鄰桿件坐標(biāo)系的位姿變換矩陣,得到相鄰連桿之間的變換矩陣 i(i)?1T(i =1,2,3,4,5,6),如公式(1)所示。
公式(1)中:Cθ表示 cos θ , Sθ表示 sin θ。根據(jù)機器人正運動學(xué),將公式(1)相鄰桿件齊次變換矩陣依次左乘可得到機器人基坐標(biāo)與機器人末端的位姿變換,即機械臂的齊次變換矩陣如公式(2)。
公式(2)為機器人運動學(xué)正解,其中 R =[nx,ox,ax ; ny ,oy ,ay ; nz ,oz ,az]表示機器人末端執(zhí)行器的姿態(tài),P =[px,py ,pz]為機器人末端的坐標(biāo)位置,并以機器人末端的位置和姿態(tài)參數(shù)作為機械臂操作空間的數(shù)據(jù)集。按 z?y?z 軸的旋轉(zhuǎn)順序?qū)ψ藨B(tài) R 進(jìn)行歐拉變換得到偏轉(zhuǎn)角γ、俯仰角β、回轉(zhuǎn)角α , 如公式(3)所示,與 px、py、pz 組成包含6個變量的數(shù)據(jù)集,作為 BP 神經(jīng)網(wǎng)絡(luò)的輸入量,經(jīng)神經(jīng)網(wǎng)絡(luò)模型的運算得到機械臂各關(guān)節(jié)的角度θi (i =1, 2, 3, 4, 5, 6)。
α= ATAN2(ay , ax)
β= ATAN2(ax cos α+ ay sin α, az)? (3)
γ= ATAN2(-nx sin α+ ny cos α, oy cos α-ox sin α)
公式(3)中ATAN2表示反正切函數(shù),完整形式為:ATAN2(sin,cos),括號內(nèi)依次為角度的正弦值和余弦值。
2 織機車間機械臂BP神經(jīng)網(wǎng)絡(luò)逆解求解方法
2.1 BP神經(jīng)網(wǎng)絡(luò)基本原理
BP神經(jīng)網(wǎng)絡(luò)是一種根據(jù)誤差信號反向傳播和BP算法訓(xùn)練的多層前饋型神經(jīng)網(wǎng)絡(luò),具有良好的非線性擬合能力,可應(yīng)用于多輸入多輸出的非線性系統(tǒng)。該網(wǎng)絡(luò)結(jié)構(gòu)由三層區(qū)域組成,各區(qū)域均含有多個神經(jīng)元,每個神經(jīng)元可將外部輸入或上一神經(jīng)元的輸出作為該神經(jīng)元的輸入信號,不同的輸入信號經(jīng)過加權(quán)處理后進(jìn)行累加,通過激活函數(shù)得到輸出信號[23]。單個神經(jīng)元如圖4所示,X1至Xn 為該神經(jīng)元的輸入分量,Wi1至 Win 為各輸入的權(quán)重,ui 為該神經(jīng)元的組合輸入,即:ui =∑j(n)=1xj wij ,組合輸入ui 與閾值bi 計算后得到輸出 vi ,即:vi = ui + bi ,將 vi 通過激活函數(shù)f(·)進(jìn)行處理可得到最終的神經(jīng)元輸出 Yi。
BP 神經(jīng)網(wǎng)絡(luò)反向傳播分為:工作信號的正向傳遞和誤差信號的反向傳遞。其中誤差的反向傳遞是 BP 神經(jīng)網(wǎng)絡(luò)的核心[24],主要原理是采用梯度下降法即沿著實際輸出與期望結(jié)果之差的平方和減小最快的方向,經(jīng)多次迭代對網(wǎng)絡(luò)的權(quán)值和閾值進(jìn)行優(yōu)化,直至實際值與理想值的誤差最小或達(dá)到最大迭代次數(shù)時,訓(xùn)練結(jié)束后,輸出模型參數(shù),得到最終的神經(jīng)網(wǎng)絡(luò)模型。
2.2 BP 網(wǎng)絡(luò)結(jié)構(gòu)的設(shè)計
良好的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)保證了運算結(jié)果的準(zhǔn)確性。針對本文中六自由度機械臂,根據(jù)BP神經(jīng)網(wǎng)絡(luò)的基本結(jié)構(gòu)特點,設(shè)計了6輸入、6輸出的三層神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)如圖5所示,三層區(qū)域分別為輸入層、隱藏層、輸出層,6個輸入節(jié)點分別對應(yīng)機械臂末端姿態(tài)參數(shù)γ、β、α和位置參數(shù) px、py、pz ,輸出層的6個輸出節(jié)點分別對應(yīng)機械臂6個關(guān)節(jié)變量即θ1、θ2、θ3、θ4、θ5、θ6。
根據(jù)公式(4)確定合適的隱藏層節(jié)個數(shù)的取值范圍,其中,h表示隱含層節(jié)點數(shù),m表示輸入層節(jié)點數(shù),l表示輸出層節(jié)點數(shù),α取1~10之間的常數(shù)。通過公式可選取3~13個隱藏層節(jié)點,根據(jù)黃金分割原理不斷縮小取值區(qū)間,直到神經(jīng)網(wǎng)絡(luò)的輸出更加逼近真實值時,最終選取11個節(jié)點單個隱藏層的神經(jīng)網(wǎng)絡(luò)。
2.3 基于PSO算法的BP神經(jīng)網(wǎng)絡(luò)設(shè)計及改進(jìn)
BP算法的實質(zhì)是以梯度下降法求誤差函數(shù)的最小值,即通過修正權(quán)值和閾值使輸出結(jié)果的誤差在期望誤差范圍內(nèi)。考慮到初始權(quán)值和閾值的選取對BP神經(jīng)網(wǎng)絡(luò)性能影響較大和易陷入局部極小值的問題,影響神經(jīng)網(wǎng)絡(luò)的性能和準(zhǔn)確性[25],可通過啟發(fā)式算法和基于數(shù)值最優(yōu)化理論的訓(xùn)練算法來對BP神經(jīng)網(wǎng)絡(luò)進(jìn)行優(yōu)化。神經(jīng)網(wǎng)絡(luò)的輸入向量為 xm (m=1~6),輸出向量為 yn (n=1~6),隱藏層輸入向量為 Hi 、輸出向量 Ho 。機械臂末端位姿參數(shù)輸入到輸入層,待輸入到隱藏層的數(shù)據(jù)經(jīng)過加權(quán)處理,如公式(5),將隱藏層輸入向量代入 sigmoid 激活函數(shù)解得隱藏層輸出向量,如公式(6)。同樣的方法得到輸出層輸入向量yi 和輸出層輸出向量yo,如公式(7),(8)。
上述公式中 H k)表示第k代樣本數(shù)據(jù)輸入到第j個隱藏層節(jié)點所得到的隱藏層輸入向量,H )為對應(yīng)的隱藏層輸出向量,其中j=1~11,ωmj 為輸入層 m 節(jié)點與隱藏層j 節(jié)點間的連接權(quán)值,bj 表示隱藏層j節(jié)點的閾值,xm 為輸入層m節(jié)點的輸入向量。 y n(k))表示 H )輸入到輸出層n節(jié)點所得到輸出層輸入向量,y 為輸出層n節(jié)點的輸出向量,其中 n=1~6,ωjn 為隱藏層j 節(jié)點與輸出層n節(jié)點之間連接的權(quán)值,bn 表示輸出層n節(jié)點的閾值。將輸出層的實際值與理想值做差,得到均方差損失函數(shù)Loss,如公式(9)。
公式中 d )為第k次迭代在輸出層n節(jié)點的理想輸出值。誤差函數(shù) Loss 分別對誤差函數(shù) Loss的隱藏層與輸出層間的權(quán)值和輸入層與隱藏層間的權(quán)值求偏導(dǎo)得到公式(10)。
定義δ )為(d k)- y ))?f'(y nk )),δ k)為 k)?ωjn ?f'(H k)),d )表示輸出層n節(jié)點的理想輸出值,學(xué)習(xí)率μ取0.5。通過調(diào)節(jié)δ k)、δ k)來修正各層之間連接的權(quán)值ωjn 、ωmj 和閾值 bn 、 bj ,使實際輸出更接近理想值,如公式(11)。
計算參數(shù)修正后神經(jīng)網(wǎng)絡(luò)的實際輸出值,代入公式(9)得到神經(jīng)網(wǎng)絡(luò)的輸出誤差,當(dāng)所有誤差值在理想范圍內(nèi),運算結(jié)束,得到最終的神經(jīng)網(wǎng)絡(luò)模型,否則繼續(xù)沿著誤差平方和減小的方向修正權(quán)值和閾值直到輸出的誤差在理想范圍內(nèi)。
采用粒子群優(yōu)化算法(PSO)對BP神經(jīng)網(wǎng)絡(luò)進(jìn)行對神經(jīng)網(wǎng)絡(luò)的權(quán)值和閾值進(jìn)行初始化操作,以提高BP神經(jīng)網(wǎng)絡(luò)的全局尋優(yōu)能力。系統(tǒng)中的隨機粒子在搜索空間中經(jīng)適應(yīng)度函數(shù)計算和多次迭代來尋找最優(yōu)解。假設(shè)在D維空間內(nèi),設(shè)置種群規(guī)模N=50,最大迭代次數(shù)T=220??臻g中的粒子根據(jù)局部最優(yōu)解和全局最優(yōu)解來更新自己的速度和位置,如公式(12)。
公式中:v k)(t)和 x k)(t)分別表示 t 時刻粒子j在k維上的速度和位置。ω為慣性權(quán)重,值越大表示粒子種群收斂速度越快,全局尋優(yōu)能力越強,一般在0~1之間內(nèi)取值。 pb 為粒子本身的歷史最優(yōu)解,gb 為整個種群中粒子的歷史最優(yōu)解。根據(jù)標(biāo)準(zhǔn)PSO算法的參數(shù)設(shè)置要求,保證全局搜索和局部搜索的能力相等,現(xiàn)令加速度常數(shù) c1= c2=2。 rand(0, 1)表示0~1的隨機數(shù)。將實際輸出均方根誤差定義為適應(yīng)度函數(shù),如公式(13)。
2.4 織機車間抓取機械臂神經(jīng)網(wǎng)絡(luò)逆解求解
基于筒紗抓取六自由度機械臂的結(jié)構(gòu)特點,設(shè)計了六輸入、六輸出的PSO-BP三層結(jié)構(gòu)的神經(jīng)網(wǎng)絡(luò)模型。輸入變量X=[γ,β, α,px,py ,pz ]包含機械臂末端的位置和姿態(tài),輸出向量 Y=[θ1,θ2 ,θ3, θ4 , θ5, θ6]為機械臂各關(guān)節(jié)的角度值。對神經(jīng)網(wǎng)絡(luò)進(jìn)行離線訓(xùn)練和在線運行,以提高神經(jīng)網(wǎng)絡(luò)模型的泛化能力和性能。離線訓(xùn)練是將網(wǎng)絡(luò)的輸入值和對應(yīng)的輸出值作為數(shù)據(jù)集,輸入到PSO-BP 神經(jīng)網(wǎng)絡(luò)中,經(jīng)PSO算法對網(wǎng)絡(luò)權(quán)值、閾值的優(yōu)化和BP算法對誤差的反向傳播以縮小實際輸出與理想值之間的偏差。在線運行階段,將機械臂末端的位姿參數(shù)輸入到神經(jīng)網(wǎng)絡(luò)模型得到實時的機械臂逆解即各關(guān)節(jié)角度大小。
根據(jù)實際作業(yè)要求確定各關(guān)節(jié)轉(zhuǎn)角范圍,如表(2),通過 MATLAB Robotic 工具箱完成對機器人正運動學(xué)求解。在關(guān)節(jié)變量的取值范圍內(nèi)隨機抽取1100組關(guān)節(jié)角度值,經(jīng)公式(2)求解機器人正運動學(xué),通過公式(3)解得機械臂末端的姿態(tài)角,得到機械臂的輸入數(shù)據(jù)集,在MATLAB 環(huán)境下對神經(jīng)網(wǎng)絡(luò)模型進(jìn)行訓(xùn)練,確定關(guān)鍵參數(shù)。圖6為PSO-BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練流程圖。
3 仿真與實驗分析
3.1 仿真實驗
在 MATLAB 環(huán)境下根據(jù)機器人正運動學(xué)解得機械臂末端的位姿參數(shù)(γ、β、α、px、py、pz ),與各關(guān)節(jié)角度組成含有12個參數(shù)的1100組數(shù)據(jù)的數(shù)據(jù)集(γ、β、α、px、py、pz 、θ1、θ2、θ3、θ4、θ5、θ6),其中前6個參數(shù)為神經(jīng)網(wǎng)絡(luò)的輸入量,后6個參數(shù)為輸出量。將所有數(shù)據(jù)記錄到表格中,表中每一列對應(yīng)不同的參數(shù),隨機抽取1000組為訓(xùn)練集,余下的100組為測試集。測試集的位姿參數(shù)分別經(jīng)過粒子群優(yōu)化前后的BP神經(jīng)網(wǎng)絡(luò)運算,分別得到對應(yīng)的實際輸出值,繪制實際輸出與理想輸出的折線圖,如圖7,圖8。觀察圖像,相比于圖7,圖8中神經(jīng)網(wǎng)絡(luò)的實際輸出與理想值的擬合程度較高。整體上看,PSO- BP神經(jīng)網(wǎng)絡(luò)輸出值更加接近理想值,相比于傳統(tǒng)的BP神經(jīng)網(wǎng)絡(luò),經(jīng)過粒子群優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)具有更準(zhǔn)確的預(yù)測能力。
提取神經(jīng)網(wǎng)絡(luò)對關(guān)節(jié)1的預(yù)測情況,如表3所示,分析PSO算法對BP神經(jīng)網(wǎng)絡(luò)預(yù)測性能的影響。其中BP神經(jīng)網(wǎng)絡(luò)對關(guān)節(jié)1的最大輸出誤差為0.386,均方根誤差為0.139,PSO-BP神經(jīng)網(wǎng)絡(luò)對關(guān)節(jié)1的最大輸出誤差為0.199,均方根誤差為0.071。經(jīng)粒子群優(yōu)化的 BP 神經(jīng)網(wǎng)絡(luò)最大輸出誤差和均方根誤差都小于傳統(tǒng)BP神經(jīng)網(wǎng)絡(luò)的輸出誤差。分析圖9測試集中的100個樣本誤差,可知PSO-BP的輸出的誤差波動幅度較小,且均在誤差范圍內(nèi)。
分析BP神經(jīng)網(wǎng)絡(luò)在粒子群算法優(yōu)化前后的收斂性能,在相同的實驗條件及相關(guān)參數(shù)下進(jìn)行對比,得到BP神經(jīng)網(wǎng)絡(luò)和PSO-BP神經(jīng)網(wǎng)絡(luò)迭代收斂變化趨勢,如圖10。傳統(tǒng)的BP神經(jīng)網(wǎng)絡(luò)經(jīng)16次迭代后適應(yīng)度函數(shù)達(dá)到最小值為1.015,而PSO-BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練迭代到第8次后的適應(yīng)度值達(dá)到最小值為0.920。通過圖10,傳統(tǒng)的BP神經(jīng)網(wǎng)絡(luò)收斂速度較慢,全局的尋優(yōu)能力較弱,而經(jīng)過粒子群優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)在計算精度和收斂速度上都有了一定的提高,滿足筒紗抓取中對機械臂的逆運動學(xué)求解和對機械臂的實時定位控制。
4 結(jié)論
(1)提出了一種紡織車間加捻機筒紗自動抓取的智能化解決方案,通過AGV上搭載了六自由度機械臂,其末端能夠到達(dá)作業(yè)空間的任意位置,末端夾爪可對筒紗進(jìn)行抓取,能夠?qū)崿F(xiàn)對直捻機上紗管的更換任務(wù)。
(2)通過分析六自由度機械臂的結(jié)構(gòu)和機械臂末端的位移參數(shù),利用粒子群優(yōu)化算法,提出了一種6輸入6輸出的PSO-BP神經(jīng)網(wǎng)絡(luò)來對直捻機筒紗抓取機械臂求逆解。該方法能夠處理高維問題和各關(guān)節(jié)間的強耦合關(guān)系,并且 PSO- BP 神經(jīng)網(wǎng)絡(luò)較強的泛化能力使其能夠處理復(fù)雜的、非線性的六自由度機械臂逆運動學(xué)問題。
(3)在MATLAB環(huán)境下實現(xiàn)了BP神經(jīng)網(wǎng)絡(luò)對機器人逆運動學(xué)求解,通過仿真實驗對比粒子群優(yōu)化算法對BP神經(jīng)網(wǎng)絡(luò)性能的影響可知,相比于傳統(tǒng)BP神經(jīng)網(wǎng)絡(luò),PSO-BP神經(jīng)網(wǎng)絡(luò)在機器人逆運動學(xué)求解中的精度更高、求解速度更快。
參考文獻(xiàn):
[1]龔闖,戴程浩,江維,等.基于改進(jìn)A*算法的大型織機車間運載機器人路徑規(guī)劃[J].紡織工程學(xué)報,2023, 1(2):57-67.
GONG Chuang, DAI Chenghao, JIANG Wei, et al. Path planning of transport robot in large loom workshop based on improved A* algorithm[J].Journal of Advanced Textile Engineering, 2023, 1(2):57-67.
[2]鄒亮,吳曉,袁勤政.一種自動循跡 AGV 平臺機械結(jié)構(gòu)設(shè)計及力學(xué)分析[J].武漢紡織大學(xué)學(xué)報,2023, 36(5):53-57.
ZOU Liang, WU Xiao, YUAN Qinzheng. Mechan- ical structure design and mechanical analysis of an automatic tracking AGV platform[J]. Journal of Wuhan Textile University,2023, 36(5):53-57.
[3]陳家浩,龐愛民,李浩,等.倉儲立體庫紗錠智能配重打包方法研究[J].武漢紡織大學(xué)學(xué)報,2022, 35(5):46-50.
CHAN Jiahao, PANG Aimin, LI Hao, et al. Re- search on the method of intelligent weighing and packing for three-dimensional warehouse[J]. Jour- nal of Wuhan Textile University, 2022, 35(5):46-50.
[4]李進(jìn),方楚橋,王紹祥,吳曉.自動穿經(jīng)機上軸車改造設(shè)計[J].紡織工程學(xué)報,2023,1(2):90-96.
LI Jin, FANG Chuqiao, WANG Shaoxiang, WU Xiao. Reconstruction design of upper axle trolley of automatic drawing- in machine[J]. Journal of Wuhan Textile University, 2023, 1(2):90-96.
[5]SARIYILDIZ E, CAKIRAY E, TEMELTAS H. A comparative study of three inverse kinematic methods of serial industrial robot manipulators in the screw theory framework[J]. International Jour- nal of Advanced Robotic Systems, 2011, 8(5):9-24.
[6]李憲華, 盛蕊, 張雷剛, 等.六自由度模塊化機器人手臂奇異構(gòu)型分析[J].農(nóng)業(yè)機械學(xué)報, 2017, 48(7):376-382.
LI Xianhua, SHENG Rui, ZHANG Leigang, et al. Singular configuration analysis of 6-DOF modular manipulator[J]. Transactions of the Chinese Soci- ety for Agriculture Machinery, 2017, 48(7):376-382.
[7]姜宏超, 劉士榮, 張波濤.六自由度模塊化機械臂的逆運動學(xué)分析[J].浙江大學(xué)學(xué)報(工學(xué)版), 2010, 44(7):1348-1354.
JIANG Hongchao, LIU Shirong, ZHANG Botao. Inverse kinematics analysis for 6 degree-of-free- dom modular manipulator[J]. Journal of Zhejiang University(Engineering Science), 2010, 44(7):1348-1354.
[8]TATUM R, LUCAS D, WEAVER J, et al. Geomet- rically motivated inverse kinematics for an arm with 7 degrees of freedom[C]//IEEE.Proceeding of OCEANS 2015- MTS /IEEE.Washington: IEEE, 2015:1-6.
[9]盧喆, 鄭松.基于幾何法和旋量理論的6自由度機器人逆解算法[J].機械傳動, 2017, 41(6):111-114.
LU Zhe, ZHENG Song. Inverse kinematics algo- rithm of 6-DOF robots based on geometric meth- od and screw theory[J]. Journal of Mechanical Transmission, 2017, 41(6):111-114.
[10]王國勛, 舒啟林, 王軍.基于旋量理論的6R工業(yè)機器人運動學(xué)建模與分析[J].機床與液壓, 2018, 46(23):35-42.
WANG Guoxun, SHU Qilin, WANG Jun. Kine- matics modelling and analysis for 6R industrial robot based on screw theory[J]. Hydromechatron- ics Engineering, 2018, 46(23):35-42.
[11]林貞國.挖掘機器人軌跡規(guī)劃與仿真研究[D].太原:太原科技大學(xué), 2017.
LIN Zhenguo, Research on trajectory planning simulation of excavator robot[D]. Taiyuan:Taiyu-an University of Science and Technology, 2017.
[12]PAUL R P, SHIMANO B, MAYER G. Differen- tial kinematics control equations for simple ma- nipulators[J]. IEEE Transactions on Systems,Man and Cybernetics, 1981, 11(6):456-460.
[13]BIDOKHDI H S, ENFERADI J. Direct kinemat-ics solution of 3-R R R robot by using two differ- ent artificial neural networks[C]//IEEE. Proceed- ings of 20153rd RSI International Conference on Robotics and Mechatronics (IC ROM). Teh- ran: IEEE, 2015.
[14]陳睿, 閔華松.基于BP和RBF神經(jīng)網(wǎng)絡(luò)的機器人逆運動學(xué)算法[J].機床與液壓, 2019, 47(23):22-27.
CHEN Rui,MIN Huasong. Inverse kinematics al- gorithm of robot based on BP and RBF neural networks[J]. Hydromechatronics Engineering, 2019, 47(23):22-27.
[15]董慧芬, 高爽笑, 宋金海.基于徑向基神經(jīng)網(wǎng)絡(luò)的Delta機器人位置精度補償[J].科學(xué)技術(shù)與工程, 2020, 20(31):12883-12889.
DONG Huifen, GAO Shuangxiao, SONG Jinhai. Position accuracy compensation of delta robot Based on RBF neural network composites[J]. Sci- ence Technology and Engineering, 2020, 20(31):12883-12889.
[16]陳平, 劉國海.基于 RBF 神經(jīng)網(wǎng)絡(luò)的 MOTO- MAN-UPJ 型機器人運動學(xué)逆解[J].機床與液壓, 2006(12):72-74.
CHEN Ping, LIU Guohai. A method for solving inverse kinematics of MOTOMAN-UPJ manipu- lator based on RBF network[J]. Hydromechatron- ics Engineering, 2006(12):72-74.
[17]楊萍, 劉曉琴, 張淑珍.基于BP網(wǎng)絡(luò)的水輪機修復(fù)專用機器人運動學(xué)逆解分析[J].機械設(shè)計, 2005(6):36-38.
YANG Ping, LIU Xiaoqin, ZHANG Shuzhen. In- verse kinematic solution analysis of a special ro- bot for hydraulic turbine repair based on BP net- work[J]. Mechanical Design, 2005(6):36-38.
[18]石建平, 李培生, 劉國平, 等.基于改進(jìn)克隆選擇算法的機械臂運動學(xué)逆解[J].計算機集成制造系統(tǒng), 2021, 27(10):2929-2939.
SHI Jianping, LI Peisheng, LIU Guoping, LIU Peng. Inverse kinematics of manipulator based on improved clonal selection algorithm[J]. Com- puter- Integrated Manufacturing Systems, 2021,27(10):2929-2939.
[19]董云, 楊濤, 李文.基于解析法和遺傳算法的機械手運動學(xué)逆解[J].計算機仿真, 2012, 29(3):239-243.
DONG Yun, YANG Tao, LI Wen. Algorithm based on analytical method and genetic algo- rithm for inverse kinematics of redundant manip- ulator[J]. Computer Simulation. 2012, 29(3):239-243.
[20]陳睿, 閔華松.基于BP和RBF神經(jīng)網(wǎng)絡(luò)的機器人逆運動學(xué)算法[J].機床與液壓, 2019, 47(23):22-27.
CHEN Rui, MIN Huasong. Inverse kinematics al- gorithm of robot based on BP and RBF neural networks[J]. Hydromechatronics Engineering, 2019, 47(23):22-27.
[21]BEHNAMIAN J, GHOMI S M T F. Develop- ment of a PSO- SA hybrid metaheuristic for a new comprehensive regression model to time-se- ries forecasting[J]. Expert Systems with Applica- tions, 2010, 37(2):974-984.
[22]EBERHART R C, SHI Y. Comparing inertia weights and constriction factors in conference particle swarm optimiation[C]//IEEE. Congresson Evolutionary Computation. Piscataway, IEEE, 2000:84-88.
[23]BIDOKHTI H S, ENFERADI J. Direct kinemat- ics solution of 3-R R R robot by using two differ- ent artificial neural networks[C]//IEEE. Proceed- ings of 20153rd RSI International Conference on Robotics and Mechatronics (IC ROM). Teh- ran: IEEE, 2015.
[24]芮宏斌, 曹偉, 孫寧寧.基于BP神經(jīng)網(wǎng)絡(luò)的光伏陣列清潔機械臂逆運動學(xué)分析與時間最短運動規(guī)劃[J].太陽能學(xué)報, 2022, 43(10):43-51.
RUI Hongbin, CAO Wei, SUN Ningning. In- verse kinematics analysis and tine opimal motion planning of photovoltaic array cleaning manipu- latory based on BP neural neteork[J]. Acta Ener- giae Solaris Sinica, 2022, 43(10):43-51.
[25]周帥, 劉曉鳴.基于神經(jīng)網(wǎng)絡(luò)的工業(yè)機器人力控制研究[J].機床與液壓, 2023, 51(17):21-25.
ZHOU Shuai, LIU Xiaoming. Research on force control of industrial robot based on neural net- work[J]. Hydromechatronics Engineering, 2023, 51(17):21-25.
(責(zé)任編輯:孫婷)