matlab软件包含语言代码的文件称为,MATLAB软件设计上机指南.doc

《MATLAB软件设计上机指南.doc》由会员分享,提供在线免费全文阅读可下载,此文档格式为doc,更多相关《MATLAB软件设计上机指南.doc》文档请在天天文库搜索。

1、MATLAB软件设计应用技术学院2008-6第一章 MATLAB程序设计一、M文件v 用户如想灵活应用matlab去解决实际问题,充分调用matlab的科学技术资源,就需要编辑m文件v 包含matlab语言代码的文件称为m文件,其扩展名为m。v 编辑m文件可使用各种文本编辑器。v m文件的类型是普通的文本文件,我们可以使用系统认可的文本文件编辑器来建立m文件。如dos下的edit,windows的记事本和word等。v 具体的创建方法:1. 在matlab命令窗口点击file 菜单 new ® m-file2.. m文件m文件的语法类似于c语言,但又有其自身特点。它只是一个简单的ASCII码文本文件,执行程序时逐行解释运行程序,matlab是解释性的编程语言。m文件有两类独立的m文件 — 称命令文件、可调用m文件 — 称函数文件(1). 命令文件 — 简单的m文件命令文件实际上是一串指。

2、令的集合,与在命令窗口逐行执行文件中的所有指令,其结果是一样的。没有输入输出参数v 命令文件包括两部分:注释文件和程序文件%RANK Number of linearly independent rows or columns.% K = RANK(X) is the number of singular values of X% that are larger than MAX(SIZE(X)) * NORM(X) * EPS.% K = RANK(X,tol) is the number of singular values of X that% are larger than tol.% Copyright (c) 1984-94 by The MathWorks, Inc.s = svd(x);if (nargin == 1) tol = max(size(x)) * max(s)。

3、 * eps;endr = sum(s > tol);(2).matlab内置函数文件 matlab自定义的函数文件称内置函数文件 调用内置函数的方法:使用函数名并给出相应的入口、出口参数即可。 例如:sin.m函数——用type sin查不到。 调用格式:y=sin(2*x) 实际应用中: x=0:2*pi/180:2*pi; y=sin(2*x) plot(x,y)函数m文件的格式: function 返回变量=函数名(输入变量) 注释说明语句段 程序语句段特定规则:1. 函数m文件第一行必须以单词function作为引导词,必须遵循如下形式: function =()2. m文件的文件名必须是 .m。3. 程序中的变量均为局部变量,不保存在工作空间中。 其变量只在函数运行期间有效二、微分方程一般微分方程式描述系统内部变量的变化率如何受系统内部变量和外部激励,如输入,的影响。当常。

4、微分方程式能够解析求解时,可用MATLAB的符号工具箱中的功能找到精确解。在本书的后面将介绍该工具箱的一些特点。在微分方程难以获得解析解的情况下,可以方便地在数值上求解。为了说明起见,考虑描述振荡器的经典的范得波(Var der Pol)微分方程。与所有的数值求解微分方程组的方法一样,高阶微分方程式必须等价地变换成一阶微分方程组。对于上述微分方程,通过重新定义两个新的变量,来实现这种变换。令y1=x 且 y2=dy/dx则 dy1/dt=y2根据这个微分方程组,可用MATLAB的函数ode23和ode45求出系统随时间变化的运动情况。调用这些函数时,需要编写一个函数M文件,给定当前时间及y1和y2的当前值,该函数返回上述导数值。MATLAB中,这些导数由一个列向量给出。在本例中,这个列向量为yprime。同样,y1和y2合并写成列向量y。所得函数M文件是:function yprime=v。

