当前位置:文档之家› Matlab简答题

Matlab简答题

Matlab简答题
Matlab简答题

Matlab简答题

1 程序M文件和函数M文件的区别

(1)程序M 文件中创建的变量都是MATLAB 工作空间中的变量,工作空间中的其它程序和函数可以共享;而函数M 文件创建的变量则一般为局限于函数运行空间内的局部变量;

(2)函数M 文件可以使用传递参数,在函数M 文件的调用式中可以有输入参数和输出参数,而程序M文件则没有这种功能。

2.直接输入法:从键盘直接输入矩阵的元素。

需遵循以下规则:

1)用中括号[ ]把所有矩阵元素括起来。

2)同一行的不同元素之间用空格或逗号间隔。

3 变量名的命名规则

1)变量名应以字母开头,可以由字母数字和下划线混合组成。

2)组成变量名的字母长度不应大于31。

3)变量名应区分字母大小写。

4 举例说明左除与右除的区别

在通常情况下,左除x=a\b是a*x=b的解,右除x=b/a是x*a=b的解,一般情况下,a\b b/a。

Matlab提供了两种除法运算:左除()和右除(/)。

一般情况下,x=ab是方程a*x =b的解,而x=b/a是方程x*a=b的解。

例:a=[1 2 3; 4 2 6; 7 4 9]

b=[4; 1; 2];

x=ab

则显示:x=

-1.5000

2.0000

0.5000

如果a为非奇异矩阵,则ab和b/a可通过a的逆矩阵与b阵得到:

ab = inv(a)*b

b/a = b*inv(a)

5已知矩阵A,B,写出A*B和A.*B的区别

带点的称为“点乘”、“位乘“,即为两个行列数相同的矩阵,对应位置一一相乘,得到的结果依位置对应到结果矩阵中(条件size(A)=size(B))

A=[1 2 3 4;5 6 7 8]

A =

1 2 3 4

5 6 7 8

>> B=[2 4 6 8;10 12 14 16]

B =

2 4 6 8

10 12 14 16

>> A.*B

ans =

2 8 18 32

50 72 98 128

后者就是矩阵乘法了,要求前者A的列数与后者B行数对应

(条件A(m,n)*B(n,q)=C(m,q)

接上面的例子

B=B'

B =

2 10 4 12

6 14

8 16

>> A*B

ans =

60 140

140 348

6已知矩阵A,正整数a,说明A^a 和A.^a的区别

A^a---矩阵的乘方。表示矩阵A 的B 次乘积;

A.^a---矩阵的点乘方,表示要对其元素逐一进行幂运算。与点乘相似。

7 Matlab函数bode和margin 的输出区别

bode函数的作用:离散Bode图(频域响应)

margin函数的作用:利用该函数可以直接求出系统的幅值裕度和相角裕度。

8c2d与c2dm的使用格式区别

c2dm( )函数的一般格式为C2d( Gc,Ts, method) 其中,Gc表示连续系统模型,Ts表示系统采样周期,method指定转换方式。“zoh”表示采用零阶保持器;“foh”表示采用一阶保持器。)

在MATLAB软件中,对连续系统的离散化主要是利用函数c2dm( )函数来实现的,c2dm( )函数的一般格式为C2dm( num, den, T, method),可以通过

MATLAB的帮助文件进行查询。其中:Num:传递函数分子多项式系数;Den:传递函数分母多项式系数;T:采样周期;Method:转换方法;允许用户采用的转换方法有:零阶保持器(ZOH)等五种

9列举出系统模型之间相互转换的函数

residue:传递函数模型与部分分式模型互换

ss2tf:状态空间模型转换为传递函数模型

ss2zp:状态空间模型转换为零极点增益模型

tf2ss:传递函数模型转换为状态空间模型

tf2zp:传递函数模型转换为零极点增益模型

zp2ss:零极点增益模型转换为状态空间模型

zp2tf:零极点增益模型转换为传递函数模型

10 列举出三个实现系统模型连接的matlab函数,并说明调用的基本格式。

系统模型连接的方式主要有串联、并联、反馈等形式。MATLAB提供了模型连接函数。

1) 模型串联

对于SISO系统,其基本格式为sys=series(sys1,sys2)

2) 模型并联

对于SISO系统,其基本格式为sys=parallel(sys1,sys2)

3) 反馈连接

对于SISO系统,其基本格式为sys=feedback(sys1,sys2,sign)

其中,sign=-1(缺省时)即为负反馈,sign=1时为正反馈

11针对连续系统和离散系统模型,各列举一种建立系统模型的matlab函数,并说明调用的基本格式。

Printsys(num,den,’s’):连续系统传递函数

Printsys(num,den,’z’):离散系统传递函数

12列举三种获取离散系统模型参数的matlab函数,并说明调用的基本格式。对于连续系统,调用格式为

[num,den]=tfdata(sys,’v’)

[z,p,k]=zpkdata(sys,’v’)

[A,B,C,D]=ssdata(sys)

对于离散系统,调用格式为

[num,den,Ts]=tfdata(sys,’v’)

[z,p,k,Ts]=zpkdata(sys,’v’)

[A,B,C,D]=ssdata(sys)

‘V’表示返回的数据行向量,只适用于单输入单输出系统

13给出建立线性定常系统能控性矩阵的maltab函数和进行能控性分解的maltab 函数

ctrb()函数:功能是计算可控性矩阵

Co=[B AB A2B … An?1B ]

格式:Co=ctrb(A,B)

Co=ctrb(sys)

这里sys 为状态空间对象

如果rank(Co)=n 则系统可控

ctrbf()函数:系统的可控与不可控分解

[Abar,Bbar,Cbar,T,k]=ctrbf(A,B,C)

T---相似变换阵

k---是长度为n 的一个矢量,其元素为各个块的矩阵

Abar ,Bbar ,Cbar---对应于转换后系统的(A,

B,C),通过它们看出可控与不可控部分

14 while与for循环语句循环语句的区别

前者是以条件的满足与否来判断循环是否结束的。后者是以执行次数是否达到指定值来判断循环是否结束;前者在循环体内必须有可以修改循环控制变量的命令,而后者不需要。

15 M文件命名规则:

(1)一律以字母开头,以字母、数字或下划线组成,不能含有空格、减号等。(2)一般使用小写字母。尽管MATLAB区分变量的大小写,但不区分文件名的大小写。

