南邮软件课程设计MATLAB软件设计.docx

上传人:b****7 文档编号:8725188 上传时间:2023-02-01 格式:DOCX 页数:51 大小:1.26MB
下载 相关 举报
南邮软件课程设计MATLAB软件设计.docx_第1页
第1页 / 共51页
南邮软件课程设计MATLAB软件设计.docx_第2页
第2页 / 共51页
南邮软件课程设计MATLAB软件设计.docx_第3页
第3页 / 共51页
南邮软件课程设计MATLAB软件设计.docx_第4页
第4页 / 共51页
南邮软件课程设计MATLAB软件设计.docx_第5页
第5页 / 共51页
点击查看更多>>
下载资源
资源描述

南邮软件课程设计MATLAB软件设计.docx

《南邮软件课程设计MATLAB软件设计.docx》由会员分享,可在线阅读,更多相关《南邮软件课程设计MATLAB软件设计.docx(51页珍藏版)》请在冰豆网上搜索。

南邮软件课程设计MATLAB软件设计.docx

南邮软件课程设计MATLAB软件设计

南京邮电大学通信学院

 

软件课程设计

实验报告

 

模块名称:

___MATLAB软件设计

专业班级:

__通信工程_

姓名:

__________

学号:

____09

 

实验日期:

2012年6月11—21日实验报告日期:

2012年6月26日

索引目录

 

一、要求练习的实验部分……………………………………………………………………1

1、练习题1…………………………………………………………………………1

2、练习题2…………………………………………………………………………1

3、练习题3…………………………………………………………………………2

4、练习题4…………………………………………………………………………5

5、练习题5…………………………………………………………………………6

6、练习题6…………………………………………………………………………7

7、练习题7…………………………………………………………………………8

8、练习题8…………………………………………………………………………11

9、练习题9…………………………………………………………………………13

10、练习题10………………………………………………………………………14

11、练习题11………………………………………………………………………17

12、练习题12………………………………………………………………………20

 

二、模拟数字电路仿真实验………………………………………………………21

(一)数字逻辑电路基础……………………………………………………………21

(二)组合逻辑电路仿真……………………………………………………………22

(三)时序逻辑电路仿真……………………………………………………………26

 

三、数字信号处理仿真实验…………………………………………………………28

(一)、利用Kaiser窗函数设计的FIR低通滤波器进行数字滤波……………28

(二)、DSB-SC信号的生成与解调……………………………………………35

 

四、通信系统实验……………………………………………………………………40

模拟调制---DSB调制与解调…………………………………………………40

 

一、要求练习的实验部分

1.在时间区间[0,10]中,绘出

曲线。

程序:

(zoushuCode1.m)

t=0:

0.1:

10;

y=1-exp((-0.5)*t).*cos(2*t);

plot(t,y,'r-');

shg

结果:

(图图1.fig)

2.写出生成如图E2-1所示波形的MATLAB脚本M文件。

图中虚线为正弦波,要求它的负半波被置零,且在

处被削顶。

程序:

(zoushuCode2.m)

t=linspace(0,3*pi,500);

y=sin(t);

a=sin(pi/3);

z=(y>=0).*y;