5、dpol(t , y);% VDPOL(t , y) returns derivatives of the Van der Pol equation:% % x ‘‘-mu *(1-x ^2)*x ‘+x=0 (‘ = d/dx , ‘‘ = d^2/dx^2)% % let y(1)=x and y(2)=x‘% % then y(1) ‘ = y(2)% y(2) ‘ = MU*(1-y(1)^2)*y(2)-y(1)global MU % choose 0global MU % define MU as a global variable in the Command Workspace>>MU=2; % set global parameter to desired value>>[t , y]=ode23(‘ vdpol ‘ , 0 ,。

6、 30 , [1 ; 0]); % to=0 , tf=30 , yo=[1 ; 0]>>y1=y( : , 1); % first column is y(1) versus time points in t>>y2=y( : , 2); % second column is y(2)>>plot(t , y1 , t , y2 , ‘ -- ‘)>>xlabel(‘ Time , Second ‘) , ylabel(‘ Y(1) and Y(2) ‘)>>title(‘ Van der Pol Solution for mu=2 ‘)当mu=2时的范得波方程的运动曲线第二章 流程控制与绘图一、流程控制1. For 循环 For循环允许一组命令以固定的和预定的次数重复。For循环的一般形式是: for x = array {c。

7、ommands} end在for和end语句之间的{commands}按数组中的每一列执行一次。在每一次迭代中,x被指定为数组的下一列,即在第n次循环中,x=array(:, n)。例如, » for n=1:10 x(n)=sin(n*pi/10); end » x x = Columns 1 through 7 0.3090 0.5878 0.8090 0.9511 1.0000 0.9511 0.8090 Columns 8 through 10 0.5878 0.3090 0.0000 换句话,第一语句是说:对n等于1到10,求所有语句的值,直至下一个end语句。第一次通过For循环n=1,第二次,n=2,如此继续,直至n=10。在n=10以后,For循环结束,然后求end语句后面的任何命令值,在这种情况下显示所计算的x的元素。 For循环的其它重要方面是: 1. For循环不能用。

8、For循环内重新赋值循环变量n来终止。 » for n=1:10 x(n)=sin(n*pi/10); n=10; end » x x = Columns 1 through 7 0.3090 0.5878 0.8090 0.9511 1.0000 0.9511 0.8090 Columns 8 through 10 0.5878 0.3090 0.0000 2. 语句1 :10 是一个标准的MATLAB数组创建语句。在For循环内接受任何有效的MATLAB数组。 » data=[3 9 45 6; 7 16 -1 5] data = 3 9 45 6 7 16 -1 5 for n=data x=n(1)-n(2) end x = -4 x = -7 x = 46 x = 1 3. For循环可按需要嵌套。 for n=1:5 for m=5:-1:1 A(n,m)=n^2+m^2; e。

9、nd disp(n) end 1 2 3 4 5 » A A = 2 5 10 17 26 5 8 13 20 29 10 13 18 25 34 17 20 25 32 41 26 29 34 41 50 4. 当有一个等效的数组方法来解给定的问题时,应避免用For循环。例如,上面的第一个例子可被重写为 » n=1:10; » x=sin(n*pi/10) x = Columns 1 through 7 0.3090 0.5878 0.8090 0.9511 1.0000 0.9511 0.8090 Columns 8 through 10 0.5878 0.3090 0.0000两种方法得出同样的结果,而后者执行更快,更直观,要求较少的输入。 5. 为了得到最大的速度,在For循环(While循环)被执行之前,应预先分配数组。例如,前面所考虑的第一种情况,在For循环内每执行一次命令,。

10、变量x的大小增加1。迫使MATLAB每通过一次循环要花费时间对x分配更多的内存。为了消去这个步骤,For循环的例子应重写为 »x=zeros(1,10); % preallocated memory for x » for n=1:10 x(n)=sin(n*pi/10); end现在,只有x(n)的值需要改变。2. While 循环 与For循环以固定次数求一组命令的值相反,While 循环以不定的次数求一组语句的值。While循环的一般形式是: while expression {commands} end只要在表达式里的所有元素为真,就执行while和end 语句之间的{commands}。通常,表达式的求值给出一个标量值,但数组值也同样有效。在数组情况下,所得到数组的所有元素必须都为真。考虑下列例子: » num=0;EPS=1; » while (1+EPS)>1 EPS=。

11、EPS/2; num=num+1; end » num num = 53 » EPS=2*EPS EPS = 2.2204e-016 这个例子表明了计算特殊MATLAB值eps的一种方法,它是一个可加到1,而使结果以有限精度大于1的最小数值。这里我们用大写EPS,因此MATLAB的eps的值不会被覆盖掉。在这个例子里,EPS以1开始。只要(1+EPS)>1为真(非零),就一直求While循环内的命令值。由于EPS不断地被2除,EPS逐渐变小以致于EPS+1不大于1。(记住,发生这种情况是因为计算机使用固定数的数值来表示数。MATLAB用16位,因此,我们只能期望EPS接近10-16。) 在这一点上,(1+EPS)>1是假(零),于是While循环结束。最后,EPS与2相乘,因为最后除2使EPS太小。3. IF-ELSE-END 结构 很多情况下,命令的序列必须根据关系的检验有条。

