范 萍
(宿遷澤達職業技術學院,江蘇 宿遷 223800)
隨著農業智能化發展,果蔬采摘工作目前已經實現了機械化,果蔬采摘機器人由于具有成本低、效率高、易操作等優點,目前已經被廣泛應用在果蔬采摘工作中,并且得到了批量化生產。果蔬采摘機器人按照預先設定的期望軌跡進行采摘運動,但是由于果蔬采摘環境比較復雜,對果蔬采摘機器人運動具有一定的影響,在不采取任何措施的情況下,果蔬采摘機器人是無法按照設定軌跡運動的,實際運動軌跡與期望軌跡會存在較大的差距,從而導致機器人不能有效完成果蔬采摘任務。因此,對其進行智能控制是非常有必要的。但是現行方法的控制效果并不理想,在實際應用中不僅超調量比較大,而且控制穩態誤差也比較大,無法滿足實際需求,為此提出基于DDPG算法的果蔬采摘機器人智能控制方法。
為了描述出果蔬采摘機器人運動學和動力學特征,以牛頓-歐拉方程理論作為理論依據,通過建立慣性坐標系與立體坐標系,對果蔬采摘機器人的運動進行分析。以果蔬采摘機器人的重心為原點,以機器人前進方向作為X軸正方向,以機器人前進方向的右側作為立體坐標系的Y軸,以機器人下移方向作為Z軸,建立立體坐標系。以水平面的某一點作為原點,建立果蔬采摘機器人慣性坐標系[1]。在運動空間中,果蔬機器人有6個自由度,可以通過以上建立的慣性坐標系的基本參數描述出果蔬采摘機器人的運動狀態,機器人運動狀態包括位置和姿態兩個參數,用公式表示為:
式中,d表示果蔬采摘機器人的運動位置;X、Y、Z分別表示果蔬采摘機器人在慣性坐標系x、y、z三個坐標軸的位置;h表示果蔬采摘機器人的運動姿態;α表示機器人翻滾角;β表示機器人俯仰角;γ表示機器人偏航角[2]。
通過建立的立體坐標系基本參數描述出果蔬采摘機器人的運動速度和角速度參數,用公式表示為:
式中,v0表示果蔬采摘機器人的運動速度;e、u、c分別表示果蔬采摘機器人在立體坐標系中的縱向速度、水平速度以及垂向速度;vi表示果蔬采摘機器人的運動角速度;q表示機器人的翻滾角速度;p表示機器人的俯仰角速度;r表示機器人的偏航角速度[3]。
機器人在運動過程中,作用在機器人上的外力矩和外力表示為:
式中,σ1表示果蔬采摘機器人在運動過程中作用在機身上的外力;k、d、m分別表示縱向力、橫向力和垂向力;σ2表示果蔬采摘機器人在運動過程中作用在機身上的外力矩;a表示機器人翻滾力矩;n表示機器人俯仰力矩;l表示機器人偏航力矩[4]。
考慮到果蔬采摘機器人在采摘作業當中,機器人的姿態和位置參數是實時發生變化的,因此通過對以上建立的兩個坐標系進行轉換,對果蔬采摘機器人的位置和姿態參數進行實時更新[5],從而建立果蔬采摘機器人運動學數學模型,用公式表示為:
式中,τ表示果蔬采摘機器人運動學數學模型;χ表示慣性坐標系與立體坐標系轉換矩陣。通過以上建立的機器人運動學數學模型,描述出果蔬采摘機器人運動狀態,同時也為后續控制提供主體。
在上述公式基礎上,利用DDPG算法對果蔬采摘機器人運動動作進行離散化,DDPG算法屬于深度強化學習算法,對機器人連續運動狀態進行調控[6],在果蔬采摘機器人運動連續動作中篩選出最優運動策略[7],基于DDPG算法的機器人運動軌跡控制示意圖如圖1所示。