(3)要防止它与变量名冲突。为此,变量名一般用一两个字符,而M文件的文件名一般用4个以上字符。另外,系统内部的命令及文件名也不要用。

仅供参考

如果发现有错误的地方给大家说说

1 操作符的作用,例如,冒号,[ ],分号,%,=,‘’,逗号,…(续行符)等

2 数学函数有哪些,功能,例如,fix,rem,round,abs,real,image,exp,log,log10,sqrt等

3 常用指令,例如,who,whos,save,load,clc,clear,clf,save,load,hold,grid,disp

4 产生行向量的函数,例如,:,linspace,logspace 用法及功能。注意a:b,linspace(a,b,n) , logspace(a,b,n)各产生几个分量。

5 通过MATLAB函数产生矩阵,例如,zeros:产生全0矩阵(零矩阵)。ones:产生全1矩阵(幺矩阵)。eye:产生单位矩阵。triu:获取某一矩阵的上三角矩阵。tril:获取某一矩阵的下三角矩阵。size:获取指定矩阵的行数和列数。

6 固定变量,例如,ans,pi,i或者j,inf,nan,eps

7在Matlab主要界面的4个重要窗口及其功能

8 已知矩阵A,B, 写出A+3,A*3,A.*B , A.^3, A>3, A~=3和A&B, A(i,j),A(i:j), A(:, j), A(i,:)的结果

9 数据处理函数polyfit,interp1,interp2,poly,roots,polyval,conv,deconv,polyder。

10 进行矩阵运算的各种函数命令fliplr,flipup,rot90,diag

11 用于创建符号的指令sym,syms;进行符号矩阵计算的函数有共轭转置符号,det、inv、rank、eig;进行符号表达式计算的函数limit,int,diff,solve,dsolve。积分变换函数fourier,laplace,ztrans及其逆变换。

12 建立模型的matlab函数,例如,运用tf,zpk建立连续系统和离散系统模型;13获取模型参数的matlab函数,例如,tfdata,zpkdata, ssdata。

14模型转换的函数,例如,residue,zp2tf,tf2zp,c2d。

15实现控制系统模型连接的函数,series,parallel,feedback

16 根轨迹绘制函数及其调用格式rlocus(sys) ,rlocus(sys,T);

运用鼠标在根轨迹上选点的函数rlocfind。

注:num标记的是分子除去根轨迹增益后的分子多项式系数

17 绘制频率特性曲线的函数nyquist、bode和margin。调用格式

bode(sys)

bode(num,den)---可自动地选择一个合适的频率范围。

bode(sys,ω )---给出频率范围,这里频率范围一般由ω =logspace(a,b,n)给出18注意函数bode 和margin的区别.可以从绘图区别和输出区别来说。[mag,phase,ω ]=bode(sys)和[gm,pm,wg,wp]=margin(sys)

19 [re,im,ω ]=nyquist(sys)

20 分别获得两种输入(阶跃,脉冲)下系统响应的函数为step,impulse。特别注意lsim,可以给出系统在任意输入(例如单位斜坡信号)下的响应曲线。

21 二维图形的绘制函数plot,调用格式plot(x, y, 选项);三维图形的绘制函数plot3,调用格式plot3(x, y, z,选项).选项包括颜色、线型及标记点(数据点)。22函数plotyy( )的一般调用格式plotyy(x1,y1,x2,y2, ‘function1’,’function2’)

23写出semilogx,semilogy,loglog的功能。注意这些函数的字母之间不能加空格。

24 在绘图程序的编写过程中,要注意点运算的应用。注意subplot(m,n,p)的作用。

25进行图形修饰与标注的主要函数有title,xlabel,ylabel,text,gtext,hold on,grid on,legend,axis. 注意legend和gtext不能用于三维图形的绘制。

26程序编写的流程控制语句for…end;while…end;if-else-end;switch…end;

27实现数值矩阵的共轭转置的命令(‘)以及转置的命令(.‘和transpose)

28补充串联超前校正源程序和串联滞后校正源程序,注意函数的使用。

简答

1程序M 文件和函数M 文件的区别?

2从键盘直接输入矩阵的元素。需遵循哪些规则?

3变量名的命名规则

4举例说明左除和右除的区别

5已知矩阵A,B,写出A*B和A.*B的区别

6已知矩阵A,正整数a,说明A^a和A.^a的区别

7Matlab函数bode 和margin的输出区别。

8c2d与c2dm的使用格式区别。

9列举出系统模型之间相互转换的函数

10列举出三个实现系统模型连接的matlab函数,并说明调用的基本格式。

11针对连续系统和离散系统模型,各列举一种建立系统模型的matlab函数,并说明调用的基本格式。

12列举三种获取离散系统模型参数的matlab函数,并说明调用的基本格式。13给出建立线性定常系统能控性矩阵的maltab函数和进行能控性分解的maltab 函数

14while与for循环语句循环语句的区别

前者是以条件的满足与否来判断循环是否结束的。后者是以执行次数是否达到指定值来判断循环是否结束;前者在循环体内必须有可以修改循环控制变量的命令,而后者不需要。

1、选择题40分,20个。MATLAB函数功能和调用格式。

2、小计算源程序编写3个,每个4分。

3、简答2个,每个4分。

4、复杂计算源程序编写,响应曲线源程序编写,2个,每个6分。

5、模型转换源程序编写,频率绘图源程序编写,3个,每个5分。

6、一般绘图源程序编写,补充程序设计的源程序13分。

matlab通信系统仿真

