目录 1
第1章 Simulink入门必读 1
1.1 Simulink的特点 1
1.2 应用程序工具箱介绍 2
1.3 Simulink实时工作间 4
1.3.1 用途 4
1.3.2 主要特性 5
1.3.3 运行环境 5
1.4 Ada扩展的实时工作间 5
1.5.2 定点模块集 6
1.5.1 DSP模块集 6
1.5 模块集 6
1.5.3 非线性控制设计模块集 7
1.5.4 电力系统模块集 7
1.6 模型演示 7
1.6.1 运行演示模型 7
1.6.2 演示模型描述 8
1.6.3 初试身手 9
1.6.4 关于本演示程序的进一步探讨 9
1.6.5 其它演示程序 10
1.7 创建一个简单模型 10
2.1 命令及要求概述 17
2.1.1 命令及其功能 17
第2章 Simulink系统操作命令 17
2.1.2 要求一:指定命令的参数 18
2.1.3 要求二:指定执行对象的路径 18
2.1.4 有关说明 18
2.2 用命令建模实例 18
2.3 add_block命令 20
2.4 add_line命令 21
2.5 bdclose命令 21
2.6 bdroot命令 22
2.7 close_system命令 22
2.8 delete_block命令 23
2.10 find_system命令 24
2.9 delete_line模块 24
2.11 gcb命令 26
2.12 gcbh命令 27
2.13 gcs命令 27
2.14 get_param命令 28
2.15 new_system命令 29
2.16 open_system命令 30
2.17 replace_block命令 30
2.18 save_system命令 31
2.19 set_param命令 32
2.20 simulink命令 32
2.21 simulink3命令 33
3.1.1 进入Simulink 34
3.1 Simulink模型编辑概述 34
第3章 Simulink仿真模型编辑器 34
3.1.2 构建新模型 35
3.1.3 编辑已有的模型 35
3.1.4 Simulink命令的输入 35
3.1.5 Simulink窗口 36
3.1.6 状态栏 36
3.1.7 放大和缩小模型图 37
3.2 选择对象 37
3.2.1 选择一个对象 37
3.2.2 选择多个对象 37
3.3.2 虚拟模块 38
3.3 模块及其编辑 38
3.3.1 模块信息提示 38
3.3.3 模块的复制和移动 39
3.3.4 设定模块参数 40
3.3.5 模块的属性对话框 41
3.3.6 删除模块 42
3.3.7 改变模块的方向 42
3.3.8 调整模块大小 43
3.3.9 编辑模块名 43
3.3.12 矢量输入和输出 44
3.3.13 输入和参数的标量扩展 44
3.3.11 断开模块 44
3.3.10 在模型图标下显示模块参数 44
3.3.14 指派模块优先级 45
3.3.15 使用阴影 45
3.4 库的概念及操作 45
3.4.1 术语 46
3.4.2 创建库 46
3.4.3 修改库 46
3.4.4 向模型中复制库模块 46
3.4.5 更新已链接的模块 47
3.4.6 断开与库模块的链接 47
3.4.9 浏览模块库 48
3.4.8 获得库模块信息 48
3.4.7 为参考模块寻找库模块 48
3.5 线 49
3.5.1 在两个模块间画线 49
3.5.2 画分支线 49
3.5.3 画线段 50
3.5.4 显示线的宽度 51
3.5.5 在线上插入模块 52
3.5.6 信号标签及其编辑和传递特性 52
3.5.7 信号属性及其设置 53
3.6 注释 54
3.6.1 创建模型注释 54
3.7 数据类型 55
3.6.5 更改注释的字体 55
3.6.3 编辑注释 55
3.6.2 移动注释 55
3.6.4 删除注释 55
3.7.1 Simulink支持的数据类型 56
3.7.2 支持数据和数字信号类型的模块 56
3.7.3 指定模块参数的数据类型 58
3.7.4 创建一个指定数据类型的信号 59
3.7.5 显示端口数据类型 59
3.7.6 数据类型传递 59
3.7.7 数据类型规则 59
3.7.9 转换信号的数据类型 60
3.7.10 转换参数的数据类型 60
3.7.8 激活严格布尔类型检测 60
3.8 复信号工作方式 61
3.9 鼠标和键盘操作简介 61
3.10 创建子系统 63
3.10.1 通过添加Subsystem模块创建子系统 63
3.10.2 通过组合已有的模块创建子系统 63
3.10.3 子系统端口标签 64
3.10.4 使用调回例程 64
3.11 有关模型构建的提示 66
3.12 构建方程式模型 66
3.12.1 摄氏-华氏温度转换模型 66
3.12.2 建立一个简单的连续系统模型 67
3.14.1 打印对话框 69
3.13 保存模型 69
3.14 打印模型图 69
3.14.2 使用命令打印 70
3.14.3 指定纸张大小和打印方向 71
3.14.4 定位和调整图表大小 71
3.15 模型浏览器 72
3.15.1 Windows系统的模型浏览器 72
3.15.2 使用UNIX系统模型浏览器 72
3.16 追踪模型版本 74
3.16.1 指定当前用户 74
3.16.2 模型属性对话框 75
3.16.3 创建模型的变化历史记录 78
3.16.4 版本控制属性 79
3.17 退出Simulink 80
第4章 Simulink仿真模型动态调试器 81
4.1 调试器使用概述 81
4.1.1 启动调试器 81
4.1.2 获得帮助 82
4.1.3 键入命令 82
4.1.4 模块指数 82
4.1.5 访问MATLAB工作空间 82
4.2 步进运行仿真 83
4.2.1 模块步进 83
4.3 设置断点 84
4.2.4 不间断运行仿真 84
4.2.2 时间步步进 84
4.2.3 断点步进 84
4.3.1 模块断点 85
4.3.2 设置时间步断点 86
4.3.3 对非限定值设置断点 86
4.3.4 设置限定步长步进的断点 86
4.3.5 设置过零断点 86
4.4 显示仿真信息 87
4.4.1 显示模块I/O 87
4.4.2 显示代数环信息 88
4.4.3 显示系统状态 88
4.5.2 显示一个模块 89
4.5.3 显示模型的非虚拟系统 89
4.4.4 显示集成信息 89
4.5.1 显示模型的模块执行顺序 89
4.5 显示模型信息 89
4.5.4 显示模型的非虚拟模块 90
4.5.5 显示含有潜在过零模块 90
4.5.6 显示代数环 91
4.5.7 显示调试工具的设置 91
4.6 调试器命令总汇 91
4.6.4 break命令 93
4.6.3 bafter命令 93
4.6.1 ashow命令 93
4.6.2 atrace命令 93
4.6.5 bshow命令 94
4.6.6 clear命令 94
4.6.7 continue命令 94
4.6.8 disp命令 94
4.6.12 nanbreak命令 95
4.6.13 next命令 95
4.6.14 probe命令 95
4.6.11 minor命令 95
4.6.10 ishow命令 95
4.6.9 help命令 95
4.6.15 quit命令 96
4.6.16 run命令 96
4.6.17 slist命令 96
4.6.18 states命令 96
4.6.19 systems命令 96
4.6.20 status命令 97
4.6.21 step命令 97
4.6.22 stop命令 97
4.6.23 tbreak命令 97
4.6.24 trace命令 97
4.6.25 undisp命令 97
4.6.29 zclist命令 98
4.6.28 zcbreak 命令 98
4.6.26 untrace命令 98
4.6.27 xbreak命令 98
第5章 Simulink仿真运行与结果分析 99
5.1 仿真的运行方式比较 99
5.1.1 使用菜单命令 99
5.1.2 从命令行运行仿真 100
5.2 使用菜单命令运行仿真 100
5.2.1 设置仿真参数和选择仿真器(Solver) 100
5.2.2 应用仿真参数 100
5.2.3 运行仿真 100
5.2.4 仿真诊断(Simulation Diagnostics)对话框 101
5.3.1 Solver选项及其设置 102
5.3 仿真参数对话框 102
5.3.2 Workspace I/O选项设置 107
5.3.3 Diagnostics(诊断)选项设置 111
5.4 提高仿真性能和精度 113
5.4.1 提高仿真速度 113
5.4.2 提高仿真精度 114
5.5 在命令行输入命令运行仿真 114
5.5.1 使用sim命令 114
5.5.2 使用set_param命令 114
5.5.3 sim命令 115
5.5.4 simset命令 116
5.5.5 simget命令 118
5.6 仿真结果的分析 119
5.6.1 使用Scope模块观察输出信号 119
5.6.2 使用返回变量 119
5.6.3 使用To Workspace模块 119
5.7 线性化与线性分析 120
5.7.1 线性模型 120
5.7.2 非线性模型 121
5.7.3 离散系统或者混合连续离散系统 121
5.8 平衡点的确定 122
5.9.3 命令参数 123
5.9.2 命令格式 123
5.9.1 命令用途 123
5.9 linfun函数 123
5.9.4 命令描述 124
5.10 trim函数 126
5.10.1 命令用途 126
5.10.2 命令格式 126
5.10.3 命令描述 126
5.10.4 应用举例 127
5.10.5 限制条件 129
5.10.6 命令算法 129
第6章 Simulink高级仿真模型创建方法 130
6.1 关于模块定制和子系统的封装技术 130
6.2 一个封装子系统的示例 130
6.2.1 创建封装对话框中的提示及相关信息 132
6.2.3 创建模块图标 133
6.2.2 创建模块描述和帮助文本 133
6.2.4 封装方法小结 134
6.3 封装编辑器(Mask Editor) 134
6.3.1 初始化(Initialization)选项 135
6.3.2 Icon选项 140
6.3.3 Documentation选项 146
6.3.4 为封装模块创建动态对话 147
6.4 条件执行子系统 148
6.4.1 使能子系统 149
6.4.2 触发子系统 151
6.5 触发加使能子系统 153
6.4.3 触发子系统可以包含的模块 153
6.6 Simulink仿真原理 155
6.6.1 Simulink工作程序 155
6.6.2 离散时间系统注意事项 161
第7章 Simulink库模块 165
7.1 Simulink模块库 165
7.2 库模块预览 165
7.3 库模块相关说明 169
7.4 输入源库模块 170
7.4.1 Band-Limited White Noise模块 170
7.4.2 Chirp Signal模块 171
7.4.3 Clock模块 172
7.4.4 Constant模块 173
7.4.5 Digital Clock模块 173
7.4.6 Discrete Pulse Generator模块 174
7.4.7 From File模块 175
7.4.8 From Workspace模块 176
7.4.9 Pulse Generator模块 178
7.4.10 Ramp模块 179
7.4.11 Random Number模块 179
7.4.12 Repeating Sequence模块 180
7.4.13 Signal Generator模块 181
7.4.14 Sine Wave模块 182
7.4.15 Step模块 184
7.4.16 Uniform Random Number模块 185
7.5 接收器库模块 186
7.5.1 Display模块 186
7.5.2 Scope模块 187
7.5.3 Stop Simulation模块 193
7.5.4 To File模块 194
7.5.5 To Workspace模块 195
7.5.6 XY Graph模块 197
7.6 离散系统库模块 198
7.6.1 Discrete Filter模块 198
7.6.2 Discrete State-Space模块 199
7.6.3 Discrete Time Integrator模块 200
7.6.4 Discrete Transfer Fcn模块 203
7.6.5 Discrete Zero-Pole模块 204
7.6.6 First-Order Hold模块 205
7.6.7 Unit Delay模块 206
7.6.8 Zero-Order Hold模块 207
7.7 连续系统库模块 208
7.7.1 Derivative模块 208
7.7.2 Integrator模块 209
7.7.3 Memory模块 211
7.7.4 State-Space模块 212
7.7.5 Transfer Fcn模块 213
7.7.6 Transport Delay模块 215
7.7.7 Variable Transport Delay模块 216
7.7.8 Zero-Pole模块 217
7.8 数学运算库模块 218
7.8.1 Abs模块 218
7.8.2 Algebraic Constraint模块 219
7.8.3 Combinatorial Logic模块 220
7.8.4 Complex to Magnitude-Angle模块 222
7.8.5 Complex to Real-Imag模块 222
7.8.6 Dot Product模块 223
7.8.7 Gain模块 224
7.8.8 Logical Operator模块 225
7.8.9 Magnitude-Angle to Complex模块 226
7.8.10 Math Function模块 227
7.8.11 Matrix Gain模块 228
7.8.12 MinMax模块 229
7.8.13 Product模块 230
7.8.14 Real-Imag to Complex模块 231
7.8.15 Relational Operator模块 232
7.8.16 Rounding Function模块 233
7.8.17 Sign模块 234
7.8.18 Slider Gain模块 234
7.8.19 Sum模块 235
7.8.20 Trigonometric Function模块 236
7.9.1 Fcn模块 237
7.9 常用函数和查表库模块 237
7.9.2 Look-Up Table模块 239
7.9.3 Look-Up Table(2-D)模块 240
7.9.4 MATLAB Fcn模块 242
7.9.5 S-function模块 243
7.10 非线性系统库模块 244
7.10.1 Backlash模块 244
7.10.2 Coulomb and Viscous Friction模块 246
7.10.3 Dead Zone模块 247
7.10.4 Manual Switch模块 249
7.10.5 Multiport Switch模块 249
7.10.6 Quantizer模块 250
7.10.7 Rate Limiter模块 251
7.10.8 Relay模块 252
7.10.9 Saturation模块 253
7.10.10 Switch模块 254
7.11 信号与系统库模块 255
7.11.1 Bus Selector模块 255
7.11.2 Configurable Subsystem模块 256
7.11.3 Data Store Memory模块 258
7.11.4 Data Store Read模块 258
7.11.5 Data Store Write模块 259
7.11.6 Data Type Conversion模块 260
7.11.7 Demux模块 261
7.11.8 Enable模块 263
7.11.9 From模块 264
7.11.10 Function-Call Generator模块 265
7.11.11 Goto模块 266
7.11.12 Goto Tag Visibility模块 267
7.11.13 Ground模块 268
7.11.14 Hit Crossing模块 269
7.11.15 IC模块 270
7.11.16 Inport模块 271
7.11.17 Merge模块 273
7.11.18 Model Info模块 274
7.11.19 Mux模块 276
7.11.20 Outport模块 277
7.11.21 Probe模块 279
7.11.22 Selector模块 280
7.11.23 Subsystem模块 281
7.11.24 Terminator模块 282
7.11.25 Trigger模块 282
7.11.26 Width模块 283
第8章 Simulink的最新发展 284
8.1 进入Simulink 4.X 284
8.2 新增功能及模块 284
8.2.1 Simulink编辑器 286
8.2.2 建模改进 288
8.2.3 Simulink调试器 289
8.2.4 模块库 292
8.3.1 Simulink 4.0的运行工具简介 298
8.3.2 Simulink加速器 298
8.2.5 SB2SL 298
8.3 Simulink 4.X的运行工具 298
8.3.3 模型差异工具 299
8.3.4 运行档案器 301
8.3.5 模型覆盖率工具 301
附录 模型、模块参数及模型文件格式 302
A.模型参数 302
B.模块的共有参数 304
C.模块的特有参数 306
D.封装参数 316
E.模型文件格式及示例 317