z=(y>=a).*a+(y

plot(t,y,':

r');

holdon;

plot(t,z,'b-')

xlabel('t'),ylabel('z=f(t)'),title('逐段解析函数')

legend('y=sin(t)','z=f(t)',4),holdoff

结果:

(图图2.fig)

3.令

,运行[U,S,V]=svd(A);tol=S(1,1)*3*eps;然后回答以下问题:

(1)sum(diag(S)>tol)-rank(A)是多少?

(2)S(1,1)-norm(A)=0是多少?

(3)sqrt(sum(diag(S*S)))-norm(A,'fro')的结果是什么?

(4)S(1,1)/S(3,3)-cond(A)的结果是什么?

(5)S(1,1)*S(2,2)*S(3,3)-det(A)

(6)V(:

1)'*null(A)得到什么结果?

(7)abs(A*null(A))

(8)U(:

1:

2)==orth(A)的运行结果是什么?

程序:

(zoushuCode3.m)

clear;

clc;

disp('设A=[1,2,3;4,5,6;7,8,9],得')

A=[1,2,3;4,5,6;7,8,9]%一个3*3矩阵

disp('设[U,S,V]=svd(A),得')

[U,S,V]=svd(A)%奇异值分解(SVD)USV:

Um*m酉矩阵Vn*n酉矩阵S对角阵

disp('设tol=S(1,1)*3*eps,得')

tol=S(1,1)*3*eps

disp('设a=sum(diag(S)>tol)-rank(A),求a')

a=sum(diag(S)>tol)-rank(A)

disp('设b=S(1,1)-norm(A),求b')

b=S(1,1)-norm(A)

disp('设c=sqrt(sum(diag(S*S)))-norm(A,fro),求c')

c=sqrt(sum(diag(S*S)))-norm(A,'fro')

disp('设d=S(1,1)/S(3,3)-cond(A),求d')

d=S(1,1)/S(3,3)-cond(A)

disp('设e=S(1,1)*S(2,2)*S(3,3)-det(A)

e=S(1,1)*S(2,2)*S(3,3)-det(A)

disp('设f=V(:

1)*null(A),求f')

f=V(:

1)'*null(A)

disp('设g=abs(A*null(A))

g=abs(A*null(A))

disp('设h=U(:

1:

2)==orth(A),求h')

h=U(:

1:

2)==orth(A)

结果:

(结果3.txt)

设A=[1,2,3;4,5,6;7,8,9],得

A=

123

456

789

设[U,S,V]=svd(A),得

U=

-0.21480.88720.4082

-0.52060.2496-0.8165

-0.8263-0.38790.4082

 

S=

16.848100

01.06840

000.0000

 

V=

-0.4797-0.7767-0.4082

-0.5724-0.07570.8165

-0.66510.6253-0.4082

设tol=S(1,1)*3*eps,得

tol=

1.1223e-014

设a=sum(diag(S)>tol)-rank(A),求a

a=

0

设b=S(1,1)-norm(A),求b

b=

0

设c=sqrt(sum(diag(S*S)))-norm(A,fro),求c

c=

3.5527e-015

设d=S(1,1)/S(3,3)-cond(A),求d

d=

-8

设e=S(1,1)*S(2,2)*S(3,3)-det(A)

e=

1

设f=V(:

1)*null(A),求f

f=

0

设g=abs(A*null(A))

g=

1

1

1

设h=U(:

1:

2)==orth(A),求h

h=

11

11

11

结果分析:

由上面的结果得出如下的题目答案:

(1)sum(diag(S)>tol)-rank(A)的结果是0;

(2)S(1,1)-norm(A)=0的结果是0;

(3)sqrt(sum(diag(S*S)))-norm(A,'fro')的结果是3.5527e-015;

(4)S(1,1)/S(3,3)-cond(A)的结果是-8;

(5)S(1,1)*S(2,2)*S(3,3)-det(A)

(6)V(:

1)'*null(A)的结果是0;

(7)abs(A*null(A))

1

1;

(8)U(:

1:

2)==orth(A)的运行结果是11

11

11

4.求积分

程序:

(zoushuCode4.m)

t=0:

pi/100:

2*pi;

f=abs(sin(cos(t)));

F=cumsum(f)*pi/100;

plot(t,F);

xlabel('x轴');

ylabel('y轴');

title('描绘y=abs(sin(cos(t)))在(0,x)间积分曲线[x∈(0,2π)]')

gridon;

结果:

(图图4.fig)

5.求方程

的解。

程序:

(zoushuCode5.m)

clear;

clc;

disp('计算方程组x^2+y^2=1x*y=2的根xy')

[x,y]=solve('x^2+y^2=1','x*y=2')

结果:

(结果5.txt)

计算方程组x^2+y^2=1x*y=2的根xy

x=

[-1/2*(1/2*5^(1/2)+1/2*i*3^(1/2))^3+1/4*5^(1/2)+1/4*i*3^(1/2)]

[-1/2*(1/2*5^(1/2)-1/2*i*3^(1/2))^3+1/4*5^(1/2)-1/4*i*3^(1/2)]

[-1/2*(-1/2*5^(1/2)+1/2*i*3^(1/2))^3-1/4*5^(1/2)+1/4*i*3^(1/2)]

[-1/2*(-1/2*5^(1/2)-1/2*i*3^(1/2))^3-1/4*5^(1/2)-1/4*i*3^(1/2)]

y=

[1/2*5^(1/2)+1/2*i*3^(1/2)]

[1/2*5^(1/2)-1/2*i*3^(1/2)]

[-1/2*5^(1/2)+1/2*i*3^(1/2)]

[-1/2*5^(1/2)-1/2*i*3^(1/2)]

6.在某激励条件下,二阶系统归一化响应可表示为

,其中

为阻尼系数,

请用不同的颜色或线型,在同一张图上,绘制

取值下系统在

区间内的响应曲线,并要求用

对它们相应的两条曲线进行醒目的文字标志。

程序:

(zoushuCode6.m)

b=0.2:

0.2:

2.0;

t=0:

0.1:

18;

color=['r','g.','bo','cx','m+','y*','kv','r--','g:

','b-.'];

fori=1:

10

p(i)=sqrt(1-b(i).*b(i));

q(i)=atan(sqrt(1-b(i).*b(i))./b(i));

y=1-1./p(i).*exp(-b(i).*t).*sin(p(i).*t+q(i));

ifi==1

plot(t,y,color(i))

text(t(30),y(30),'\leftarrowξ=0.2','FontSize',18)

holdon

elseifi==10

plot(t,y,color(i))

text(t(50),y(50),'\leftarrowξ=2.0','FontSize',18)

holdon

else

plot(t,y,color(i))

holdon

end

end

end

结果:

(图图6.fig)

7.构建一个简单的全波整流模型,并用示波器分两路同时观察原信号和整流后的信号波形。

要求:

信源模块被重新命名为“输入正弦波”;信宿模块被重新命名为“示波器”;连接到信宿的信号线上分别标注“原信号”和“整流信号”;在模型窗中添加注释文本。

(1)、原理图:

(zoushuSimulink7.mdl)

各模块参量设置:

[示波器]

Parameters

Numberofaxes:

2

其他默认

[其余模块]

默认选项

结果(图图7.jpg)

(2)、原理图:

(zoushuSimulink72.mdl)

各模块参数设定

[Gain]

Gain:

-1

其他默认

[其余模块]

默认选项

 

结果(图图7.2.jpg)

8.利用SIMULINK及其标准模块设计一个低通滤波器,从受噪声干扰的多频率混合信号

中获取10Hz的信号。

在此

,而

原理图(zoushuSimulink8.mdl)

各模块参量设置:

[SineWave]

Frequency(rad/sec):

10

其他默认

[SineWave1]

Frequency(rad/sec):

100

Phase(rad):

pi/2

其他默认

[RandomNumber]

Variance:

0.2

Sampletime:

100

其他默认

[Sum]

Listofsigns:

|+++

其他默认

[AnalogFilterDesign]

Passbandedgefrequency(rad/s):

10

其他默认

[其余模块]

默认选项

 

结果:

(图图8.jpg)

9.已知系统的状态方程为:

,其中

,请构建该系统的仿真模型,并用XYGraph模块观察

相轨迹。

原理图:

(zoushusimulink9.mdl)

参数配置;

[Sum]

Listofsigns:

|--+

其他默认

[integrator]

Initialcondition:

0.2

[integrator1]

Initialcondition:

0.2

结果:

(图图9.jpg)

10.CD74HC00仿真(数字电路)

实现方法:

这里就是四个与非门的实现,利用LogicalOperator模块做出四个与非门,还要再和Vcc和Gnd相与,再输出。

然后用Subsystem封装成子系统即可;

原理图:

(zoushuSimulink10.mdl)

(1)、封装前的原理图

 

(2)、分装后的测试原理图(zoushuSimulink10.mdl)

结果:

(图图10.jpg)

分析:

前两路分别为产生“1100”和“0101”的脉冲发生器的波形,后四路波形则分别为四个与非门的输出;

可以看到,四路输出信号与输入信号均符合与非逻辑的关系,符合7400的真值表,设计正确!

11.2FSK信号的生成与接收滤波

要求:

1)产生二进制[0,1]随机信号波,信号波特率为1000B

2)对此信号进行2FSK调制,f1=1500Hz,f2=3050Hz

3)加入高斯白噪声

4)在接收端进行带通滤波

5)抽样速率为20KHz.

6)观察滤波前后信号的波形和频谱。

实现方法:

利用BernoulliBinaryGenerator模块产生随机信号;

利用SineWave模块产生f1=1500Hz,f2=3050Hz的载波,结合Switch模块进行2FSK调制;

利用AWGNChannel模块构建高斯白噪声信道,其参数设置为:

信噪比:

10dB,输入信号功率:

1W;

利用DigitalFilterDesign设计带通滤波器,分别为1500Hz和3050Hz滤波

然后利用相干解调,在将两个载波相加,用符号函数判决出原信号。

原理图:

(zoushuSimulink11.mdl、zoushuSimulink11b.mdl)

参数设计:

[SineWave]:

Frequency:

1500Hz

其他:

默认

[SineWave1]:

Frequency:

3050Hz

其他:

默认

[BernoulliBinaryGenerator]

Sampletime:

1/1000

其他:

默认

[Switch]:

Threshoid:

1/2

其他:

默认

[AWGNChannel]

SNR:

10db

Power:

1W

其他:

默认

[DigitalFilterDesign]

Bandpass;

Fs:

20kHz

Fstop1:

0.8KHz

Fpass1:

1.2KHz:

Fstop2:

2KHz

Fpass:

2.2.5KHz:

其他:

默认

[DigitalFilterDesign1]