12、件地执行。在编程语言里,这种逻辑由某种If-Else-End结构来提供。最简单的If-Else-End结构是: if expression {commands} end 如果在表达式中的所有元素为真(非零),那么就执行if和end语言之间的{commands}。在表达式包含有几个逻辑子表达式时,即使前一个子表达式决定了表达式的最后逻辑状态,仍要计算所有的子表达式。例如, » apples=10; % number of apples » cost=apples*25 % cost of apples cost = 250 » if apples>5 % give 20% discount for larger purchases cost=(1-20/100)*cost; end » cost cost = 200 假如有两个选择,If-Else-End结构是: if express。

13、ion commands evaluated if True else commands evaluated if False end在这里,如果表达式为真,则执行第一组命令;如果表达式是假,则执行第二组命令。 当有三个或更多的选择时,If-Else-End结构采用形式 if expression1 commands evaluated if expression1 is True elseif expression2 commands evaluated if expression2 is True elseif expression3 commands evaluated if expression3 is True elseif expression4 commands evaluated if expression4 is True elseif …… . . . else com。

14、mands evaluated if no other expression is True end 最后的这种形式,只和所碰到的、与第一个真值表达式相关的命令被执行;接下来的关系表达式不检验,跳过其余的If-Else-End结构。而且,最后的else命令可有可无。 现在我们知道了如何用If-Else-End结构来决策,就有可能提出一种合理的方法来跳出或中断For循环和While循环。 » EPS=1; » for num=1:1000 EPS=EPS/2; if (1+EPS)<=1 EPS=EPS*2 break end end EPS = 2.2204e-016 » num num = 53 这个例子演示了估算EPS的另一种方法。在这种情况下,For循环构造成要执行足够多的次数。If-Else-End结构检验要看EPS是否变得足够小。如果是,EPS乘2,break命令强迫For。

15、循环提早结束,num=53。 在这个例子里,当执行break 语句时,MATLAB跳到循环外下一个语句。在现在情况下,它返回到MATLAB的提示符并显示EPS。如果一个break语句出现在一个嵌套的For循环或While循环结构里,那么MATLAB只跳出break所在的那个循环,不跳出整个嵌套结构。4. 小结 MATLAB控制流功能可以概括如下:表7.1控 制 流 结 构for x = array commandsendFor循环,每一次迭代将x赋以数组的第i列,执行命令while expression commandsendWhile循环,只要表达式的所有元素为真或非零,执行命令。if expression commandsend简单的If-Else-End结构,若在表达式中的所有元素是真值或非零,执行命令。if expression commands evaluated if True。

16、else expression commands evaluated if Falseend具有两条路径的If-Else-End结构,若表达式为真或非零,则执行一组命令。若表达式为假或零,则执行另一组命令。if expression1 commands evaluated if expression1 is Trueelseif expression2 commands evaluated if expression2 is Trueif expression3 commands evaluated if expression3 is Trueelseif ……··else commands evaluated if no other expression is Trueend最一般的If-Else-End结构。只执行与第一个真值表达式相关的命令。break结束For循环和While循环的。

17、执行二、 绘图plot的基本调用格式【1】简单例题,比较方便的试验指令。t=(0:pi/50:2*pi)';k=0.4:0.1:1;Y=cos(t)*k;plot(t,Y) plot指令基本操作演示【2】用图形表示连续调制波形 及其包络线。t=(0:pi/100:pi)'; %长度为101的时间采样列向量 y1=sin(t)*[1,-1]; %包络线函数值,是(101x2)的矩阵 y2=sin(t).*sin(9*t); %长度为101的调制波列向量 t3=pi*(0:9)/9; % y3=sin(t3).*sin(9*t3);plot(t,y1,'r:',t,y2,'b',t3,y3,'bo') % axis([0,pi,-1,1]) %控制轴的范围 第三章 句柄与SIMULINK一、句柄获取示例【1】画网线图,并得相应句柄;追溯法找所在图形窗句柄;gcf 和gca演示。clf rese。

