徐慶增,楊世鳳,楊美艷
(天津科技大學a.計算機科學與信息工程學院;b.電子信息與自動化學院,天津 300222)
?
采摘機械手離線軌跡智能優化
——基于改進差分進化算法
徐慶增a,楊世鳳b,楊美艷b
(天津科技大學a.計算機科學與信息工程學院;b.電子信息與自動化學院,天津 300222)
為了提高采摘機械手的采摘效率和軌跡的控制精度,設計了一種新的基于離散編程和改進差分進化算法控制的機械手,提高了機械手的作業效率和對復雜環境的適應能力。由于農業作業環境的復雜性,采用離散編程技術可以得到更好的效益,據此重點對離散編程系統進行了開發,使用SolidWorks軟件建立了機器人機械手的三維仿真模型,并利用VB軟件實現了SolidWorks庫的引用和二次開發,利用VB代碼將改進差分進化算法嵌入到了機械手離線編程控制系統中。最后,通過仿真計算得到了不同算法下機械手軌跡控制的計算精度和效率,得到了機械手位置圓弧軌跡,并輸出了機械手位置和速度隨時間變化的曲線。實驗結果表明:改進差分算法可以較好地實現機械手的離線軌跡優化,機械手運動的穩定性較好。
采摘機械手;差分進化;離散編程;軌跡控制;自適應
隨著社會的發展和人口的增長,農產品的需求也不斷增加,傳統的作業方式使農業的產能已經達到極限,在這種背景下,產生了新型農業。在新型農業技術中,機器人扮演了重要的角色。農業生產實踐證明:機器人的應用可大幅度提高農業生產效率,緩解農業勞動力不足帶來的壓力;同時,可以使農業生產者遠離高溫和農藥等惡劣的作業環境,作業的質量和成功率都比較高。機器人的離線編程技術是不對機器人的實際操作進行示教,而是在虛擬環境下經仿真調試、通過可行性驗證后,將結果直接生成控制代碼。離線編程可以降低機器人現場調試的時間,降低使用成本,提高機器人的作業效率,對于采摘機器人復雜運動軌跡規劃和碰撞干涉檢查等具有重要的意義。
在21世紀,要實現農業的可持續發展,需要依賴于精確農業技術的不斷進步,因而發達國家普遍性的加大了對精確農業技術的投入力度,開發智能化的機器人以組建精確農業體系。特別是歐美和日本等發達國家,在國家財政和科學技術的支持下,涌現出了各式各樣的農業機器人,但采用離線編程技術的農業機器人研究的還比較少。圖1為英國Silsoe Technology公司開發的離線編程蘑菇采摘機器人作業過程的場景圖。

圖1 蘑菇采摘離線編程機器人
機器人主要由4部分組成,包括機器視覺部分、機械臂、執行末端和傳送帶。機械包括了2個移動關節和旋轉關節,移動關節采用氣缸驅動,旋轉關節采用步進電機驅動。作業時,執行末端將吸盤降低至收獲位置,吸住蘑菇后旋轉180°,彎曲后將蘑菇成功摘下。為了實現機械手的準確定位,需要對機械手關節位姿與末端位姿的軌跡進行優化。關節和末端的位姿示意如圖2所示。
采摘機器人機械手關節位姿和末端位姿的軌跡優化可以利用運動學逆解來實現。其逆解原理是:在機器人末端達到空間位姿的情況下,求出關節控制變量,從而控制各個機構的運動,實現軌跡的跟蹤和規劃。

圖2 關節位姿與末端位姿

圖3 關節空間與操作空間映射關系
雖然關節變量都可以找到一組位姿與之相對應,但是對于一個末端的位姿可能存在不同的關節變量,如圖3所示。機器人從關節空間到末端是單映射,從末端到關節空間是復映射,根據機器人末端的位姿,可以得到多組解,需要根據一定的算法對多組解進行優化。
本文主要利用六自由度并聯機器人運動學反解相對容易求解的特點,采用其運動學反解的結果來逼近運動學正解,然后采用改進的自適應差分進化算法來求解六自由度并聯機器人運動學正解,其流程如圖4所示。
其流程主要由4個步驟組成,包括算法的初始化、適應度函數的確定、進化操作和邊界條件的處理。
1)算法的初始化。為了照顧種群的多樣性,本研究在六自由度采摘機器人工作空間上,采用統一的概率分布,從而可以均勻地分布在解空間內。其中,染色體采用實數編碼的形式,每個個體的染色體生成為
Vjk=lowjk+rand×(highjk-lowjk),

