春MATLAB仿真期末大作业
MATLAB期末考试试卷与答案
---- 一、填空题〔每空2分,总共30分〕
1.A=[096;130];B=[143;150];写出以下各指令运行
的结果。
A&B 的运行结果ans=;
A./B 的运行结果ans=。
2
方
阵的
命令
为
z
e r
o s (4)
1方阵的命 令为ones(3)。
3.A=rand(2,5);b=size(A);c=length(A);那么b 和c 的值分别为
和[2,5],[5]。
4.标点符号分号可以使命令行不显示运算结果,百分号用来表 示该行
行。 5.用if 判断语句判断80≥x>60,在MATLAB 中if 语言后的判断 应写为ifx<=80&x>60。
共10页
6.P,Q分别是个多项式的系数矢量,求P对应的多项式的积分〔对应的常数项为K〕,使用的命令是polyint(P,K);求P/Q的解,商和余数分别保存在k和r,使用的
命令是[k,r]=deconv(P,Q);
7.为了使两个plot的图形在同一个坐标显示,可以使用holdon命令进展图形
保持;可以使用gridon命令为图形添加网格。
8.MATLAB的工作空间中有三个变量v1,v2,v3,写出把它们保存到文件my_data.mat 中的指令savemy_data;写出把my_data.mat文件中的变量读取到MATLAB
工作空间内的指令loadmy_data。
二、选择题〔每空2分,总共20分〕
1.以下哪个变量的定义是不合法的A
(A)abcd-3(B)xyz_3(C)abcdef(D)x3yz
2.以下哪条指令是求矩阵的行列式的值C
MATLAB试卷+答案
2015 学年上学期
《MATLAB 与系统仿真》期末考试试题
(综合大作业)
题号 题分 得分
考试说明: 1、大作业于 2015 年 4 月 3 日公布,2015 年 5 月 9 日前在线提交; 2、考试必须独立完成,如发现抄袭、雷同、拷贝均按零分计。 3、程序设计题(三(8,10) )要求写出完整的程序代码,并在 matlab 软件环境调 试并运行通过,连同运行结果一并附上。 一、填空题(1’ ×25=25’) 1、Matlab 的全称为 MATrix LABoratory 。 2、在 Matlab 编辑器中运行程序的快捷键是: F5 。 3、Matlab 的工作界面主要由以下五个部分组成,它们分别是: Command window(指令 窗口 、 Current directory (当前路径浏览器) 、 Workspace(工作台窗口) 、 Command history (指令历史窗口) 和 Launch pad(发布平台) 。 4、 在 Matlab 中 inf 表示: 无穷大 ; clc 表示: 清除当前 Command window 区域内容 ; more 表示: 显示命令窗口输出一个整个萤幕的时间 ;who 表示: 返回当前工作空间中所 有变量名 ;whos 表示: 返回当前工作空间中所有变量,以及它们的名字、尺寸、所占字 节数、属性等信息 。 5、在 Matlab 命令窗口中运行命令 Simulink 可以打开 Simulink 模块库浏览器窗口。 6、求矩阵行列式的函数: det ;求矩阵特征值和特征向量的函数 eig 。 7、Matlab 预定义变量 ans 表示: 当前未定义变量和变量名的答案 ; eps 表示: 浮点相对精度(其值是从 1.0 到下一个最大浮点数之间的差值) ;nargin 表示: 函 数的输入变量的个数 。 8、 Matlab 提供了两种方法进行程序分析和优化, 分别为:提高程序运算速度 和 减 少内存空间 。 (不确定是否正确) 9、建立结构数组或转换结构数组的函数为: struct
MATLAB期末大作业
MATLAB期末⼤作业
学号:姓名:
《Matlab/Simulink在数学计算与仿真中的应⽤》⼤作业1.假设地球和⽕星绕太阳运转的半径分别为r和2r,利⽤comet指令动画显⽰从地球
到⽕星的转移轨迹(r可以任意取值,要求实时显⽰探测器、太阳、地球和⽕星的位置)。
解函数function comet(varargin)
[ax,args,nargs] = axescheck(varargin{:});
error(nargchk(1,3,nargs,'struct'));
% Parse the rest of the inputs
if nargs < 2, x = args{1}; y = x; x = 1:length(y); end
if nargs == 2, [x,y] = deal(args{:}); end
if nargs < 3, p = 0.10; end
if nargs == 3, [x,y,p] = deal(args{:}); end
if ~isscalar(p) || ~isreal(p) || p < 0 || p >= 1
error('MATLAB:comet:InvalidP', ...
'The input ''p'' must be a real scalar between 0 and 1.'); End
指令 %particle_motion
t = 0:5:16013;
r1=6.7e6;%随便给定参数
%---------------------------
[设计]《MATLAB语言及应用》期末大作业题目与解答
《MATLAB语言及应用》期末大作业题目
1.数组的创建和访问(20分,每小题2分):
1)利用randn函数生成均值为1,方差为4的5*5矩阵A;
2)将矩阵A按列拉长得到矩阵B;
3)提取矩阵A的第2行、第3行、第2列和第4列元素组成2*2的矩阵C;
4)寻找矩阵A中大于0的元素;]
5)求矩阵A的转置矩阵D;
6)对矩阵A进行上下对称交换后进行左右对称交换得到矩阵E;
7)删除矩阵A的第2列和第4列得到矩阵F;
8)求矩阵A的特政值和特征向量;
9)求矩阵A的每一列的和值;
10)求矩阵A的每一列的平均值;
程序代码:
clear;
clc;
A=1+sqrt(4)*randn(5) %生成均值为1,方差为4的5*5矩阵A;
B=A(:) %将矩阵A按列拉长得到矩阵B;
C=A([2 3],[2 4]) %提取矩阵A的第2行、第3行、第2列和第4列元素组
成2*2的矩阵C;
n=find(A>0) %寻找矩阵A中大于0的元素;
x=A(n)
D=A' %求矩阵A的转置矩阵D;
E1=flipud(A); %对矩阵A进行上下对称交换后进行左右对称交换得到矩
阵E;
E=fliplr(E1)
F=A(:,[1 3 5]) %删除矩阵A的第2列和第4列得到矩阵F;
[Av,Ad]=eig(A) %求矩阵A的特征值和特征向量;
S=sum(A,1) %求矩阵A的每一列的和值;
Avg=S/5 %求矩阵A的每一列的平均值;
运行结果:
A =
2.3333 2.1171 0.8568 2.1971 -0.7526
-1.7853 0.4453 -3.8292 1.2944 0.4690 -1.6011 -1.5874 -0.3887 0.7971 0.3448 -0.2100 -0.7769 -1.7828 -4.2700 -1.3165 -1.9771 -0.9730 1.6593 1.0561 2.1601
matlab期末考试试卷及参考答案
一、填空题(本题满分30分,每空3分)
1.设有程序
A=[2,0,1,0;1,0,1,5;0, 6 ,2, 3];B=[1,2,-1;1,3,1];C=A(1:3,[1,2]);
D=size(C)- length(B(2,:));F= C.*B ’
将下列命令的运行结果填在横线上0*、0
D = [0 -1] ; F= [2 0;2 0;0 6] .
2. A=[2,3,2,1;1,2,2,1; 1,2,3,-2];
A1=sum(A>A(2,1));A(2,:)=[],A2=A.^2-4
A1= ; A2= ;
3.P=[1,2,5,4;2,2,1,3];max(P,[ ],1)= [2 2 5 4] ;mean(P,2)= [3 2] .
二、(本题满分10分)试编写计算程序画出曲线与曲面图形
.
22,22,)1((2).);20(cos sin (1).223322≤≤-≤≤-++=≤≤⎪⎩⎪⎨⎧==--y x y x e x z t t y t x y x
π
%1 %2
t=0:0.1: 2*pi; [x,y]=meshgrid(-2:0.1:2);
x= sin(t).^3; z=(x.^2+1).* exp(-x.^2- y.^2+)+x .^2.*y; y= cos (t).^3; mesh(x,y,z)
plot(x,y)
三、(本题满分12分)编写程序解决下列问题:
(1)试产生100⨯4阶矩阵使其元素在0—100之间的随机整数,可将此矩阵理解为100名同学的四门课程(课程1, 课程2, 课程3, 课程4)的成绩.
MATLAB期末考试试题(全12套)
MATLAB期末考试试题
一、填空(30分)
1. 表达式 (3>2)*(5~=5)的类型是(double)。
2. 表达式 (5<2)*120的值是( 0 )。
3. 表达式 (5>2)*(6~=5)的值是( 1 )。
4. 表达式 char(65)=='A' 的值是( 1 )。
5. 表达式 char(65)+1 的值是(66 )。
6. 表达式 'A'+1的值是( 66 )。
7. 表达式 'A'+'B' 的值是(131 )。
8. 存储double型数据占用内存(8 )字节。
9. 存储single型数据占用内存( 4 )字节。
10. 清除命令窗口内容的命令是( clc )。
11. 删除工作空间中保存的变量x的命令是(clear
x )。
12. 将双精度实数的显示格式设置成15位定点小数格式的命令是
( format long )。
13. 将横坐标轴标签设置成“时间(秒)”的语句是(xlabel('时间
(秒)') )。
14. 设置图例的Matlab库函数名是
( legend )。
15. 绘制三维线图的Matlab库函数名是
( plot3 )。
二、选择题(30分)
1. 执行语句x=55后,Matlab将创建变量x,为其分配的存储空间的
大小为(C)
A)2字节 B)4字节 C)8字节 D)16字节
2. 执行语句y=66后,Matlab将创建变量y,其类型为(D )
A)int8 B)int16 C)single D)double
3. 下列整数类型中,不能参与任何运算的类型为( D )
A)int8 B)int16 C)int32 D)int64
(完整word版)Matlab期末复习题(答案)
一、 选择题(有10个题,共20分)
1.有一个4×4矩阵A,表示取得矩阵A 的第一行和第二行的第二列至第四列所有元素的命令是( A )
(A) A(1:2,2:4) (B) A(2:4,1:2) (C) A(1:2:4) (D) A(4:2:1)
2.将一个图形窗口分成3×4个子区并表示第一个子区的命令是( C )
A . subplot(12,1)
B .subplot(1,12)
C .subplot(3,4,1)
D .subplot(1,3,4)
3.利用Matlab 的符号计算功能计算微分方程初值问题⎪⎩
⎪⎨⎧=+-=2)1(42y x x y dx dy 在区间 [1,2]上的解析解时所用到的函数是( D )
(A) ode23 (B) ode45 (C) solve (D) dsolve
4.以下有关Matlab 子函数的性质中不正确的是( D )
(A) 子函数只能被处于同一个文件的主函数或其他子函数调用;
(B) 在M 函数文件中,任何指令通过“名字”对函数进行调用时,子函数的
优先级仅次于内装函数;
(C) 在M 函数文件内,主函数的位置不可改变,但子函数的排列次序可以任
意改变;
(D) help, lookfor 等帮助指令都能提供关于子函数的任何帮助信息。
5.以下语句中生成按钮控件的语句是( B )
(A) h_1=uimenu(gcf,'Label','&Blue');
(B) h_1=uicontrol(gcf,'style','push', 'string','grid off','callback','grid off');
大学专业试题-Matlab期末考试及答案(2021版)
大学专业试题-Matlab期末考试及答案
一、选择题(每小题2分,共22分)
1. 在matlab中____C____用于括住字符串。
A.,
B.;
C.‘’
D.“”
2. 在matlab的命令窗口中执行__A_______命令,可将命令窗口中所有变量清空。
A. clear
B. clc
C. echo off
D. cd
3.下列___D____是合法变量。
A. 1_1
B. a/b
C.变量1
D. eps
4产生所有元素均为1的2行3列矩阵的命令是_A______。
A. ones(2,3)
B.ones(3,2)
C.eye(2,3)
D.eye(3,2)
5.已知a=0:4,b=1:5,下面的运算表达式出错的是_D_______。
A. a+b
B. a./b
C. a.*b
D. a*b
6. subplot(2,1,2)是指__B_______的子图。
A.两行一列的上图
B.两行一列的下图
C.两列一行的左图
D.两列一行的右图
7.在多个句柄对象中,句柄是1的应该是_C_____对象。
A.根对象
B.坐标轴
C.窗口
D.屏幕
8.使用from:step:to方式生成向量,“-3:1:3”,其中-3,1,3分别是:(B)
A、步长值,结束值,开始值
B、开始值,步长值,结束值
C、结束值,步长值,开始值
D、开始值,结束值,步长值
9.i=2; a=2i; b=2*i; c=2*sqrt(-1); 程序执行后a, b, c的值分别是多少?(C )
A.a=4, b=4, c=2.0000i
B.a=4, b=2.0000i, c=2.0000i
MATLAB期末考试试卷及答案--完整版
一、填空题(每空2分,总共30分)
1.已知A=[0 9 6;1 3 0];B=[1 4 3;1 5 0];写出下列各指令运行的结果。
A &
B 的运行结果ans= ;
A ./
B 的运行结果ans= 。
2. 产生4阶全0方阵的命令为 zeros(4) ;产生3阶全1方阵的命令为 ones(3) 。
3. A=rand(2,5);b=size(A);c=length(A);则b和c的值分别为
和 [2,5],[5] 。
4. 标点符号分号可以使命令行不显示运算结果,百分号用来表示该行为注释行。
5. 用if判断语句判断80≥x >60,在MATLAB中if语言后的判断应写为 if x<=80&x>60 。
6. P, Q分别是个多项式的系数矢量,求P对应的多项式的积分(对应的常数项为K),
使用的命令是 polyint(P,K) ;求P/Q的解,商和余数分别保存在k和r,使用的命令是 [k,r]=deconv(P,Q) ;
7.为了使两个plot的图形在同一个坐标显示,可以使用hold on 命令进行图形保持;可以使用 grid on 命令为图形添加网格。
8.MATLAB的工作空间中有三个变量v1, v2, v3,写出把它们保存到文件my_data.mat中的指令 save my_data ;写出把my_data.mat文件中的变量读取到MATLAB工作空间内的指令 load my_data 。
二、选择题(每空2分,总共20分)
1.下列哪个变量的定义是不合法的 A
(A) abcd-3 (B) xyz_3 (C) abcdef (D) x3yz
MATLAB仿真期末大作业
MATLAB仿真期末大作业
姓名:XXXXX
班级:XXXXX
学号:********* 指导教师:XXXXXXX
2012春期末大作业
题目:设单位负反馈控制系统前向通道传递函数由)()(21s G s G 和串联,其中:
)
1(1)()(21++==s A s G s K
s G A 表示自己学号最后一位数(可以是零),K 为开环增益。要求:
(1)设K=1时,建立控制系统模型,并绘制阶跃响应曲线(用红色虚线,并标注坐标和标题);求取时域性能指标,包括上升时间、超调量、调节时间、峰值时间;
(2)在第(1)问中,如果是在命令窗口绘制阶跃响应曲线,用in1或者from workspace 模块将命令窗口的阶跃响应数据导入Simulink 模型窗口,用示波器显示阶跃响应曲线;如果是在Simulink 模型窗口绘制阶跃响应曲线,用out1或者to workspace 模块将Simulink 模型窗口的阶跃响应数据导入命令窗口并绘制阶跃响应曲线。
(3)用编程法或者rltool 法设计串联超前校正网络,要求系统在单位斜坡输
入信号作用时,速度误差系数小于等于0.1rad ,开环系统截止频率s rad c /4.4''≥ω,
相角裕度大于等于45度,幅值裕度大于等于10dB 。
1、当K=1时,A=6时代入得1212()()(1)
G s G s s s ==+ 在命令窗口中输入如下代码运行程序:
num=[2];
den=[1 1 0];
sys=tf(num,den);
sys1=feedback(sys,1);
[y1, t] = step(sys1);
matlab期末作业_附源代码
②Matlab源代码
clc f=[-10,-9]'; A=[6,5;10,20]; B=[60,150]; Ae=[]; Be=[]; xm=[0,0]; xM=[8,Inf]; [x,f_opt]=linprog(f,A,B,Ae,Be,xm,xM)
③结果如下:
Optimization terminated. x= 6.4286 4.2857 f_opt = -102.8571
⑤结果分析: 生产甲800箱,生产乙240箱,获利最多为109.6万元。 显然应该是要改变生产计划的,改变计划获利增加。
7
⑤结果分析: 生产甲642箱,生产乙428箱,获利最多为6.42×10+4.28×9=102.72万元。
(2) 若投资0.8万元可增加原料1千克,讨论这项投资如下: ①目标函数: max 10 x 9 y 0.8
5
6 x 5 y 61 10 x 20 y 150 约束条件: x 8 x, y 0
③结果如下:
Optimization terminated. x= 6.7143 4.1429 f_opt = -104.4286
⑤结果分析: 生产甲671箱,生产乙414箱,获利最多为6.71×10+4.14×9-0.8=103.56万元。 103.56>102.72.易知可以投资这个项目。
MATLAB考核期末(含答案)
一、微分方程求解。(15分)
设1)(8)(4)(2)(2233=+++t y dt t dy dt t y d dt t y d ,0)0(=y ,1)0(=dt
dy ,
0)0(22=dt y d 用ode45方法求微分方程的解。要求: 1)仿真时间t=30秒
2)结果绘制在一张图中,包括
t y -曲线,一阶t y -'曲线,二阶t y -''曲线,三阶t y -'''曲线
3)用图例命令分别说明四条曲线为“
t y -”
,“t y -'”,“t y -''” ,“t y -'''” 4)定义横坐标为“时间”,纵坐标为“输出”,图形标题名称为“微分方程的解”
解:系统方程为 1)(8)(4)(2)(2
233=+++t y dt t dy dt t y d dt t y d , 这是一个单变量三阶常微分方
程。将上式写成一个一阶方程组的形式,这是函数ode45调用规定的格式。
令:y y =)1(
)1()2(∙
∙
==y y y
)2()1()3(∙
∙∙∙∙===y y y y
⎥
⎥⎥⎦⎤⎢⎢⎢⎣
⎡---=⎥⎥⎥⎥⎥⎦⎤
⎢⎢⎢⎢⎢⎣⎡∙∙∙)2(4)3(2)1(81)3()2()3()2()1(y y y y y y y y
函数文件程序:
function ydot=myfun1(t,y)
ydot=[y(2);y(3);1-8*y(1)-2*y(3)-4*y(2)];
主文件程序: t=[0 30]; y0=[0;1;0];
[tt,yy]=ode45(@myfun1,t,y0);
y=(1-yy(:,3)-2*yy(:,2)-4*yy(:,1))/8;
Matlab期末试卷
数学与计算机科学 学院期末考查
Matlab 试卷
专业: 数学与应用数学 课程代码: 学号: 姓 名:
一、 对以下问题设计算法,编程实现,将程序和运行结果从系统中粘贴在试卷上,排版打印
后上交:
1、绘制下列参数方程所确定的函数的图形(选一)。
(1)⎩⎨⎧==t
e y t e x t
t cos sin (2)⎩⎨⎧=-=t t y t t x cos )sin 1( 2、在同一图形窗口中,画出两幅不同图形(用subplot 命令):
(1)cos()y x = (2)sin(/2)y x π=-
3、绘制空间三维曲线:)sin(22y x z +=π
1. 在MATLAB 命令窗口中输入如下命令:
ezplot('exp(t)*sin(t)','exp(t)*cos(t)');title('P101713041 麻莉') 回车运行该命令:可得到如下图所示的图形:
-400
-300
-200
-100
100
200
50100150200250300350400450
500x
y
P101713041 麻莉
2. 在MATLAB 命令窗口中输入如下命令:
>> subplot(2,1,1);ezplot('cos(x)');title('P101713041 麻莉') >> subplot(2,1,2);ezplot('sin(x-pi/2)');title('P101713041 麻莉') 回车运行该命令:可得到如下图所示的图形:
-6
-4
-2
02
4
6
-1-0.500.5
1x
P101713041 麻莉
MATLAB期末大作业模版
学号:
《MATLAB》
期末大作业
学院土木工程与建筑学院
专业
班级
姓名
指导教师李琳
2018年5月16日
题目2:问题描述:在[0 2π]范围内绘制二维曲线图y=cos(5x)*sin(x)
(1)问题分析
这是一个二维绘图问题,先划定x的范围与间距,再列出y的表达式,利用plot函数绘制二维曲线。
(2)软件说明及源代码
>> x = 0:pi/10:2*pi;
>>y = cos(5*x).*sin(x);
>>plot(x,y)
(3)实验结果
题目4:问题描述:创建符号函数并求解,要求写出步骤和运行结果
(1)创建符号函数f=ax2+bx+c
(2)求f=0的解
(1)问题分析
这是一个符号函数显示以及符号函数的求解问题,第一问先定义常量与变量,在写出f表达式,利用pretty函数显示f。第二问利用solve函数求解f=0时的解。
(2)软件说明及源代码
第一问
>> syms a b c x;
>> f=a*x^2+b*x+c;
>> pretty(f)
第二问
>>syms a b c x;
>>f=a*x^2+b*x+c;
>> solve(f)
(3)实验结果
1、
2、
题目5:问题描述:求积分
(1)问题分析
这是一个利用符号函数求积分的问题,先定义变量x,再列出I1表达式,利用int函数求在范围0到Pi/2上的积分。
(2)软件说明及源代码
>> syms x;
>> I1=(1-2*sin(2*x))^0.5;
《Matlab与系统仿真》期末考试
红河学院2011-2012学年春季学期
《Matlab 与系统仿真》
课程期末考试试卷
卷别: A 卷
考试单位:工学院 考试日期: 2012年 6 月 20日
要求:1
M 语言编程;
2
3、提交的压缩包包括M 文件、mdl 模型、Word 文档(仿真输出曲线),压缩包以自己的姓名、学号、班级命名;
一、设计题(每小题50分,共
100分)
1、精馏过程是在一定物料平衡和能量平衡基础上进行的。在精馏塔的连续操作过程中应做到物料平衡、气-液平衡和热量平衡,这三个平衡互相影响,互相制约。现以蒸汽流量作为副变量,精馏塔釜温度为主变量,构成精馏塔釜温度与蒸汽流量串级控制系统。
已知主被控对象的数学模型为G(s)=1.25e -44s /(25s+1)2,副被控对象的数学模型为G(s)=e -4s /(12s+1),精馏塔釜设定温度为1300℃,副控制器选择P作用,主控制器选择PID 作用,试整定串级控制器的参数为最佳值,使系统的最大偏差≤±1.5℃。(采用SIMLINK 仿真,参数自己整定)
解:参数整定:先使ki=0,在单位阶跃信号下,调整Kp 使系统等幅震荡,即系统处于临界稳定状态。记录此时的震荡周期Tc ,比例系数Kc 。则Kp=kc/2.2,Ki=kp/(0.8Tc)。
Kc=5.7,Tc=15,Kp=2.59,Ki=0.216,仿真时间为80
K c=1.55,Tc=150,kp=0.7,Ki=0.00587仿真时间1000 到500秒时输出稳定,系统偏差不大
Kp=0.31 Ki=0.0091
P(s)=0.88
Matlab期末复习题(答案)
M a t l a b期末复习题
(答案)
-CAL-FENGHAI.-(YICAI)-Company One1
一、 选择题(有10个题,共20分)
1.有一个4×4矩阵A,表示取得矩阵A 的第一行和第二行的第二列至第四列所有元素的命令是( A )
(A) A(1:2,2:4) (B) A(2:4,1:2) (C) A(1:2:4) (D) A(4:2:1)
2.将一个图形窗口分成3×4个子区并表示第一个子区的命令是( C )
A . subplot(12,1)
B .subplot(1,12)
C .subplot(3,4,1)
D .subplot(1,3,4)
3.利用Matlab 的符号计算功能计算微分方程初值问题⎪⎩
⎪⎨⎧=+-=2)1(42y x x y dx dy 在区间 [1,2]上的解析解时所用到的函数是( D )
(A) ode23 (B) ode45 (C) solve (D) dsolve
4.以下有关Matlab 子函数的性质中不正确的是( D )
(A) 子函数只能被处于同一个文件的主函数或其他子函数调用;
(B) 在M 函数文件中,任何指令通过“名字”对函数进行调用时,子函数的优
先级仅次于内装函数;
(C) 在M 函数文件内,主函数的位置不可改变,但子函数的排列次序可以任
意改变;
(D) help, lookfor 等帮助指令都能提供关于子函数的任何帮助信息。
5.以下语句中生成按钮控件的语句是( B )
(A) h_1=uimenu(gcf,'Label','&Blue');
(B) h_1=uicontrol(gcf,'style','push', 'string','grid off','callback','grid off');
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
MATLAB仿真
期末大作业
姓名:班级:学号:指导教师:
2012春期末大作业
题目:设单位负反馈控制系统前向通道传递函数由)()(21s G s G 和串联,其中:
)
1(1)()(21++==s A s G s K
s G A 表示自己学号最后一位数(可以是零),K 为开环增益。要求:
(1)设K=1时,建立控制系统模型,并绘制阶跃响应曲线(用红色虚线,并标注坐标和标题);求取时域性能指标,包括上升时间、超调量、调节时间、峰值时间;
(2)在第(1)问中,如果是在命令窗口绘制阶跃响应曲线,用in1或者from workspace 模块将命令窗口的阶跃响应数据导入Simulink 模型窗口,用示波器显示阶跃响应曲线;如果是在Simulink 模型窗口绘制阶跃响应曲线,用out1或者to workspace 模块将Simulink 模型窗口的阶跃响应数据导入命令窗口并绘制阶跃响应曲线。
(3)用编程法或者rltool 法设计串联超前校正网络,要求系统在单位斜坡输入信号作用时,速度误差系数小于等于0.1rad ,开环系统截止频率s rad c /4.4''≥ω,相角裕度大于等于45度,幅值裕度大于等于10dB 。
仿真结果及分析:
(1)、(2)、将Simulink模型窗口的阶跃响应数据导入命令窗口并绘制阶跃响应曲线
通过在Matlab中输入命令:
>> plot(tout,yout,'r*-')
>> title('阶跃响应曲线')
即可得出系统阶跃响应曲线,如下:
求取该控制系统的常用性能指标:超调量、上升时间、调节时间、峰值时间的程序如下:
G=zpk([],[0,-1],5)。
S=feedback(G,1)。
C=dcgain(S)。
[y,t]=step(S)。
plot(t,y)。
[Y,k]=max(y)。
timetopeak=t(k)。
percentovershoot=100*(Y-C)/C。
n=1。
while y(n) n=n+1。 end ristime=t(n)。 i=length(t)。 while(y(i)>0.98*C)&(y(i)<1.02*C) i=i-1。 end setllingtime=t(i)。 运行程序得到如下结果: Zero/pole/gain: 5 ------- s (s+1) C=1(系统终值) timetopeak=1.4365(峰值时间) percentovershoot=8.0778(超调量)ristime=0.8978(上升时间)setllingtime=7.5415(调节时间) (3)建立超前校正子函数如下:function Gc=cqjz_frequency(G,kc,yPm) G=tf(G)。 [mag,pha,w]=bode(G*kc)。 Mag=20*log10(mag)。 [Gm,Pm.Wcg,Wcp]=margin(G*kc)。 phi=(yPm-getfield(Pm,'Wcg'))*pi/180。 alpha=(1+sin(phi))/(1-sin(phi))。 Mn=-10*log(alpha)。 Wcgn=spline(Mag,w,Mn)。 T=1/Wcgn/sqrt(alpha)。 Tz=alpha*T。 Gc=tf([Tz,1],[T,1])。 主函数如下: num=1。 den=conv([1,0],conv([0.3,1],[0.1,1]))。 G=tf(num,den)。 kc=6。yPm=45+6。 Gc=cqjz_frequency(G,kc,yPm)。 G=G*kc。 GGc=G*Gc。 Gy_close=feedback(G,1)。 Gx_close=feedback(GGc,1)。 figure(1)。 step(Gx_close,'b')。hold on。 step(Gy_close,'r')。grid gtext('校正前的')。gtext('校正后的')。 figure(2)。 bode(G,'b')。 hold on。 bode(GGc,'r')。grid gtext('校正前的')。gtext('校正后的')。gtext('校正前的')。gtext('校正后的')。figure(3)。 nyquist(G,'b')。 hold on。 nyquist(GGc,'r')。grid gtext('校正前的')。gtext('校正后的')。 绘制校正前后的单位阶跃响应曲线,开环伯德图和开环奈奎斯特曲线: