Presentation is loading. Please wait.

Presentation is loading. Please wait.

控制系统计算机辅助设计——MATLAB语言与应用

Similar presentations


Presentation on theme: "控制系统计算机辅助设计——MATLAB语言与应用"— Presentation transcript:

1 控制系统计算机辅助设计——MATLAB语言与应用
第 8 章 智能控制系统计算机 辅助设计 薛定宇 著《控制系统计算机辅助设计—MATLAB 语言与应用》第二版,清华大学出版社 CAI课件开发:鄂大志 、薛定宇 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

2 控制系统计算机辅助设计——MATLAB语言与应用
主要内容 自适应控制系统设计 模糊控制及模糊控制器设计 神经网络及神经网络控制器设计 基于遗传算法的最优控制器设计 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

3 控制系统计算机辅助设计——MATLAB语言与应用
8.1 自适应控制系统设计 两大类常用的自适应控制 自校正调节 (self tuning regulator,STR) 模型参考自适应控制系统 (model reference adaptive system,MRAS) 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

4 控制系统计算机辅助设计——MATLAB语言与应用
控制原理图 自校正调节器 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

5 控制系统计算机辅助设计——MATLAB语言与应用
模型参考自适应系统 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

6 控制系统计算机辅助设计——MATLAB语言与应用
8.1.1 模型参考自适应系统的 设计与仿真 假设 2 阶连续线性系统的数学模型为 模型参考自适应系统的框图 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

7 控制系统计算机辅助设计——MATLAB语言与应用
建立模型参考自适应系统的 Simulink 模型 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

8 控制系统计算机辅助设计——MATLAB语言与应用
将对象模型的一阶环节模型由原来的 改 写成 , 系统参数选择 控制器参数 ,取 输入信号为方波信号且其幅值为 10 , 频率为 1 ,并将仿真范围设置为 0~15 秒,进一步调 整系统模型的参数 ,使之在 0.02 , , 1 , 2 , 5 , 10 的范围内变化,进行仿真 : 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

9 控制系统计算机辅助设计——MATLAB语言与应用
2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

10 控制系统计算机辅助设计——MATLAB语言与应用
2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

11 控制系统计算机辅助设计——MATLAB语言与应用
8.1.2 自校正控制器设计与仿真 Diophantine 方程及其求解 Diophantine 方程 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

12 控制系统计算机辅助设计——MATLAB语言与应用
该方程的矩阵形式 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

13 控制系统计算机辅助设计——MATLAB语言与应用
2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

14 【例8-1】已知某 Diophantine 方程中
试求解该方程。 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

15 控制系统计算机辅助设计——MATLAB语言与应用
提前 d 步预测 假设在第 t 时刻所有可以测出的输入输出数据为 则由这些数据对 t+d 时 刻的输出进行预测,称提前 d 步预测,记 使得预测误差的方差 为最 小的提前 d 步预测信号满足下面的方程 其中 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

16 【例8-2】已知某系统的离散模型为 试求出提前两步的预测模型。
【例8-2】已知某系统的离散模型为 试求出提前两步的预测模型。 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

17 控制系统计算机辅助设计——MATLAB语言与应用
提前两步预报的仿真模型 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

18 控制系统计算机辅助设计——MATLAB语言与应用
最小方差控制器设计 最小方差控制律为 若 ,则最小方差控制问题退化成最小方差的调节问题,调节器的自适应律可以简化成 该控制律适用于最小相位系统的自校正调节 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

19 控制系统计算机辅助设计——MATLAB语言与应用
自适应控制律 其中 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

20 控制系统计算机辅助设计——MATLAB语言与应用
【例8-3】假设 ,遗忘因子选择为 ,设定值选择为 ,对自校正系统 进行仿真。 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

21 控制系统计算机辅助设计——MATLAB语言与应用
8.1.3 广义预测控制系统与仿真 广义预测控制 (general predictive control,GPC) 广义预测控制研究的受控对象模型为 广义预测控制的性能指标为 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

22 控制系统计算机辅助设计——MATLAB语言与应用
【例8-4】假设受控对象模型为 用广义预测控制的方式进行控制。 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

23 控制系统计算机辅助设计——MATLAB语言与应用
8.2 模糊控制及模糊控制器设计 样条插值的 MATLAB 表示 基于样条插值的数值微积分运算 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

24 控制系统计算机辅助设计——MATLAB语言与应用
模糊逻辑与模糊推理 构建模糊推理系统的数据结构 添加系统的输入和输出变量 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

25 控制系统计算机辅助设计——MATLAB语言与应用
把新生成的规则矩阵 R ,补加到模糊推理系统 f i s 原有规则后 模糊推理问题求解 解模糊化 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

26 控制系统计算机辅助设计——MATLAB语言与应用
8.2.2 模糊 PD 控制器设计 模糊 PD 控制器控制框图 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

27 控制系统计算机辅助设计——MATLAB语言与应用
8 段模糊子集示意图 PD 控制器模糊逻辑 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

28 控制系统计算机辅助设计——MATLAB语言与应用
建立模糊推理系统模型的步骤: 启动界面 在命令窗口中输入 fuzzy 启动系统界面。 信号设定 由菜单项 Edit – Add Variable – Input 添加一路输入信号,建立本模糊推理模型需要的双路输入。修改信号的变量名为 e , ed 和 u 。 隶属函数设置 双击界面上的输入段 e 图标,显示默认的三段模糊子集及隶属度函数曲线。单击 Edit 菜单, 选择 Remove All MFs 菜单删除默认的所有隶属度函数。 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

29 控制系统计算机辅助设计——MATLAB语言与应用
编辑模糊推理系统 选择 Edit – Rules 菜单项,由 Add rule 添加规则,用 Change rule 修改规则。建立起模糊推理规则后,由 View – Rules 和 View – Surface 菜单项得出规则显示图形。 模糊推理系统的存储 选择 File -Export 菜单项将 建立起来的模糊推理系统存成 * . f i s 文件或存成 MATLAB 工作空间中的变量。 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

30 控制系统计算机辅助设计——MATLAB语言与应用
【例8-5】 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

31 控制系统计算机辅助设计——MATLAB语言与应用
8.2.3 模糊 PID 控制器设计 模糊逻辑整定 PID 控制器的表达式为 其中, 为校正速度量 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

32 控制系统计算机辅助设计——MATLAB语言与应用
计算控制量 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

33 控制系统计算机辅助设计——MATLAB语言与应用
模糊 PID 控制器控制框图 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

34 控制系统计算机辅助设计——MATLAB语言与应用
模糊 PID 控制器结构 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

35 控制系统计算机辅助设计——MATLAB语言与应用
【例8-6】 对系统进行仿真 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

36 控制系统计算机辅助设计——MATLAB语言与应用
8.3 神经网络及神经网络 控制器设计 神经网络简介 基于单个神经元的 PID 控制器设计 基于反向传播神经网络的 PID 控制器 基于径向基函数的神经网络的 PID 控制器 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

37 控制系统计算机辅助设计——MATLAB语言与应用
8.3.1 神经网络简介 神经元的基本结构 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

38 控制系统计算机辅助设计——MATLAB语言与应用
神经元的基本结构 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

39 控制系统计算机辅助设计——MATLAB语言与应用
8.3.2 基于单个神经元的 PID 控制器设计 基于单个神经元的 PID 控制器框图 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

40 控制系统计算机辅助设计——MATLAB语言与应用
微积分模块计算量: 三个权值的更新规则: 控制率为 ,归一化权值 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

41 控制系统计算机辅助设计——MATLAB语言与应用
基于单个神经元的 PID 控制器模块框图 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

42 【例8-7】对受控对象 利用单神经元 PID 控制器模块进行仿真计算
2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

43 控制系统计算机辅助设计——MATLAB语言与应用
8.3.3 基于反向传播神经网络的 PID 控制器 BP 网 PID 控制器仿真结构 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

44 控制系统计算机辅助设计——MATLAB语言与应用
【例8-8】受控对象 采样周期 T = 秒 非线性受控对象 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

45 控制系统计算机辅助设计——MATLAB语言与应用
系统仿真框图 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

46 控制系统计算机辅助设计——MATLAB语言与应用
基于径向基函数的神经网络 的 PID 控制器 径向基函数 PID 控制器仿真结构 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

47 控制系统计算机辅助设计——MATLAB语言与应用
【例8-9】 非线性受控对象 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

48 控制系统计算机辅助设计——MATLAB语言与应用
系统仿真框图 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

49 控制系统计算机辅助设计——MATLAB语言与应用
8.4 基于遗传算法的最优 控制器设计 遗传算法简介 基于遗传算法的最优化问题求解 基于遗传算法的最优控制问题求解 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