(1)
其中,highjk為遺傳基因染色體的上限;lowjk為遺傳基因染色體的下限;rand為在區間[0,1]內的隨機數;D為遺傳的代數;NP為種群中個體的個數。
2)適應度函數的確定。整個差分進化前進方向的依據是適應度函數,利用機器人運動學正解模型,將差分算法隨機生成平臺運動的正解和機器人實際運動位姿計算出來的絕對值作為自適應差分算法的適應度函數。假設VjG表示要優化的參數,則其表達式為
VjG=(vj1G,vj2G,…,vjkG,…vjnG)=(xρ,yρ,zρ,αρ,βρ,yρ)T
(2)
其中,xρ、yρ、zρ分別為位置坐標;αρ、βρ、γρ為角度坐標,j=1,2,3,...NP,k=1,2,3...,D。假設lp=(xρ,yρ,zρ,αρ,βρ,γρ)T,li=(xi,yi,zi,αi,βi,γi)T,則
(3)
3)進化操作。首先計算每個個體對應的交叉概率和變異率分別為CR和F,然后按照DE/rand/1的測量計算每個新個體,可以得到
Wij=Vr1G+F(Vr2G-Vr3G)
(4)
其中,r1≠r2≠r3≠j為[1,NP]內的隨機整數;新的個體W是從V中隨機生成的,但是和V沒有關系。
4)邊界處理。當子代種群存在超過實際機器人運動范圍染色體和基因時,需要對染色體進行修正,其公式為
(5)

本研究以六自由度的采摘機器人作為研究對象。該機器人主要是為了完成番茄采摘而設計,為了滿足采摘的基本設計需求,其機械手的結構主要由回轉體、大臂、小臂、腕部和手爪等組成。
圖5為采摘機器人模型。本文主要是對其機械手進行建模,并利用編程的方式引入自適應差分算法,建模軟件采用SolidWorks,機械手采用了1個移動副和3個轉動副。每個關節都具有零位和正負向的限位開關。其中,控制電機使用編碼器編程設計,從而構成了閉環反饋伺服系統。

圖4 基于自適應差分進化的機械手優化流程圖

圖5 果蔬采摘機器人模型
為了引入自適應差分算法,利用VB編程軟件對SolidWorks進行了二次開發,從而縮短了開發周期,提高了代碼的開發效率。在VB軟件中引用SolidWorks類庫,將VB程序與SolidWorks軟件接口進行連接,其仿真的主要流程如圖6所示。
圖6中,利用SolidWorks的API接口,可以使用VB編程對采摘機械手進行控制。其基本步驟如下:
1)首先在VB軟件里創建ActiveX DLL工程;
2)在創建的工程中添加SolidWorks引用庫,從而實現SolidWorks對象和屬性的操作;
3)根據機械手所要實現的功能,設計好對應的編程,并將相應的算法插入到SolidWorks系統中;
4)對各個窗體的界面進行編輯,實現窗體的模塊功能;
5)生成*.dll文件并注冊,將算法集成到SolidWorks中;
6)在SolidWorks環境中使用該算法。

圖6 SolidWorks 二次開發流程圖
為了驗證本文改進的算法的性能,將差分進化算法和遺傳算法及差分算法進行了比較。其中,遺傳算法使用的種群規模NP=200,變異概率為Pm=0.2,交叉概率為Pc=0.8,將最大的進化次數設置為Nmax=1000。通過計算,得到了如表1所示的計算結果。

表1 機器人正解結果統計
表1中,把進化收斂精度設置為0.1后,使用遺傳算法僅在5步后便可得到最優解,但是成功率較低,僅為15%。利用差分算法和自適應差分進化算法在28步后可得到最優解,但是常規差分算法平均需要415.6步才能收斂,而自適應差分進化算法僅需要212.8步便可收斂,計算速度較快,收斂精度較高。

圖7 圓弧插補仿真結果
圖7表示圓弧插補的仿真結果圖。利用編程的方法可以實現直線和圓弧軌跡的規劃。當采摘機器人和果實沒有障礙物阻擋時,使用直線規劃便可以對果實進行抓取;當有障礙物遮擋時,則需要進行圓弧軌跡規劃,確保采摘機械手可以順利躲避障礙物,實現果實的準確抓取。
通過仿真模擬計算,得到的機械手關鍵位置隨時間變化曲線,如圖8所示。由圖8可以看出:使用自適應差分進化算法得到的關節軌跡是連續的。這說明,電機運行比較平穩,沒有出現較大的突變,無沖擊現象。
機械手的速度輸出曲線如圖9表示。由圖9可以看出:使用自適應差分進化算法得到的速度是連續的,沒有產生較大的突變,提高了機械手動作的穩定性,滿足高精度采摘機械手的設計需求。

圖8 關鍵位置輸出曲線

