第1章 MATLAB基础知识 1
1.1 MATLAB概况 1
1.1.1 MATLAB的发展历程和影响 1
1.1.2 MATLAB语言的特点 2
1.1.3 MATLAB 7的新特点 3
1.1.4 MATKLAB 7中的控制工具箱及相关产品 4
1.2 MATLAB 7的安装 5
1.2.1 MATLAB 7的安装要求 5
1.2.2 MATLAB 7的安装方法 6
1.3 MATLAB 7系统运行 9
1.3.1 MATLAB 7的启动 9
1.3.2 MATLAB 7的用户界面 10
1.3.3 MATLAB 7的工具栏 10
1.3.4 MATLAB 7的窗口 11
1.4 MATLAB 7的文件管理 14
1.4.1 MATLAB的当前目录 14
1.4.2 MATLAB 7文件路径设置 15
1.5 MATLAB 7帮助系统 17
1.5.1 帮助窗口 17
1.5.2 帮助查询 21
第2章 MATLAB数值计算 23
2.1 矩阵与数组运算 23
2.1.1 矩阵的建立 23
2.1.2 矩阵与数组运算 27
2.2 数组函数与矩阵函数 30
2.2.1 基本数组函数 30
2.2.2 基本矩阵函数 31
2.2.3 几个易混淆的两种函数运算 34
2.3 关系运算和逻辑运算 35
2.3.1 关系运算 36
2.3.2 逻辑运算 36
2.4 矩阵的分解 38
2.4.1 三角分解 38
2.4.2 正交分解 38
2.4.3 特征值分解 39
2.4.4 奇异值分解 41
2.5 多项式 41
2.5.1 多项式表达 41
2.5.2 多项式的运算 42
2.6 数据分析 43
2.6.1 基本统计函数指令 43
2.6.2 协方差阵和相关阵 44
2.6.3 有限差分和导数 44
2.6.4 数据滤波 46
2.7 数值分析 48
2.7.1 数值积分 48
2.7.2 微分方程的数值解 49
第3章 MATLAB程序设计 52
3.1 MATLAB程序设计基础 52
3.1.1 M文件的创建 52
3.1.2 MATLAB的脚本文件 53
3.1.3 MATLAB的函数文件 55
3.2 参数与变量 56
3.2.1 参数 56
3.2.2 全局变量和局部变量 60
3.3 数据类型 61
3.4 程序结构 63
3.4.1 顺序结构 63
3.4.2 循环结构 64
3.4.3 分支结构 66
3.5 程序流控制语句 69
3.5.1 echo指令 69
3.5.2 input指令 70
3.5.3 pause指令 70
3.5.4 keyboard指令 70
3.5.5 break指令 70
3.6 函数调用及变量传递 71
3.6.1 函数调用 71
3.6.2 参数传递 72
3.7 绘图 73
3.7.1 二维绘图 73
3.7.2 三维绘图 77
3.7.3 句柄图形 79
3.8 M文件举例 83
第4章 MATLAB界面设计 88
4.1 MATLAB图形用户界面基础 88
4.1.1 图形用户界面简介 88
4.1.2 图形用户界面对象的层次结构 89
4.1.3 启动图形用户界面 89
4.1.4 布局编辑器 89
4.1.5 GUIDE模板介绍 90
4.2 创建图形用户界面 92
4.2.1 图形用户界面设计原则 92
4.2.2 图形用户界面创建 93
4.3 GUI编程 102
4.3.1 GUI的M文件 102
4.3.2 给GUI的控件响应编制程序 105
4.3.3 使用句柄结构进行GUI数据操作 108
4.4 GUI实例 110
第5章 控制系统的数学模型 114
5.1 传递函数模型 114
5.1.1 连续系统的传递函数模型 114
5.1.2 离散系统的传递函数模型 117
5.1.3 多变量系统的传递函数矩阵模型 119
5.2 零极点模型 121
5.3 状态方程模型 122
5.3.1 连续系统的状态方程模型 122
5.3.2 离散状态方程模型 124
5.4 不同模型对象间的相互转换 124
5.4.1 LTI对象转化为传递函数 125
5.4.2 将LTI对象转化为零极点模型 126
5.4.3 系统的状态方程实现 127
5.4.4 最小实现 129
5.5 环节方框图模型的化简 131
5.5.1 串联连接的化简 131
5.5.2 环节并联连接的化简 132
5.5.3 环节反馈连接的化简 133
5.5.4 复杂连接结构的化简 134
5.6 控制系统模型的离散化与连续化 137
5.6.1 连续系统模型的离散化 137
5.6.2 离散系统模型的连续化 139
第6章 控制系统的时域和频域分析 141
6.1 时域分析 141
6.2 根轨迹分析 153
6.3 频域分析 156
6.3.1 频率响应 158
6.3.2 Bode(波特)图的绘制 158
6.3.3 Nyquist(奈奎斯特)图的绘制 167
6.3.4 Nichols(尼科尔斯)图的绘制 170
6.4 系统的稳定性分析 172
第7章 MATLAB的仿真集成环境Simulink 176
7.1 Simulink基础知识 176
7.1.1 Simulink的工程应用实例 176
7.1.2 Simulink常用模块简介 177
7.1.3 Simulink的基本应用 181
7.1.4 Simulink的总结 185
7.2 Simulink的高级应用 186
7.2.1 子系统及其建立 186
7.2.2 模块封装与模块集 188
7.2.3 S函数、M函数及其应用 192
7.3 实例:单级倒立摆 195
第8章 控制系统的设计与仿真 202
8.1 控制系统的Bode图校正 202
8.1.1 Bode图超前校正 202
8.1.2 Bode图滞后校正 207
8.1.3 Bode图滞后超前校正 208
8.2 根轨迹校正方法 216
8.2.1 串联超前校正 216
8.2.2 用Rltool工具进行根轨迹设计 220
8.2.3 串联滞后校正 224
8.3 PID校正概述 224
8.4 极点配置控制器设计 230
8.4.1 极点配置算法 230
8.4.2 部分极点配置问题 233
8.4.3 应用极点配置设计观测器 235
8.4.4 基于观测器的控制器设计 236
第9章 常用控制系统设计实例 241
9.1 鲁棒控制系统 241
9.1.1 鲁棒控制问题的一般描述 241
9.1.2 鲁棒控制系统设计 243
9.1.3 鲁棒控制系统设计实例 245
9.2 模型预测控制设计举例 250
9.2.1 动态矩阵控制(1MC)的基本原理 250
9.2.2 DMC参数设计 255
9.2.3 预测控制设计实例 259
9.3 模糊控制系统 268
9.3.1 模糊控制系统概述 268
9.3.2 模糊控制系统的设计方法 269
9.3.3 模糊控制系统设计实例 271
附录A 基本命令 286
附录B 常用函数 287
附录C 工具箱函数 289
参考文献 300