实验四 MATLAB简单仿真实验(已完成)

更新时间:2023-09-25 12:23:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

实验四 MATLAB简单仿真实验

一、实验目的:

学会利用MATLAB软件进行简单的仿真。通过实验提高学生实际动手能力和编程能力,为日后从事通信工作奠定良好的基础。 二、实验内容:

(1)绘制函数y=xe-x在0≤x≤1时的曲线。

(2)将输入的一段二进制代码编成单极性不归零码。 (3)将输入的一段二进制代码编成双极性不归零码。 (4)学习使用simulink进行仿真建模 三、仿真和实验结果: (1)

x=0:0.1:1 %定义自变量的采样点取值数组

y=x.*exp(-x) %利用数组运算计算各自变量采样点上的函数值

plot(x,y),xlabel('x'),ylabel('y'),title('y=x*exp(-x)') %图

y=x*exp(-x)0.40.350.30.25y0.20.150.10.05000.10.20.30.40.50.60.70.80.91x

(2)单极性不归零 function y=snrz(x) t0=300;

t=0:1/t0:length(x); for i=1:length(x)

if(x(i)==1)

for j=1:t0 y((i-1)*t0+j)=1; end else

for j=1:t0

y((i-1)*t0+j)=0; end end end

y=[y,x(i)]; M=max(y); m=min(y); subplot(2,1,1) plot(t,y);grid on;

axis([0,i,m-0.1,M+0.1]);

title('1 0 0 1 1 0 0 0 1 0 1');

>>x=[1 0 0 1 1 0 0 0 0 1 0 1]; y=snrz(x)

(3)双极性不归零 function y=dnrz(x) t0=300;

t=0:1/t0:length(x); for i=1:length(x) if(x(i)==1)

for j=1:t0 y((i-1)*t0+j)=1; end else

for j=1:t0

y((i-1)*t0+j)=-1;

0

end end end

y=[y,x(i)]; M=max(y); m=min(y); subplot(2,1,1) plot(t,y);grid on;

axis([0,i,m-0.1,M+0.1]);

title('1 0 0 1 1 0 0 0 0 1 0 1');

>>x=[1 0 0 1 1 0 0 0 0 1 0 1]; y=dnrz(x)

(4)

a) 在MATLAB的命令窗运行指令simulink,或点击命令窗中的图标

,便打开SIMULINK模型库浏览器(simulink Library Browser)。 b) 在库浏览器中直接点击左侧分类目录中的Source子库,便可以看到各种信源模块。 c) 点击工具条上的

图标,打开一个名为untitled的空白模型窗口。

d) 将鼠标点中所需的模块(如正弦波信源模块Sine Wave)后,直接将它拖拉到untitled窗。

e) 类似地,将信宿Sinks中的示波器Scope拖拉到上述模型窗。

f) 用鼠标指向信源右侧的输出端,当鼠标变成十字符时,按住鼠标任一键,移向示波器的输入端,松开鼠标按键,就完成了两个模块间的信号线连接。一

个简单的

模型就建成了。

g) 为进行仿真,双击示波器模块,打开示波器显示屏,调整显示屏窗口,使之与模型窗互不交叠,以便观察。

h) 点击模型窗中“仿真启动”图标,或选择菜单simulink→start,仿真开始。在示波器显示屏上,可以看到正弦波形。再点击显示屏上的“自动刻度”按钮

,使得波形充满整个坐标框。

四、实验结果分析:

本文来源:https://www.bwwdw.com/article/6nnd.html

Top