基于Tkinter的Arneodo混沌系统全局滑模控制实验

2020-02-22 06:52赵海滨颜世玉
科技创新导报 2020年28期
关键词:Python语言

赵海滨 颜世玉

摘  要:对于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.

猜你喜欢
Python语言
关于面向非计算机专业开设Python语言的几点思考
在高中信息技术课中培养学生计算思维的有效方法探讨
Python语言教学中问题解决能力和创新能力的培养实践
Python语言程序设计教学体系建设
面向计算生态的Python语言入门课程教学方案