计算机仿真 MATLAB课程设计报告

合集下载

MATLAB与仿真系统课程设计报告

MATLAB与仿真系统课程设计报告

自动化专业课程设计报告《MATLAB与仿真系统课程设计报告》 -----模型仿真班级:自动化09-1******学号:**********时间:2011年12月12号至12月16号地点:电信实验中心EDA机房********大连海洋大学信息工程学院自动化研究室目录1 课程设计的目的与要求 (3)1.1 课程设计目的 (3)1.2 课程设计要求 (3)2 课程设计课题的分析 (3)3课程设计的内容和安排 (3)4 课程设计的步骤 (4)4.1 根轨迹的概述 (4)4.2 根轨迹的基本概念 (4)4.3 举例 (5)5 课程设计的结果 (10)6 课程设计的心得和体会 (11)7 参考文献 (11)大连海洋大学课程设计报告纸学院: 专业班级: 姓名: 学号:一、课程设计的目的与要求1、课程设计目的:(1)进一步理解和消化书本知识,运用所学知识和技能进行简单的设计。

(2)通过课程设计提高应用能力,为专业课的学习打下基础。

(3)培养查阅资料的习惯,训练和提高独立思考和解决问题的能力。

(4)对选定模型仿真,培养知识综合运用能力和技巧。

2、课程设计要求从课程设计的目的出发,通过设计工作的各个环节,达到以下要求:(1)能够正确理解课程设计的题目和意义,全面思考问题。

(2)运用科学合理的方法,认真按时完成。

二、课程设计课题的分析既然根轨迹是系统特征方程的根随着某个参数变动在s平面上移动的轨迹,那么,根轨迹的形状不同,闭环特征根就不同,系统的性能就不一样。

工程上,为了改善系统的性能,往往需要对根轨迹进行改造。

从前面的分析可知,系统根轨迹的形状、位置完全取决于系统的开环传递函数中的零点和极点。

因此,可通过增加开环零、极点的手段来改造根轨迹,从而实现改善系统性能的目的。

根据根轨迹的绘制法,增加开环零、极点和偶被子对系统根轨迹的影响总结如下。

三、课程设计的内容与安排根据所学知识,设计系统并建立数学模型,选择适当的模块,进行仿真试验,并对所建立的模块合理封装。

matlab课程设计报告书

matlab课程设计报告书

