本书不拘泥于严谨的控制理论,而使用MATLAB/SIMULINK来了解控制工程的问题,内容包含两个部分:第1部分介绍SIMULINK的使用方法,从基本功能到高级功能都配合范例进行了详细介绍,并分析了每一个模块:第2部分介绍控制系统的设计、分析与仿真,如时域响应分析、频域响应分析、根轨迹法、状态空间设计法及离散控制系统等。
本书内容简洁实用,循序渐进,是一本适合专科以上理工科学生及工作人员自学的工具书。
第1章概论
1.1控制系统简介
1.2MATLAB/SIMULINK简介
1.3系统需求
1.4MATLAB的基本使用方法
1.4.1基本操作
1.4.2多维数组
1.4.3矩阵的运算
1.4.4数组的运算
1.4.5向量和矩阵的操作方法
1.4.6矩阵函数
1.4.7字符串
1.4.8多项式运算
1.4.9Script文件与函数
1.4.10程序控制流程
1.4.11输入与输出
第1部分SIMULINK
第2章快速开始
2.1如何开始
2.2一个简单的模型
2.3快速上手
2.4另—个简单模型
2.5PID控制器模型
第3章建构模型
3.1建构新模型
3.2编辑已存在的模型
3.3选择对象
3.3.1选择单个对象
3.3.2选择多个对象
3.3.3选择模型内的所有对象
3.4在不同窗口间复制或移动模块
3.5在模型窗口中移动模块
3.6在模型窗口中复制模块
3.7设置模块的参数
3.8删除模块
3.9改变模块的放置方向
3.10改变模块图标的形状大小
3.11修改模块的名称
3.11.1修改模块的名称
3.11.2改变模块名称的位置
3.12输入值与参数值的标量
扩展(ScalarExpansion)
3.13在模块间连接线段
3.14删除线段
3.15移动线段
3.16移动顶点
3.17分割直线段
3.18生成子系统(Subsystem)
第4章仿真与分析
4.1简介
4.1.1SIMULINK如何工作
4.1.2代数回路结构
4.2仿真
4.2.1从SIMULINK菜单中
执行系统仿真
4.2.2从命令窗口执行系统仿真
4.2.3指定模块的初始值
4.2.4观察输出轨迹
4.3离散时间系统
4.3.1多采样率系统
4.3.2不同采样时间的颜色区别
4.4线性化
4.5平衡点的决定
第5章自定义模块
5.1简介
5.2Masking程序概述
5.3生成一个Masked模块
5.4另一个例子
5.5S函数
5.6一个完整的例子
第6章模块解析
6.1Sources模块库
6.2Sinks模块库
6.3Continuous模块库
6.4Discrete模块库
6.5Math模块库
6.6Functions&Tables模块库
6.7Nonlinear模块库
6.8Signals&Systems模块库
6.9Subsystems模块库
第2部分控制系统
第7章动态系统模型的创建
7.1引言
7.1.1经典控制学的数学模型
表示法——传递函数
7.1.2现代控制学的数学模型
表示法——动态方程式
7.1.3数学模型转换
7.2机械系统
7.3电路系统
7.4电机械系统
第8章时域响应分析法
8.1引言
8.2时域响应
8.2.1瞬时响应的性能指针
8.2.2阶系统
8.2.3高阶系统的近似简化
8.3根轨迹分析
第9章频域响应分析法
9.1引言
9.2波德图
9.3奈奎斯特图
9.4相对稳定性
9.5标准二阶系统频率响应
9.6尼可士图
第10章控制器设计
10.1引言
10.2PID控制器
10.3PID控制器的积分终结
10.4相位超前补偿器
10.5相位滞后补偿器
10.6相位滞后—超前补偿器
第11章状态空间设计法
11.1引言
11.2可控性与可观测性
11.2.1可控性
11.2.2可观测性
11.3极点放置设计
11.4观测器设计
11.5线性二次最佳控制器设计
第12章离散时间控制系统
12.1引言
12.2连续系统的离散化
12.3时域分析,
12.4频域分析
12.5自动引导车系统
12.5.1路径追踪调节器的设计
12.5.2时变最佳控制
12.5.3计算机仿真
12.5.4仿真结果
第13章LTIVieweF
13.1简介
13.2直流伺服电机模型
13.3显示多个模型的响应图形
13.4多输入多输出模型响应
13.5SimulinkLTlViewer
第14章SIS0DesignT001
14.1简介
14.2直流伺服电机模型
14.3增加积分器
14.4增加超前(领先)网络
14.5凹陷滤波器
MATLAB是一个功能相当强大的数值分析仿真软件,它在图形影像的处理上,有堪称一流的表现。另外,它还提供了众多不同功能的工具箱(Toolbox),适合应用于不同的工程领域,这更增加了它的完整性。SIMULINK为后起之秀,俨然成了Math Works的明日之星,全依赖其图形化易学易用的特性,用户已不需要记忆很多函数命令,只需根据模块的功能,就能轻易地组合要仿真的模型。
本书包含两部分内容,第1部分说明SIMULINK的用法,第2部分则使用MATLAB/SIMULINK阐述控制系统中的一些基本原理,如时域响应分析法、频域响应分析法、根轨迹法、状态空间设计法及离散控制系统等。笔者并非数学专家,所学有限,故本书不以严谨的控制理论为基础,而着重于应用MATLAB/SIMULINK来解决控制工程问题。读者若能从本书中获得一些知识,就是笔者最大的愿望。
本书分为两大部分共14章,具体如下:
第1章说明MATLAB/SIMULINK的简要功能,并说明其在控制系统分析仿真上的方便性,并介绍MATLAB的基本使用法,作为全书学习的基础。
第1部分为SIMULINK篇,包括第2~6章。
第2章说明SIMULINK快速使用法,目的是让读者研读完此章后,就能对SIMULINK立即上手、使用。列举3个简单模型作为范例,介绍SIMULINK的使用手法。
第3章进一步说明使用SIMULINK建构模型的一些基本方法。
第4章说明在SIMULINK环境中仿真及仿真结果的分析。讨论设置仿真参数值以及如何从SIMULINK菜单或MATLAB命令视窗中,开始仿真的执行,并且讨论不同迭代演算法。以及讨论SIMULINK所提供线性化以及平衡点相关的工具指令。
第5章说明如何使用SIMULINK提供的Masking功能,可以自定义模块(block)或子系统(subsystem),也可以产生新的对话框和新的模块图标(icon)。
第6章说明SIMULINK所提供模块库(blocklibrary)的功能,并对内含的每一个模块都有功能及使用上的说明,有些还附有范例。本章对需要深入了解SIMULINK的读者而言是重要的一章。
第2部分为控制系统篇,包括第7~14章。
第7章内容以不同的系统为例,说明如何在MATLAB/SIMULINK环境中,建构动态系统的数学模型。
第8章说明控制系统的时域响应,并介绍根轨迹分析法。
第9章说明频率响应分析法,包含有波德图、奈奎斯特稳定准则、相位边限与增益边限等相关论述。
第10章说明如何根据系统规格设计控制器(或称补偿器),包含有PID控制器、相位滞后补偿器,相位超前补偿器和相位滞后—超前补偿器等。
第11章说明状态空间分析法,内容包含有极点安置设计、观测器设计和线性二次最佳控制器设计等。
第12章简要说明离散控制系统,内容包含有取样频率的选择、时域分析法、频域分析法。
第13章说明控制系统工具箱所提供一种用于分析模型的工具——LTIViewer,具有图形化使用界面,方便于线性非时变系统的分析工具。
第14章说明控制系统工具箱所提供一种用于设计控制器或补偿器的工具——SISO
DesignTool,同样具有图形化使用界面,方便简化设计工作。
MATLAB/SIMULINK在专科以上学校电机、电子、机械、航空、医学工程等工程学方面,都有很不错的应用。
范例说明
本书范例可执行于MATLAB4.x、5.x、6.x/Simulinkl.2c、2.x、3.x、4.x上,程序内容
请参见书中相关介绍,并按下列步骤进行:
1. 登录http://www.wenyuan.com.cn,查找本书的相关链接,下载范例程序。
2. 在计算机硬盘上创建一个目录,用来存放范例程序。例如创建的目录为c:kmatexamp,则键盘输入C:Xmdmatexampo对于MATLABVer.4.2/Simulinkl.2c系统,则执行以下操作
3. 将范例程序中的startup4.m复制到MATLAB目录下。
4. 将c:h*natlab目录下的startup4.m更名为startup.mo对于MATLABVer.5.x/Simulink2.x系统,则执行以下操作:
5. 将范例程序中的startup5.m复制到MATLAB\toolbox\local目录下。
6. 将c:\matlab\toolbox\local目录下的startup5.m更名为startup.m。
7. 将范例程序中所有.m程序(startup4.m、startup5.m除外)复制到硬盘的matexamp目录下。
8. 重新启动MATLAB,便可在MATLAB命令窗口(Command Window)下执行范例程序。对于MATLABVer.6.x/Simulink4.x系统,则执行以下操作:
9. 直接将所有的范例程序(.m、.mdl)复制到MATLAB安装目录\work下,即可在MATLAB命令窗口执行范例程序。
由于笔者所学有限,书中难免会有一些错误及不够完善之处,请读者不吝批评指正。