目录 第一部分 MATLAB/Simulink基础知识 第1章 初识MATLAB 3 1.1 操作界面简介 3 1.1.1 操作界面 3 1.1.2 当前文件夹 4 1.1.3 命令行窗口 4 1.1.4 工作区 5 1.1.5 命令历史记录窗口 6 1.2 通识命令 6 1.2.1 选项卡命令 6 1.2.2 路径设置 7 1.2.3 无穷量和非数值量 8 1.2.4 注释符及常用命令 9 1.3 基本概念 9 1.3.1 数据类型概述 9 1.3.2 常量与变量 13 1.3.3 字符型数据 14 1.3.4 运算符 14 1.4 帮助系统 17 1.4.1 纯文本帮助 17 1.4.2 帮助导航 17 1.4.3 示例帮助 18 1.5 本章小结 18 第2章 MATLAB基本运算 19 2.1 数组运算 19 2.1.1 数组的创建与操作 19 2.1.2 数组的常见运算 22 2.2 矩阵运算 25 2.2.1 矩阵的生成 26 2.2.2 矩阵的加减运算 29 2.2.3 矩阵的乘法运算 30 2.2.4 矩阵的除法运算 31 2.2.5 矩阵的分解运算 32 2.3 符号运算 32 2.3.1 符号表达式的生成 33 2.3.2 符号矩阵 33 2.3.3 常用符号运算 34 2.4 复数运算 35 2.4.1 复数和复矩阵的生成 35 2.4.2 复数运算函数 37 2.5 本章小结 37 第3章 Simulink仿真基础 38 3.1 基本操作 38 3.1.1 运行Simulink 38 3.1.2 模块库 39 3.1.3 打开系统模型 40 3.1.4 保存系统模型 40 3.1.5 打印模型框图并生成报告 41 3.1.6 常用鼠标和键盘操作 42 3.1.7 环境设置 43 3.1.8 系统模型构建与运行 43 3.2 模块与系统 45 3.2.1 模型文件的创建 45 3.2.2 模块的连接与处理 46 3.2.3 仿真参数设置 47 3.2.4 系统封装 51 3.3 管理模型版本 52 3.3.1 管理模型属性 52 3.3.2 模型文件更改通知 53 3.3.3 指定当前用户 54 3.3.4 查看和编辑模型的信息和历史 54 3.3.5 修改日志 54 3.4 本章小结 55 第4章 公共模块库 56 4.1 模块库概述 56 4.1.1 模块库的基本操作 56 4.1.2 常用模块库 57 4.1.3 信号输出模块库 57 4.1.4 专业模块库 58 4.2 信号源模块库 58 4.2.1 Clock模块 59 4.2.2 Digital Clock模块 59 4.2.3 Constant模块 60 4.2.4 Band-Limited White Noise模块 61 4.2.5 Chirp Signal模块 62 4.2.6 Sine Wave模块 62 4.2.7 Pulse Generator模块 63 4.2.8 Random Number模块 65 4.2.9 Step模块 66 4.2.10 Uniform Random Number模块 66 4.2.11 其他模块 67 4.3 连续模块库 68 4.3.1 Derivative模块 68 4.3.2 Integrator模块 69 4.3.3 Transfer Fcn模块 70 4.3.4 Transport Delay模块 71 4.3.5 Zero-Pole模块 72 4.3.6 State-Space模块 73 4.4 离散模块库 74 4.4.1 Discrete Transfer Fcn模块 75 4.4.2 Discrete Filter模块 76 4.4.3 Unit Delay模块 77 4.4.4 Memory模块 77 4.4.5 Discrete Zero-Pole模块 78 4.4.6 Discrete State-Space模块 79 4.4.7 Zero-Order Hold模块 80 4.4.8 Discrete-Time Integrator模块 81 4.5 查表模块库 82 4.5.1 1-D Lookup Table模块 82 4.5.2 2-D Lookup Table模块 83 4.6 用户自定义函数模块库 84 4.6.1 Fcn模块 84 4.6.2 MATLAB Function模块 85 4.6.3 S-Function模块 86 4.7 数学运算模块库 89 4.7.1 Abs模块 90 4.7.2 Add模块 90 4.7.3 Divide模块 91 4.7.4 Dot Product模块 92 4.7.5 Gain模块 93 4.7.6 Complex to Magnitude-Angle模块 93 4.7.7 Magnitude-Angle to Complex模块 94 4.7.8 其他模块 95 4.8 非线性模块库 95 4.8.1 Backlash模块 96 4.8.2 Coulomb & Viscous Friction模块 97 4.8.3 Dead Zone模块 97 4.8.4 Quantizer模块 98 4.8.5 Rate Limiter模块 99 4.8.6 Saturation模块 100 4.9 信号路由模块库 101 4.9.1 Bus Selector模块 102 4.9.2 Bus Creator模块 102 4.9.3 Mux模块 103 4.9.4 Demux模块 104 4.9.5 Data Store Memory模块 105 4.9.6 Data Store Read模块 106 4.9.7 Data Store Write模块 107 4.10 本章小结 108 第5章 仿真命令操作 109 5.1 操作命令概述 109 5.2 系统命令 110 5.2.1 simulink命令 110 5.2.2 simulink3命令 110 5.2.3 find_system命令 111 5.2.4 new_system命令 113 5.2.5 open_system命令 113 5.2.6 save_system命令 114 5.2.7 bdclose命令 115 5.3 模块操作命令 115 5.3.1 add_block命令 115 5.3.2 delete_block命令 116 5.3.3 add_line命令 116 5.3.4 delete_line命令 118 5.3.5 replace_block命令 118 5.4 获取文件路径 120 5.4.1 gcb命令 120 5.4.2 gcbh命令 120 5.4.3 gcs命令 120 5.4.4 bdroot命令 121 5.5 模型参数命令 121 5.5.1 get_param获取模型参数 121 5.5.2 set_param设置模型参数 123 5.5.3 simget获取模型属性 125 5.6 模型仿真 126 5.7 本章小结 128 第6章 子系统及其封装 129 6.1 子系统介绍 129 6.1.1 子系统含义 129 6.1.2 创建子系统 130 6.1.3 模型浏览器 133 6.2 高级子系统 135 6.2.1 条件执行子系统 135 6.2.2 交替执行子系统 142 6.3 封装子系统 145 6.3.1 封装子系统特征 145 6.3.2 封装选项设置 146 6.4 本章小结 151 第7章 基于S函数建模 152 7.1 S函数概述 152 7.1.1 模块的数学含义 152 7.1.2 Simulink仿真过程 153 7.1.3 S函数回调方法 154 7.1.4 M文件S函数应用 154 7.2 编写S函数 162 7.2.1 S函数模板 162 7.2.2 S函数工作方式 166 7.2.3 S函数控制流 167 7.2.4 S函数的模块化 169 7.3 S函数应用 169 7.4 本章小结 175 第8章 系统运行与调试 176 8.1 仿真参数配置 176 8.1.1 求解器概述 176 8.1.2 仿真参数设置 177 8.2 模型调试 181 8.2.1 调试器GUI模式 182 8.2.2 调试器命令行模式 182 8.2.3 调试器命令 183 8.2.4 调试器控制 184 8.3 设置断点 186 8.3.1 无条件断点 187 8.3.2 有条件断点 188 8.4 仿真信息显示 190 8.4.1 显示模块I/O 190 8.4.2 显示代数环信息 191 8.4.3 显示系统状态 191 8.4.4 显示求解器信息 192 8.4.5 显示模型中模块的执行顺序 193 8.4.6 显示系统或模块 194 8.5 本章小结 196 第二部分 Simulink系统仿真应用 第9章 控制系统仿真基础 199 9.1 控制系统频域分析 199 9.1.1 频率特性的定义 199 9.1.2 频率特性和传递函数的关系 201 9.1.3 频率特性的图形表示方法 202 9.2 幅相频率特性 205 9.2.1 比例环节 205 9.2.2 微分环节 207 9.2.3 积分环节 208 9.2.4 惯性环节 209 9.2.5 一阶复合微分环节 213 9.2.6 二阶振荡环节 215 9.2.7 二阶复合微分环节 220 9.2.8 延迟环节 223 9.2.9 开环系统的幅相特性曲线 223 9.3 对数频率特性(Bode图) 228 9.3.1 比例环节 228 9.3.2 微分环节 228 9.3.3 积分环节 229 9.3.4 惯性环节 229 9.3.5 一阶复合微分环节 230 9.3.6 二阶振荡环节 231 9.3.7 二阶复合微分环节 233 9.3.8 延迟环节 233 9.4 开环系统 234 9.4.1 开环系统的Bode图 234 9.4.2 最小/非最小相角系统 236 9.5 稳定判据 238 9.5.1 奈奎斯特频域稳定判据 238 9.5.2 频域对数稳定判据 243 9.5.3 稳定裕度 244 9.6 本章小结 247 第10章 PID控制系统仿真 248 10.1 PID控制原理 248 10.2 PID控制仿真示例 249 10.3 倒立摆小车控制仿真 258 10.4 本章小结 261 第11章 模糊逻辑控制仿真 262 11.1 模糊逻辑控制基础 262 11.1.1 模糊逻辑控制的基本概念 262 11.1.2 模糊逻辑控制原理 263 11.1.3 模糊逻辑控制规则设计 263 11.2 模糊逻辑控制函数 264 11.2.1 模糊系统基本类型 264 11.2.2 模糊逻辑控制系统的构成 265 11.2.3 模糊推理系统的建立 266 11.2.4 模糊语言变量的隶属度函数 268 11.2.5 模糊规则的建立与修改 271 11.2.6 模糊推理计算与去模糊化 273 11.3 模糊逻辑控制App 276 11.3.1 FIS编辑器 276 11.3.2 隶属度函数编辑器 278 11.3.3 模糊规则编辑器 278 11.3.4 模糊规则浏览器 278 11.3.5 模糊推理输入/输出曲面视图 278 11.4 模糊逻辑控制的经典应用 280 11.4.1 基于Simulink的模糊逻辑控制 280 11.4.2 模糊与PID控制器仿真设计 285 11.5 本章小结 290 第12章 电力系统仿真 291 12.1 电力系统模型环境模块 291 12.1.1 模块功能及仿真类型 292 12.1.2 分析工具 293 12.2 二极管与晶闸管 301 12.2.1 二极管 301 12.2.2 晶闸管 304 12.3 电力系统稳态仿真 307 12.3.1 连续系统仿真 308 12.3.2 离散系统仿真 312 12.4 电力系统电磁暂态仿真 314 12.4.1 断路器模块 315 12.4.2 三相断路器模块 316 12.4.3 三相故障模块 317 12.4.4 暂态仿真分析 318 12.5 本章小结 322 第13章 机电系统仿真 323 13.1 同步电机 323 13.1.1 同步发电机原理分析 323 13.1.2 简化同步电机模块使用 324 13.1.3 同步电机模块使用 329 13.2 负荷模型 337 13.2.1 静态负荷模块 338 13.2.2 三相动态负荷模块 338 13.3 异步电机 339 13.3.1 异步电动机等效电路 339 13.3.2 异步电机模块 340 13.4 直流电机模块 347 13.5 本章小结 351 第14章 通信系统仿真 352 14.1 通信系统仿真概述 352 14.2 信源与信道模型 355 14.2.1 随机整数发生器 355 14.2.2 泊松分布整数发生器 356 14.2.3 伯努利二进制信号发生器 357 14.3 滤波器 358 14.3.1 滤波器相关函数 359 14.3.2 滤波器分析与设计工具 361 14.3.3 滤波器设计模块 363 14.4 调制与解调 365 14.4.1 基带模型与调制通带分析 365 14.4.2 模拟调制与解调器模块 366 14.4.3 数字调制解调器模块 376 14.5 本章小结 383 第15章 神经网络控制仿真 384 15.1 神经网络简介 384 15.1.1 人工神经元模型 384 15.1.2 神经网络的学习规则 386 15.1.3 神经网络函数 387 15.2 神经网络控制系统仿真 389 15.2.1 基于BP神经网络的PID自适应控制 389 15.2.2 基于Simulink的神经网络模块仿真 395 15.2.3 基于Simulink的神经网络控制系统仿真 398 15.2.4 反馈线性化控制 400 15.3 本章小结 402 第16章 滑模控制仿真 403 16.1 基于名义模型的滑模控制 403 16.1.1 名义控制系统结构 403 16.1.2 基于名义模型的控制 404 16.1.3 基于名义模型的滑模控制器的设计 404 16.1.4 基于名义模型的滑模控制仿真 406 16.2 全局滑模控制 411 16.2.1 全局滑模控制器的设计 411 16.2.2 基于全局滑模控制的仿真 412 16.3 基于线性化反馈的滑模控制 416 16.3.1 二阶非线性确定系统的倒立摆仿真 416 16.3.2 二阶非线性不确定系统的倒立摆仿真 420 16.3.3 输入/输出的反馈线性化控制 425 16.3.4 输入/输出的反馈线性化滑模控制 429 16.4 基于模型参考的滑模控制 433 16.5 本章小结 438 第17章 汽车系统仿真 439 17.1 汽车悬架系统仿真 439 17.1.1 运动方程建立 439 17.1.2 主被动悬架系统仿真 441 17.1.3 白噪声路面模拟输入仿真 447 17.2 汽车四轮转向控制系统仿真 448 17.2.1 低速四轮转向系统仿真 451 17.2.2 高速四轮转向系统仿真 452 17.3 汽车制动系统仿真 454 17.3.1 数学模型 454 17.3.2 仿真模型 456 17.4 本章小结 459 附录A Simulink常用命令 460 附录B Simulink基本模块库 462 参考文献 465 14 MATLAB/Simulink系统仿真(第2版) 15 目 录