matlab仿真实验.docx
- 文档编号:25769101
- 上传时间:2023-06-13
- 格式:DOCX
- 页数:15
- 大小:76.57KB
matlab仿真实验.docx
《matlab仿真实验.docx》由会员分享,可在线阅读,更多相关《matlab仿真实验.docx(15页珍藏版)》请在冰豆网上搜索。
matlab仿真实验
《计算机控制技术及仿真》实验指导
攀枝花学院机电工程学院
二○○八年十月
实验1Matlab环境语法及数学运算
(验证性实验)
一、实验目的
1、掌握Matlab软件使用的基本方法;
2、熟悉Matlab的数据表示、基本运算方法;
3、熟悉Matlab绘图命令及基本绘图控制。
二、实验仪器与软件
1.PC机1台
2.MATLAB6.X环境
三、实验原理
MATLAB环境是一种为数值计算、数据分析和图形显示服务的交互式的环境。
MATLAB有3种窗口,即:
命令窗口(TheCommandWindow)、m-文件编辑窗口(TheEditWindow)和图形窗口(TheFigureWindow),而Simulink另外又有Simulink模型编辑窗口。
1.命令窗口(TheCommandWindow)
当MATLAB启动后,出现的最大的窗口就是命令窗口。
用户可以在提示符“>>”后面输入交互的命令,这些命令就立即被执行。
在MATLAB中,一连串命令可以放置在一个文件中,不必把它们直接在命令窗口内输入。
在命令窗口中输入该文件名,这一连串命令就被执行了。
因为这样的文件都是以“.m”为后缀,所以称为m-文件。
2.m-文件编辑窗口(TheEditWindow)
我们可以用m-文件编辑窗口来产生新的m-文件,或者编辑已经存在的m-文件。
在MATLAB主界面上选择菜单“File/New/M-file”就打开了一个新的m-文件编辑窗口;选择菜单“File/Open”就可以打开一个已经存在的m-文件,并且可以在这个窗口中编辑这个m-文件。
四、实验内容:
1、帮助命令
使用help命令,查找sqrt(开方)函数的使用方法;
2、矩阵运算
(1)矩阵的乘法
已知A=[12;34];B=[55;78];
求A^2*B
(2)矩阵除法
已知A=[123;456;789];
B=[100;020;003];
A\B,A/B
(3)矩阵的转置及共轭转置
已知A=[5+i,2-i,1;6*i,4,9-i];
求A.',A'
(4)使用冒号选出指定元素
已知:
A=[123;456;789];
求A中第3列前2个元素;A中所有列第2,3行的元素;
(5)方括号[]
用magic函数生成一个4阶魔术矩阵,删除该矩阵的第四列
3、多项式
(1)求多项式p(x)=x3+2x+4的根
(2)已知A=[1.2350.9;51.756;3901;1234],
求矩阵A的特征多项式;
求特征多项式中未知数为20时的值;
把矩阵A作为未知数代入到多项式中;
4、基本绘图命令
(1)绘制余弦曲线y=cos(t),t∈[0,2π]
(2)在同一坐标系中绘制余弦曲线y=cos(t-0.25)和正弦曲线y=sin(t-0.5),t∈[0,2π]
5、基本绘图控制
绘制[0,4π]区间上的x1=10sint曲线,并要求:
(1)线形为点划线、颜色为红色、数据点标记为加号;
(2)坐标轴控制:
显示范围、刻度线、比例、网络线
(3)标注控制:
坐标轴名称、标题、相应文本;
6、分别用函数fix()、round()、ceil()、floor()计算x=4.52、4.17的输出值。
7、简述函数collect()、expand()、simplify()、factor()的作用。
五、实验要求
利用所学知识,完成上述各项实验内容,并将实验过程和实验步骤和结果写在报告中。
实验2MATLAB数值运算与绘图
(验证性实验)
一、实验目的
l.熟悉Matlab中各类数据,尤其是矩阵的定义、赋值和运用。
2.了解Matlab的矩阵分析函数以及求线性方程组的数值解;
3.熟悉多项式运算函数、数值插值。
二、实验仪器与软件
1.PC机1台
2.MATLAB6.X环境
三、实验原理
1.创建矩阵的方法
a.直接输入法规则:
矩阵元素必须用[]括住;矩阵元素必须用逗号或空格分隔;在[]内矩阵的行与行之间必须用分号分隔。
逗号和分号的作用:
逗号和分号可作为指令间的分隔符,matlab允许多条语句在同一行出现。
分号如果出现在指令后,屏幕上将不显示结果。
b.用matlab函数创建矩阵:
空阵[]—matlab允许输入空阵,当一项操作无结果时,返回空阵;rand——随机矩阵;eye——单位矩阵;zeros——全部元素都为0的矩阵;ones——全部元素都为1的矩阵。
c.矩阵的修改:
可用键找到所要修改的矩阵,用键移动到要修改的矩阵元素上即可修改;指令修改:
可以用A(,)=来修改。
2.矩阵运算
a.矩阵加、减(+,-)运算规则:
(1)相加、减的两矩阵必须有相同的行和列两矩阵对应元素相加减。
(2)允许参与运算的两矩阵之一是标量。
标量与矩阵的所有元素分别进行加减操作。
b.矩阵乘(,./,.\)运算规则:
A矩阵的列数必须等于B矩阵的行数
标量可与任何矩阵相乘。
c.矩阵乘方——a^n,a^p,p^a
a^p——a自乘p次幂,对于p的其它值,计算将涉及特征值和特征向量,如果p是矩阵,a是标量,a^p使用特征值和特征向量自乘到p次幂;如a,p都是矩阵,a^p则无意义。
d.多项式运算
matlab语言把多项式表达成一个行向量,该向量中的元素是按多项式降幂排列的。
f(x)=an×n+an-1×(n-1)+……+a0
可用行向量p=[anan-1……a1+a0]表示;poly——产生特征多项式系数向量
e.代数方程组求解
matlab中有两种除运算左除和右除。
四、实验内容
1.输入下列向量(矩阵)
>>g=[1234];h=[4321];
2.分别执行以下数组点运算
>>s1=g+h,s2=g.*h,s3=g.^h,s4=g.^2,s5=2.^h
3.输入下列特殊矩阵
〉〉A=[]
〉〉A=eye(10)
〉〉A=ones(5,10)
>>A=rand(10,15)
>>A=randn(5,10)
>>A=zeros(5,10)
4.输入下列矩阵及矩阵函数
>>A=[20–1;132];B=[17–1;423;201];
>>M=A*B%矩阵A与B按矩阵运算相乘
>>det_B=det(B)%矩阵A的行列式
>>rank_A=rank(A)%矩阵A的秩
>>inv_B=inv(B)%矩阵B的逆矩阵
>>[V,D]=eig(B)%矩阵B的特征值矩阵V与特征向量构成的矩阵D
>>X=A/B%A/B=A*B-1,即XB=A,求X
>>Y=B\A%B\A=B-1*A,即BY=A,求Y
5.多项式运算
>>p=[120-56]%表示多项式
>>rr=roots(p)%求多项式p的根
>>pp=poly(rr)%由根的列向量求多项式系数
>>s=[00123]%表示多项式
>>c=conv(p,s)%多项式乘积
>>d=polyder(p)%多项式微分
>>x=-1:
0.1:
2;
>>y=polyval(p,x)%计算多项式的值
6.有理多项式:
>>n=conv([10],[13])%定义分子多项式
>>d=conv([11],[113])%定义分母多项式
>>[r,p,k]=residue(n,d)%进行部分分式展开
>>p1=[1-p
(1)],p2=[1-p2]%定义两个极点多项式p1(s)=s-p
(1),p2(s)=s-p
(2)
>>den=conv(p1,p2)%求分母多项式den=p1(s)*p2(s)
>>num=conv(r1,p2)+conv(r2,p1)%求分子多项式
〉〉[num,den]=residue(r,p,k)%根据r,p,k的值求有理多项式
7.函数插值运算
(1)线形样条插值
〉〉x=0:
10
>>y=sin(x)
>>x0=[3.44.76.58.2]
>>y0=interp1(x,y,x0)%线形插值
>>x1=0:
0.1:
10
>>y1=sin(x1)
>>plot(x1,y1,'r:
',x,y,'b*',x0,y0,'g.')%插值比较
五、实验要求
利用所学知识,完成上述1至7项实验内容,并将实验结果写在实验报告上。
六、实验思考题
1.矩阵建立与有哪几种方法?
2.矩阵的加、减、乘、除运算规则是什么?
实验3Matlab基本编程方法
(设计性实验)
一、实验目的
1、掌握Matlab软件使用的基本方法;
2、熟悉Matlab程序设计的基本方法
二、实验仪器与软件
1.PC机1台
2.MATLAB6.X环境
三、实验原理
根据MATLAB基本数值计算、数据分析和图形函数的功能,按程序设计数学要求完成对象计算的MATLAB程序。
四、实验内容
1、编写命令文件:
计算s=1+2+…+n(s<2000)时的最大n值;
2、编写函数文件:
分别用for和while循环结构编写程序,求2的0到15次幂的和。
3、求信号y=12cos(20t+pi/4)+5sin(45t+pi/6)的频谱。
五、实验要求
利用所学知识,完成上述3项实验内容,并将实验用程序和结果写在实验报告上。
六、实验思考题
1.用FOR和WHILE语句有何要求?
2.用户数据的输入有那几种函数?
实验4控制系统仿真
(一)
(综合性实验)
一、实验目的
1、掌握如何使用Matlab进行系统的时域分析
2、掌握如何使用Matlab进行系统的频域分析
3、掌握如何使用Matlab进行系统的根轨迹分析
二、实验仪器与软件
1.PC机1台
2.MATLAB6.X环境
三、实验原理
根据Matlab控制系统常用函数编写出仿真软件,也可以根据SIMULINK完成实验。
四、实验内容
1、时域分析
(1)根据下面传递函数模型:
绘制其单位阶跃响应曲线并从图上读取最大超调量,绘制系统的单位脉冲响应、零输入响应曲线。
(2)典型二阶系统传递函数为:
当ζ=0.7,ωn取2、4、6、8、10、12的单位阶跃响应。
(3)典型二阶系统传递函数为:
当ωn=6,ζ取0.2、0.4、0.6、0.8、1.0、1.5、2.0的单位阶跃响应。
2、频域分析
(1)典型二阶系统传递函数为:
当ζ=0.7,ωn取2、4、6、8、10、12的伯德图
(2)典型二阶系统传递函数为:
当ωn=6,ζ取0.2、0.4、0.6、0.8、1.0、1.5、2.0的伯德图。
3、根轨迹分析
根据下面负反馈系统的开环传递函数,绘制系统根轨迹,并分析系统稳定的K值范围。
五、实验要求
利用所学知识,完成上述各项实验内容,并将实验用程序和结果写在实验报告上。
如果有图,则将图画在实验报告上。
六、实验思考题
1.二维图形函数有何要求?
2.如果要求实验中所用数据由用户从键盘输入,根据如何编写?
实验5控制系统仿真
(二)
(综合性实验)
一、实验目的
1、掌握如何使用Matlab进行系统的稳定性分析
2、掌握如何使用Matlab进行系统的能观测性、能控性分析
3、掌握如何使用Matlab进行离散系统分析
二、实验仪器与软件
1.PC机1台
2.MATLAB6.X环境
三、实验原理
根据Matlab控制系统常用函数编写出仿真软件,也可以根据SIMULINK完成实验。
四、实验内容
1、系统稳定性分析
(1)代数法稳定性判据:
(用求分母多项式的根方法判断)
已知系统的开环传递函数为:
试对系统闭环判别其稳定性。
(2)根轨迹法判断系统稳定性:
已知一个单位负反馈系统开环传递函数为:
试在系统的闭环根轨迹图上选择一点,求出该点的增益及其系统的闭环极点位置,并判断在该点系统闭环的稳定性。
(3)Bode图法判断系统稳定性:
已知两个单位负反馈系统的开环传递函数分别为:
用Bode图法判断系统闭环的稳定性。
五、实验要求
利用所学知识,完成上述各项实验内容,并将实验用程序和结果写在实验报告上。
如果有图,则将图画在实验报告上。
六、实验思考题
Bode图函数在编程中有何要求?
实验6、7控制计算系统辅助设计
一、实验目的
熟悉控制系统采用PID的超前和滞后校正方法。
二、实验仪器与软件
1.PC机1台
2.MATLAB6.X环境
三、实验内容
1、已知一单位反馈系统的开环传递函数为
试利用MATLAB设计一校正装置,使系统的相角裕量
,剪切频率
。
2、单位反馈系统的开环传递函数为
试利用MATLAB设计一串滞后校正装置,使系统的相角裕量
,并保持原有的开环增益。
3、设单位反馈系统的开环传递函数为
试利用MATLAB设计一校正装置,使系统满足以下性能指标,速度误差系数
,相角裕量
,剪切频率
大作业双闭环直流调速系统的MATLAB仿真
(设计性实验)
一、实验目的
1、了解Simulink下数学模型的仿真方法。
2、掌握数学模型的仿真建模方法和仿真参数设置要求
3、进一步掌握双闭环反馈控制系统的基本特性。
二、实验原理
双闭环控制系统的结构原理框图如下所示:
要求:
在实验前需下根据双闭环控制原理计算出各环的PI参数,写出正确的系统控制数学模型。
三、实验内容
1、直流电机双闭环控制系统SIMULINK仿真模块建立。
2、仿真参数的设置。
3、各控制点的波形分析。
4、改变给定,观察输出响应的变化。
5、用传递函数方程仿真。
四、实验步骤
1、按上述结构和参数建立仿真模型。
2、设定输入为单位阶跃信号,用scope观察系统输出响应。
3、将改变给定,其余参数不变,观察系统输出响应。
4、突加负载,观察系统的抗扰性能。
改变开环放大系数,观察系统的稳定性能。
5.用建立的传递函数方程仿真。
五、实验报告
按规定的实验报告要求写出实验报告,报告的内容有实验目的、建模名称,参数设置,实验电路,仿真模型结构图、仿真结果波形,结果分析。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- matlab 仿真 实验