Bandpass;

Fs:

20kHz

Fstop1:

2.5KHz

Fpass2:

2.8KHz:

Fstop2:

3.5KHz

Fpass2:

4KHz:

其他:

默认

调制的原理图:

(zoushuSimulink11.mdl)

调制加解调的原理图:

(zoushuSimulink11b.mdl)

结果:

(图图11.jpg、图图11b.jpg)

频谱图:

图图11.jpg

调制、解调的波形图:

图图11b.jpg

结果分析:

原信号经过2FSK调制,经过噪声信道,再进行滤波、相干解调,最后又恢复出原信号,结果符合题目要求,系统设计正确!

滤波器等相关设备的参数也设置恰当!

实验成功!

12.创建一个简单的离散多速率系统:

单位阶跃信号经过具有不同速率的采样后分别用作两个离散传递函数的输入。

这两个离散传递函数有相同的有理分式

,但采样时间和时间偏置二元对分别设为[1,0.1]和[0.7,0]。

要求:

观察这两个离散传递函数的输出有什么不同;用不同的颜色标帜不同采样速率系统。

(通信系统)

原理图:

(zoushuSimulink.mdl)

结果(图图12.jpg)

二、模拟数字电路仿真实验

(四)数字逻辑电路基础

熟悉常用逻辑单元的特性,学会运用基本逻辑单元(与、或、非、异或、R-S触发器、D触发器、J-K触发器等),修改参数、增减输入/输出端。

(五)组合逻辑电路仿真

1、设计二/四线译码器

实现方法:

利用LogicOperator模块实现非门和与非门;

利用PulseGenerator模块产生0101和0011序列码,用来检验设计出的子系统。

原理图:

(zoushuSimu20021.mdl)

 

封装前原理图:

结果及分析(图图20021.jpg、图图20021-2.jpg)

分析:

当!

EN端置0时,此时,随着第二、三两路信号输入的不同,作为输出端的Y0,Y1,Y2,Y3依次输出低电平,符合真值表要求,证明设计的子系统工作正常。

分析:

当!

EN端置1时,子系统没有被使能。

此时,作为输出端的Y0,Y1,Y2,Y3没有随着输入A0,A1作出相应变化,而是一直输出高电平,证明设计的子系统工作正常。

