第一部分 入门——Simulink辅助设计基础第1章 绪论 3
1.1 动态系统的计算机仿真 3
1.1.1 系统与模型 3
1.1.2 计算机仿真 4
1.1.3 仿真的作用 6
1.1.4 仿真算法和仿真软件 7
1.1.5 计算机仿真的一般过程 8
1.2 动态系统的Simulink仿真 9
1.2.1 Simulink简介 9
1.2.2 Simulink的应用领域 10
1.2.3 Simulink在MATLAB家族中的位置 11
1.3 本书的组织结构 12
2.1 MATLAB的计算单元向量与矩阵 13
第2章 Simulink使用基础 13
2.2 MATLAB计算单元的基本操作 15
2.3 多项式表达与基本运算 17
2.4 MATLAB的基本绘图功能 18
2.5 M文件与MATLAB函数 22
2.5.1 M文件编辑器 22
2.5.2 MATLAB语言的语法 23
2.5.3 MATLAB脚本文件与M函数 26
2.6 MATLAB的单元与结构体 28
习题 30
第3章 动态系统模型及其Simulink表示 31
3.1 简单系统模型及表示 31
3.1.1 简单系统的基本概念 31
3.1.3 简单系统的Simulink描述 32
3.1.2 简单系统的描述方式 32
3.2 离散系统模型及表示 33
3.2.1 离散系统的基本概念 33
3.2.2 离散系统的数学描述 33
3.2.3 离散系统的Simulink描述 34
3.2.4 线性离散系统 35
3.2.5 线性离散系统的数学描述 36
3.2.6 线性离散系统的Simulink描述 37
3.3 连续系统模型及表示 39
3.3.1 连续系统的基本概念 39
3.3.2 连续系统的数学描述 40
3.3.3 连续系统的Simulink描述 40
3.3.5 线性连续系统的数学描述 41
3.3.4 线性连续系统 41
3.3.6 线性连续系统的Simulink描述 43
3.4 混合系统模型及表示 44
3.4.1 混合系统的数学描述 45
3.4.2 混合系统的Simulink描述与简单分析 45
习题 46
第二部分 进阶——Simulink动态系统仿真第4章 创建Simulink模型 51
4.1 启用Simulink并建立系统模型 51
4.2 Simulink模块库简介与使用 53
4.2.1 Simulink公共模块库 53
4.2.2 Simulink专业模块库 61
4.3 构建Simulink框图 62
4.3.1 模块选择 63
4.3.2 模块操作 64
4.3.3 运行仿真 66
4.4 设计Simulink框图的界面 67
4.4.1 模块及框图属性编辑 67
4.4.2 信号标签与标签传递 70
4.4.3 Simulink子系统介绍 72
4.4.4 建立复杂系统模型 74
4.5 Simulink与 MATLAB的接口设计 75
4.5.1 由MATLAB工作空间变量设置系统模块参数 75
4.5.2 将信号输出到MATLAB工作空间中 76
4.5.3 使用工作空间变量作为系统输入信号 77
4.5.4 向量与矩阵 79
4.6 使用Simulink进行简单的仿真 80
4.5.5 MATLAB Function与 Function模块 80
习题 82
第5章 动态系统的Simulink仿真 85
5.1 简单系统的仿真分析 85
5.1.1 建立系统模型 85
5.1.2 系统模块参数设置 86
5.1.3 系统仿真参数设置及仿真分析 87
5.1.4 仿真步长设置 88
5.2 Scope 高级使用技术 90
5.2.1 Scope模块的使用 90
5.2.2 Display模块的使用 94
5.2.3 悬浮Scope模块 94
5.3.1 人口变化系统的数学模型 97
5.3.2 建立人口变化系统的模型 97
5.3 离散系统的仿真分析 97
5.3.3 系统模块参数设置 98
5.3.4 系统仿真参数设置及仿真分析 98
5.3.5 定步长仿真与变步长仿真 100
5.4 连续系统的仿真分析 101
5.4.1 蹦极跳系统的数学模型 101
5.4.2 建立蹦极跳系统的Simulink仿真模型 101
5.4.3 系统模块参数设置 102
5.4.4 系统仿真参数设置与仿真分析 103
5.4.5 仿真精度控制 104
5.5 线性系统仿真分析 105
5.5.1 线性离散系统仿真分析 106
5.5.2 线性连续系统仿真分析 109
5.6.1 混合系统仿真技术的一般知识 110
5.6 混合系统设计分析 110
5.6.2 混合系统设计之通信系统 111
5.6.3 混合系统设计之二:行驶控制系统 114
5.6.4 工作空间输入输出Workspace I/O设置 117
5.7 Simulink的调试技术 120
5.7.1 Simulink图形调试器启动 120
5.7.2 调试器的操作设置与功能 120
5.7.3 系统调试举例 122
习题 126
第三部分 精通——Simulink高级仿真技术第6章 Simulink系统仿真原理 129
6.1 Simulink求解器概念 129
6.1.1 离散求解器 129
6.1.2 连续求解器 130
6.2.2 事件通知 132
6.2 系统过零的概念与解决方案 132
6.2.1 过零的产生 132
6.2.3 支持过零的模块 133
6.2.4 过零的举例——过零的产生与关闭过零 134
6.2.5 使用过零检测的其它注意事项 137
6.3 系统代数环的概念与解决方案 137
6.3.1 直接馈通模块 137
6.3.2 代数环的产生 137
6.3.3 代数环的举例与解决方案之一:直接求解系统方程 138
6.3.4 代数环的举例与解决方案之二:代数约束 139
6.3.5 代数环的举例与解决方案之三:切断环 140
6.4 高级积分器 142
6.5.1 高级选项 145
6.5 仿真参数设置:高级选项与诊断选项 145
6.5.2 诊断选项 146
习题 147
第7章 Simulink子系统技术 148
7.1 Simulink简单子系统概念: 148
回顾与复习 148
7.1.1 通用子系统的生成 149
7.1.2 子系统的基本操作 150
7.2 Simulink高级子系统技术 150
7.2.1 条件执行子系统的建立方法 151
7.2.2 使能子系统 152
7.2.3 触发子系统 154
7.2.4 触发使能子系统 157
7.2.5 原子子系统 157
7.2.6 其它子系统介绍 159
7.3 Simulink的子系统封装技术 161
7.3.1 如何封装子系统 161
7.3.2 封装编辑器之图标编辑对话框 163
7.3.3 封装编辑器之参数初始化对话框 166
7.3.4 封装编辑器之文档编辑对话框 168
7.4 Simulink模块库技术 170
7.4.1 模块库的概念及其应用 170
7.4.2 建立与使用模块库 171
7.4.3 库模块与引用块的关联 172
7.4.4 可配置子系统 174
习题 175
第8章 Simulink命令行仿真技术 176
8.1 使用命令行方式建立系统模型 177
8.2 回顾与复习:Simulink 与 MATLAB的接口 183
8.3 使用命令行方式进行动态系统仿真 185
8.3.1 使用sim命令进行动态系统仿真 185
8.3.2 举例之:简单仿真 186
8.3.3 举例之二:仿真时间设置 187
8.3.4 举例之三:外部输入变量设置 189
8.3.5 simset与simget命令的使用 191
8.3.6 simplot命令的使用 193
8.4 使用MATLAB脚本分析动态系统 194
8.4.1 蹦极跳的安全性分析 194
8.4.2 行驶控制系统中控制器的调节 196
8.5 其它内容 198
8.5.1 系统状态的确定 198
8.5.2 系统平衡点的确定 200
8.5.3 非线性系统的线性化处理 201
8.6 回调函数 202
习题 205
第9章 S-函数 207
9.1 S-函数概述 207
9.1.1 S-函数的基本概念 207
9.1.2 如何使用S-函数 208
9.1.3 与 S-函数相关的一些术语 210
9.2 S-函数的工作原理 211
9.2.1 状态方程 211
9.2.2 Simulink仿真的两个阶段 212
9.2.3 S-函数仿真流程 213
9.3.1 M文件S-函数的工作流程 214
9.3 编写M文件S-函数 214
9.3.2 M文件S-函数模板 215
9.3.3 含用户参数的简单系统 217
9.3.4 离散系统的S-函数描述 218
9.3.5 连续系统的S-函数描述 220
9.3.6 混合系统的S-函数描述 221
9.4 编写C MEX S-函数 223
9.4.1 MEX文件 223
9.4.2 Simstruct数据结构 224
9.4.3 工作向量(Work Vector) 224
9.4.4 C MEX S-函数流程 226
9.4.5 C MEX S-函数模板 228
9.4.6 S-函数包装程序 234
9.4.7 S-function Builder 235
习题 237
第四部分 实例分析——利用Simulink进行系统设计与分析第10章 控制系统设计分析 241
10.1 控制系统的线性分析 241
10.1.1 滑艇动态方程及其线性化 241
10.1.2 线性时不变系统浏览器LTI Viewer介绍 247
10.1.3 LTI线性时不变系统对象介绍 251
10.2 线性控制系统设计分析 253
10.2.1 控制系统工具箱简介 254
10.2.2 系统分析与设计简介 254
10.2.3 单输入单输出系统设计工具 255
10.3 非线性控制系统设计简介 260
习题 261
11.1.1 基于帧的信号处理 263
第11章 DSP Blockset 263
11.1 DSP处理单元:帧 263
11.1.2 设置Simulink进行DSP仿真 268
11.2 DSP Blockset模块库介绍 269
11.2.1 信号的操作和管理 269
11.2.2 信号变换 271
11.2.3 滤波器设计与频率分析 273
11.2.4 功率谱估计 275
11.2.5 统计 277
11.2.6 矩阵操作与线性方程求解 278
习题 279
附录内容索引 281
参考文献 282