圖9 機械手速度輸出曲線
針對農業作業環境的復雜性,設計了采摘機器人機械手的離散編程系統;采用SolidWorks軟件建立了機器人機械手的三維仿真模型,并利用VB對SolidWorks進行了二次開發;最后通過仿真計算,得到了機械手位置圓弧軌跡,繪制了機械手位置和速度隨時間變化的曲線。仿真結果表明:使用自適應差分進化算法得到的位姿和速度是連續的,沒有產生較大的突變,提高了機械手動作的穩定性。但是,機器人離線編程系統開發是一項系統工程,涉及機械、計算機、自動化多個領域,存在很多需要解決的問題。由于時間和水平的限制,還存在許多不足之處,需要在下一步的研究工作中進行完善。
[1] 陳運鵬,龍慧,劉志杰.我國施肥技術與施肥機械的研究現狀及對策[J].農機化研究,2015,37(4):255-260.
[2] 姬江濤,鄭治華,杜蒙蒙.農業機器人的發展現狀及趨勢[J].農機化研究,2014,36(12):1-4.
[3] 喬永亮,何東鍵,趙川源,等.基于多光譜圖像和SVM的玉米田間雜草識別[J].農機化研究,2013,35(8):30-34.
[4] 姬長英,周俊.農業機械導航技術發展分析[J].農業機械學報,2014,45(9):44-54.
[5] 孟慶寬,何潔,仇瑞承,等.基于機器視覺的自然環境下作物行識別與導航線提取[J].光學學報,2014,34 (7):1-7.
[6] 劉金龍,鄭澤鋒,丁為民,等.對靶噴霧紅外探測器的設計與探測距離測試[J].江蘇農業科學,2013,41 (7):368-370.
[7] 焦恩璋,陳美宏.工業機器人離線編程研究[J]. 裝備制造技術,2009(10):18-19.
[8] 紀超,馮青春,李偉.溫室黃瓜采摘機器人系統研制及性能分析[J].機器人,2011, 33(6): 725-730.
[9] 毛可駿,周平,趙勻.基于機器視覺的自主插秧機導航信息的提取研究[J].農機化研究,2009,31(6):63-66.
[10] 劉繼展,李萍萍,李智國.番茄采摘機器人末端執行器的硬件設計[J].農業機械學報,2008, 39(3):109-112.
[11] 高峰,李艷,見浪護.基于遺傳算法的農業移動機器人視覺導航方法[J].農業機械學報,2008,39(6):127-131.
[12] 劉金龍,丁為民,鄧巍.果園對靶噴霧紅外探測系統的設計與試驗[J].江蘇農業科學,2012,40(12):370-372.
[13] 李麗,李恒,何雄奎.紅外靶標自動探測器的研制及試驗[J].農業工程學報,2012,28(12):159-162.
[14] 裴文超,陳樹人,尹東富.基于DSP和單片機的實時對靶噴施除草系統[J].農機化研究,2012,34(1):149-153.
[15] 張俊雄,馬锃宏,李偉,等.基于土壤基質的播種精度檢測試驗研究[J].農業機械學報,2012,43(12):62-66.
[16] 馬锃宏,李南,王漢斌,等.溫室株間電驅鋤草控制系統設計與試驗[J].農業機械學報,2015,46(1):89-93.
[17] 張二鵬,馬锃宏,耿長興,等.溫室懸掛噴施機跨壟作業控制系統設計[J].中國農業大學學報,2013,18(6): 170-174.
[18] 馬锃宏,李南,李濤,等.缽體苗帶式供苗移栽機的設計與試驗[J].中國農業大學學報,2015,20(3):216-222.
[19] 張春龍,黃小龍,劉衛東,等.苗間鋤草機器人信息獲取方法的研究[J].農業工程學報,2012,28(9):142-146.
[20] 胡煉,羅錫文,曾山,等.基于機器視覺的株間機械除草裝置的作物識別與定位方法[J].農業工程學報,2013,29(10):12-18.
[21] 朱鳳武,于豐華,鄒麗娜,等.農業機器人研究現狀及發展趨勢[J].農業工程,2013,3(6):10-13.
[22] 吳巖,杜立宇,高明和,等.農業面源污染現狀及其防治措施[J].農業環境與發展,2011(1):64-67.
Intelligent Optimization of Off-line Trajectory of Picking Robot—Based on Improved Differential Evolution Algorithm
Xu Qingzenga,Yang Shifengb, Yang Meiyanb
(a.School of Computer Sciences and Information Engineering; b.College of Electronic Information and Automation, Tianjin University of Science & Technology, Tianjin 300222,China)
In order to improve the efficiency of picking robot and control precision, a new method is designed to improve the operation efficiency and the adaptability to complex environment based on discrete programming and improved differential evolution algorithm. Because of the complexity of the environment of agricultural operations, the use of discrete programming technology can get better benefits. This research focuses on the development of the discrete programming system, using SolidWorks software to build a robot manipulator 3D simulation model, and the use of VB software to achieve the SolidWorks library reference and the two development, the use of VB code to improve the differential evolution algorithm is embedded in the robot hand off line programming control system. At last, the accuracy and efficiency of trajectory control of robot manipulator are obtained by simulation calculation, and the position of the manipulator is obtained. From the surface of the experimental results, the improved differential algorithm can better realize the off-line trajectory optimization of robot manipulators, and the stability of the manipulator is better.
picking manipulator; differential evolution; discrete programming; trajectory control; adaptive
2016-01-18
天津市農業委員會科研項目(0502200 )
徐慶增(1981-),男,內蒙古呼倫貝爾人,實驗師,碩士,(E-mail)xqz1981@qq.com。
S225;TP242
A
1003-188X(2017)02-0191-05