《 Matlab/Simulink 与控制系统仿真》结业作业
一、必做题
Matlab 学习心得体会:
本学期我们新开了一门 MATLAB/Simulink 与控制系统仿真的课程,虽说是这个学期才开始学习,但是我
们却对 MATLAB 这个软件的基本使用一点都不陌生。而本学期的专门学习,更让我获益匪浅。
第一部分是利用 MATLAB 函数来对控制系统进行分析。
① 例如要求取一个系统的阶跃响应时,我就可以调用 MATLAB 中的 step 函数
② MATLAB 在稳定性分析应用时,通过直接求根函数 roots 来判定系统的稳定性
③ 在利用 MATLAB 分析系统的根轨迹时,使用 rlocus 函数来求取根轨迹图,使用 pzmap 函数求取系统的传递
函数零极点
④ 计算给定一组根的根轨迹增益函数 [k,poles]=rlocufind(sys);[k,poles]=rlocfind(sys,p)
⑤ MATLAB 在稳定性分析应用时,也常通过使用用于计算系统稳定裕度的 margin 函数来完成,它可以从频率
响应数据中计算出幅值裕度、相角裕度以及对应的频率
⑥ 对于使用 MATLAB 来对系统进行频域响应的分析,又往往提供了绘制函数 nyguist 和 bode 来绘制系统的
奈奎斯特曲线图和伯德图
⑦ 其他:grid%添加栅格 hold on%保持,继续在原图绘画 title%添加标题 legend(x,y)%添加
文字标注 gyext(’TEXT’)%在任意可选位置添加文字信息 xlabel(x,y);ylabel(x,y)%添加坐标
轴 分割图形窗口 subplot(1,2,1)%分割为一行两列,并即将绘制第一个
第二部分是利用 MATLAB 的 Simulink 模块来对控制系统进行建模仿真。
Simulink 是一个对动态系统(包括连续系统、离散系统和混合系统)进行建模、仿真和综合分析的集成软件
包,是 MATLAB 的一个附加组件,其特点是模块化操作、易学易用,而且能够使用 MATLAB 提供的丰富的仿真
资源。
对于一个给定的控制系统结构图,需要通过 Simulink 模块来建立该系统的动态模型.下面我就阐述一下,
我在实验过程中常使用的一些模块.
Continuous(连续模块):Derivative 对输入信号微分 Integrator 对输入信号积分 Transfer Fcn 分子
分母以多项式表示的传递函数
Discontinuous(非连续模块):Dead Zone 设定死区范围 Saturation 设置输入信号的正负限幅值模拟环
节的饱和非线性特性
Math Operations(数学运算模块库):Sum 求和 Add 可加减标量,向量和矩阵 Gain 增益(输入信号乘以常
数)
Ports & Subsystems(端口和子系统模块库):In1 输入端口 Out1 输出端口
Sinks(接收器模块):To Workspace 将输出写入工作空间 Scope 示波器
Sources(输入源模块库):Ramp 产生一个常数增加或减小的信号(斜坡函数信号) Step 产生幅值
和起始时间可调的阶跃信号
第三部分是 MATLAB 中常用的工具。
根轨迹分析与设计工具 rltool:rltool 是图形化的交互式工具,可以打开工作空间的单输入单输出(SISO)
系统模型,分析其根轨迹,并且允许用户在根轨迹图上直接放置零极点,完成对系统的校正设计。
操作:(1)在 MATLAB 工作空间中建立好控制系统的数学模型 sys;(2)在 MATLAB 命令窗口中输入
“rltool(sys)”,得到控制系统 sys 的根轨迹设计 GUI 窗口,对系统进行分析。
线性时不变系统分析的图形用户界面 LTI Viewer:
在 MATLAB 的 command Window 中,建立 LTI 对象,之后使用 LTI Viewer 可以绘制 LTI 对象的单位阶跃
响应曲线(Step)、单位脉冲响应曲线(Impulse)、波特图(Bode)、奈奎斯特图(Nyquist)以及零极点图
(Pole/Zero)等。
操作:(1)在 MATLAB 工作空间中建立好控制系统的数学模型;(2)在命令窗口中输入“LTI View”,调
评论0