18、t;H_mesh=mesh(peaks(20)) H_grand_parent=get(get(H_mesh,'Parent'),'Parent')disp(' 图柄 轴柄'),disp([gcf gca]) %显示当前图形窗和轴的句柄 H_mesh = 73.0135H_grand_parent = 1 图柄 轴柄 1.0000 72.0051【2】低层指令绘图,获得句柄;获取同轴上字对象的句柄和相应对象类型。clf reset,t=(0:100)/100*2*pi;H_line=line('Xdata',t,'Ydata',sin(t))text(pi,0.8,'\fontsize{14}sin(t)')H_c=get(get(H_line,'parent'),'children') %轴之所有“子”的句柄T=get(H_c,'Type') %轴之所有“子”对象名称 H_line = 。

19、72.0052H_c = 74.0116 72.0052T = 'text' 'line'二、 SIMULINKsimulink工具箱简介• simulink 是实现动态系统建模、仿真和分析的一个集成环境,使得matlab的功能得到进一步扩展,它可以非常容易的实现可视化建模,把理论研究和工程实践有机的结合在一起。• 大部分专用工具箱只要以matlab主包为基础就能运行,有少数工具箱(通讯工具箱、信号处理工具箱等)则要求有simulink工具箱的支持。• 由于matlab和simulink是集成在一起的,因此用户可以在两种环境下对自己的模型进行仿真、分析和修改。• 不用命令行编程,由方框图产生m文件(s函数)• 当创建好的框图保存后,相应的m文件就自动生成,这个.m文件包含了该框图的所有图形及数学关系信息。• 框图表示比较直观,容易构造,运行速度较快。【1】模拟一个微分方程x = -2x +。

20、 uu xx-2x.【2】 8-3线编码器的设计要求:用SIMULINK实现8线3线编码器,它的功能是对输入端的8个信号进行编码,输出三位二进制数。要求输入信号每次只有一个0,其余7个都是1.其中0值是待编码信号。step1:首先列出下面的真值表。输入信号输出信号I0 I1I2 I3I4I5I6I7Y2Y1Y0011111110001011111100111011111010111011101111110111100111110111011111110111011111110111step2: 写出输入输出之间的逻辑函数关系:step3:建立SIMULINK模型。(1)在MATLAB中运行SIMULINK,打开模块浏览器,然后新建一个模型。(2)把本次仿真需要用到的模块添加到模型中(这里共需要三种模块:与非门4个,离散信号脉冲源8个,示波器3个)。其中,与非门位于SIMULINK模块库下的。

21、Math子模块库中的logocal operator中,离散信号脉冲源位于SIMULINK-sources-discrete pulse generator,示波器位于SIMULINK-Sinks-Scope。 点击与非门模块的名称,将其改为Y0,然后点击选中的与非门模块不要松开鼠标,按住Ctrl键拖动模块到另一个位置,就会自动复制生成新的与非门模块Y2,用同样的方法生成Y3。类似地将离散信号脉冲源模块名字改为I0,并得到I1…I7。最后再将示波器复制3个。(3)修改模块参数。双击Y0,打开属性对话框,将操作(operator)改为“NAND”,输入节点数改为4,然后点击OK确定。Y1,Y2也要进行同样的修改。双击示波器模块scope0,得到一个图形界面,在其工具栏上单击Parameter图标,打开是示波器属性对话框,将坐标轴数改为3,同样,示波器Scope1和Scope2的坐标数改为4。。

22、最后修改脉冲源的属性。双击离散脉冲源I0,将打开其属性对话框。针对本例子,我们需要I0-I7依次为低电平,所以将I0到I7的周期调整为8,脉冲宽度设定为7,相位延迟依次为-7到0,其他采用默认值。这样在零时刻,I0为低电平,其余输入为高电平;经过一个采样时间,I1变为低电平,以此类推,到第7个采样时间,I7变为低电平,从而实现了设计要求。注意:参数Pulse Type要选择Sample Based,而且Sample time为默认值1。(4)连线仿真将各个模块之间的连线连好。根据输入输出逻辑表达式,将I1,I3,I5,I7接到Y0的输入,将I2,I3,I6,I7接Y1输入,将I4,I5,I6,I7接Y2输入。然后用示波器Scope0监测Y2,Y1,Y0的输出,Scope1检测I0~I3,Scope2监测I4~I7。(5)保存模型到自己的工作目录。(6)点击开始仿真的按钮进行仿真。仿真结束后。