通信系统基于(15,11)汉明编码的matlab仿真 clear m=4; n=2^m-1; k=11; msg1=randint(1,6000*k,[0,1])%产生信息序列 code0=vec2mat(msg1,k); code1=encode(msg1,n,k,'hamming/binary');%进行汉明纠错编码 code2=reshape(code1,90,1000)'; code3=zeros(1000,90);%设置零矩阵,以便储存交织后的序列 for i=1:1000 temp=code2(i,:); temp1=reshape(temp,15,6);%按15*6交织 code3(i,:)=reshape(temp1',1,90); end [row,cloums]=size(code3); code4=code3'; [row1,cloums1]=size(code4); code5=reshape(code4,6,15000)'; %将交织后的序列转换为6行,15000列矩阵msg2=zeros(15000,6); for j=2:6, msg2(:,j)=xor(code5(:,j),code5(:,(j-1))); end msg2(:,1)=code5(:,1);%此时得到的msg2为gray映射后的信号序列 code8=msg2';%转置,便于比特符号转换 A=[32,16,8,4,2,1]; %为比特符合转换所设的序列 msg3=A*code8;%生成符号序列 msg4=qammod(msg3,64);%将符号序列进行64QAM调制 [row2,cloums2]=size(msg4); dB=0:1:20; for k=1:length(dB), snr=10.^(dB(k)./10); %信噪比 sgma=sqrt(63./(6*snr));%标准差 b1=real(msg4)+sgma*randn(row2,cloums2);%分路叠加噪声 b2=imag(msg4)+sgma*randn(row2,cloums2);%分路叠加噪声 rx=complex(b1,b2); %————————量化判决——————————% for m=1:row2, for n=1:cloums2, if ((b1(m,n)<-6)) b11(m,n)=-7;

控制系统MATLAB仿真基础

系统仿真 § 4.1控制系统的数学模型 1、传递函数模型(tranfer function) 2、零极点增益模型(zero-pole-gain) 3、状态空间模型(state-space) 4、动态结构图(Simulink结构图) 一、传递函数模型(transfer fcn-----tf) 1、传递函数模型的形式 传函定义:在零初始条件下,系统输出量的拉氏变换C(S)与输入量的拉氏变换R(S)之比。 C(S) b1S m+b2S m-1+…+b m G(S)=----------- =- -------------------------------- R(S) a1S n + a2S n-1 +…+ a n num(S) = ------------ den(S) 2、在MATLAB命令中的输入形式 在MATLAB环境中,可直接用分子分母多项式系数构成的两个向量num、den表示系统: num = [b1, b2, ..., b m]; den = [a1, a2, ..., a n]; 注:1)将系统的分子分母多项式的系数按降幂的方式以向量的形式输入两个变量,中间缺项的用0补齐,不能遗漏。 2)num、den是任意两个变量名,用户可以用其他任意的变量名来输入系数向量。 3)当系统种含有几个传函时,输入MATLAB命令状态下可用n1,d1;n2,d2…….。 4)给变量num,den赋值时用的是方括号;方括号内每个系数分隔开用空格或逗号;num,den方括号间用的是分号。 3、函数命令tf( ) 在MATLAB中,用函数命令tf( )来建立控制系统的传函模型,或者将零极点增益模型、状态空间模型转换为传函模型。 tf( )函数命令的调用格式为: 圆括号中的逗号不能用空格来代替 sys = tf ( num, den ) [G= tf ( num, den )]

MATLAB与系统仿真

学习中心/函授站_ 成都学习中心 姓名赵洪学号7020140122093 西安电子科技大学网络与继续教育学院 2015学年上学期 《MATLAB与系统仿真》期末考试试题 (综合大作业) 考试说明: 1、大作业于2015年4月3日公布,2015年5月9日前在线提交; 2、考试必须独立完成,如发现抄袭、雷同、拷贝均按零分计。 3、程序设计题(三(8,10))要求写出完整的程序代码,并在matlab软件环境调试并运行通过,连同运行结果一并附上。 一、填空题(1? ×25=25?) 1、Matlab的全称为矩阵实验室。 2、在Matlab编辑器中运行程序的快捷键是:F5 。 3、Matlab的工作界面主要由以下五个部分组成,它们分别是:菜单栏、 工具栏、当前工作目录窗口、工作空间管理窗口和命令窗口。 4、在Matlab中inf表示:无穷大;clc表示:清空命令窗口中的显示内容;more表示:在命令窗口中控制其后每页的显示内容行数;who表示:查阅Matlad内存变量名;whos表示:列出当前工作空间所有变量。 5、在Matlab命令窗口中运行命令Simulink 可以打开Simulink模块库浏览器窗口。 6、求矩阵行列式的函数:det ;求矩阵特征值和特征向量的函数eig 。 7、Matlab预定义变量ans表示:没有指定输出变量名;eps表示:系统精度 ;nargin表示:函数输入参数的个数。 8、Matlab提供了两种方法进行程序分析和优化,分别为:通过Profiler工具优化和通过tic和toc函数进行优化。 9、建立结构数组或转换结构数组的函数为:struct ; 实现Fourier变换在Matlab中的对应函数为:fourier() ;Laplace变换的函数:Laplace() 。

MATLAB实现通信系统仿真实例

