李欣達



【摘 要】神經網絡具有突出自適應性和魯棒性。本文針對一種復雜的倒立擺系統,采用BP神經網絡取代傳統控制方法,實現倒立擺裝置的平穩控制。仿真實驗結果表明,只要數據信息量及神經網絡隱層神經元個數適當,即可到達較好的控制效果。該文描述了實現過程及方法,可達到對倒立擺裝置更平穩的控制。
【關鍵詞】倒立擺; BP神經網絡; 穩定控制; 仿真
【Abstract】Neural network has outstanding adaptability and robustness. In the light of the inverted pendulum system is a complex, using BP neural network instead of traditional control method, control inverted pendulum device. Simulation experimental results show that, as long as the data and neural network hidden layer neurons number of appropriate amount of information, to better control effect. This paper describes the implementation process and method, and it can achieve control of the inverted pendulum device more smoothly.
【Key words】Inverted pendulum; BP neural network; Stability control; simulation
0 引言
倒立擺是一種高階次、不穩定性以及非線性的特點的控制裝置,是一種典型的強耦合系統,因此應該利用更有效的控制手段才能使倒立擺裝置達到穩定平穩狀態。該裝置可以通過小車的速率、擺桿角度和擺桿平穩時間長短等一些控制參數檢測及控制。倒立擺裝置是探究新型控制方式是否有效的實驗平臺。
近年來,人們不斷嘗試用倒立擺裝置作為典型的控制模型,來測試新的智能控制方式是否能解決系統中多變量、不穩定和非線性控制的問題,從而在其中尋求最佳智能控制方法。
倒立擺裝置的運動狀態類似于人的走路姿態。所以,倒立擺裝置在探究機器人的站立行走、飛船垂直發射進程的狀態調節和飛機的滑行控制具有明顯的作用。倒立擺裝置的探究,不僅有很強的理論作用,而且還具備更遠的現實意義。
1 倒立擺系統
一級倒立擺裝置如圖1所示。裝在小車上的倒立擺在水平力的作用下,通過控制小車的運動速度使偏轉角為0,即可使倒立擺直立起來。
圖1系統的符號的物理意義:M——小車質量;m——擺桿質量;g——重力加速度;θ——擺角大小;x——小車位移;F——水平推力。
BP神經網絡
BP神經網絡是一種按誤差反向傳播訓練的多層前饋網絡,其算法稱為BP算法,其基本思想是使用梯度下降法調整網絡神經網絡參數,使網絡的實際輸出值和期望輸出值的誤差均方差為最小[1]。
BP神經網絡的計算過程由正向計算過程和反向計算組成。正向傳播計算,輸入模式從輸入層經隱曾單元層逐層處理,并傳到輸出層,每層神經元的輸出只影響下一層神經元。如果在輸出層未達到期望的輸出,則轉入反向傳播,將誤差信號沿原來的連接通路返回,通過修改各神經元的權值,使得誤差信號最小。
針對倒立擺的位移和偏轉控制系統,一個三層BP神經網絡如圖2所示。
2 基于MATLAB環境的倒立擺控制系統
圖3是基于MATLAB軟件的一種倒立擺控制系統,是一個傳統PI+不完全微分控制,同時有從輸出端反饋的LQR控制器[2],即利用線性二次型性能指標設計的控制器,該系統實際是三種控制方法的綜合應用。如圖3所示。
該系統經仿真得到如圖4所示動畫。
在實驗時如果去掉不完全微分控制,或者去掉LQR控制器的任何一種均很難實現穩定控制,表明系統很不穩定。但當加入兩種控制方法系統變得相當穩定。現對該系統實現BP神經網絡控制,即采用BP神經網絡取代輸入端控制器:即取代PI+不完全微分控制部分,采集該控制器的輸入/輸出信號,構成樣本數據庫。建立圖5數據采集模型。
采集輸入、反饋信號及控制器輸出信號組成三維數據:data=[re fe uc]共采集100000組數據,訓練BP神經網絡。網絡結構為2-15-1,設置神經網絡參數為EPOCHS=5000; GOAL=0.000003; 訓練3步達到誤差精度要求。誤差訓練曲線如圖6所示。
提取BP網絡模型如圖7所示.
將此模型代替PI+不完全微分控制器,替換后得到仿真模型如圖8所示。
經運行該系統穩定性與原系統效果是一樣的。表明BP網絡完全能替代原控制器,實現穩定控制。但是如果實驗時采集的數據較少,則倒立擺系統極其不穩定,表明數據總量不夠,而且對網絡訓練應當有足夠的經驗,沒有學習好各種經驗就不能很好地控制。為了保證經驗數據具有一定的完備性,在輸入信號中加入了一定的隨機信號。圖8 在BP網絡輸入信號首先要進行歸一化處理,本文采用normr命令,反歸一化采用norm命令,該方法的優點是可避免0,1出現,從而使網絡訓練容易,快速收斂。圖9為位移曲線,圖10 為角度變化曲線。
實驗表明,基于神經網絡控制的倒立擺系統,動態穩定性好,與常規控制相當,但是其魯棒和自適應能力更好。
3 結論
基于神經網絡控制的倒立擺裝置的控制總體優于PID傳統控制方法。本文通過數據采集、訓練BP網絡學習方法實現倒立擺的穩定控制,仿真實驗證明了本文方法的有效性。
【參考文獻】
[1]劉金琨.智能控制[M].北京:電子工業出版社,2005.5.
[2]趙景波.MATLAB控制系統仿真設計[M].北京:機械工業出版社,2010,11.
[責任編輯:朱麗娜]