MATLAB
- 格式:doc
- 大小:664.00 KB
- 文档页数:27
课程设计任务书 (一)课题设计的目的 通过此次计算机辅助设计,学生掌握以下基本技能 1、能够用MATLAB软件分析复杂控制系统的性能。 2、能用MATLAB软件定性和定量设计控制系统以满足具体性能指标要求。 3、学会用MATLAB软件进行基本仿真,掌握MATLB编程技巧,提高编程水平。 4、掌握MATLAB语言在控制方面的运用。 5、熟悉MATLAB函数调用,熟练二维图法。 6、掌握MALAB语言结构及调试方法。 (二)设计内容及要实现的目标 给定一个连续控制系统的被控对象G(s)=1∕(s+4)(2s+1),对其系统进行时域分析、频域分析、根轨迹分析及系统的校正。再将连续系统换成离散系统,进行对离散系统的分析与校正。 目录 第1章 前言 1.1 MATLAB简介 1.2 MATLAB应用 第2章 控制系统的线性分析 2.1 时域分析 2.2 频域分析 2.3 根轨迹分析 2.4 系统的校正 第3章 控制系统的离散分析 3.1 时域分析 3.2 频域分析 3.3 根轨迹分析 3.4 系统的校正 第4章 设计小结 第5章 心得体会 第6章 参考文献 第1章 前言 1.1 MATLAB简介 MATLAB是MATrix LABoratory(矩阵实验室)的缩写,是美国The Math Works 公司于1984年推出的一种科学与工程计算语言。20世纪80年代初,MATLAB的创始人Cleve Moler博士 在美国New Mexico大学讲授线性代数课程时,构思并开发了MATLAB。该家与软件专家组建了The Math Works软件开发公司,专门扩展并改进MATLAB。这样,MATLAB就于1984年推出了正式版本,到2005年,MATLAB已经发展到了7.1版。 与其他计算机语言相比较,MATLAB具有其独树一帜的特点: (1)简单易学。尽管MATLAB是一门编程语言,但与其他语言(如C语言)相比,它不需要定义变量 和数组,使用更加方便,并具有灵活性和智能化特色。用户只要具有一般的计算机语言基础,很快就可以掌握它。 (2)代码短小高效。MATLAB程序设计语言集成度高,语句简洁,往往用C∕C++等程序设计语言编写的数百条语句,若使用MATLAB编写,几条或几十条语句就能解决问题,而且程序可靠性高,易于维护,可以大大提高解决问题的效率和水平。 (3)功能丰富,可扩展性强。MATLAB软件包括基本部分和专业扩展部分。基本部分包括矩阵的运算和各种变换、代数与超越方程的求解、数据处理及数值积分等,可以充分满足一般科学计算的需要。专业扩展部分称为工具箱,用于解决某一领域的专业问题。MATLAB的强大功能在很大程度上都来源于它所包含的众多工具箱。大量实用的辅助工具箱适合具有不同专业研究方向及工程应用需求的用户实用。 (4)强大的图形表达功能。MATLAB提供了丰富的图形表达函数,可以用最直观的语句将实验数据或计算结果用图形的方式显示出来,并可以将一些难以表示出来的隐函数直接用曲线绘制出来,不仅可以方便、灵活地绘制一般的二维、三维图形,还可以绘制工程特性较强的特殊图形。MATLAB还允许用户用可视化的方式编写图形用户界面 (GUI),其难易程度与Visual Basic相仿,从而使用户可以容易地应用MATLAB编写通用程序。 (5) 强有力的系统仿真功能。应用MATLAB最重要的软件包之一——Simulink提供的面向框图的建模与仿真功能,可以很容易地构建动态系统的仿真模型,准确地进行仿真分析。Simulink模块库的模块集允许用户在一个GUI框架下对含有控制环节、机械环节和电子∕电机环节的系统进行建模与仿真,这是目前其他计算机语言无法做到的。 正是因为MATLAB具有这些特点,因而风靡全球,不仅成为国际上最受欢迎的科学与工程计算软件之一,而且成为国际上最流行的控制系统计算机辅助设计的工具。很多国际控制界的名流以及相应领域的著名专家都将自己擅长的控制理论及计算机辅助设计(CAD)方法用MATLAB加以实现,编写了大量的控制理论及CAD应用工具箱(即控制理论与CAD应用程序集),这不仅大大提高了MATLAB的声誉与可信度,而且也进一步促进了MATLAB的普及与应用。 现在的MATLAB已经不仅仅是一个“矩阵实验室”了,它已经成为一种具有广阔应用前景的全新的计算机高级编程语言。特别是图形交互仿真环境——Simulink的出现,为MATLAB的应用拓展了更加广阔的空间 。目前,MATLAB不仅流行于控制界,而且在系统仿真、信号分析与处理、通信与电子工程、雷达工程、虚拟制造、生物医学工程、语音处理、图像信号处理、计算机技术以及财政金融等领域中也都有着极其广泛的应用。可以毫不夸张的说,掌握了MATLAB就好比拥有了开启这些专业领域大门的钥匙。 MATLAB是美国和其他发达国家大学教学和科学研究中最常用且必不可少的工具。同时,在国外的大学工科院校中,尤其是在数值计算应用最为频繁的电子信息类学科中,它已成为每个学生都应掌握的工具之一。使用MATLAB后,大大提高了课程教学、作业解题和分析研究的效率。近年来,MATLAB在国内的知名度也越来越高,已被广泛地应用于教学和科研的许多领域,并逐渐成为国内一些高校的本专科学生必须学习和掌握的工具之一。
1.2 MATLAB应用 MATLAB产品族可以用来进行以下各种工作: ● 数值分析 ● 树脂和符号计算 ● 工程与科学绘图 ● 控制系统的设计与仿真 ● 数字图像处理 ● 数字信号处理 ● 通讯系统设计与仿真 ● 财务与金融工程 MATLAB因能够用的范围非常广泛,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。附加的工具箱扩展了MATLAB环境,以解决这些应用领域内特定类型的问题。 第2章 控制系统的线性分析 2.1 时域分析 2.1.1 系统的稳定性分析 (1)求该系统的零点、极点及增益。 >> num=[1]; >> den=[2,9,4]; >> sys=tf(num,den); >> [z,p,k]=zpkdata(sys)
z = [0x1 double]
p = [2x1 double]
k = 0.5000 >> z1=z{1},p1=p{1} z1 = Empty matrix: 0-by-1
p1 = -4.0000 -0.5000
(2)绘制其零极点图,判断系统的稳定性。 >> sys=tf(num,den); >> pzmap(sys) >> grid 该系统没有位于S右半平面的极点,所以系统是稳定的。 2.1.2 系统的动态性能分析 (1)绘制系统的单位阶跃响应曲线 >> step(sys) >> grid (2)根据单位阶跃响应曲线确定动态性能指标
(3)绘制单位脉冲响应曲线 >> impulse(sys,'-ro') 2.2 频域分析 2.2.1 计算系统的稳定裕度及截止频率(或穿越频率) >> num=[1]; >> den=[2,9,4]; >> sys=tf(num,den); >> S=allmargin(sys)
S = GainMargin: Inf GMFrequency: Inf PhaseMargin: [1x0 double] PMFrequency: [1x0 double] DelayMargin: [1x0 double] DMFrequency: [1x0 double] Stable: 1
>> 20*log10(Inf) ans = Inf 2.2.2 绘制Bode图 >> bode(sys) >> grid
2.2.3 绘制其对数幅频特性曲线 >> bodemag(sys) >> grid 2.2.4 绘制其Nyquist曲线 >> nyquist(sys)
2.3 根轨迹分析 2.3.1 绘制其闭环系统的根轨迹 >> rlocus(sys) 2.4 系统的校正 2.4.1 校正后的分析用典I环节,校正后的开环传递函数为: G(s)=4/s(2s+2),校正装置为:G(s)=4(s+4)/s 当K=4时,阶跃响应曲线如图所示; >> num=[4]; >> den=[2 2 0]; >> sys=tf(num,den); >> closys=feedback(sys,1); >> step(closys)
校正后的根轨迹图 >> rlocus(sys) 校正后的nyquist曲线图 >> nyquist(sys)
校正后的波特图 >> bode(sys) 校正前后的阶跃响应曲线的比较 >> sys=tf(1,[2 9 4]); >> closys=feedback(sys,1); >> step(closys) >> hold on >> sys=tf(4,[2 2 0]); >> closys=feedback(sys,1); >> step(closys)
校正前后波特图的比较