50 控制系统计算机辅助设计——MATLAB语言与应用
8.4.1 遗传算法简介 简单遗传算法的一般步骤为: 选择 N 个个体构成初始种群 ,并求出种群内各个个体的函数值。染色体可以用二进制数组表示,也可以用实数数组来表示,种群可以由随机数生成函数建立。其实使用遗传算法求解函数 gaopt( ) ,则会自动生成所需的初始种群 。 设置代数为 i=1 ,即设置其为第 1 代。 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

51 控制系统计算机辅助设计——MATLAB语言与应用
计算选择函数的值,所谓选择即通过概率的形式从种群中选择若干个体的方式。遗传算法最优化工具箱提供了 3 个选择函数,其中 roulette( )实现了轮盘选择算法,normGeomSelect( )函数实现了归一化几何选择方法,tournSelect( )实现了锦标赛形式的选择方式,normGeomSelect( )函数为默认选择函数。 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

52 控制系统计算机辅助设计——MATLAB语言与应用
通过染色体个体基因的复制、交叉、变异等创造新的个体,构成新的种群 ,其中复制、交叉和变异都有相应的 MATLAB 函数,gaopt( ) 函数选择其中默认的方法进行这样的处理,构成新的种群。 i= i+1 ,若终止条件不满足,则转移到步骤③继续进化处理。 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

53 和传统最优化算法比较,遗传算法的主要不同点:
不同于从一个点开始搜索最优解的传统的最优化算法。遗传算法从一个种群开始对问题的最优解进行并行搜索,所以更利于全局最优化解的搜索,但遗传算法需要指定各个自变量的范围,而不像最优化工具箱中可以使用无穷区间的概念。 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

54 控制系统计算机辅助设计——MATLAB语言与应用
遗传算法并不依赖于导数信息或其他辅助信息来进行最优解搜索,而只由目标函数和对应于目标函数的适应度水平来确定搜索的方向。 遗传算法采用的是概率性规则而不是确定性规则,所以每次得出的结果不一定完全相同,有时甚至会有较大的差异。 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

55 控制系统计算机辅助设计——MATLAB语言与应用
8.4.2 基于遗传算法的最优化 问题求解 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

56 控制系统计算机辅助设计——MATLAB语言与应用
【例8-10】 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

57 控制系统计算机辅助设计——MATLAB语言与应用
编写一个描述目标函数的文件: 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

58 【例8-11】试用遗传算法求解下面的线性规划问题
用 MATLAB 函数描述目标函数 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

59 控制系统计算机辅助设计——MATLAB语言与应用
2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

60 控制系统计算机辅助设计——MATLAB语言与应用
基于遗传算法的最优 控制问题求解 【例8-12】 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

61 控制系统计算机辅助设计——MATLAB语言与应用
2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

62 控制系统计算机辅助设计——MATLAB语言与应用
【例8-13】 模糊 PD 控制的寻优 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

63 控制系统计算机辅助设计——MATLAB语言与应用
常规 PD 控制的寻优 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

64 控制系统计算机辅助设计——MATLAB语言与应用
8.5 本章要点简介 模型参考自适应控制系统与自校正调节器系统,一 种常用的模型参考自适应控制系统的仿真方法,以及最小方差自校正调节器的设计与仿真、广义预测自适应控制器的设计与仿真等方面的内容,并给出了仿真程序。 模糊逻辑的基本概念,模糊逻辑控制器的详细建模方法及仿真分析,及一种基于模糊逻辑的 PID 控制器的仿真方法。 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院

65 控制系统计算机辅助设计——MATLAB语言与应用
提供了一些基于神经网络的控制器模型,并对其中大部分算法代码进行了改写,封装成控制器模型,可以在仿真中直接使用。客观地说,由于其中的一些算法选择的不是很理想,故它们只适用于提供例子的控制,若采用其他受控对象则可能效果不佳,所以在实际系统设计中可以考虑采用更好的基于神经网络的控制器算法,得到更好的控制效果。 基于遗传算法的最优化问题求解方法,并基于此方法介绍了最优控制器的设计问题。 2019/5/29 控制系统计算机辅助设计——MATLAB语言与应用 东北大学信息学院


Download ppt "控制系统计算机辅助设计——MATLAB语言与应用"

Similar presentations


Ads by Google