23、可以从Scope1和Scope2上看到编码器的8个输入波形,可以在示波器Scope0上看到编码器的输出波形。【3】 利用SIMULINK产生数字基带信号用SIMULINK建立数字基带传输系统模型,并观察输出信号的波形和频谱。要求:(1)产生二进制[0,1]随机信号序列,信号波特率为1000B;(2)用波形成型法生成数字基带信号,波形为滚降系数为1的升余弦滚降滤波器冲击响应的截至函数,要求包含主瓣和一对旁瓣;(3)抽样速率为8000Hz;(4)观察输出信号的波形和频谱。提示:(1)首先利用SIMULINK生成波特率为1000B的随机序列。(2)数字基带信号的时域表达式:将上面的公式离散化,变为:,其中为抽样间隔。当时,,否则为1。又抽样频率,所以可以表示为序列,这一操作可以用插值器(Upsampler)来实现。(3)建立SIMULINK模型【4】 DSB调制解调系统仿真基带信号经过DSB调制。

24、,载频500Hz。已知AWGN信道中噪声的比特信噪比为10dB,然后经过相干解调。试观察信道中传输的信号波形以及解调输出的信号波形。clf%%%生成DSB调制信号%%计算抽样时间间隔fh=100;%%调制信号带宽(Hz)fs=40*fh;ts=1/fs;%%根据抽样时间间隔进行抽样t=(0:ts:5*pi);%抽样时间间隔要足够小,要满足抽样定理。m=cos(2*pi*t);%基带信号y=m.*cos(1000*pi*t);%已调信号%%%%生成AWGN中的噪声%计算信号功率p_baseband=(norm(m)^2)/length(m);p_DSB=(norm(y)^2)/length(y);snr=10;%信噪比10dBsnr_lin=10^(snr/10);%分贝信噪比转换为线性信噪比noise_power=p_DSB/snr_lin;noise_std=sqrt(noise_pow。

25、er);noise=randn(1,length(y))*noise_std;signal_in_channel=y+noise;%%%%%%%绘出调制信号和信道中传输的信号subplot(2,1,1);plot(t,signal_in_channel,'b')xlabel('t');ylabel('DSB signal plus noise');axis([0,16,-1,1]);subplot(2,1,2);plot(t,y,'r');xlabel('t');ylabel('DSB signal');%%%%%%%%%%%解调df=0.3;%%所需要的频率分辨率r=y.*cos(1000*pi*t);%%接收的信号与载波相乘%%傅立叶变换n1=fs/df;n2=length(r);n=2^(max(nextpow2(n1),nextpow2(n2)));R=fft(r,n);r=[r,。

26、zeros(1,n-n2)];df1=fs/n;R=R/fs;%缩放%%%%%%%%%%%%%%设计滤波器f_cutoff=100;%%滤波器截至频率n_cutoff=floor(150/df1);f=[0:df1:df1*(length(r)-1)]-fs/2;H=zeros(size(f));H(1:n_cutoff)=2*ones(1,n_cutoff);H(length(f)-n_cutoff+1:length(f))=2*ones(1,n_cutoff);OUTPUT=H.*R;output=real(ifft(OUTPUT))*fs;%%观察波形subplot(2,1,1);plot(t,m,'b')xlabel('t');ylabel('m(t)');subplot(2,1,2);plot(t,output(1:length(m)),'r');xlabel('t');ylab。

27、el('demodulation output');axis([0,16,-1,1])第四章 练习题部分(任选一道完成)练习1. 数字信号的码型和波形变换内容:设计具有下列数字基带码型和波形变换功能的m文件:(1)AMI码;(2)HDB3码;(3)双极性RZ差分码波形。要求:(1)m文件共两个输入参数,第一个参数用来控制进行何种码型变换,第二个参数是二进制信息码序列;(2)根据参数进行相应的码型变换,并输出变换前后的码;(3)画出输入二进制信息码对应的双极性RZ差分码波形,要求占空比为1/2。练习2. 二进制数字基带传输系统及误码性能仿真(*选作)内容:用SIMULINK建立数字基带传输系统模型,并观察输出信号的波形和频谱。要求:(1)产生二进制[0,1]随机信号序列,信号波特率为1000B;(2)用波形成型法生成数字基带信号,波形为滚降系数为1的升余弦滚降滤波器冲击响应的截至函数,要求包。

