第1章 概论 1
1.1 仿真技术概述 1
1.1.1 仿真的定义和分类 1
1.1.2 仿真过程 3
1.2 数字仿真软件 3
1.3 仿真技术的应用与发展 4
1.3.1 仿真技术的应用 4
1.3.2 仿真技术的发展趋势 5
习题 5
第2章 MATLAB与Simulink基础 6
2.1 MATLAB简介 6
2.2 基本语句结构 6
2.2.1 变量 7
2.2.2 向量运算 8
2.3 基本矩阵运算 10
2.3.1 矩阵输入 10
2.3.2 矩阵运算 11
2.3.3 矩阵操作 14
2.4 绘图 15
2.4.1 二维图形的绘制 16
2.4.2 三维图形的绘制 18
2.5 数据处理 18
2.5.1 多项式处理 18
2.5.2 曲线拟合与插值 19
2.5.3 数据分析 20
2.6 MATLAB编程 21
2.6.1 条件语句与循环语句 21
2.6.2 M文件及M函数的编写与运行 22
2.7 Simulink基础 23
2.7.1 Simulink的启动 23
2.7.2 Simulink的模块库介绍 24
2.7.3 Simulink模型的建立及对模型的处理 32
2.7.4 Simulink仿真的参数设置 34
习题 36
第3章 控制系统的数学描述及建模 37
3.1 连续系统的数学模型 37
3.1.1 微分方程形式 37
3.1.2 传递函数形式 37
3.1.3 零极点增益形式 38
3.1.4 部分分式形式 38
3.1.5 状态方程形式 38
3.1.6 非线性系统的线性化 42
3.2 控制系统的模型转换 44
3.2.1 传递函数形式与零极点增益形式之间的转换 44
3.2.2 传递函数形式与部分分式展开形式之间的转换 45
3.2.3 状态方程形式与传递函数形式或零极点增益形式之间的转换 46
3.2.4 系统的对角化与约当化 48
3.2.5 系统转换为能控标准型 52
3.2.6 系统转换为能观标准型 54
3.2.7 对象数据类型描述 56
3.3 控制系统建模实例 57
3.3.1 直流电动机系统建模 57
3.3.2 汽车半主动悬架动力学模型 59
3.3.3 过热蒸汽温度控制系统的建模 63
3.3.4 单级倒立摆数学模型的建立 67
习题 70
第4章 连续系统的离散化方法 72
4.1 常微分方程的数值解法 72
4.1.1 数值求解的基本概念 72
4.1.2 欧拉法 72
4.1.3 龙格-库塔法 74
4.1.4 微分方程数值解的MATLAB实现 77
4.2 数值算法的稳定性及选择原则 82
4.2.1 数值算法的稳定性 82
4.2.2 数值算法的选择原则 84
4.3 数值算法中的“病态”问题 84
4.3.1 “病态”微分方程 84
4.3.2 “病态”系统的仿真方法 87
4.4 连续系统状态方程的离散化 88
习题 92
第5章 控制系统的时频分析法 94
5.1 控制系统时域分析 94
5.1.1 时域响应概述 94
5.1.2 时域分析常用MATLAB函数 96
5.2 控制系统频域分析 111
5.2.1 频率响应概述 111
5.2.2 频域分析常用MATLAB函数介绍 112
5.3 根轨迹法 126
5.3.1 根轨迹的基本概念 127
5.3.2 根轨迹的绘制 131
5.3.3 利用根轨迹法分析控制系统 136
习题 142
第6章 控制系统的校正 146
6.1 校正基础知识 146
6.1.1 校正的结构形式 146
6.1.2 性能指标 146
6.1.3 串联校正的分类 148
6.1.4 校正的分析方法 148
6.1.5 PID校正 149
6.2 频率特性设计法 149
6.2.1 相位超前校正 149
6.2.2 相位迟后校正 156
6.3 根轨迹设计法 161
6.3.1 Rltool设计 161
6.3.2 根轨迹校正方法 165
6.4 PID校正 171
6.4.1 常规PID校正方法 171
6.4.2 Ziegler-Nichols方法 176
6.5 迟后系统的校正 182
6.5.1 大林控制算法 182
6.5.2 Smith预估控制器 184
习题 189
第7章 控制系统的状态空间设计法 191
7.1 极点配置 191
7.1.1 单输入系统的极点配置 191
7.1.2 极点配置实例分析 195
7.2 观测器设计及实例分析 197
7.3 基于观测器的状态反馈控制器设计及实例分析 200
7.4 线性二次型最优控制器设计及实例分析 205
习题 214
附录A MATLAB常用函数 216
参考文献 229