《计算机仿真及应用》课程设计报告书学号:********,********班级:自动化081姓名陈婷,万嘉目录一、设计思想二、设计步骤三、调试过程四、结果分析五、心得体会六、参考文献选题一、考虑如下图所示的电机拖动控制系统模型,该系统有双输入,给定输入)(t R 和负载输入)(t M 。

1、 编制MATLAB 程序推导出该系统的传递函数矩阵。

2、 若常系数增益为:C 1=Ka =Km =1,Kr =3,C2=0.8,Kb =1.5,时间常数T 1=5,T 2=0.5,绘制该系统的根轨迹、求出闭环零极点,分析系统的稳定性。

若)(t R 和)(t M 分别为单位阶跃输入,绘制出该系统的阶跃响应图。

(要求C 1,Ka ,Km ,Kr ,C2,Kb , T 1,T 2所有参数都是可调的)一.设计思想题目分析:系统为双输入单输出系统,采用分开计算,再叠加。

要求参数均为可调,而matlb 中不能计算未赋值的函数,那么我们可以把参数设置为可输入变量,运行期间根据要求赋值。

设计思路:使用append 命令连接系统框图。

选择‘参数=input('inputanumber:')’实现参数可调。

采用的方案:将结构框图每条支路稍作简化,建立各条支路连接关系构造函数,运行得出相应的传递函数。

在得出传递函数的基础上,使用相应的指令求出系统闭环零极点、画出其根轨迹。

通过判断极点是否在左半平面来编程判断其系统是否稳定。

二.设计步骤(1)将各模块的通路排序编号(2)使用append命令实现各模块未连接的系统矩阵(3)指定连接关系(4)使用connect命令构造整个系统的模型三.调试过程出现问题分析及解决办法:在调试过程出现很多平时不注意且不易寻找的问题,例如输入的逗号和分号在系统运行时不支持中文格式,这时需要将其全部换成英文格式,此类的程序错误需要细心。

在实现参数可调时初始是将其设为常量,再将其赋值进行系统运行,这样参数可调性差,后用‘参数=input('inputanumber:')’实现。

matlab仿真实训课程设计

matlab仿真实训课程设计

matlab仿真实训课程设计一、课程目标知识目标:1. 理解Matlab仿真的基本原理,掌握仿真模型的构建方法;2. 学会运用Matlab进行数据可视化,分析仿真结果,并提取有效信息;3. 掌握结合课本知识,运用Matlab解决实际问题的能力。

技能目标:1. 能够独立进行Matlab仿真实验,熟练操作Matlab软件;2. 学会编写简单的Matlab程序,实现对仿真模型的参数调整和优化;3. 能够运用Matlab工具箱进行数据分析和处理,提高问题解决效率。

情感态度价值观目标:1. 培养学生对Matlab仿真的兴趣,激发学生探索科学问题的热情;2. 培养学生的团队协作意识,提高沟通与表达能力;3. 引导学生认识到仿真技术在工程领域的应用价值,树立正确的工程观念。

课程性质:本课程为选修课,旨在帮助学生掌握Matlab仿真的基本技能,提高解决实际问题的能力。

学生特点:学生具备一定的编程基础和数学知识,对Matlab软件有一定了解,但实际操作能力较弱。

教学要求:结合课本内容,注重实践操作,提高学生的动手能力,使学生在实践中掌握理论知识。

将目标分解为具体的学习成果,便于教学设计和评估。

二、教学内容1. Matlab仿真基础- 介绍Matlab软件的安装与基本操作;- Matlab编程基础,包括数据类型、流程控制、函数编写等;- 理解仿真原理,掌握仿真模型构建的基本方法。

2. 数据可视化与分析- 学会使用Matlab进行数据可视化,如二维、三维图形绘制;- 掌握曲线拟合、插值、图像处理等数据分析方法;- 结合课本案例,进行实际操作练习。

3. 仿真实验与问题求解- 根据课本内容,选择合适的问题进行Matlab仿真实验;- 学会调整仿真模型参数,优化实验结果;- 分析实验数据,提取有效信息,解决实际问题。

4. 工具箱应用- 介绍Matlab常用工具箱,如信号处理、控制系统、神经网络等;- 学会运用工具箱进行数据分析和处理,提高问题解决效率;- 结合课本案例,进行实际应用练习。

MATLAB课程设计报告(绝对完整)

MATLAB课程设计报告(绝对完整)

课程设计任务书学生姓名:董航专业班级:电信1006班指导教师:阙大顺,李景松工作单位:信息工程学院课程设计名称:Matlab应用课程设计课程设计题目:Matlab运算与应用设计5初始条件:1.Matlab6.5以上版本软件;2.课程设计辅导资料:“Matlab语言基础及使用入门”、“Matlab及在电子信息课程中的应用”、线性代数及相关书籍等;3.先修课程:高等数学、线性代数、电路、Matlab应用实践及信号处理类相关课程等。

要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1.课程设计内容:根据指导老师给定的7套题目,按规定选择其中1套完成;2.本课程设计统一技术要求:研读辅导资料对应章节,对选定的设计题目进行理论分析,针对具体设计部分的原理分析、建模、必要的推导和可行性分析,画出程序设计框图,编写程序代码(含注释),上机调试运行程序,记录实验结果(含计算结果和图表),并对实验结果进行分析和总结。

具体设计要求包括:①初步了解Matlab、熟悉Matlab界面、进行简单操作;②MATLAB的数值计算:创建矩阵矩阵运算、多项式运算、线性方程组、数值统计;③基本绘图函数:plot, plot3, mesh, surf等,要求掌握以上绘图函数的用法、简单图形标注、简单颜色设定等;④使用文本编辑器编辑m文件,函数调用;⑤能进行简单的信号处理Matlab编程;⑥按要求参加课程设计实验演示和答辩等。

3.课程设计说明书按学校“课程设计工作规范”中的“统一书写格式”撰写,具体包括:①目录;②与设计题目相关的理论分析、归纳和总结;③与设计内容相关的原理分析、建模、推导、可行性分析;④程序设计框图、程序代码(含注释)、程序运行结果和图表、实验结果分析和总结;⑤课程设计的心得体会(至少500字);⑥参考文献(不少于5篇);⑦其它必要内容等。

时间安排:1.5周(分散进行)参考文献:[1](美)穆尔,高会生,刘童娜,李聪聪.MA TLAB实用教程(第二版) . 电子工业出版社,2010.[2]王正林,刘明.精通MATLAB(升级版) .电子工业出版社,2011.[3]陈杰. MA TLAB宝典(第3版) . 电子工业出版社,2011.[4]刘保柱,苏彦华,张宏林. MATLAB 7.0从入门到精通(修订版) . 人民邮电出版社,2010.指导教师签名:年月日系主任(或责任教师)签名:年月日目录1 MATLAB的简介 (1)2课程设计内容 (4)2.1 (5)2.2 (2)2.3 (2)2.4 (2)2.5 (2)2.6 (2)2.7 (2)2.8 (2)2.9 (2)2.10 (2)3课程设计心得体会 (1)4参考文献 (1)1 Matlab 软件简介1.1 MATLAB产生的历史背景MATLAB 是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。

matlab课程设计报告书

matlab课程设计报告书

matlab课程设计报告书目录1.内容描述................................................2 1.1 报告背景与意义.........................................21.2 报告编制依据与范围.....................................32.设计目标与要求..........................................4 2.1 设计目标...............................................52.2 设计要求...............................................63.系统需求分析............................................7 3.1 功能需求...............................................8 3.2 性能需求..............................................103.3 可用性需求............................................114.系统设计概述...........................................12 4.1 设计思路..............................................134.2 设计内容..............................................145.系统详细设计...........................................15 5.1 系统架构设计..........................................16 5.1.1 前端界面设计........................................17 5.1.2 后端逻辑设计........................................19 5.2 数据结构设计..........................................215.3 算法设计..............................................235.4 控制流程设计..........................................256.系统实现...............................................266.1 开发环境搭建..........................................286.2 程序编码实现..........................................296.3 调试与测试............................................317.系统测试与评估.........................................327.1 测试环境与方法........................................347.2 功能测试..............................................357.3 性能测试..............................................367.4 用户满意度调查........................................378.结论与展望.............................................398.1 设计总结..............................................408.2 不足之处与改进方向....................................418.3 未来工作展望..........................................421. 内容描述本报告书旨在详细阐述MATLAB课程设计的整体框架、设计目标、关键问题以及解决方案,以期为后续的课程学习和实践提供参考。

matlab仿真实验报告,Matlab仿真及其应用实验报告.doc

matlab仿真实验报告,Matlab仿真及其应用实验报告.doc

matlab仿真实验报告,Matlab仿真及其应⽤实验报告.doc Matlab仿真及其应⽤ 实验报告温州⼤学物理与电⼦信息⼯程学院Matlab仿真及其应⽤ 实验报告课程名称:Matlab仿真及其应⽤班 级:10电信姓名:吴** 学号:1011000****实验地点:5B305⽇期:12.25实验⼆ Matlab 基本编程基础[实验⽬的和要求]熟悉MATLAB环境与⼯作空间熟悉变量与矩阵的输⼊、矩阵的运算熟悉M⽂件与M函数的编写与应⽤熟悉MATLAB控制语句与逻辑运算掌握if语句、switch语句、try语句的使⽤。

掌握利⽤for语句、while语句实现循环结构的⽅法。

[实验内容]1⾏100列的Fibonacc 数组a,a(1)=a(2)=1,a(i)=a(i-1)+a(i-2),⽤for循环指令来寻求该数组中第⼀个⼤于10000的元素,并之处其位置i。

编写M函数表⽰曲线以及它的包络线,并从命令窗⼝输⼊命令语句绘制曲线。

t的取值范围是[0,4π]。

设,编写⼀个M函数⽂件,使得调⽤f(x)时,x可⽤矩阵代⼊,得出的f(x)为同阶矩阵。

根据,求时的最⼤n值;与(1)的n值对应的y值。

已知求中,最⼤值、最⼩值、各数之和,以及正数、零、负数的个数。

输⼊⼀个百分制成绩,要求输出成绩等级A,B,C,D,E。

其中,90~100分为A,80~89分为B,70~79分为C,60~69分为D,60分以下为E。

求分段函数的值。

⽤if语句实现输出x=-5.0, -3.0, 1.0, 2.0, 2.5, 3.0, 5.0时的y值。

编写⼀M函数,实现近似计算指数,其中x为函数参数输⼊,当n+1步与n步的结果误差⼩于0.00001时停⽌。

编写⼀M函数,a和x作为M函数参数输⼊,函数⾥⾯分别⽤if结构实现函数表⽰实验结果及分析:1.a=ones(1,100); %定义数组for i=3:100a(i)=a(i-1)+a(i-2);if(a(i)>10000)a(i),break;endend ,i2.function y=ff(t)y1=exp(-t/3);y2=exp(-t/3).*sin(3*t); y=[y1;y2]3.function y=f(x);a=input('输⼊a值:');x=input('输⼊x值:');if(x<=-a)y=-1;elseif(x-a)y=x/a;elsey=1;endend4.for n=1:100f(n)=1./(2*n-1);y=sum(f)if y>=3my=y-f(n)breakendendmy5.f(1)=1,f(2)=0,f(3)=1; for n=4:100f(n)=f(n-1)-2*f(n-2)+f(n-3);enda=sum(f);b=max(f);c=min(f);p=f==0,d=sum(p);%p等于f为0的个数p1=f>0,e=sum(p1);p2=f<0,f=sum(p2);a,b,c,d,e,f6.clear;n=input('输⼊成绩:');m=floor(n/10);%取整switch mcase num2cell(9:10)disp('A'); %显⽰在控制框case 8disp('B');case 7disp('C');case 6disp('D');case num2cell(0:5)disp('E');otherwisedisp('error')end7.function y=ex3_4(x)for i=1:length(x)if (x(i)<0)&(x(i)~=-3)y(i)=x(i)^2+x(i)-6elseif (x(i)>=0)&(x(i)<5)&(x(i)~=2)&(x(i)~=3) y(i)=x(i)^2-5*x(i)+6else y(i)=x(i)^2-x(i)-1 endendy8.function t=ex3_4(x) n=0;t=1;y=1;x=input(‘’);while y>=0.00001n=n+1;y=x^n/factorial(n);t=t+y;endn9.function y=f(x);a=input('输⼊a值:'); x=input('输⼊x值:'); if。

MATLAB课程设计报报告

MATLAB课程设计报报告

《计算机仿真及应用》课程设计报告书班级:姓名姓名姓名目录一、设计思想二、设计步骤三、调试过程四、结果分析五、心得体会六、参考文献选题一、考虑如下图所示的电机拖动控制系统模型,该系统有双输入,给定输入)(t R 和负载输入)(t M 。

1、 编制MATLAB 程序推导出该系统的传递函数矩阵。

2、 若常系数增益为:C 1=Ka =Km =1,Kr =3,C2=0.8,Kb =1.5,时间常数T 1=5,T 2=0.5,绘制该系统的根轨迹、求出闭环零极点,分析系统的稳定性。

若)(t R 和)(t M 分别为单位阶跃输入,绘制出该系统的阶跃响应图。

(要求C 1,Ka ,Km ,Kr ,C2,Kb , T 1,T 2所有参数都是可调的)一.设计思想题目分析:系统为双输入单输出系统,采用分开计算,再叠加的方式。

要求参数均为可调,而matlb 中不能计算未赋值的函数,那么我们可以把参数设置为可输入变量,运行期间根据要求赋值。

设计思路:使用append 命令连接系统框图。

定义符号变量。

选择‘参数=input('inputanumber:')’实现参数可调。

采用的方案:将结构框图每条支路稍作简化,建立各条支路连接关系构造函数,运行得出相应的传递函数。

在得出传递函数的基础上,使用相应的指令求出系统闭环零极点、画出各个函数的根轨迹。

通过判断极点是否在左半平面来判断其系统是否稳定。

二.设计步骤(1)将各模块的通路排序编号(2)使用append命令实现各模块未连接的系统矩阵(3)指定连接关系(4)使用connect命令构造整个系统的模型(5)系统稳定性分析三.调试过程出现问题分析及解决办法:在调试过程出现很多平时不注意且不易寻找的问题,例如输入的逗号和分号在系统运行时不支持中文格式,并且会使文件不能保存,需要将其全部换成英文格式。

在实现参数可调时初始是将其设为常量,再将其赋值进行系统运行,这样参数可调性差,后用‘参数=input('inputanumber:')’实现,这样可调性比较强。

计算机仿真实验报告 MATLAB

计算机仿真实验报告 MATLAB

注:以下所有程序均在MATLAB7.0下运行通过。

实验一MATLAB语言编程一、实验目的:熟悉MATLAB语言及其环境,掌握编程方法。

要求认真听取实验指导老师讲解与演示。

二、具体实验内容、步骤、要求:1.运行交互式学习软件,学习MATLAB语言2.在MATLAB的命令窗口下键入如下命令:INTRO(注意:intro为一个用MATLAB语言编写的幻灯片程序,主要演示常用的MATLAB语句运行的结果。

)然后,根据显示出来的幻灯片右图按钮进行操作,可按START→NEXT→NEXT按钮一步步运行,观察。

3.自编程序并完成上机编辑,调试,运行,存盘:(1)、用MATLAB命令完成矩阵的各种运算。

例如:求出下列运算结果,并上机验证。

(1)A(:,1) %取矩阵A的第一列元素ans =11213141(2)A(2,:) %取矩阵A的第二行元素ans =21 22 23 24(3)A(1:2,2:3) %取矩阵A第一二行第二三列的元素ans =12 1322 23(4)A(2:3,2:3) %取矩阵A第二三行第二三列的元素ans =22 2332 33(5)A(:,1:2) %取矩阵A第一列与第二列元素ans =11 1221 2231 3241 42(6)A(2:3) %取矩阵A第二行与第三行的首列元素ans =21 31(7)A(:) %将矩阵A的所有元素按一列排列ans =11213141122232421323334314243444(8)A(:,:) %显示矩阵Aans =11 12 13 1421 22 23 2431 32 33 3441 42 43 44(9)ones(2,2) %建立一个两行两列的全1矩阵ans =1 11 1(10)eye(2) %建立一个二维的单位矩阵ans =1 00 1(2)、绘制数学函数的图形:例如:,理解数组运算与矩阵运算的功能。

MATLAB程序如下:t=0:0.1:8; %建立向量ty=1-2*exp(-t.*sin(t)); %计算向量t的函数向量yplot(t,y); %利用plot命令绘图xlabel('t');ylabel('y=1-2*e^(-t*sin(t))'); %注释横坐标与纵坐标图1.1 所对应的函数图像4.理解函数文件与命令文件的区别,并自编函数文件并调用。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《计算机仿真》MATLAB课程设计报告学院:自动化学院专业:自动化专业班级:姓名:学号:2013年1月14日目录一、基本操作 (1)1、定义一组数据 (1)2、作f1(t)的波形 (1)3、作f2(t)的波形 (2)4、求传递函数以及伯德图 (3)二、子系统封装 (4)1、用simlink建立系统 (4)2、锯齿波输入下的输出 (5)3、在工作空间绘制波形图 (6)三、PID控制器参数整定 (7)1、设置各控制器参数 (8)2、整定后系统的单位阶跃响应曲线 (10)3、编程法求动态性能指标 (13)四、总结与体会 (14)五、参考文献 (14)一、基本操作程序实现:1、自己定义一组数据,并将其保存到文件data.dat 。

要求第一列为时间t (t 为等差数列,0≤t≤200);第二列为与t 对应的201个幅值数据,作为信号f 1 (t )的幅值;第三列为按s 的降幂排列的传递函数分子系数;第四列为按s 的降幂排列的分母系数。

第三列、第四列的数据个数不能超过5个。

2、读入data.dat 数据,画出f 1 (t )的时域波形。

3⎪⎩⎪⎨⎧-<≤≤<≤=其它且)3(15)(10010)(100)(*2)(f 112112t f t f t t f t t f t求取f 2 (t ),将结果保存到result.mat 文件,画出其时域波形。

4、按 data.dat 中的第三列、第四列,求取其对应的传递函数,绘制其bode 图。

报告要求:简述程序的实现过程。

各环节实现过程:1、直接在excel 中按要求写入一组数据,即第一列201个数据t 代表201个时间0--200;第二列是与第一列对应的201个幅值数据;第三列为按s 的降幂排列的传递函数分子系数;第四列为按s 的降幂排列的分母系数。

2、要画出f1(t)的时域波形,具体做法是:先读取excel 中的数据,把它们放入一个矩阵A ,取矩阵的第一列作为输入x ,取矩阵的第二列作为输入y ,最后用plot 命令绘制出f1(t)的时域波形。

具体编程及f1(t)的时域波形如下:A=xlsread('J:\data.dat.xls', 'sheet1');x=A(:,1);y=A(:,2);plot(x,y)图1 f1(t)时域波形图3、先读取excel中的数据到矩阵X和Y中,t从0--9时,把Y矩阵第二列的前十行的数据写为原来的二倍,即f2(t)=2*f1(t), (0<=t<10);t从10--100时,把单元格A11--B101之间的90行2列的数据读入矩阵B,找出矩阵B第二列的数据中大于等于15的数据,并把它们清除;然后B中剩下元素就做乘方运算作为对应的f2(t),即f2(t)=f1(t)^2;取单元格A11--B201之间的190行2列的数据读入矩阵C,把矩阵C中属于矩阵B的元素清除,矩阵Y中对应的第二列的幅值数据就是原幅值数据的超前3秒的幅值,即f2(t)=f1(t-3)。

具体实现代码及其时域波形如下:X=xlsread('J:\data.dat.xls', 'sheet1');Y=xlsread('J:\data.dat.xls', 'sheet1');Y(1:10,2)=2*X(1:10,2);B=xlsread('J:\data.dat.xls','sheet1','A11:B101');B(find(abs(B(:,2))>=15),:)=[];Y(B(:,1)+1,2)=X(B(:,1)+1,2).^2;C=xlsread('J:\data.dat.xls','sheet1','A11:B201');C(B(:,1)-9,:)=[];Y(C(:,1)+1,2)=X(C(:,1)-2,2);x=Y(:,1);y=Y(:,2);plot(x,y)图2 f2(t)时域波形图通过语句将结果保存到result.mat 文件中,具体代码如下:xlswrite('G:\result.mat.xls',Y, 'sheet1');4、读取表格中的C1--C4单元格中的数据,放在矩阵A中,把A转置后作为传函的分子的系数;读取表格中的D1--D5单元格中的数据,放在矩阵B中,把B转置后作为传函的分母的系数。

>>A=xlsread('J:\data.dat.xls', 'sheet1','C1:C5');>>num=A';>>B=xlsread('J:\data.dat.xls', 'sheet1','D1:D5');>>den=B';>>G=tf(num,den)G =3 s^4 + 6 s^3 + 9 s^2 +5 s + 4-------------------------------6 s^4 + 6 s^3 + 3 s^2 + s + 2Continuous-time transfer function.bode(num,den)图3 伯德图二、程序要求:1、用 SIMULINK 建立系统: y = ax 3+ bx + c, x 为输入, y为输出,a, b,c 为常数。

对该系统进行封装,要求通过对话框能修改a, b, c的值。

2、若输入x为幅度为5、频率为0.25Hz的锯齿波,采用示波器显示输出y及输入x的波形。

3、将输入x、输出y,导入到工作空间,并采用plot命令,将两个波形在同一波形窗口显示,带网格线、图例。

报告要求:用文字阐述上述程序的实现过程。

具体实现过程:1、输出y是三个环节的叠加,如下图所示:子系统封装图4 封装前的simlink仿真图图5 封装后的simlink仿真图图6 信号输入图2、双击输入X的仿真系统,改变其参数,设置成幅值为5,频率为0.25HZ的锯齿波,运行仿真系统,分别观看输入和输出的示波器上的波形。

图7 输入锯齿波的波形图8 a=b=1时的输出波形3、在command window 中输入以下语句:x=simout;y=simout1;grid;plot(x);hold on;plot(y)在同一个窗口中绘制出输入x,输出y的波形,具体波形如下图:图9 输入x(下)和输出y(上)的波形三、PID 控制器参数整定某控制系统的开环传递函数为11010)(23n +++=s s s s G ,采用单位负反馈。

程序要求:1、试采用工程整定法,设置合适的P 、PI 、PID 控制器的参数。

2、将仿真时间定为300秒,绘制整定后的系统的单位阶跃响应曲线。

3、设计M 文件,采用编程法求取系统阶跃响应性能指标:超调量、调节时间。

报告要求:1、阐述该题目的PID 参数整定过程。

2、阐述超调量、调节时间的求取过程。

具体实现如下:1、采用Z-N 法进行PID 调整。

具体做法是:令Ti=∞,Td=0,只有Kp 的控制系统:将Kp 由零逐渐增大到系统的输出首次呈现持续的等幅振荡,此时的比例系数称为临界增益,用Kc 表示,并记下振荡的周期Tc 。

按下表的共识确定PID 控制器的参数。

表1 调节器参数设置调节器的类型 Kp Ti Td P 0.5Kc ∞ 0 PI 0.45Kc Tc/1.2 0PID0.6Kc 0.5Tc 0.125Tc图10 封装前的simlink 仿真图图11 封装后的simlink仿真图通过如下对话框可以修改各比例系数的值图12 修改比例系数截图通过试验,得出输出为等幅振荡时,Kc=0.9,Tc=2,这和理论计算结果也一致,见下图:图13 等幅振荡时Kc=0.9,Tc=2因此我们得出各种不同类型调节器下的对应参数设置,见下表:调节器的类型Kp Ti TdP 0.45 ∞0`PI 0.406 1.66 0PID 0.55 1 0.242、仿真时间为300秒时,通过P控制得到阶跃响应曲线为下图:图14 P控制下的阶跃响应曲线(1)图15 P控制下的阶跃响应曲线(2)图16 PI控制下的阶跃响应曲线(1) 图17 PI控制下的阶跃响应曲线(2)图18 PID控制下的阶跃响应曲线(1)图19 PID控制下的阶跃响应曲线(2)经过PID控制后、超调量超过了25%,太大,所以PID参数需要调整。

我们把PID中的参数Ti改为5,其他两个参数不变,得到如下阶跃响应图,可以看出调整后系统阶跃响应的超调量小于25%,符合工程要求。

图20 调整后的PID阶跃响应图3、用编程法求取系统阶跃响应性能指标的代码如下:(PID控制后系统的闭环传函为)num=[1.35,5.4,1.08];den=[1,1,11.35,6.4,1.08];t=0:0.01:100;y=step(num,den,t);plot(t,y)G=tf(num,den);C=dcgain(G);[Y,k]=max(y);chaotiao=(Y-C)/Cchaotiao =0.1015G =1.35 s^2 + 5.4 s + 1.08------------------------------------s^4 + s^3 + 11.35 s^2 + 6.4 s + 1.08Continuous-time transfer function.i=length(t);while(y(i)>0.98*C)&(y(i)<1.02*C);i=i-1;endts=t(i)ts =16.37004、校正方法总结:P控制器只改变信号的增益,而不影响其相位。

Kp增大可以减小系统的稳态误差,从而提高系统的控制精度,但会降低系统的相对稳定性,甚至可能造成闭环系统不稳定。

很少单独使用P控制规律。

PI控制器在系统中增加一个位于原点的开环极点和一个位于S左半平面的开环零点,只要积分时间常数足够大,PI控制器对系统稳定性的不利影响可大为减弱,主要用来改善控制系统的稳态性能。

PID在系统中增加一个位于原点的开环极点和两个负实零点,具有提高系统稳态性能的优点外,在提高系统动态性能方面具有更大的优越性。

四、总结与体会MATLAB是简便查看系统仿真的高效便捷的工具,本文通过使用具体功能对控制系统的仿真进行了模拟,得到了相关的结论,对书本所学的知识是一定的巩固和延伸,在学习过程中我遇到了一些困难,在同学老师的帮助下也克服了,希望在接下来的学习中能够更好的掌握,为后续各门控制课程的学习奠定了良好的基础。

相关文档
最新文档