圖1 基于DDPG算法的機器人運動軌跡控制示意圖
如圖1所示,DDPG算法是基于確定性控制策略梯度,參考深度學習網絡目標和經驗池重放機制,對果蔬采摘機器人運動參數進行更新,從而實現對果蔬采摘機器人運動參數自整定的[8]?;贒DPG算法的機器人運動軌跡控制,設置深度神經網絡,在該網絡中分為現實主網絡和目標網絡,主網絡在深度神經網絡中扮演著演員的角色,目標網絡在深度神經網絡中扮演著評論家的角色,將果蔬采摘機器人運動學數學模型運動參量作為DDPG算法中深度神經網絡的輸入向量,演員根據輸入的果蔬采摘機器人運動策略給出一個新的參數,用公式表示為:
式中,f表示主網絡給出的新的參數;φ表示當前果蔬采摘機器人的運動狀態;ω表示深度神經網絡參數;F表示獎勵。
以輸入的果蔬采摘機器人運動狀態為基礎,主網絡對深度神經網絡參數進行更新設置,選擇出當前機器人的最優動作,向評論家(目標網絡)輸入下一時刻的運動狀態,并且給予獎勵。評論家根據經驗池存放的果蔬采摘機器人運動數據選擇下一個最優動作,并且對深度神經網絡參數進行定期重新更新,生成果蔬采摘機器人運動目標值,用公式表示為:
式中,v表示目標網絡生成的果蔬采摘機器人運動目標值;θ表示折扣因子;E表示果蔬采摘機器人當前的動作價值;Ct+1表示主網絡輸出的下一時刻的果蔬采摘機器人運動狀態;At+1表示經驗池存放的果蔬采摘機器人運動動作采樣數據中下一個最優運動動作。
將生成的目標值與當前果蔬采摘機器人運動狀態比對,求出果蔬采摘機器人運動軌跡誤差,其計算公式為:
式中,υ表示果蔬采摘機器人運動軌跡誤差;vo表示當前果蔬采摘機器人運動軌跡。將計算得到的運動軌跡誤差輸入控制器中,由控制器將其作為機器人參數整定值調控果蔬采摘機器人運動參數[9],以此消除機器人運動軌跡誤差,使其貼近期望運動軌跡,完成基于DDPG算法的果蔬采摘機器人智能控制。
在完成基于DDPG算法的果蔬采摘機器人智能控制設計后,為檢驗設計方法的可靠性與可行性[10],將以設計方法作為實驗對象,選擇目前兩種最為常用的方法作為對照對象,設計一組對比實驗。為了方便后續實驗陳述,將兩種傳統方法用傳統方法X、傳統方法Y表述。選擇某采摘農業園中的果蔬采摘機器人作為控制對象,該果蔬采摘機器人型號為JFATAS-4A8F4,規格為980 mm×750 mm×450 mm,整備質量為85 kg,前后輪距為650 mm,左右軸距為565 mm,越障高度為175 mm,最大載重量為150 kg,最大牽引力為1 750 N,整體材質為鑄鋼,最大爬坡角度為55°,最高速度為2.5 km/h,該園區共有10臺果蔬采摘機器人,利用本文設計的方法對其進行智能控制。實驗在32位Windows 2010系統下進行,DDPG算法使用Python 2.5編譯,建立果蔬采摘機器人運動學數學模型,經過多次對DDPG算法的調試,選擇較為合適的算法參數,將學習率設定為0.15,目標平滑系統設定為0.01,折扣因子設定為0.53,目標網絡升級間隔設定為15,數據容量設定為128。按照上述流程對機器人進行控制,下文將對具體控制效果進行評定。
超調量可以反映出果蔬采摘機器人的智能控制精度,超調量越大,則表示機器人控制精度越低,對于果蔬采摘機器人控制而言,超調包括角度和距離兩個方面,其計算公式為:
式中,G表示果蔬采摘機器人超調量;x表示果蔬采摘機器人理想角度;x0表示果蔬采摘機器人調控后的實際角度;y表示果蔬采摘機器人理想距離;y0表示果蔬采摘機器人調控后的實際距離。
實驗中隨機選擇8個果蔬采摘機器人,通過對果蔬采摘機器人的控制完成一次果蔬采摘動作,利用上述公式計算出果蔬采摘機器人智能控制的超調量,使用電子表格記錄實驗數據,具體數據如表1所示。

表1 三種方法超調量對比
從上表數據可以看出,三種方法在超調量方面表現出明顯的差異,設計方法的最高超調量僅為0.22%,可以將超調量控制在1%以內,說明在應用設計方法時,果蔬采摘機器人運動狀態與理想狀態基本一致。與傳統方法X相比,設計方法超調量最大約小12%;與傳統方法Y相比,設計方法超調量最大約小15%。因此,從控制精度方面來看,設計方法優于兩種傳統方法。
單一的指標不能全面反映出方法的應用效果,因此,選擇穩態誤差作為第二評價指標,穩態誤差越大,則表示機器人的控制精度越低。對于控制穩態誤差的評價,選擇角度作為參量,以控制次數作為變量,使用電子表格記錄三種控制方法的穩態誤差,具體數據如表2所示。

表2 三種方法穩態誤差對比
從上表數據可以看出,三種方法在穩態誤差方面也表現出明顯的差異,設計方法的穩態誤差最大僅為0.06°,數值較小,基本可以忽略不計,說明在應用設計方法時,果蔬采摘機器人不會發生偏航問題。與傳統方法X相比,設計方法的穩態誤差最大約小11°;與傳統方法Y相比,設計方法的穩態誤差最大約小18°。因此,以上實驗結果可以證明,無論是在超調量方面還是在穩態誤差方面,相較于兩種傳統方法,設計方法均表現出明顯的優勢,更適用于果蔬采摘機器人的智能控制。
為了保證果蔬采摘機器人能在復雜環境下順利完成果蔬采摘任務,按照預先設定的期望軌跡進行準確運動,本文結合DDPG算法優勢,將其應用到果蔬采摘機器人智能控制中,提出了一種新的控制方法,有效降低了果蔬采摘機器人超調量與控制的穩態誤差,為果蔬采摘機器人智能控制實踐提供了理論支撐,同時也為基于DDPG算法的果蔬采摘機器人智能控制方法研究提供了參考依據,有助于提高果蔬采摘機器人控制的智能化水平,具有良好的現實意義。但是該研究方法目前尚處于初步探索階段,尚未得到大量的實踐與操作驗證,在某些方面或許存在不足,今后將在方法優化設計方面展開深層次探究,促進果蔬采摘機器人廣泛應用與發展。