趙海濱 顏世玉



摘? 要:對于Arneodo混沌系統,采用全局滑模控制器進行鎮定控制。通過Python語言進行系統仿真,采用SciPy庫中的odeint函數進行常微分方程的求解,采用Tkinter建立人機交互界面對系統參數進行設置,并采用Matplotlib進行數據的可視化。數值仿真結果表明,全局滑模控制器能夠進行Arneodo混沌系統的鎮定控制。
關鍵詞:Arneodo混沌系統? Python語言? Tkinter? 全局滑模控制器
中圖分類號:TP273? ? ? ? ? ? ? ? ? ? ? ? ? ? 文獻標識碼:A? ? ? ? ? ? ? ? ? ? 文章編號:1674-098X(2020)10(a)-0080-03
Abstract: For Arneodo chaotic system, a global sliding mode controller is used to stabilize the system. The system is simulated by Python language, the odeint function in Scipy library is used to solve ordinary differential equations, the human-computer interface is established by Tkinter, the system parameters are set, and the data is visualized by Matplotlib. Numerical simulation results show that the global sliding mode controller can stabilize Arneodo chaotic system.
Key Words: Arneodo chaotic system; Python language; Tkinter; Global sliding mode controller
混沌系統對初始條件非常敏感,廣泛存在于各種非線性系統中,有著十分廣闊的應用前景[1]。Arneodo混沌是三階嚴反饋系統,能夠用硬件電路實現,具有非常豐富的動力學特性[2]。Python語言具有開源、跨平臺和簡單易學等特點,自發布以來得到了迅速發展且應用廣泛[3-4]。Python語言在人工智能、大數據分析和機器學習中具有廣泛應用[5]。Python語言有大量的開源庫可供調用[6],非常方便。Tkinter是Python自帶的標準GUI庫,可以方便建立GUI應用程序。
根據Arneodo混沌系統的狀態方程,本文對Arneodo混沌系統進行仿真,并采用全局滑模控制器進行鎮定控制。采用全局滑模面和雙冪次趨近律設計全局滑模控制器。全局滑模控制器具有非常好的魯棒性[7],能夠用于Arneodo混沌系統的鎮定控制。采用Python語言進行系統仿真時,采用SciPy庫中的odeint函數進行常微分方程的求解。采用Tkinter建立軟件的人機交互界面,并采用Matplotlib進行數據的可視化。
1? Arneodo混沌系統
Arneodo混沌系統是典型的三階嚴反饋混沌系統,其數學模型表示為
2? 全局滑模控制
采用全局滑模控制器進行Arneodo混沌系統的鎮定控制,帶有控制輸入的受控系統,表示為
采用全局滑模控制器進行Arneodo混沌系統的鎮定控制,狀態變量漸進收斂到零。
3? 仿真實驗
采用Python語言進行Arneodo混沌系統的仿真和全局滑模控制。采用Python自帶的Tkinter進行人機交互界面的設計,如圖1所示。在圖1中,左側進行參數的設置,右側進行圖形的繪制。在圖1中,對Arneodo混沌系統的參數和初始狀態進行設置,并對全局滑模控制器的參數進行設置。
在圖1中,可以修改系統的參數,仿真時間為100s。通過用鼠標單擊按鈕“Arneodo混沌仿真”,可以進行Arneodo混沌系統的仿真,能夠顯示狀態變量的二維相圖和響應曲線。然后,用鼠標單擊按鈕“x1-x3二維相圖”,會顯示狀態變量的二維相圖,如圖2所示。Arneodo系統處于混沌狀態。
在圖1中,對全局滑模控制器的參數進行設置,用鼠標單擊按鈕“全局滑模控制”,采用設計的全局滑模控制器進行Arneodo混沌系統的鎮定控制。采用全局滑模控制器進行Arneodo混沌鎮定控制后,狀態變量的響應曲線,如圖3所示,仿真時間為6s。Arneodo混沌系統的狀態變量在全局滑模控制器的作用下,快速收斂到零。數值仿真結果表明,設計的全局滑模控制器能夠進行Arneodo混沌系統的鎮定控制。
4? 結語
采用Python語言進行系統的仿真,采用全局滑模控制器進行Arneodo混沌的鎮定控制,狀態變量漸進收斂到零。通過Arneodo混沌的狀態方程進行仿真。采用全局滑模面和雙冪次趨近律設計全局滑模控制器。采用Tkinter建立人機交互界面,并采用Matplotlib進行數據可視化,繪制狀態變量的二維相圖,狀態變量的響應曲線。采用Tkinter建立人機交互界面,非常方便。在人機交互界面中,可以對參數進行修改,非常形象和直觀,方便進行系統的仿真。
參考文獻
[1] 孫克輝.混沌保密通信原理與技術[M].北京:清華大學出版社,2015.
[2] 趙海濱,于清文,陸志國,等.基于滑模控制器的Arneodo混沌控制試驗[J].機械設計,2019,36(S2):10-13.
[3] 李軍紅.基于Python的輔助教學系統[J].電子技術與軟件工程,2019(17):51-52.
[4] 于清文,趙海濱,顏世玉.Python語言在Liu混沌系統仿真實驗中的應用[J].科技創新導報,2020,17(12):139-140.
[5] 王雅瑩,蔡學森.基于Python語言的智能家居系統的設計[J].科技資訊,2020,18(7):25+27.
[6] 張健,張良均. Python編程基礎[M].北京:人民郵電出版社,2018.
[7] 劉金琨.滑模變結構控制MATLAB仿真基本理論與設計方法[M].3版.北京:清華大學出版社,2015.