实验一 常用信号的表示
【实验目的】
掌握使用MATLAB的信号工具箱来表示常用信号的方法。
【实验环境】
装有MATLAB6.5或以上版本的PC机。
【实验内容】
1. 周期性方波信号square
调用格式:x=square(t,duty)
功能:产生一个周期为、幅度为的周期性方波信号。其中duty表示占空比,即在信号的一个周期中正值所占的百分比。
例1:产生频率为40Hz,占空比分别为25%、50%、75%的周期性方波。如图1-1所示。
clear; % 清空工作空间内的变量
td=1/100000;
t=0:td:1;
x1=square(2*pi*40*t,25); x2=square(2*pi*40*t,50); x3=square(2*pi*40*t,75); % 信号函数的调用
subplot(311); % 设置3行1列的作图区,并在第1区作图
plot(t,x1);
title('占空比25%'); axis([0 0.2 -1.5 1.5]); % 限定坐标轴的范围
subplot(312); plot(t,x2);
title('占空比50%'); axis([0 0.2 -1.5 1.5]);
subplot(313); plot(t,x3);
title('占空比75%'); axis([0 0.2 -1.5 1.5]);
图1-1 周期性方波
2. 非周期性矩形脉冲信号rectpuls
调用格式:x=rectpuls(t,width)
功能:产生一个幅度为1、宽度为width、以t=0为中心左右对称的矩形波信号。该函数横坐标范围同向量t决定,其矩形波形是以t=0为中心向左右各展开width/2的范围。Width的默认值为1。
例2:生成幅度为2,宽度T=4、中心在t=0的矩形波x(t)以及x(t-T/2)。如图1-2所示。
t=-4:0.0001:4;
T=4; % 设置信号宽度
x1=2*rectpuls(t,T); % 信号函数调用
subplot(121); plot(t,x1);
title('x(t)'); axis([-4 6 0 2.2]);
x2=2*rectpuls(t-T/2,T); % 信号函数调用
subplot(122); plot(t,x2);
title('x(t-T/2)'); axis([-4 6 0 2.2]);
3. 抽样信号sinc
调用格式:x=sinc(x)
功能:产生一个抽样函数,其值为x/sinx。
例3:生成抽样信号,如图1-3所示。
clear; % 清理变量
t=-1:0.001:1;
y=sinc(2*pi*t); % 信号函数调用
plot(t,y);
xlabel('时间t'); ylabel('幅值(y)');
title('抽样信号');
图1-2 非周期性方波
图1-3 抽样信号
【练一练】
用MATLAB信号工具箱中的pulstran函数产生冲激串的信号。
T = 0:1/50E3:10E-3;
D = [0:1/1E3:10E-3;0.8.^(0:10)]';
Y = pulstran(T,D,'gauspuls',10E4,0.8);
plot(T,Y)
【实验心得】
通过此次试验,首先,让我对MATLAB强大的功能有了进一步的了解。其次,也学会了一些常用信号的表示方法。通过自己动手操作,我知道了pulstran函数的调用方法,可以自行画出冲击串函数。
实验二 信号的Fourier分析
【实验目的】
1) 通过计算周期方波信号的Fourier级数,进一步掌握周期信号Fourier级数的计算方法。
2) 通过求解非周期方波信号的Fourier变换,进一步掌握非周期信号Fourier变换的求解方法。
【实验环境】
装有MATLAB6.5或以上版本的PC机。
【实验内容】
1. 连续时间周期方波信号及其傅里叶级数计算的程序代码,其结果如图2-1所示。
dt = 0.001; % 时间变量变化步长
T =2; % 定义信号的周期
t =-4:dt:4; % 定义信号的时间变化范围
w0 = 2*pi/T; % 定义信号的频率
x1=rectpuls( t-0.5-dt,1); % 产生1个周期的方波信号
x=0;
for m = -1:1 % 扩展1个周期的方波信号
x = x+rectpuls((t-0.5-m*T-dt),1); % 产生周期方波信号
end
subplot(221);
plot(t,x);
axis([-4 4 0 1.1]); % 设定坐标变化范围
title('周期方波信号')
N=10; % 定义需要计算的谐波次数为10
for k=-N : N
ak(N+1+k) = x1*exp(-j*k*w0*t') *dt/T; % 求得Fourier系数ak
end
k=-N:N;
subplot(212);
stem(k,abs(ak),'k.'); % 绘制幅度谱
title('傅里叶级数');
图2-1 连续时间周期方波信号及其Fourier级数
2. 非周期连续时间信号及其Fourier变换的程序代码,其结果如图2-2所示。
width=1;
t=-5:0.01:5;
y=rectpuls(t,width); % 矩形脉冲信号
subplot(221);
plot(t,y);
ylim([-1 2]); % 限定y坐标的范围
title('矩形脉冲信号');
Y=fft(y,1024); % 快速Fourier变换
Y1=fftshift(Y); % 将频谱分量集中
subplot(212);
plot(abs(Y1));
title('傅里叶变换');
图2-2 非周期连续时间信号及其Fourier变换
【实验心得】
这次实验是信号的Fourier分析。通过此次实验,我进一步掌握周期信号Fourier级数的计算方法和非周期信号Fourier变换的求解方法。可以通过MATLAB来自己画出要求的图形,对老师的代码也掌握了。
实验三 调幅信号及其功率谱计算
【实验目的】
1) 通过计算AM调制信号,进一步熟悉并掌握AM的调制过程。
2) 通过对AM调制信号的功率谱计算,进一步熟悉并掌握AM调制信号的功率谱计算方法。
【实验环境】
装有MATLAB6.5或以上版本的PC机。
【实验内容】
1. AM调制信号及其功率谱计算的程序代码及注释说明
% AM基带信号
dt=0.001; % 采样时间间隔
fs=1; % 基带信号频率
fc=10; % 载波频率
T=5; % 调制信号的时间长度
N=T/dt; % 采样点总数
t=[0:N-1]*dt; % 采样时间变量
mt=sqrt(2)*cos(2*pi*fs*t); % 基带信号时域表达式
% AM调制信号
A0=2; % 直流偏移量
s_AM=(A0+mt).*cos(2*pi*fc*t); % AM调制信号
% PSD计算
[X]=fft(s_AM); % 对AM调制信号进行快速Fourier变换
[Y]=fft(mt); % 对基带信号进行快速Fourier变换
PSD_X=(abs(X).^2)/T; % 根据功率谱密度公式计算AM调制信号的PSD
PSD=(abs(Y).^2)/T; % 根据功率谱密度公式计算基带信号的PSD
PSD_Y=fftshift(PSD); % 将零频分量移到频谱的中心位置
PSD_X_dB = 10*log10(PSD_X); % 将功率化为以dB为单位
PSD_Y_dB = 10*log10(PSD_Y); % 将功率化为以dB为单位
f=[-N/2:N/2-1]*2*fc/N; % 设置频率变量
% 绘图输出
subplot(311);
plot(t,s_AM); hold on;
plot(t,A0+mt,'r--'); % 绘制包括线
title('AM调制信号及其包络');
subplot(312);
plot(f,PSD_Y_dB); hold on;
axis([-2*fc 2*fc 0 max(PSD_Y_dB)]);
title('基带信号的PSD(dB)');
subplot(313);
plot(f,PSD_X_dB); hold on;
axis([-2*fc 2*fc 0 max(PSD_X_dB)]);
title('AM调制信号的PSD(dB)');
2. AM调制信号及其功率谱的计算结果
图3-1 AM调制信号及其功率谱
【练一练】
试用MATLAB编程计算抑制载波双边带(DSB-SC)调制信号及其功率谱密度,所用基带模拟信号和载波表达式同上。
%基带信号
dt=0.001; % 采样时间间隔
fs=1; % 基带信号频率
fc=10; % 载波频率
T=5; % 调制信号的时间长度
N=T/dt; % 采样点总数
t=[0:N-1]*dt; % 采样时间变量
mt=sqrt(2)*cos(2*pi*fs*t); % 基带信号时域表达式
%抑制载波双边带(DSB-SC)调制信号
A0=0; % 直流偏移量
s_AM=(A0+mt).*cos(2*pi*fc*t); % AM调制信号
% PSD计算
[X]=fft(s_AM); % 对AM调制信号进行快速Fourier变换
[Y]=fft(mt); % 对基带信号进行快速Fourier变换
PSD_X=(abs(X).^2)/T; % 根据功率谱密度公式计算AM调制信号的PSD
PSD=(abs(Y).^2)/T; % 根据功率谱密度公式计算基带信号的PSD
PSD_Y=fftshift(PSD); % 将零频分量移到频谱的中心位置
PSD_X_dB = 10*log10(PSD_X); % 将功率化为以dB为单位
PSD_Y_dB = 10*log10(PSD_Y); % 将功率化为以dB为单位
f=[-N/2:N/2-1]*2*fc/N; % 设置频率变量
% 绘图输出
subplot(311);
plot(t,s_抑制载波双边带(DSB-SC)); hold on;
plot(t,A0+mt,'r--'); % 绘制包括线
title('抑制载波双边带(DSB-SC)调制信号及其包络');
subplot(312);
plot(f,PSD_Y_dB); hold on;
axis([-2*fc 2*fc 0 max(PSD_Y_dB)]);
title('基带信号的PSD(dB)');
subplot(313);
plot(f,PSD_X_dB); hold on;
axis([-2*fc 2*fc 0 max(PSD_X_dB)]);
title('抑制载波双边带(DSB-SC)调制信号的PSD(dB)');
【实验心得】
此次实验是调幅信号及其功率谱计算,通过计算AM调制信号,我熟悉并掌握了AM的调制过程。通过对AM调制信号的功率谱计算,我熟悉并掌握了AM调制信号的功率谱计算方法。在AM实验的基础之上,我能够使用MATLAB编程计算抑制载波双边带(DSB-SC)调制信号及其功率谱密度。
实验四 Simulink在数字调制中的应用
【实验目的】
1) 通过Simulink仿真,进一步熟悉并掌握2ASK的调制及其非相干解调的过程。
2) 通过对2ASK的调制及非相干解调过程的仿真,初步熟悉并掌握Simulink的仿真方法及其通信blocksets的应用。
【实验环境】
装有MATLAB6.5或以上版本的PC机。
【实验内容】
1. 2ASK仿真模型图
图4-3 2ASK相乘法调制及其非相干解调的仿真模型图
2. 各仿真模块的参数设置。
3.实验结果
【实验心得】
通过此次仿真实验,我认识到了MATLAB仿真模块功能的强大,熟悉并掌握了2ASK的调制及其非相干解调的过程。通过自己操作而得出实验结论,我的实验动手能力有了进一步提高。
通信原理实验报告(二)
学院:计算机科学与信息学院 专业: 网络工程 班级:网络092
注:各学院可根据教学需要对以上栏木进行增减。表格内容可根据内容扩充。
通信原理实验基于MATLAB仿真的BPSK的调制与解调班级姓名指导教师实验时间基于MATLAB仿真的BPSK的调制与解调一实验要求…
通信原理实验心得体会091180024代岳通信工程众所周知,《通信原理》是电子、通信、计算机、自控和信息处理等专业的重要基础课,所…
湖北民族学院信息工程学院实验报告班级15班姓名董非凡学号k031041533成绩试验时间20xx年4月21日12节实验地点实验楼五…
青岛农业大学理学与信息科学学院通信原理课程报告设计题目2DPSK调制与解调系统的仿真学生专业班级电子信息工程学生姓名学号指导教师完…
现代通信原理课程设计报告设计题目题目2专业班级学号20xx101026姓名刘敬亚任课教师设计时间题目2一设计任务与要求1设计目的使…
湖北民族学院信息工程学院实验报告班级15班姓名董非凡学号k031041533成绩试验时间20xx年4月21日12节实验地点实验楼五…
实验二数字调制一实验目的1掌握绝对码相对码概念及它们之间的变换关系2掌握用键控法产生2ASK2FSK2DPSK信号的方法3掌握相对…
电子科技大学通信学院最佳接收机匹配滤波器实验报告班级学生学号教师任通菊最佳接收机匹配滤波器实验一实验目的1运用MATLAB软件工具…
广西科技大学课程名称指导教师班级姓名学号成绩评定实验报告实验一数字基带信号一实验目的1了解单极性码双极性码归零码不归零码等基带信号…
通信原理实验心得体会091180024代岳通信工程众所周知,《通信原理》是电子、通信、计算机、自控和信息处理等专业的重要基础课,所…