余揚,李艷彩 陳君華
摘要:針對倒立擺系統設計一種最優的雙回路PID控制器,其輸出合成的控制量為加速度,該控制器的主要任務是將倒立擺系統中的小車移動到指定的位置,同時將擺桿穩定在垂直方向。通過遺傳算法對兩個PID控制器的參數進行優化,在包含了系統噪聲和量測噪聲的情形下,為了提高系統的控制精度,引入無跡卡爾曼濾波(UKF)狀態觀測器估計最優狀態。仿真結果表明:該方法較好地抑制了噪聲,提高了系統的控制精度。
關鍵詞: 無跡卡爾曼濾波; 倒立擺; 非線性狀態估計; 雙回路PID; 遺傳算法
中圖分類號:TP13? ? ? ? 文獻標識碼:A? ? ? ? 文章編號:1009-3044(2019)03-0260-04
control is acceleration, The main task of the controller is to move the Cart of the inverted pendulum system to the specified position and stabilize the angle of the pendulum at the vertical position simultaneously. The genetic algorithm is used to optimize the control parameters of the two-loop PID. In order to improve the control precision of the system which contains the process noise and measurement noise, the unscented Kalman filter (UKF) state observer is introduced to estimate the optimal state. The simulation results show that the method suppresses noise better and improves the control precision of the system.
Key words:Unscented Kalman filter;Inverted pendulum; Nonlinear state estimation;? Two-loop PID; Genetic algorithm
1 引言
倒立擺控制系統是一個高階次、多變量、不穩定、非線性、欠驅動、強耦合的系統[1],研究人員常常利用倒立擺檢驗各種控制的穩定性、非線性以及快速系統控制能力,具有重要的實際應用價值。常用的控制方法諸如二次最優控制、PID控制、能量控制、魯棒控制、基于滑??刂啤⒒谀:壿嬁刂?、基于神經網絡的方法等等。工業控制領域中PID控制以其結構簡單、易于掌握、穩定性好、工作可靠的特點得以廣泛的應用,由于在許多實際工程問題中常會遇到有用的信號被過程噪聲和量測噪聲污染的情況,因此十分有必要對系統的狀態做出估計,文獻[2]中提出的基于卡爾曼濾波(KF,Kalman filter)的倒立擺系統比較適合線性系統,對于非線性系統,均值和協方差更新時誤差較大,文獻[3]中提出的擴展卡爾曼濾波方法(EKF,extended Kalman filter)被證明存在著不足,因為EKF為了求取估計誤差協方差的傳播,進行了泰勒展開線性化處理,而基于泰勒級數展開的方法存在著函數整體特性被局部特性所替代的缺點,文獻[4]中為了改善對非線性問題的濾波效果,提出了無跡卡爾曼濾波(UKF,Unscented Kalman Filter方法,使用U變換后的狀態變量進行濾波估計,可以有效地解決由系統非線性的加劇而引起的濾波發散問題,有較好的濾波效果。因此文中采用了基于UKF算法的雙回路PID控制來抑制噪聲、增強穩定性以及提高系統的控制精度。
2 倒立擺的數學模型
2.1 直線一級小車倒立擺系統的數學模型
倒立擺系統的結構如圖1所示,該系統由水平移動的小車和通過轉軸倒置安裝在小車上的擺桿組成,小車的質量為[M],擺桿的質量為[m],擺桿轉動的端點到其質心的長度[l],擺桿與垂直方向的夾角[θ],其控制量的輸入為小車的加速度[u],忽略摩擦力和空氣的阻力。
再通過式(2)可建立倒立擺連續系統狀態方程如式(3),其中狀態向量[X=[x,x,θ,θ]T],分別表示小車位移、小車速度、擺桿角度、擺桿角速度,[u∈R]為控制量加速度,[w∈R]為系統過程噪聲,表示隨機加速度噪聲,其均值為0,方差為[Q],[v∈R2×1]為量測噪聲,均值為0,方差為[R],其中[v1(t)]和[v2(t)]分別為小車位移和擺桿角度的量測噪聲,[Y∈R2×1]為觀測向量,且系統過程噪聲與量測噪聲為不相關的白噪聲。
2.2 PID控制器
PID是一個單輸入單輸出的控制器[6],其將被控對象的輸出值與參考值的偏差進行比較運算,而模型中的倒立擺是一個多變量控制系統,因此需要選用兩個PID控制器分別對一級倒立擺的位移和擺桿角度進行控制,為了避免微分環節引入高頻干擾的風險,模型中使用了不完全微分PID控制器[7],其將傳統PID控制器中的微分環節濾波處理,其傳遞函數分別如式(5)(6)。對于控制器中的未知變量,用經驗試湊法將控制器的參數先鎖定一個范圍,再結合遺傳算法對PID參數進行全局優化,遺傳算法中采用的適應度函數如式(7)。
2.3 無跡卡爾曼濾波狀態觀測器
在進行濾波前考慮如下離散非線性系統[8]:
3 仿真分析
3.1 PID控制器參數的優化
3.2 建立離散系統狀態方程
3.3 仿真結果
仿真工具采用MATLAB2014b/Simulink[10]的模型,采樣時間0.001s,采樣時長10s,仿真過程中采用四五階龍格-庫塔法作為解法器。圖2表示小車的位移隨著時間變化曲線,圖3表示擺桿角度隨著時間變化的曲線,通過圖4的Simulink模型仿真,隨著時間的推移小車位移和擺桿角度漸趨穩定,說明雙回路PID控制可以滿足倒立擺的穩定且控制效果較為理想,超調量較低,其穩態響應時間為7s,可見應用了UKF狀態觀測器之后,有效地降低了噪聲對系統影響,增強了系統抗干擾能力,提升了系統的控制精度。
4 結論
對于含有系統過程噪聲和量測噪聲的倒立擺系統,本文提出了基于無跡卡爾曼濾波的雙回路PID控制策略,通過對位移和角度的觀測量進行濾波處理,有效抑制了噪聲對系統的影響,提升了系統的快速性、穩定性和對非線性系統的適應性,該算法在工業控制領域有較好的應用前景。
參考文獻:
[1] 直線一級倒立擺的起擺及穩擺的智能控制[D]. 山東大學, 2009.
[2] 王瑩瑩, 王冬青. 基于卡爾曼濾波的二級倒立擺LQR控制方法[J]. 青島大學學報(工程技術版), 2015, 30(3):21-26.
[3] Alkaya A. Unscented Kalman filter performance for closed-loop nonlinear state estimation: a simulation case study[J]. Electrical Engineering, 2014, 96(4): 299-308.
[4] 伍曉麗, 萬文略. 基于無跡卡爾曼濾波的旋轉倒立擺LQR控制[J]. 測控技術, 2017, 36(4):93-97.
[5] 王俊. 基于倒立擺的三種控制策略的研究[D]. 2008.
[6] Sain D, Swain S K, Mishra S K. Design of Two-Loop PID Controller for Inverted Cart-Pendulum System Using Modified Genetic Algorithm[M]// Advances in Computational Intelligence. 2017.
[7] Lianghong W, Yaonan W, Shaowu Z, et al. Design of PID controller with incomplete derivation based on differential evolution algorithm[J]. Journal of Systems Engineering and Electronics, 2008, 19(3): 578-583.
[8] 韓崇昭. 隨機系統概論 : 分析、估計與控制 : Introduction to stochastic systems : analysis, estimation and control. 上冊[M]. 2014.
[9] Shehu M, Ahmad M R, Shehu A, et al. LQR, double-PID and pole placement stabilization and tracking control of single link inverted pendulum[C]//2015 IEEE International Conference on Control System, Computing and Engineering (ICCSCE). IEEE, 2015: 218-223.
[10] 李獻, 駱志偉. 精通MATLAB/Simulink系統仿真[M]. 清華大學出版社, 2015.
【通聯編輯:代影】