陳婕CHEN Jie;羅天洪②LUO Tian-hong;范磊FAN Lei
(①重慶交通大學機電與車輛工程學院,重慶400074;②重慶文理學院智能制造工程學院,重慶402160)
氣動肌肉因其柔順性較好,功重比大,而被廣泛應用于康復機器和多自由度平臺等領域。雖然具有上述諸多優點,但在實際應用中,由于橡膠管的變形能、橡膠管與編織網間的摩擦以及端部約束等因素的影響[1],氣動肌肉的特性參數之間呈遲滯非線性關系,從而對其建立精確數學建模的難度較大,使其輸出精度大大降低。因而,對氣動肌肉進行精確建模具有重要意義。
在氣動肌肉模型的建立方面,主要分為理論建模與實驗數據擬合[2]。孫麗娜[3]等將PID 控制和神經網絡相結合建立了改進理論模型,提高了氣動肌肉的輸出位置精度;于海濤[4]等利用改進Tondu 模型更好地描述了氣動肌肉拉力與其收縮率之間的關系。然而,現有的氣動肌肉模型還存在如下問題:①氣動肌肉的內部構造和相關參數難以獲得,利用理論模型實現精確的氣動肌肉建模比較困難;②線性遲滯模型模型誤差大,建模精度低。
近年來,神經網絡發展越來越迅猛,該技術被應用到越來越廣泛的領域,對未知且復雜的非線性系統進行建模就是其他一個重要的領域。然而,在實際建模中,現有的神經網絡難以識別遲滯非線性特性,并且不能很好地擬合實際情況,因此神經網絡的結構有待改進。例如王冬青等[5]采用三層遞歸神經網絡構建了氣動肌肉手臂的非線性動力學模型,提高了末端的輸出精度。
基于以上研究,針對氣動肌肉遲滯非線性特性,本文提出了一種基于曲線擬合的神經網絡建模方法,通過多項式擬合模型來構建擴張輸入空間,從而構造一對一的神經網絡遲滯模型,該方法既有多項式擬合的簡潔又具有神經網絡的高速計算能力。
為了獲得氣動肌肉在一定載荷下的收縮率ε 與充入氣壓P 的關系,本文通過調節電氣比例閥的電壓,使得氣動肌肉的內腔氣壓發生變化。經過一段時間的工作,氣動肌肉完成收縮運動達到穩定狀態,然后再輸入負階躍信號,使氣動肌肉逐漸恢復為初始狀態。實驗流程如圖1。通過數據采集卡可以獲得氣動肌肉在工作過程中的實驗數據,重復以上動作,計算出位移數據的平均值,從而減小系統誤差。將實驗得到的氣動肌肉的位移數值轉換為相應的收縮率()即可得到收縮位移與氣壓之間的關系,如圖2 所示。
由圖2 可知在負載外力相同的情況下,氣動肌肉在放氣伸長和充氣收縮過程中的位移不同,即實驗結果為兩條并不重合的曲線,兩條曲線之間的不重合現象即為氣動肌肉的遲滯非線性現象。
本節將對多項式模型的原理進行簡單的介紹,并利用最小二乘法對多項式擬合模型的未知參數進行辨識。
通過文獻可知,氣動肌肉非線性遲滯曲線的上升段和下降段可以分別采用2 個多項式進行擬合,故氣動肌肉多項式模型參照如下形式:

圖1 非線性特性實驗流程

圖2 氣動肌肉收縮率/氣壓遲滯曲線

式中:yu、yd——非線性遲滯曲線的上升部分和下降部分;x(t)——系統的輸入;Pi——多項式模型的系數;n——多項式模型的次數。
可以調用Matlab 中成熟的polyfit 函數對多項式擬合模型的未知參數進行辨識,其調用格式如下式所示:

式中:P1、x1、y1——氣動肌肉上升部分遲滯擬合結果、輸入實驗數據和輸出實驗數據;P2、x2、y2——氣動肌肉下降部分遲滯擬合結果、輸入實驗數據和輸出實驗數據;n——多項式模型的次數(此處n 采取4)。
利用實驗得到的氣壓和位移數據對多項式未知系數進行擬合,通過Matlab 計算可以分別得到上升部分與下降部分的遲滯模型,如式(3)和式(4)。

將氣動肌肉的上升部分/下降部分實驗所得的實際遲滯曲線與多項式擬合曲線比較,得到圖3。

圖3 多項式模型辨識結果
通過比較可以看到,4 次多項式擬合得到的數學模型無論是上升段還是下降段皆與氣動肌肉驅動器的實驗曲線存在較大的建模誤差,在氣壓最大處的誤差最為明顯。多項式擬合模型的最大建模誤差3.7339mm,平均誤差為1.1655mm,均方差1.3664mm。
由于氣動肌肉具有多對多的非線性遲滯現象,而傳統的神經網絡只能對一對一的映射進行辨識和建模。為了實現將神經網絡與遲滯建模相結合的目的,利用多項式擬合模型進行輸入空間的構建與擴張,將這種多對多的映射關系轉換為一一映射,最終建立神經網絡遲滯模型。首先,通過多項式擬合的方法對氣動肌肉非線性遲滯現象進行建模;然后將系統輸入氣壓P 和多項式擬合模型的輸出位移d 一起作為自變量作為神經網絡的輸入,實際遲滯位移輸出d′作為因變量作為神經網絡的輸出,即給足夠的信息量對神經網絡進行訓練,建立一個雙輸入單輸出的遲滯神經網絡模型。
輸入層、隱含層與輸出層三個部分組成了BP 前饋神經網絡。為了確定隱層神經元的個數,本文參照了如式(5)的經驗公式:

式中:n——輸入層的神經元數目;m——輸出層的神經元數目;a——[1,10]之間的常數。
通過計算最終建立了一個隱含層節點數為6 的雙輸入單輸出的BP 神經網絡。通過反復的計算,本文選用的BP 前饋神經網絡的最大訓練次數設定為50000,利用期望輸出的均方差代表網絡誤差。在Matlab 中調整各參數后,將數據分別代入神經網絡進行訓練。
首先,將通過多項式擬合模型得到的輸出d、實際的輸入氣壓P 和實際的位移輸出d′進行歸一化處理,并將其分為兩個部分。第一部分通過逼近遲滯曲線從而建立對應的神經網絡模型,第二部分則用于對所建立的神經網絡模型的泛化能力進行檢驗,即檢驗神經網絡模型的適應性。首先,利用偶數氣壓所對應的數據訓練神經網絡,得到如圖4~圖6 所示的建模結果。

圖4 神經網絡模型的辨識結果
基于多項式擬合的神經網絡模型最大建模誤差為2.258mm,平均誤差為0.83mm,均方差為0.0381mm。
從圖4~圖6 可以看出,基于多項式擬合的神經網絡模型幾乎與實驗數據吻合,泛化能力也滿足要求,相比于多項式擬合模型,該模型整體光滑,平均誤差、最大誤差和均方差均有所降低,模型精度顯著提高。

圖5 神經網絡模型的訓練圖

圖6 神經網絡模型辨識誤差
本文利用多項式擬合構建擴張了神經網絡的輸入空間,建立雙輸入單輸出的神經網遲滯模型,解決了現有的神經網絡只能對一對一的映射關系進行辨識的問題。對比多項式擬合模型,基于多項式擬合算法的神經網絡模型均方差和平均誤差均顯著減小,精度也有了顯著的提高,證明了所建模型可以較為準確地反映氣動肌肉的非線性遲滯特性。