鄭偉勇, 李艷瑋, 周 兵
(1. 河南工程學院 計算機學院, 鄭州 451191; 2. 鄭州大學 信息工程學院, 鄭州 450052)
兩自由度機械手臂在制造業、農業和建筑等領域有著廣泛的應用[1-3],但任何一個系統都存在復雜的動力學特征,外部變化的干擾使得其辨識過程要比只存在內部變化的系統復雜得多,而對系統的辨識過程通常是以犧牲可靠性和精確度為代價的.因此,確定系統的動態變化和執行過程的自適應評估在實際應用中是非常有效的[4].控制問題必須考慮結構或非結構的不確定性、非線性以及控制目標,則解析設計域內的自由度必然減少,需要采用一定的適應性方法來解決上述難題.
根據操作人員的經驗發展而來的模糊邏輯能夠有效地抑制時變特性、噪聲測量和建模動態等因素導致的不利影響[5].文獻[6]關于模糊控制器的設計無法系統地解決系統魯棒性不確定問題,存在一定的缺陷,現有的研究成果主要集中于模糊系統的改進;張小娟[7]改進了一種自適應神經模糊推理系統,其結構能夠非常有效地提高模糊系統的實際性能,且輸出是輸入矢量的線性方程;Su等[8]基于Takagi-Sugeno模糊在線性系統模型空間內進行插值,充分利用傳統設計方法的主要特征對相應的關鍵問題進行分析;文獻[9]提出了參數化的模糊交集,在聚合規則的前提下提供一個自適應學習的可能性.
兩自由度機械手臂通常采用液壓驅動,運動主要為基軸和肩軸的轉動,轉動的角度直接決定機械手臂運動的軌跡,而該運動的精度則關系到機械手系統設計的性能指標.兩自由度機械手的簡化結構模型[10]如圖1所示.

圖1 兩自由度機械手臂的簡化結構模型Fig.1 Simplified structural model of mechanical arms with 2-DOF
首先需要建立兩自由度機械手系統的動力學模型,其數學表達式為
M(θ)θ+C(θ,θ)θ+G(θ)=τ
(1)
(2)
式中:M(θ)、C(θ)、G(θ)和τ分別為狀態變化慣量矩陣、哥氏力分量、重力分量和輸入扭矩;I為轉動慣量;S為動能;θ2為懸臂的旋轉角度;m2為懸臂的質量;r1為基軸與立臂的距離.哥氏力可表示為
(3)
(4)
式中:hc1和hc2為勢能;l2為懸臂長度;θ1為基軸的旋轉角度.重力分量可表示為
(5)
式中:?為偏微分符號;r2為肩軸轉動半徑.
考慮到液壓缸的運動直接決定肩軸的轉角,故需要建立相應的數學模型.根據機械手臂的通用模型可知,液壓回路的動力學方程是非線性的,但液壓缸和電動機的方程非常相似,通用數學表達式為
(6)
式中:pA和pB分別為兩個液壓缸內部的壓力;AA和BB分別為液壓缸活塞的面積;y為液壓缸活塞位移;Fc為液壓缸推力;Fμ為摩擦力;μ為輸入信號的數值.
采用波長為550 nm的光作為入射光,在循環伏安特性曲線測試中即時記錄光的透過率曲線,稱為時間依賴性曲線(見圖6,電解液為1 mol/L LiClO4).在電致變色薄膜中,將著色態/漂白態所表現的光透過率的低/高值標記為Tc/Tb.光的透過率差值ΔTλ=550 nm(Tb-Tc)是描述薄膜電致變色性能的一個重要指標(見圖7(a)),隨著循環伏安特性曲線測試的進行,ΔTλ=550 nm值有所衰減,這也表明了電致變色性能的衰退.通常,用電致變色效率η來衡量材料的電致變色性能,計算公式如下:
復雜伺服系統的數學模型難以獲得的,因此,采用模糊控制器FLC對機械手臂進行控制,可以有效避免冗長的數學建模過程[11-12].此外,考慮到交叉耦合控制器對多自由度系統具有同步性高、穩定性好和收斂速度快等諸多優點,本文采用兩個模糊邏輯控制器FLCθ1和FLCθ2分別對機械手的懸臂軸和立臂軸進行交叉耦合控制,并對立臂軸和懸臂軸輸出轉角的相對誤差er進行交叉耦合反饋,控制流程如圖2所示.其中,θ1和θ2分別為立臂軸和懸臂軸實際轉過的角度,θ1R和θ2R分別為模糊邏輯控制器的輸入值.

圖2 交叉耦合兩級模糊邏輯控制器流程圖Fig.2 Flow chart of cross-coupled two stage fuzzy logic controller
本文采用一種交叉耦合兩級模糊邏輯控制方法,主要特征在于相對誤差分量的交叉耦合.對于該交叉耦合兩級模糊系統來說,第j軸向子系統的模糊規則包括兩個輸入和一個輸出,可通過“IF-THEN”的形式進行表述,即

第二級:IFUj1是AI3且erj是AI4,THENUj2是Bf2(I3,I4).

(7)
式中:k為第k個時間間隔;m為時間間隔的總數量.控制器設計的目的在于使誤差狀態趨近到系統的原點,為了求解性能指標Jj的最小值,推導其相對于erj和uj1的偏導數,即
(8)