28、含主瓣和一对旁瓣;(3)抽样速率为8000Hz;(4)观察输出信号的波形和频谱。练习3. 某商场对顾客所购买的商品实行打折销售,标准如下(商品价格用price来表示): price<200 没有折扣 200≤price<500 3%折扣 500≤price<1000 5%折扣 1000≤price<2500 8%折扣 2500≤price<5000 10%折扣5000≤price 14%折扣输入所售商品的价格,求其实际销售价格。练习4. 假设从实际自然界(力学、电学、生态等)或社会中,抽象出有初始状态为0的二阶微分方程,是单位阶跃函数。本例演示如何用积分器直接构搭求解该微分方程的模型。(1)改写微分方程 (2)利用SIMULINK库中的标准模块构作模型求解微分方程的SIMULINK模型exm9312_1.mdl第五章 设计题(任选一个完成)采用MATLAB中的。

29、SIMULINK动态仿真库建立通信系统模型,进行系统性能的动态仿真;或者使用TOOLBOX函数进行M文件的编程实现对通信系统的仿真。题目1:平面内移动机器人跟踪控制的matlab仿真内容:建立一个M-文件:对平面内移动机器人跟踪控制进行matlab仿真。要求:(1)利用function 返回变量=函数名(输入变量) 建立子函数;(2)主函数部分调用ODE45解(1)的函数;(3)分别对参考轨迹为圆形、直线型路径的情形进行仿真;(4)利用plot函数分别给出平面内移动轨迹图。题目2:室内移动机器人自主避障的matlab仿真内容:对室内存在障碍物情况下移动机器人的自主避障进行matlab仿真。要求:(1)利用get获得句柄图形对象的属性和返回某些对象的句柄值、利用set: 改变图形对象的属性;(2)利用plot函数分别给出室内障碍物;(3)利用各种流程(顺序结构、选择结构和循环结构)控制语句,。

30、以获得动画效果。题目3:利用SIMULINK分析系统动态性能内容:如图所示喷射动力车的定位控制问题。装置左右喷射发动机的车辆示意图利用SIMULINK实现对系统的动态性能分析。要求:(1)利用SIMULINK搭建系统仿真环境;(2)对于系统动态性能进行分析,车辆速度与位移小于某阈值时被认为控制目标达到。要求程序的每一行语句都要有注释说明。自由发挥:自己提出问题,实验探索,广泛联想,发现规律,大胆猜想。题目4: 2ASK传输系统及其误码性能仿真内容:仿真2ASK调制和解调,并分析其在AWGN信道中传输的误码性能。要求:(1)产生二进制[0,1]随机信号波(单极性NRZ基带信号),信号速率为200Hz;(2)对此信号进行2ASK调制,载波频率fc=400Hz,观察调制信号波形;(3)通过AWGN信道,并观察接收机收到的信号的波形;(4)对收到的2ASK信号进行同步解调,给出此时计算得到的误码率。

31、;(5)画出仿真得到的误码率--比特信噪比(1dB-12dB)性能曲线,并与理论曲线进行比较。(*提高要求)提示:系统实现原理图解调原理图题目5: 2FSK传输系统及其误码性能仿真内容:仿真2FSK调制和解调,并分析其在AWGN信道中传输的误码性能。要求:(1)产生二进制[0,1]随机信号波(单极性NRZ基带信号),信号速率为200Hz;(2)对此信号进行2FSK调制,载波频率fc1=400Hz,fc2=800Hz,观察调制信号波形;(3)通过AWGN信道,并观察接收机收到的信号的波形;(4)对收到的2FSK信号进行相干解调,给出此时计算得到的误码率;(5)画出仿真得到的误码率--比特信噪比(1dB-12dB)性能曲线,并与理论曲线进行比较。(*提高要求)提示:系统实现原理图解调器原理图:题目6: 2PSK传输系统及其误码性能仿真内容:仿真2PSK调制和解调,并分析其在AWGN信道中传输的。

32、误码性能。要求:(1)产生二进制[0,1]随机信号波(单极性NRZ基带信号),信号速率为200Hz;(2)对此信号进行2PSK调制,载波频率fc=400Hz,观察调制信号波形;(3)通过AWGN信道,并观察接收机收到的信号的波形;(4)对收到的2PSK信号进行相干解调,给出此时计算得到的误码率;(5)画出仿真得到的误码率--比特信噪比(1dB-12dB)性能曲线,并与理论曲线进行比较。(*提高要求)提示:系统实现原理图解调原理图题目7: 数字电路仿真综合题内容:用SIMULINK完成对数字电路的仿真。要求:1.对下面的组合逻辑电路进行仿真测试:(1)设计二/四线译码器(2)设计四选一数据选择器2.对下面的时序逻辑电路进行仿真测试:(1)设计四位二进制计数器(带置位和清零)(2)设计四位同步加/减计数器。3.锯齿波信号发生器设计及仿真函数信号源采用数字方式存储一到几个周期,再用时间计数,循环。