设计正确!

2、设计四选一数据选择器

能仿真测试,并设计成子系统元件

实现方法:

利用的模块同上;

地址信号用PulseGenerator产生;

D0到D3也由PulseGenerator模块产生,为了区分各路信号,将其信号周期依次设置为0.0625s,0.125s,0.25s和0.5秒。

 

原理图(zoushuSimu20022.mdl)

结果及分析:

(图图20022)

前两路分别为输入信号,组合产生00,01,10,11的地址信号;第四到第七这四路信号为D0到D1,它们的频率各不相同;最后一路为输出信号;

可以看出,随着输入的地址信号的变化,输入一次输出该地址信号对应的信号。

子系统设计成功!

(六)时序逻辑电路仿真

1、设计四位二进制计数器(带置位和清零)

实现方法:

利用JK触发器和逻辑门构成之。

利用比较系数的方法可得电路的驱动方程为

检验电路将P,T,LD,CR置为1,然后观察示波器输出。

 

原理图:

(zoushuSimu20031.mdl)

封装前的原理图:

封装后:

结果:

(图图20031.jpg)

从图中可以看出,脉冲在上升沿有效,计数器按0000~1111方式进行计数。

当P、T、L(置数)、CR(清零)有一个为低电平时的输出为全零。

P、T为0时,计数器不能工作;L为0置数,D3~D0全零,输出也全零。

CR为零时清零,所以输出也全零。

三、数字信号处理仿真实验

(一)、利用Kaiser窗函数设计的FIR低通滤波器进行数字滤波

利用Kaiser窗函数,设计具有如下指标的FIR低通滤波器:

fs=20KHz,fpass=4kHz,fstop=5KHz,Apass=0.1dB,Astop=80dB。

归一化低通滤波器的主要性能指标有:

绝对指标:

[0,wp]为滤波器的通带,δp为可容许的通带波动;[ws,π]为滤波器的阻带,δs为阻带波动。

相对指标:

Ap为用dB表示的通带波动;As为用dB表示的阻带波动

相对指标与绝对指标的关系为:

Ap=-20lg((1-δp)/(1+δp))

As=-20lg(δs)

设计基本思路:

首先选择一个符合要求的理想滤波器(这里是理想低通滤波器);由于理想滤波器的冲击响应是非因果的且无限长,为了能用FIR滤波器实现,必须用适当的窗函数来截取,从而得到线性相位和因果的FIR滤波器。

而滤波器的特性与窗函数的长度(也就决定了FIR滤波器的长度)密切相关。

一个截止频率为wc的理想低通滤波器的单位冲击响应为:

h(n)=sin[wc(n-a)]/[π(n-a)]

a为采样延迟,对应的频谱特性为:

H(w)=exp(-jaw),当|w|

用一个窗函数w(n)去截取后,得到:

hd(n)=h(n).w(n)

窗函数满足在[0,M]内关于a对称,在其他区域为0。

在频域,FIR滤波器的频率响应由理想滤波器的频响和窗函数的频响卷积得到。

对给定的阻带衰减,Kaiser窗提供了最大的主瓣宽度,从而提供最陡的过渡带。

窗函数的表达式为:

w(n)=I0{βsquare(1-(1-2n/M)2)}

其中I0为零阶Bessel函数。

Kaiser窗的优点在于它可以通过改变参数β和M来改变阻带衰减和过渡带宽。

在MATLAB的SimLink中,有相关的模块供调用。

题目:

1生成2KHz和8KHz的混合信号,使该信号通过上述滤波器,观察滤波前后的波形变化和频谱分布情况。

(基本要求)

实现方法:

首先用两个SineWave模块分别产生2kHz和8kHz的正弦信号,之后用add模块将二者混合。

用DigitalFilterDesign设计低通滤波器,具体设置如图所示:

原理图:

(zoushuSimu30011.mdl)

[DigitalfilterDesign]配置:

结果(图图30011a.jpg、图图30011b.jpg)

图为滤波之后和之前的信号频谱,可以观察到,滤波之后,处于通带之外的8kHz的正弦分量消

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 农学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1