补充内容:模拟调制系统的MATLAB 仿真 1.抽样定理 为了用实验的手段对连续信号分析,需要先对信号进行抽样(时间上的离散化),把连续数据转变为离散数据分析。抽样(时间离散化)是模拟信号数字化的第一步。 Nyquist 抽样定律:要无失真地恢复出抽样前的信号,要求抽样频率要大于等于两倍基带信号带宽。 抽样定理建立了模拟信号和离散信号之间的关系,在Matlab 中对模拟信号的实验仿真都是通过先抽样,转变成离散信号,然后用该离散信号近似替代原来的模拟信号进行分析的。 【例1】用图形表示DSB 调制波形)4cos()2cos(t t y ππ= 及其包络线。 clf %%计算抽样时间间隔 fh=1;%%调制信号带宽(Hz) fs=100*fh;%%一般选取的抽样频率要远大于基带信号频率,即抽样时间间隔要尽可能短。 ts=1/fs; %%根据抽样时间间隔进行抽样,并计算出信号和包络 t=(0:ts:pi/2)';%抽样时间间隔要足够小,要满足抽样定理。 envelop=cos(2*pi*t);%%DSB 信号包络 y=cos(2*pi*t).*cos(4*pi*t);%已调信号 %画出已调信号包络线 plot(t,envelop,'r:','LineWidth',3); hold on plot(t,-envelop,'r:','LineWidth',3); %画出已调信号波形 plot(t,y,'b','LineWidth',3); axis([0,pi/2,-1,1])% hold off% xlabel('t'); %写出图例 【例2】用图形表示DSB 调制波形)6cos()2cos(t t y ππ= 及其包络线。 clf %%计算抽样时间间隔 fh=1;%%调制信号带宽(Hz) fs=100*fh;%抽样时间间隔要足够小,要满足抽样定理。 ts=1/fs; %%根据抽样时间间隔进行抽样

matlab控制系统仿真课程设计

课程设计报告 题目PID控制器应用 课程名称控制系统仿真院部名称机电工程学院专业 班级 学生姓名 学号 课程设计地点 课程设计学时 指导教师 金陵科技学院教务处制成绩

一、课程设计应达到的目的 应用所学的自动控制基本知识与工程设计方法,结合生产实际,确定系统的性能指标与实现方案,进行控制系统的初步设计。 应用计算机仿真技术,通过在MATLAB软件上建立控制系统的数学模型,对控制系统进行性能仿真研究,掌握系统参数对系统性能的影响。 二、课程设计题目及要求 1.单回路控制系统的设计及仿真。 2.串级控制系统的设计及仿真。 3.反馈前馈控制系统的设计及仿真。 4.采用Smith 补偿器克服纯滞后的控制系统的设计及仿真。 三、课程设计的内容与步骤 (1).单回路控制系统的设计及仿真。 (a)已知被控对象传函W(s) = 1 / (s2 +20s + 1)。 (b)画出单回路控制系统的方框图。 (c)用MatLab的Simulink画出该系统。 (d)选PID调节器的参数使系统的控制性能较好,并画出相应的单位阶约响应

曲线。注明所用PID调节器公式。PID调节器公式Wc(s)=50(5s+1)/(3s+1) 给定值为单位阶跃响应幅值为3。 有积分作用单回路控制系统 无积分作用单回路控制系统

大比例作用单回路控制系统 (e)修改调节器的参数,观察系统的稳定性或单位阶约响应曲线,理解控制器参数对系统的稳定性及控制性能的影响? 答:由上图分别可以看出无积分作用和大比例积分作用下的系数响应曲线,这两个PID调节的响应曲线均不如前面的理想。增大比例系数将加快系统的响应,但是过大的比例系数会使系统有比较大的超调,并产生振荡,使稳定性变坏;增大积分时间有利于减小超调,减小振荡,使系统的稳定性增加,但是系统静差消除时间变长,加入微分环节,有利于加快系统的响应速度,使系统超调量减小,稳定性增加。 (2).串级控制系统的设计及仿真。 (a)已知主被控对象传函W 01(s) = 1 / (100s + 1),副被控对象传函W 02 (s) = 1 / (10s + 1),副环干扰通道传函W d (s) = 1/(s2 +20s + 1)。 (b)画出串级控制系统方框图及相同控制对象下的单回路控制系统的方框图。(c)用MatLab的Simulink画出上述两系统。

自控-二阶系统Matlab仿真

自动控制原理 二阶系统性能分析Matlab 仿真大作业附题目+ 完整报告内容

设二阶控制系统如图1所示,其中开环传递函数 ) 1(10 )2()(2+=+=s s s s s G n n ξωω 图1 图2 图3 要求: 1、分别用如图2和图3所示的测速反馈控制和比例微分控制两种方式改善系统的性能,如果要求改善后系统的阻尼比ξ =0.707,则和 分别取多少? 解: 由)1(10 )2()(2 += +=s s s s s G n n ξωω得10 21,10,102===ξωωn t K d T

对于测速反馈控制,其开环传递函数为:) 2()s (2 2n t n n K s s G ωξωω++=; 闭环传递函数为:2 2 2)2 (2)(n n n t n s K s s ωωωξωφ+++= ; 所以当n t K ωξ2 1+=0.707时,347.02)707.0(t =÷?-=n K ωξ; 对于比例微分控制,其开环传递函数为:)2()1()(2 n n d s s s T s G ξωω++=; 闭环传递函数为:) )2 1(2)1()(2 22 n n n d n d s T s s T s ωωωξωφ++++=; 所以当n d T ωξ2 1 +=0.707时,347.02)707.0(=÷?-=n d T ωξ; 2、请用MATLAB 分别画出第1小题中的3个系统对单位阶跃输入的响应图; 解: ①图一的闭环传递函数为: 2 22 2)(n n n s s s ωξωωφ++=,10 21 ,10n ==ξω Matlab 代码如下: clc clear wn=sqrt(10); zeta=1/(2*sqrt(10)); t=0:0.1:12; Gs=tf(wn^2,[1,2*zeta*wn,wn^2]); step(Gs,t)

系统仿真的MATLAB实现.

第七章系统仿真的MATLAB实现 由于计算机技术的高速发展,我们可以借助计算机完成系统的数字仿真。综前所述,数字仿真实质上是根据被研究的真实系统的模型,利用计算机进行实验研究的一种方法。仿真的主要过程是:建立模型、仿真运行和分析研究仿真结果。仿真运行就是借助一定的算法,获得系统的有关信息。 MATLAB是一种面向科学与工程计算的高级语言,它集科学计算、自动控制、信号处理、神经网络和图像处理等学科的处理功能于一体,具有极高的编程效率。MATLAB是一个高度集成的系统,MATLAB提供的Simulink是一个用来对动态系统进行建模、仿真和分析的软件包,它支持线性和非线性系统,能够在连续时间域、离散时间域或者两者的混合时间域里进行建模,它同样支持具有多种采样速率的系统。在过去几年里,Simulink已经成为数学和工业应用中对动态系统进行建模时使用得最为广泛的软件包。 MATLAB仿真有两种途径:(1)MATLAB可以在SIMULINK窗口上进行面向系统结构方框图的系统仿真;(2)用户可以在MATLAB的COMMAND窗口下,用运行m文件,调用指令和各种用于系统仿真的函数,进行系统仿真。这两种方式可解决任意复杂系统的动态仿真问题,前者编辑灵活,而后者直观性强,实现可视化编辑。 下面介绍在MATLAB上实现几类基本仿真。 7.1 计算机仿真的步骤 在学习计算机仿真以前,让我们先总结一下计算机仿真的步骤。 计算机仿真,概括地说是一个“建模—实验—分析”的过程,即仿真不单纯是对模型的实验,还包括从建模到实验再到分析的全过程。因此进行一次完整的计算机仿真应包括以下步骤:

(1)列举并列项目 每一项研究都应从说明问题开始,问题由决策者提供或由熟悉问题的分析者提供。 (2)设置目标及完整的项目计划 目标表示仿真要回答的问题、系统方案的说明。项目计划包括人数、研究费用以及每一阶段工作所需时间。 (3)建立模型和收集数据 模型和实际系统没有必要一一对应,模型只需描述实际系统的本质或者描述系统中所研究部分的本质。因此,最好从简单的模型开始,然后进一步建立更复杂的模型。 (4)编制程序和验证 利用数学公式、逻辑公式和算法等来表示实际系统的内部状态和输入/输出的关系。建模者必须决定是采用通用语言如MATLAB、FORTRAN、C还是专用仿真语言来编制程序。在本教材中,我们选择的是MATLAB和其动态仿真工具Simulink。 (5)确认 确认指确定模型是否精确地代表实际系统。它不是一次完成,而是比较模型和实际系统特性的差异,不断对模型进行校正的迭代过程。 (6)实验设计 确定仿真的方案、初始化周期的长度、仿真运行的长度以及每次运行的重复次数。 (7)生产性运行和分析 通常用于估计被仿真系统设计的性能量度。利用理论定性分析、经验定性分析或系统历史数据定量分析来检验模型的正确性,利用灵敏度分析等手段来检验模型的稳定性。 (8)文件清单和报表结果 (9)实现

MATLABsimulink系统仿真分析仿真报告

仿真报告 课程名称:自动化技术导论 报告题目:MATLAB/simulink系统仿真分析 班级 姓名 学号 xxxxxx自动化学院 2016年4月 软件版本:MATLAB R2010b MATLAB强处理能力 MATLAB是一个包含大量计算算法的集合。其拥有600多个工程中要用到的数学运算函数,可以方便的实现用户所需的各种计算功能。函数中所使用的算法都是科研和工程计算中的最新研究成果,而且经过了各种优化和容错处理。在通常情况下,可以用它来代替底层编程语言,如C和C++ 。在计算要求相同的情况下,使用MATLAB的编程工作量会大大减少。MATLAB的这些函数集包括从最简单最基本的函数到诸如矩阵,特征向量、快速傅立叶变换的复杂函数。函数所能解决的问题其大致包括矩阵运算和线性方程组的求解、微分方程及偏微分方程的组的求解、符号运算、傅立叶变换和数据的统计分析、工程中的优化问题、稀疏矩阵运算、复数的各种运算、三角函数和其他初等数学运算、多维数组操作以及建模动态仿真等。 MATLAB图形处理 MATLAB自产生之日起就具有方便的数据可视化功能,以将向量和矩阵用图形表现出来,并且可以对图形进行标注和打印。高层次的作图包括二维和三维的可视化、图象处理、动画和表达式作图。可用于科学计算和工程绘图。新版本的MATLAB对整个图形处理功能作了很大的改进和完善,使它不仅在一般数据可视化软件都具有的功能(例如二维曲线和三维曲面的绘制和处理等)方面更加完善,而且对于一些其他软件所没有的功能(例如图形的光照处理、色度处理以及四维数据的表现等),MATLAB同样表现了出色的处理能力。同时对一些特殊的可视化要求,例如图形对话等,MATLAB也有相应的功能函数,保证了用户不同层次的要求。另外新版本的MATLAB还着重在图形用户界面(GUI)的制作上作了很大的改善,对这方面有特殊要求的用户也可以得到满足。 MATLAB对许多专门的领域都开发了功能强大的模块集和工具箱。一般来说,它们都是由特定领域的专家开发的,用户可以直接使用工具箱学习、应用和评估不同的方法而不需要自己编写代码。领域,诸如数据采集、数据库接口、概率统计、样条拟合、优化算法、偏微分方程求解、神经网络、小波分析、信号处理、图像处理、系统辨识、控制系统设计、LMI控制、鲁棒控制、模型预测、模糊逻辑、金融分析、地图工具、非线性控制设计、实时快速原型及半物理仿真、嵌入式系统开发、定点仿真、DSP与通讯、电力系统仿真等,都在工具箱(Toolbox)家族中有了自己的一席之地。MATLAB程序接口

二阶系统matlab仿真

simulink仿真 -1<ξ<0 >> step(tf(4^2,[1,2*(-0.5)*4,4^2])) ξ<-1 >> step(tf(4^2,[1,2*(-1.5)*4,4^2])) ξ=0 >> step(tf(4^2,[1,2*0*4,4^2])) 0<ξ<1 >> figure >> step(tf(4^2,[1,2*0.1*4,4^2])) >> step(tf(4^2,[1,2*0.2*4,4^2])) >> step(tf(4^2,[1,2*0.3*4,4^2])) >> step(tf(4^2,[1,2*0.4*4,4^2])) >> step(tf(4^2,[1,2*0.5*4,4^2])) >> step(tf(4^2,[1,2*0.6*4,4^2])) >> step(tf(4^2,[1,2*0.7*4,4^2])) >> step(tf(4^2,[1,2*0.8*4,4^2])) >> step(tf(4^2,[1,2*0.9*4,4^2])) ωn不变,ζ减小

ξ=1 >> figure >> step(tf(4^2,[1,2*1*4,4^2])) ξ>1 >> hold on >> step(tf(4^2,[1,2*2.0*4,4^2])) >> step(tf(4^2,[1,2*4.0*4,4^2])) >> step(tf(4^2,[1,2*8.0*4,4^2])) ωn不变,ζ减小 ξ=0.5,改变ωn时的情况: >> figure >> step(tf(1^2,[1,2*0.5*1,1^2])) (ωn=1)

>> hold on >> step(tf(2^2,[1,2*0.5*2,2^2])) (ωn=2)>> step(tf(4^2,[1,2*0.5*4,4^2])) (ωn=4)>> step(tf(8^2,[1,2*0.5*8,8^2])) (ωn=8) ζ不变,ωn增大 曲线拟合程序 >> figure >> x=[0,0.2,0.4,0.6,0.8,1.0,1.2]; >> y=[1.135,1.135,1.216,1.351,1.534,1.737,2.0,]; >> plot(x,y,'.') >> hold on >> x1=[0:0.1:1.2]; >> y1=1+0.6*x1+0.2*x1.^2; >> plot(x1,y1) >> y1=1+0.7*x1; >> plot(x1,y1)

基于matlab的通信系统仿真

创新实践报告 报告题目: 基于matlab的通信系统仿真学院名称: 信息工程学院 姓名: 班级学号: 指导老师: 二O一四年十月十五日

一、引言 现代社会发展要求通信系统功能越来越强,性能越来越高,构成越来越复杂;另一方面,要求通信系统技术研究与产品开发缩短周期,降低成本,提高水平。这样尖锐对立的两个方面的要求,只有通过使用强大的计算机辅助分析设计技术与工具才能实现。在这种迫切的需求之下,MA TLAB应运而生。它使得通信系统仿真的设计与分析过程变得相对直观与便捷,由此也使得通信系统仿真技术得到了更快的发展。通信系统仿真贯穿着通信系统工程设计的全过程,对通信系统的发展起着举足轻重的作用。通信系统仿真具有广泛的适应性与极好的灵活性,有助于我们更好地研究通信系统性能。通信系统仿真的基本步骤如下图所示: 二、仿真分析与测试 (1)随机信号的生成 利用Matlab中自带的函数randsrc来产生0、1等概分布的随机信号。源代码如下所示: global N N=300; global p

p=0、5; source=randsrc(1,N,[1,0;p,1-p]); (2)信道编译码 1、卷积码的原理 卷积码(convolutional code)就是由伊利亚斯(p 、Elias)发明的一种非分组码。在前向纠错系统中,卷积码在实际应用中的性能优于分组码,并且运算较简单。 卷积码在编码时将k 比特的信息段编成n 个比特的码组,监督码元不仅与当前的k 比特信息段有关,而且还同前面m=(N-1)个信息段有关。 通常将N 称为编码约束长度,将nN 称为编码约束长度。一般来说,卷积码中k 与n 的值就是比较小的整数。将卷积码记作(n,k,N)。卷积码的编码流程如下所示。 可以瞧出:输出的数据位V1,V2与寄存器D0,D1,D2,D3之间的关系。根据模2加运算特点可以得知奇数个1模2运算后结果仍就是1,偶数个1模2运算后结果就是0。 2、译码原理 卷积码译码方法主要有两类:代数译码与概率译码。代数译码主要根据码本身的代数特性进行译码,而信道的统计特性并没有考虑在内。目前,代数译码的主要代表就是大数逻辑解码。该译码方法对于约束长度较短的卷积码有较好的效果,并且设备较简单。概率译码,又称最大似然译码,就是基于信道的统计特性与卷积 码的特点进行计算。在现代通信系统中,维特比译码就是目前使用最广泛的概率 译码方法。 02 1V D D =⊕01232V D D D D =⊕⊕⊕

控制系统Matlab仿真 (传递函数)

控制系统仿真 [教学目的] 掌握数字仿真基本原理 控制系统的数学模型建立 掌握控制系统分析 [教学内容] 一、控制系统的数学模型 sys=tf(num,den)%多项式模型,num为分子多项式的系数向量,den为分母多项式的系%数向量,函数tf()创建一个TF模型对象。 sys=zpk(z,p,k)%z为系统的零点向量,p为系统的极点向量,k为增益值,函数zpk()创建一个ZPK模型对象。 (一)控制系统的参数模型 1、TF模型 传递函数 num=[b m b m-1b m-2…b1b0] den=[a m a m-1a m-2…a1a0] sys=tf(num,den) 【例1】系统的传递函数为。 >>num=[01124448]; >>den=[11686176105]; >>sys=tf(num,den); >>sys Transfer function: s^3+12s^2+44s+48 ------------------------------------- s^4+16s^3+86s^2+176s+105 >>get(sys) >>set(sys) >>set(sys,'num',[212])

>>sys Transfer function: 2s^2+s+2 ------------------------------------- s^4+16s^3+86s^2+176s+105 【例2】系统的传递函数为。 >>num=conv([20],[11]); >>num num= 2020 >>den=conv([100],conv([12],[1610])); >>sys=tf(num,den) Transfer function: 20s+20 ------------------------------- s^5+8s^4+22s^3+20s^2 【例3】系统的开环传递函数为,写出单位负反馈时闭环传递函数的TF模型。>>numo=conv([5],[11]); >>deno=conv([100],[13]); >>syso=tf(numo,deno); >>sysc=feedback(syso,1) Transfer function: 5s+5 ---------------------- s^3+3s^2+5s+5 【例4】反馈系统的结构图为: R

雷达系统仿真matlab代码

% ======================================================================= ====================% % 该程序完成16个脉冲信号的【脉压、动目标显示/动目标检测(MTI/MTD)】 % ======================================================================= ====================% % 程序中根据每个学生学号的末尾三位(依次为XYZ)来决定仿真参数,034 % 目标距离为[3000 8025 9000+(Y*10+Z)*200 8025],4个目标 % 目标速度为[50 0 (Y*10+X+Z)*6 100] % ======================================================================= ====================% close all; %关闭所有图形 clear all; %清除所有变量 clc; % ======================================================================= ============% % 雷达参数 % % ======================================================================= ============% C=3.0e8; %光速(m/s) RF=3.140e9/2; %雷达射频 1.57GHz Lambda=C/RF;%雷达工作波长 PulseNumber=16; %回波脉冲数 BandWidth=2.0e6; %发射信号带宽带宽B=1/τ,τ是脉冲宽度 TimeWidth=42.0e-6; %发射信号时宽 PRT=240e-6; % 雷达发射脉冲重复周期(s),240us对应1/2*240*300=36000米最大无模糊距离 PRF=1/PRT; Fs=2.0e6; %采样频率 NoisePower=-12;%(dB);%噪声功率(目标为0dB) % ---------------------------------------------------------------% SampleNumber=fix(Fs*PRT);%计算一个脉冲周期的采样点数480; TotalNumber=SampleNumber*PulseNumber;%总的采样点数480*16=; BlindNumber=fix(Fs*TimeWidth);%计算一个脉冲周期的盲区-遮挡样点数; %====================================================================== =============% % 目标参数 % %====================================================================== =============% TargetNumber=4;%目标个数 SigPower(1:TargetNumber)=[1 1 1 0.25];%目标功率,无量纲 TargetDistance(1:TargetNumber)=[3000 8025 15800 8025];%目标距离,单位m 距离参数为[3000 8025 9000+(Y*10+Z)*200 8025] DelayNumber(1:TargetNumber)=fix(Fs*2*TargetDistance(1:TargetNumber)/C); % 把目标距离换算成采样点(距离门) fix函数向0靠拢取整 TargetVelocity(1:TargetNumber)=[50 0 204 100];%目标径向速度单位m/s 速度参数为[50 0 (Y*10+X+Z)*6 100]

基于MATLAB的电力系统仿真98514

《电力系统设计》报告 题目: 基于MATLAB的电力系统仿 学院:电子信息与电气工程学院 班级:13级电气1 班 姓名:田震 学号:20131090124 日期:2015年12月6日 基于MATLAB的电力系统仿真 摘要:目前,随着科学技术的发展和电能需求量的日益增长,电力系统规

模越来越庞大,超高压远距离输电、大容量发电机组、各种新型控制装置得到了广泛的应用,这对于合理利用能源,充分挖掘现有的输电潜力和保护环境都有重要意义。另一方面,随着国民经济的高速发展,以城市为中心的区域性用电增长越来越快,大电网负荷中心的用电容量越来越大,长距离重负荷输电的情况日益普遍,电力系统在人们的生活和工作中担任重要角色,电力系统的稳定运行直接影响着人们的日常生活。从技术和安全上考虑直接进行电力试验可能性很小,因此迫切要求运用电力仿真来解决这些问题。 电力系统仿真是将电力系统的模型化、数学化来模拟实际的电力系统的运行,可以帮助人们通过计算机手段分析实际电力系统的各种运行情况,从而有效的了解电力系统概况。本文根据电力系统的特点,利用MATLAB的动态仿真软件Simulink搭建了无穷大电源的系统仿真模型,得到了在该系统主供电线路电源端发生三相短路接地故障并由故障器自动跳闸隔离故障的仿真结果,并分析了这一暂态过程。通过仿真结果说明MATLAB电力系统工具箱是分析电力系统的有效工具。 关键词:电力系统;三相短路;故障分析;MATLAB仿真

目录 一.前言 (4) 二.无穷大功率电源供电系统仿真模型构建 (5) 1.总电路图的设计 (5) 2.各个元件的参数设定 (7) 2.1供电模块的参数设定 (7) 2.2变压器模块的参数设置 (7) 2.3输电线路模块的参数设置 (8) 2.4三相电压电流测量模块 (9) 2.5三相线路故障模块参数设置 (9) 2.6三相并联RLC负荷模块参数设置 (10) 3.仿真结果 (11)

Matlab与系统仿真试题及答案

Matlab 与系统仿真试题及答案 一、填空题(每空2分,共30分) 1、单位取样序列定义为________________。 2、单位阶跃序列定义为__________________。 3、取样定理中,采样频率和原始信号频率之间至少应该满足公式_______________。 4、实现IIR 滤波器可以采用三种不同的结构:_______________、__________________和_______________。 5、对于理想的滤波特性()jw H e ,相应的()d h n 一般为无限时宽,从而使非因果的。为此,使显示一般通过如下公式__________实现加窗处理,相应的傅里叶表达形式为_________________。 6、设计IIR 滤波器的基础是设计模拟低通滤波器的原型,这些原型滤波器有:_________、________和______________低通滤波器。 7、实现FIR 滤波器可以采用以下4中结构: ________________,_______________,______________和____________。 二、阅读下列Matlab 程序,并回答完成的功能(每题5分,共10分) 1、f=[00.60.61]; m=[1100]; b=fir2(30,f,m); [h ,w]=freqz(b,1,128); Plot(f,m,w/pi,abs) 本段程序的功能是:

2、[b ,a]=butter(9,300/500,’high’); Freqz(b,a,128,1000) 本段程序的功能是: 三、用Matlab 语言编程实现下列各小题(每小题15分,共60分) 1、产生序列0.3,16p s A dB πΩ==55n -≤≤,并绘出离散图,标注图形标题为“Sequence in Example 3.1a”。 实现程序如下:

MATLAB控制系统仿真计算

一、 控制系统的模型与转换 1. 请将下面的传递函数模型输入到matlab 环境。 ]52)1)[(2(24)(322 33++++++=s s s s s s s G ) 99.02.0)(1(568 .0)(22+--+=z z z z z H ,T=0.1s >> s=tf('s'); G=(s^3+4*s+2)/(s^3*(s^2+2)*((s^2+1)^3+2*s+5)); G Transfer function: s^3 + 4 s + 2 ------------------------------------------------------ s^11 + 5 s^9 + 9 s^7 + 2 s^6 + 12 s^5 + 4 s^4 + 12 s^3 >> num=[1 0 0.56]; den=conv([1 -1],[1 -0.2 0.99]); H=tf(num,den,'Ts',0.1) Transfer function: z^2 + 0.56 ----------------------------- z^3 - 1.2 z^2 + 1.19 z - 0.99 2. 请将下面的零极点模型输入到matlab 环境。请求出上述模型的零极点,并绘制其位置。 )1)(6)(5()1)(1(8)(22+++-+++=s s s s j s j s s G ) 2.8() 6.2)(2.3()(1 511-++=----z z z z z H ,T=0.05s >>z=[-1-j -1+j]; p=[0 0 -5 -6 -j j]; G=zpk(z,p,8) Zero/pole/gain: 8 (s^2 + 2s + 2) -------------------------- s^2 (s+5) (s+6) (s^2 + 1) >>pzmap(G)

信号与系统的MATLAB仿真(燕庆明第四版配套)

信号与系统的MATLAB 仿真 一、信号生成与运算的实现 1.1 实现)3(sin )()(π±== =t t t t S t f a )(sin )sin()sin(sin )()(t c t t t t t t t S t f a '=' '== ==πππ π ππ m11.m t=-3*pi:0.01*pi:3*pi; % 定义时间范围向量t f=sinc(t/pi); % 计算Sa(t)函数 plot(t,f); % 绘制Sa(t)的波形 运行结果: 1.2 实现)10() sin()(sin )(±== =t t t t c t f ππ m12.m t=-10:0.01:10; % 定义时间范围向量t f=sinc(t); % 计算sinc(t)函数 plot(t,f); % 绘制sinc(t)的波形 运行结果: 1.3 信号相加:t t t f ππ20cos 18cos )(+= m13.m syms t; % 定义符号变量t f=cos(18*pi*t)+cos(20*pi*t); % 计算符号函数f(t)=cos(18*pi*t)+cos(20*pi*t) ezplot(f,[0 pi]); % 绘制f(t)的波形 运行结果:

1.4 信号的调制:t t t f ππ50cos )4sin 22()(+= m14.m syms t; % 定义符号变量t f=(2+2*sin(4*pi*t))*cos(50*pi*t) % 计算符号函数f(t)=(2+2*sin(4*pi*t))*cos(50*pi*t) ezplot(f,[0 pi]); % 绘制f(t)的波形 运行结果: 1.5 信号相乘:)20cos()(sin )(t t c t f π?= m15.m t=-5:0.01:5; % 定义时间范围向量 f=sinc(t).*cos(20*pi*t); % 计算函数f(t)=sinc(t)*cos(20*pi*t) plot(t,f); % 绘制f(t)的波形 title('sinc(t)*cos(20*pi*t)'); % 加注波形标题 运行结果:

基于MATLAB的IS-95系统仿真

CDMA 期末论文 基于MATLAB的IS-95系统仿真 课程名称CDMA蜂窝移动通信姓名 学号 专业 成绩 任课老师 上课学期

1 作业要求 ● 分析给出的源程序,逐行给出中文注释,并分析仿真结果。 ● 按照如图1所示的框图设计一个CDMA 系统,并进行仿真。 图1 CDMA 系统框图 2 题目一 2.1 源程序注释 2.1.1 主程序部分 %main_CDMA_forward.m %此函数用于IS-95前向链路系统的仿真,包括扩 %频调制,匹配滤波,RAKE 接收等相关通信模块。 %但没有在频带上进行调制仿真。 %仿真环境: 加性高斯白噪声信道. %数据速率 = 9600 KBps % clear all close all clc disp('--------------start-------------------'); % 定义通信仿真全局变量 global Zi Zq Zs show R Gi Gq % Zi I 支路扩频PN 序列生成器状态 % ZQ Q 支路扩频PN 序列生成器状态 % Zs 扰码PN 序列生成器状态 % show 指示是否画出仿真过程各部分产生的输出 信源 卷积编 交织编扩频 加扰 调制 AWGN 信道 解调 解扰信宿 解卷积 解交织 解扩

% R 仿真时码元宽度 % Gi I支路扩频PN序列 % Gq Q支路扩频PN序列 clear j; show = 0; SD = 0; % 选择软/硬判决接收 %-------------------主要的仿真参数设置------------------ % 信道数据率为9600 bps BitRate = 9600; % 码片速率为1.2288 MHz ChipRate = 1228800; % 消息码元个数 N = 184; % 匹配滤波器类型--升余弦 MFType = 1; R = 5; %+++++++++++++++++++Viterbi生成多项式++++++++++++++++++ % 维特比译码器(译卷积码) G_Vit = [1 1 1 1 0 1 0 1 1; 1 0 1 1 1 0 0 0 1]; % 生成矩阵的长度 K = size(G_Vit, 2); % 输出码片数 L = size(G_Vit, 1); %++++++++++++++++++++++++++++++++++++++++++++++++++++++ %++++++++++++++++++++++Walsh矩阵++++++++++++++++++++++++ % 规定需要的Walsh序列长度 WLen = 64; % 生成64 bit Walsh序列[1010.....] Walsh = reshape([1;0]*ones(1, WLen/2), WLen , 1); %Walsh = zeros(WLen ,1); %++++++++++++++++++++++++++++++++++++++++++++++++++++++ %++++++++++++++++++扩频调制PN码的生成多项式++++++++++++++ %Gi = [ 1 0 1 0 0 0 1 1 1 0 1 0 0 0 0 1]'; %Gq = [ 1 0 0 1 1 1 0 0 0 1 1 1 1 0 0 1]'; % I信道扩频PN序列生成多项式 Gi_ind = [15, 13, 9, 8, 7, 5, 0]'; % I信道扩频PN序列生成多项式 Gq_ind = [15, 12, 11, 10, 6, 5, 4, 3, 0]'; % 初始化序列Gi(16 bit,全零) Gi = zeros(16, 1); % 根据生成多项式Gi_ind将对应位置1 Gi(16-Gi_ind) = ones(size(Gi_ind)); % 初始化I路信道PN码生成器的初始状态 Zi = [zeros(length(Gi)-1, 1); 1]; % 初始化序列Gi(16 bit,全零) Gq = zeros(16, 1); % 根据生成多项式Gq_ind将对应位置1,得到二进制生成多项式

基于matlab的通信系统仿真

创新实践报告 报告题目:基于matlab的通信系统仿真学院名称:信息工程学院 姓名: 班级学号: 指导老师: 二O一四年十月十五日

一、引言 现代社会发展要求通信系统功能越来越强,性能越来越高,构成越来越复杂;另一方面,要求通信系统技术研究和产品开发缩短周期,降低成本,提高水平。这样尖锐对立的两个方面的要求,只有通过使用强大的计算机辅助分析设计技术和工具才能实现。在这种迫切的需求之下,MATLAB应运而生。它使得通信系统仿真的设计和分析过程变得相对直观和便捷,由此也使得通信系统仿真技术得到了更快的发展。通信系统仿真贯穿着通信系统工程设计的全过程,对通信系统的发展起着举足轻重的作用。通信系统仿真具有广泛的适应性和极好的灵活性,有助于我们更好地研究通信系统性能。通信系统仿真的基本步骤如下图所示: 二、仿真分析与测试 (1)随机信号的生成

利用Matlab 中自带的函数randsrc 来产生0、1等概分布的随机信号。源代码如下所示: global N N=300; global p p=0.5; source=randsrc(1,N,[1,0;p,1-p]); (2)信道编译码 1、卷积码的原理 卷积码(convolutional code)是由伊利亚斯(p.Elias)发明的一种非分组码。在前向纠错系统中,卷积码在实际应用中的性能优于分组码,并且运算较简单。 卷积码在编码时将k 比特的信息段编成n 个比特的码组,监督码元不仅和当前的k 比特信息段有关,而且还同前面m=(N-1)个信息段有关。 通常将N 称为编码约束长度,将nN 称为编码约束长度。一般来说,卷积码中k 和n 的值是比较小的整数。将卷积码记作(n,k,N)。卷积码的编码流程如下所示。 可以看出:输出的数据位V1,V2和寄存器D0,D1,D2,D3之间的关系。根据模 2加运算特点可以得知奇数个1模2运算后结果仍是1,偶数个1模2运算后结果是0。 02 1V D D =⊕0123 2V D D D D =⊕⊕⊕

相关主题
文本预览
相关文档 最新文档