33、执行的方法实现函数信号的连续输出。提示:系统基本结构框图4.三角波信号发生器(*提高要求)题目8: 2DPSK传输系统及其误码性能仿真内容:仿真2DPSK调制和解调,并分析其在AWGN信道中传输的误码性能。要求:(1)产生二进制[0,1]随机信号波(单极性NRZ基带信号),信号速率为200Hz;(2)对此信号进行2DPSK调制,载波频率fc=400Hz,观察调制信号波形;(3)通过AWGN信道,并观察接收机收到的信号的波形;(4)对收到的2DPSK信号进行相干解调,给出此时计算得到的误码率;(5)画出仿真得到的误码率--比特信噪比(1dB-12dB)性能曲线,并与理论曲线进行比较。(*提高要求)第六章 软件设计要求及流程一、 软件设计的目的:了解SIMULINK环境,进一步熟悉MATLAB软件包和程序设计方法,掌握相关的电子、通信系统设计方法并对自己设计的系统进行仿真。二、 软件设计的要求。

34、:1. 掌握MATLAB部分工具包的使用方法,侧重SIMULINK环境。2. 掌握通信系统性能设计、电子电路设计中的基本设计方法。三、 软件设计安排第一天听课,SIMULINK环境介绍和仿真演示;第二天上机,自己熟悉MATLAB软件和SIMULINK环境;第三、四天上机,完成练习题部分。第五天至第十天,完成以上内容的同学,在第三章的设计题中选择自己感兴趣的一道题目完成,最后交老师验收。四、 软件设计评分体系本课程设计以平时上机考勤(30%)、书面报告(30%)和实际设计结果(40%)为考核依据,其中具体要求如下:(1)每次上机必须携带学生证并登记,在规定的上机时间内不得无故缺勤、早退,请假需向指导老师提出书面申请;(2)遵守机房各项要求,上机时禁止打游戏,屡教不改者,课程设计成绩可为不及格;(3)每人手头准备一至两本有关的工具书,上机前做好充分的准备,包括事先写好主要程序代码(或画好SIM。

35、ULINK原理图),以保证充分利用上机的时间调试程序;(4)同组人可以讨论思路,但是程序要自己完成,不可抄袭,否则课程设计成绩为不合格;(5)每完成一个梯度的内容交指导老师验收通过后,方可进行下一梯度的设计;(6)实习的最后阶段按时上交m文件或mdl文件、实习报告(包括电子稿和打印稿)。(7)实习报告要求撰写准确、无误、条理清晰,绝对不可有抄袭现象,否则实习成绩不合格。每部分设计内容的完成时间、完成情况、完成的独立程度均影响成绩。五、 MATLAB软件设计报告要求1、报告内容要求有课题名称、课题内容及要求、相关的原理说明(含公式)、设计思路(含参数设置说明和每个m文件的功能划分)、测试数据及结果分析、课程设计总结等。2、报告电子档名称:Matlab软件设计_学号.doc;3、最后上交课程设计报告打印稿(统一采用A4纸)。将报告的电子档、m文件或mdl文件压缩为Matlab软件设计_学号.rar文件(如:Matlab软件设计_A.rar),交给组长,由组长统一上交指导老师。附录 MATLAB软件设计报告应用技术学院MATLAB程序设计报告题目: 专 业 学生姓名 班级学号 指导教师 日 期 一、课题名称二、课题内容和要求三、系统原理相关的系统原理说明(含公式)四、设计思路说明:1、若使用SIMULINK,则要包含仿真原理图、每个模块的参数设置说明等;2、若使用MATLAB直接编程,则要包含参数设置说明、每个m文件的功能划分及完成的程序代码。五、测试数据及结果分析至少包含两组测试数据,并对测试输出的结果进行分析。六、程序设计总结总结可以包括:课程设计过程的收获、系统实现过程中遇到的问题,为解决问题进行的思考,以及对本课程组织和考核方式的建议等等。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值