第0章 绪论 1
0.1 仿真技术简介 1
0.2 计算机仿真技术的发展概况 3
0.3 计算机仿真技术的应用 4
0.4 控制系统计算机辅助设计的主要内容及其应用 5
0.5 基于MATLAB的控制系统仿真的现状 6
习题 7
第1章 仿真软件——MATLAB 8
1.1 MATLAB的功能特点 8
1.2 MATLAB的基本操作 12
1.2.1 语言结构 12
1.2.2 磁盘文件 14
1.2.3 库函数和数值显示格式 17
1.2.4 基本输入输出函数 17
1.2.5 外部程序调用 18
1.3 MATLAB的控制语句 19
1.3.1 循环语句 19
1.3.2 程序流控制语句 20
1.3.3 条件转移语句 21
1.4 MATLAB的绘图功能 23
1.4.1 二维图形 23
1.4.2 三维图形 28
1.4.3 图像处理 29
1.5 MATLAB的数值运算 30
1.5.1 矩阵运算 30
1.5.2 向量运算 39
1.5.3 关系和逻辑运算 41
1.5.4 多项式运算 42
1.5.5 数据处理 44
1.5.6 数据分析 47
1.5.7 函数极值 49
1.5.8 代数方程求解 50
1.5.9 微分方程求解 51
1.5.10 函数积分 52
1.6 MATLAB的符号运算 53
1.6.1 符号表达式的生成 53
1.6.2 符号表达式的基本运算 55
1.6.3 符号表达式的微积分 57
1.6.4 符号表达式的变换 59
1.6.5 符号表达式的求解 60
1.7 MATLAB的文件I/O 62
1.7.1 处理二进制文件 63
1.7.2 处理文本文件 65
1.8 MATLAB的图形界面 66
1.8.1 启动GUI Builder 67
1.8.2 对象设计编辑器 67
1.9 MATLAB编译器 68
1.9.1 创建MEX文件 68
1.9.2 创建EXE文件 70
本章小结 72
习题 72
第2章 控制系统的数学模型及其转换 74
2.1 线性系统数学模型的基本描述方法 74
2.2 系统数学模型间的相互转换 78
2.3 系统模型的连接 83
2.4 典型系统的生成 90
2.5 系统的离散化和连续化 92
2.6 系统的特性值 94
本章小结 95
习题 95
第3章 连续系统的数字仿真 97
3.1 数值积分法 97
3.2 面向系统传递函数的仿真 101
3.3 面向系统结构图的仿真 103
3.4 连续系统的快速仿真 107
本章小结 109
习题 110
第4章 连续系统按环节离散化的数字仿真 111
4.1 连续系统的离散化 111
4.2 典型环节的离散系数及其差分方程 112
4.3 非线性系统的数字仿真方法 114
4.4 连续系统按环节离散化的数字仿真程序 116
本章小结 119
习题 119
第5章 采样控制系统的数字仿真 120
5.1 采样控制系统 120
5.2 模拟调节器的数字化仿真方法 120
5.3 采样控制系统的数字仿真程序 121
5.4 关于纯滞后环节的数字仿真 125
本章小结 127
习题 127
第6章 动态仿真集成环境——Simulink 128
6.1 Simulink简介 128
6.1.1 Simulink的启动 128
6.1.2 Simulink库浏览窗口的功能菜单 129
6.1.3 仿真模块集 129
6.2 模型的构造 143
6.2.1 模型编辑窗口 143
6.2.2 对象的选定 145
6.2.3 模块的操作 145
6.2.4 模块间的连线 146
6.2.5 模型的保存 147
6.2.6 模块名字的处理 148
6.2.7 模块内部参数的修改 148
6.2.8 模块的标量扩展 149
6.3 连续系统的数字仿真 150
6.3.1 利用Simulink菜单命令进行仿真 150
6.3.2 利用MATLAB的指令操作方式 进行仿真 160
6.3.3 模块参数的动态交换 161
6.3.4 Simulink调试器 163
6.4 离散系统的数字仿真 165
6.5 仿真系统的线性化模型 167
6.6 创建子系统 171
6.7 封装编辑器 173
6.7.1 参数(Parameters)页面 173
6.7.2 图标(Icon)页面 175
6.7.3 初始化(Initialization)页面 176
6.7.4 描述(Documentation)页面 177
6.7.5 功能按钮 177
6.8 条件子系统 179
本章小结 183
习题 184
第7章 控制系统的计算机辅助分析 185
7.1 控制系统的时域分析 185
7.1.1 控制系统的稳定性 185
7.1.2 控制系统的时域响应 188
7.1.3 控制系统的稳态误差 194
7.2 根轨迹分析 195
7.2.1 根轨迹的绘制 195
7.2.2 根轨迹的分析 195
7.3 控制系统的频域分析 197
7.3.1 连续控制系统的频域分析 198
7.3.2 离散控制系统的频域分析 202
7.3.3 时间延迟系统的频域分析 203
7.3.4 基于频率特性的系统辨识 204
7.4 系统的能控性和能观测性分析 206
7.4.1 系统的能控性和能观测性 206
7.4.2 将系统按能控性和不能控性进行分解 208
7.4.3 将系统按能观测性和不能观测性进行分解 209
7.5 系统模型的降阶 209
7.5.1 平衡实现 210
7.5.2 模型降阶 211
本章小结 212
习题 213
第8章 控制系统的计算机辅助设计 214
8.1 频率法的串联校正 214
8.1.1 基于频率响应法的串联超前校正 214
8.1.2 基于频率响应法的串联滞后校正 217
8.1.3 基于频率响应法的串联滞后-超前校正 221
8.2 根轨迹法的串联校正 224
8.2.1 基于根轨迹法的串联超前校正 224
8.2.2 基于根轨迹法的串联滞后校正 226
8.2.3 基于根轨迹法的串联滞后-超前校正 228
8.3 状态反馈和状态观测器的设计 230
8.3.1 状态反馈 230
8.3.2 状态观测器 233
8.3.3 带状态观测器的状态反馈系统 236
8.3.4 离散系统的极点配置和状态观测器 237
8.3.5 系统解耦 238
8.3.6 系统估计器 240
8.3.7 系统控制器 241
8.4 最优控制系统设计 241
8.4.1 状态反馈的线性二次型最优控制 242
8.4.2 输出反馈的线性二次型最优控制 246
本章小结 248
习题 248
第9章 基于MATLAB工具箱的控制系统分析与设计 249
9.1 控制系统工具箱简介 249
9.2 线性时不变系统的对象模型 250
9.2.1 LTI对象 250
9.2.2 模型建立及模型转换函数 251
9.2.3 LTI对象属性的存取和设置 255
9.3 线性时不变系统浏览器——LTIViewer 257
9.4 单输入单输出系统设计工具——SISO Design Tool 261
9.4.1 MATLAB 6.x的SISODesign Tool 261
9.4.2 MATLAB 7.x/8.x的SISODesign Tool 265
9.5 非线性控制系统设计 270
9.5.1 NCD Blockset模块及其应用 270
9.5.2 Signal Constraint模块及其应用 276
9.5.3 Check Step Response Characteristics模块及其应用 282
9.5.4 其他非线性控制系统的设计问题 289
本章小结 290
习题 291
第10章 Simulink的扩展工具——S-函数 292
10.1 S-函数简介 292
10.2 S-函数的建立 294
10.2.1 用M文件创建S-函数 296
10.2.2 用C语言创建S-函数 306
10.3 S-函数编译器 312
10.4 S-函数包装程序 313
本章小结 314
习题 314
附录A M.ATLAB函数一览表 315
附录B MATLAB函数分类索引 323
参考文献 328