第1章 控制系统仿真与计算机辅助设计概述 1
1.1 控制理论和控制系统概述 1
1.1.1 自动控制理论的历史回顾 1
1.1.2 控制系统分类 2
1.2 系统仿真与仿真语言工具概述 2
1.2.1 系统仿真与控制系统仿真 2
1.2.2 常规计算机语言的局限性 4
1.2.3 数学软件的发展 5
1.2.4 控制系统仿真与计算机辅助设计软件 7
1.3 本书主要结构及相关内容 9
1.3.1 本书结构概述 9
1.3.2 MATLAB语言的相关资源 10
1.3.3 书中的MATLAB代码 10
1.4 本章要点小结 11
1.5 习题 11
第2章 MATLAB语言——必备的基础知识 13
2.1 MATLAB的数据结构与语句结构 14
2.1.1 MATLAB语言的变量与常量 14
2.1.2 MATLAB的数据结构 14
2.1.3 MATLAB的基本语句结构 15
2.1.4 数据存储与读取 16
2.1.5 MATLAB语言的基本运算 16
2.2 MATLAB基本控制流程结构 19
2.2.1 循环结构 19
2.2.2 转移结构 20
2.2.3 开关结构 21
2.2.4 试探结构 22
2.3 MATLAB的M-函数设计 22
2.3.1 MATLAB语言的函数的基本结构 23
2.3.2 可变输入输出个数的处理 25
2.4 MATLAB的图形可视化 25
2.4.1 二维图形的绘制 25
2.4.2 三维图形的绘制 30
2.4.3 图形修饰 34
2.5 MATLAB的图形用户界面设计入门 34
2.5.1 图形界面设计工具Guide 35
2.5.2 菜单设计系统 41
2.5.3 界面设计举例与技巧 41
2.6 MATLAB语言与数学问题计算机求解 47
2.6.1 线性代数问题的MATLAB求解 47
2.6.2 常微分方程问题的MATLAB求解 53
2.6.3 最优化问题的MATLAB求解 56
2.7 本章要点小结 60
2.8 习题 61
第3章 控制系统模型与转换 65
3.1 连续线性系统的数学模型 65
3.1.1 线性系统的传递函数模型 65
3.1.2 线性系统的状态方程模型 68
3.1.3 线性系统的零极点模型 69
3.1.4 多变量系统的传递函数矩阵模型 70
3.2 离散系统模型 71
3.2.1 离散传递函数模型 71
3.2.2 离散状态方程模型 73
3.3 框图描述系统的化简 74
3.3.1 控制系统的典型连接结构 74
3.3.2 纯时间延迟环节的处理 77
3.3.3 节点移动时的等效变换 78
3.3.4 复杂系统模型的简化 79
3.3.5 基于连接矩阵的结构图化简方法 81
3.4 系统模型的相互转换 83
3.4.1 连续模型和离散模型的相互转换 83
3.4.2 系统传递函数的获取 85
3.4.3 控制系统的状态方程实现 86
3.4.4 状态方程的最小实现 88
3.5 线性系统的模型降阶 89
3.5.1 Padé降阶算法与Routh降阶算法 89
3.5.2 时间延迟模型的Padé近似 93
3.5.3 带有时间延迟系统的次最优降阶算法 94
3.6 线性系统的模型辨识 98
3.6.1 连续系统的模型辨识 98
3.6.2 离散系统的模型辨识 100
3.6.3 辨识模型的阶次选择 105
3.6.4 离散系统辨识信号的生成 106
3.6.5 多变量离散系统的辨识 108
3.7 本章要点小结 109
3.8 习题 110
第4章 线性控制系统的计算机辅助分析 114
4.1 线性系统定性分析 114
4.1.1 线性系统稳定性分析 114
4.1.2 线性系统的线性相似变换 117
4.1.3 线性系统的可控性分析 117
4.1.4 线性系统的可观测性分析 121
4.1.5 Kalman规范分解 122
4.2 线性系统时域响应解析解法 122
4.2.1 基于状态方程的解析解方法 123
4.2.2 连续状态方程的直接积分求解方法 125
4.2.3 基于部分分式展开方法求解 125
4.2.4 二阶系统的阶跃响应及阶跃响应指标 129
4.3 线性系统的数字仿真分析 131
4.3.1 线性系统的时域响应 131
4.3.2 任意输入下系统的响应 135
4.4 根轨迹分析 136
4.5 线性系统频域分析 140
4.5.1 单变量系统的频域分析 141
4.5.2 利用频率特性分析系统的稳定性 144
4.5.3 多变量系统的频域分析 146
4.5.4 频域分析的复域空间扩展 150
4.6 本章要点小结 151
4.7 习题 152
第5章 Simulink在系统仿真中的应用 157
5.1 Simulink建模的基础知识 157
5.1.1 Simulink简介 157
5.1.2 Simulink下常用模块简介 158
5.1.3 Simulink下其他工具箱的模块组 164
5.2 Simulink建模与仿真 164
5.2.1 Simulink建模方法简介 164
5.2.2 仿真算法与控制参数选择 168
5.2.3 Simulink在控制系统仿真研究中的应用举例 170
5.3 非线性系统分析与仿真 179
5.3.1 分段线性的非线性环节 179
5.3.2 非线性系统的极限环研究 182
5.3.3 非线性环节的描述函数数值求取方法 183
5.3.4 非线性系统的线性化 186
5.4 子系统与模块封装技术 188
5.4.1 子系统概念及构成方法 188
5.4.2 模块封装方法 189
5.4.3 模块集构造 194
5.5 S-函数及其应用 194
5.5.1 S-函数的基本结构 195
5.5.2 用MATLAB编写S-函数举例 196
5.5.3 S-函数的封装 199
5.6 输出显示形式 199
5.7 本章要点小结 202
5.8 习题 203
第6章 控制系统计算机辅助设计 207
6.1 基于传递函数的控制器设计方法 207
6.1.1 串联超前滞后校正器 208
6.1.2 基于相位裕量的设计方法 209
6.1.3 控制系统工具箱中的设计界面 214
6.2 状态反馈控制 218
6.3 基于状态反馈的控制器设计方法 219
6.3.1 线性二次型指标最优调节器 219
6.3.2 极点配置控制器设计 221
6.3.3 观测器设计及基于观测器的调节器设计 224
6.4 多变量系统的解耦控制 228
6.4.1 状态反馈解耦控制 228
6.4.2 状态反馈的极点配置解耦系统 230
6.5 本章要点小结 232
6.6 习题 232
第7章 PID控制器与最优控制器设计 234
7.1 PID控制器及其Simulink建模 234
7.1.1 PID控制器概述 234
7.1.2 离散PID控制器 235
7.1.3 PID控制器的变形 236
7.2 过程系统的一阶延迟模型近似 237
7.2.1 由响应曲线识别一阶模型 238
7.2.2 基于频域响应的近似方法 239
7.2.3 基于传递函数的辨识方法 240
7.2.4 最优降阶方法 240
7.3 Ziegler-Nichols参数整定方法 241
7.3.1 Ziegler-Nichols经验公式 241
7.3.2 改进的Ziegler-Nichols算法 243
7.3.3 改进PID控制结构与算法 245
7.3.4 最优PID整定算法 248
7.3.5 大时间延迟的Smith预估器补偿 249
7.4 PID工具箱应用举例 252
7.4.1 基于FOLPD的PID控制器设计程序 252
7.4.2 Simulink下的PID控制器模块集 255
7.5 最优控制器设计 258
7.5.1 最优控制的概念 258
7.5.2 最优控制目标函数的选择 259
7.5.3 控制器参数寻优 262
7.5.4 基于MATLAB/Simulink的最优控制程序及其应用 265
7.5.5 最优控制程序的其他应用 268
7.6 最优PID控制器设计程序 269
7.7 本章要点小结 273
7.8 习题 273
第8章 控制工程中的仿真技术应用 275
8.1 电路和电子系统的建模与仿真 275
8.1.1 复杂系统的Simulink建模概述 275
8.1.2 SimPowerSystems简介 276
8.1.3 电路系统的建模与仿真 276
8.1.4 电子电路的建模与仿真 281
8.2 直流电机双闭环拖动系统的建模与仿真 285
8.2.1 晶闸管整流系统仿真模型 286
8.2.2 电机模型库及直流电机建模 287
8.3 半实物仿真系统及其应用 291
8.3.1 半实物仿真概述 291
8.3.2 dSPACE简介 294
8.3.3 dSPACE模块组 294
8.3.4 半实物仿真举例 295
8.4 本章要点小结 298
8.5 习题 299
附录 301
附录A 积分变换问题及MATLAB直接求解 301
A.1 Laplace变换及其反变换 301
A.2 Z变换及其反变换 302
A.3 Laplace变换和Z变换的计算机求解 303
A.4 本附录要点小结 306
A.5 习题 306
附录B 反馈系统分析与设计程序CtrlLAB简介 307
B.1 CtrlLAB的安装与运行 308
B.2 控制系统模型的输入与处理 308
B.3 反馈控制系统的分析 309
B.4 反馈控制系统计算机辅助设计 310
B.5 本附录要点小结 311
B.6 习题 311
参考文献 313