(9)
根據最優控制原則,控制輸入信號可表示為
(10)
式中,GUj為第二級控制系統的輸出放大系數.定義fj2(erj,uj1)=-(|uj1|+uj1+|erj|+erj)/Δ.為了提升模糊系統性能,第二級系統的輸出放大系數選擇為GUj=cj|Ej|.同時,第二級系統的模糊規則生成函數可表示為
(11)


(12)
其中,round(x)為最接近于x的整數.由式(9)可知,大多數的負梯度-|jj|表明uj1是最大值,本文第一級系統采用uj1的正梯度,即
(13)
采用與上文類似的方法,第一級系統的輸出可表示為
(14)
類似于第二級的規則生成方法,第一級系統的規則生成函數可表示為
(15)
交叉耦合模糊控制系統的模糊規則集合如表1、2所示.其中,第一列表示誤差,第一行表示誤差變化,中間為輸出變量.提取方法主要以控制工程知識和成熟的控制經驗為基礎,以操作人員的實際控制過程為基礎進行模型提取.

表1 子系統第二級模糊規則集合Tab.1 Fuzzy rule set at second stage of subsystem

表2 子系統第一級模糊規則集合Tab.2 Fuzzy rule set at first stage of subsystem
為了驗證交叉耦合模糊控制器的有效性和可行性,利用MATLAB Simulink對設計的兩自由度機械手臂控制器的階躍響應進行數值模擬,并將其與傳統PID控制器、基于遺傳算法優化的PID控制器[14]的性能進行比較.
兩自由度機器人的基軸轉角θ1和肩軸轉角θ2分別設定為20°、40°和60°,圖1中機械手臂的物理參數設定如表3所示.

表3 兩自由度機器人的參數Tab.3 Parameters for robot with 2-DOF
采用傳統PID控制器、基于遺傳算法優化的PID控制器和交叉耦合模糊邏輯控制器對機械手臂兩軸轉角θ1和θ2的階躍響應分別進行數值模擬,不同轉動角度對應的階躍響應特征分別如圖3、4所示.
由圖3、4可知,對于傳統的PID控制器和基于遺傳算法優化改進的控制器來說,基軸和肩軸的轉角θ1和θ2的階躍響應均存在明顯震蕩,且轉動震蕩的幅值隨著預設穩定值的增大而增強,表明傳統PID控制器會引起機械手臂運動的不穩定性,從而導致控制性能急劇惡化,并可能對機器人系統本身造成硬件損傷.其中,傳統PID控制器對于θ1和θ2的階躍響應分別存在約5%和12%的超調量,相對應的穩定時間分別約為0.1和0.15 s,這顯然難以滿足兩自由度機械手臂對控制系統的性能要求.另外,基于遺傳算法優化的PID控制器相較于傳統PID控制器階躍響應相對較小,同時對應的控制穩定時間相對較短.本文搭建的交叉耦合模糊邏輯控制系統對機械手臂基軸和肩軸轉角θ1和θ2的階躍響應均沒有震蕩和超調量,表明該控制系統具有優異的控制性能,非常有利于提高機械手臂的運動精度和穩定性.

圖3 不同控制器對轉角θ1的階躍響應Fig.3 Step response of angle θ1 with different controllers

圖4 不同控制器對轉角θ2的階躍響應Fig.4 Step response of angle θ2 with different controllers
根據以上三種控制器對不同大小轉角的階躍響應控制可以看出,轉角θ1和θ2越大,相應的控制精度會降低,因此有必要對轉角θ1和θ2的軌跡跟蹤誤差進行分析.選擇θ1和θ2均為40°的轉角作為分析對象,對比傳統PID控制器、基于遺傳算法優化的PID控制器以及本文的交叉耦合模糊控制器的轉角誤差曲線,結果如圖5、6所示.

圖5 三種控制器對轉角θ1的跟蹤誤差曲線Fig.5 Tracking error curves of angle θ1 with 3 controllers

圖6 三種控制器對轉角θ2的跟蹤誤差曲線Fig.6 Tracking error curves of angle θ2 with 3 controllers
由圖5、6可知,交叉耦合模糊控制器相較于其他兩種控制器具有控制精度高和收斂速度快的特點.交叉耦合模糊邏輯控制系統對立臂轉角θ1和懸臂轉角θ2階躍響應的穩定時間分別為0.05和0.12 s,明顯優于傳統PID控制器和遺傳算法優化PID控制器.另外,傳統PID控制器和基于遺傳算法優化的PID控制器跟蹤誤差大致穩定在12%和8%,而交叉耦合模糊邏輯控制系統控制精度能夠達到5%以下,使其能夠完全滿足兩自由度機械手臂對其控制系統的性能要求.
針對兩自由度機械手臂難以建立數學模型的問題,采用模糊邏輯控制方法設計了一種交叉耦合的兩級控制系統,從而簡化控制系統結構的復雜程度,避免機械手系統的非線性建模過程.利用MATLAB Simulink對設計的兩自由度機械手臂控制器的階躍響應進行數值模擬,并將其與傳統PID控制器、基于遺傳算法優化的PID控制器的性能進行仿真比較.仿真結果表明,交叉耦合模糊邏輯控制器的控制穩定性、超調量、響應速度和控制魯棒性等性能均明顯優于傳統PID控制器以及基于遺傳算法優化的PID控制器.