通信原理课程设计方案.docx
- 文档编号:7808317
- 上传时间:2023-01-26
- 格式:DOCX
- 页数:15
- 大小:188.52KB
通信原理课程设计方案.docx
《通信原理课程设计方案.docx》由会员分享,可在线阅读,更多相关《通信原理课程设计方案.docx(15页珍藏版)》请在冰豆网上搜索。
通信原理课程设计方案
通信原理课程设计
专业
学号
学生姓名
指导教师
完成日期2016年1月5日
一、课程设计目的
在本课程设计中使用的软件工具是MATLAB。
目的是希望在以下几方面有所收获:
1.会MATLAB软件的最基本运用。
MATLAB是一种很实用的数学软件,它易学易用。
MATLAB对于许多的通信仿真类问题来说是比较合适的。
2.了解计算机仿真的基本原理及方法,知道怎样通过仿真的方法去研究通信问题。
3.加深对信号与系统和通信原理及其相关课程内容的理解。
二软件实现特点
与硬件实验相比,软件实验具如下一些特点:
1.软件实验具有广泛的实用性和极好的灵活性。
在硬件实验中改变系统参数也许意味着要重做硬件,而在软件实验中这只是该一两个数据,或者只是在屏幕上按几下鼠标。
2.软件实验更有助于我们较为全面地研究通信系统。
有许多问题,通过硬件试验来研究可能非常困难,但在软件实验中却易于解决。
3.硬件实验的精确度取决于元器件及工艺水平,软件实现的精确度取决于CPU的运算速度或者说是程序的运算量。
4.软件实验开发周期短,成本低。
三基本要求
1掌握matlab的基本操作及了解基本的仿真方法。
2按以下要求编制仿真程序并调试运行
(1)基本信号的仿真
(2)数字基带传输码型的仿真
(3)调制解调系统设计及仿真
(4)数字基带系统设计及仿真
四课程设计内容
1、编程实现基本信号的仿真
(1)产生并绘出以下信号
单位阶跃序列
k=-30:
30;
uk=[zeros(1,30),ones(1,31)];
stem(k,uk)
图1单位阶跃序列图
周期方波square()
t=-2*pi/100:
pi/1024:
2*pi/100;
y=square(2*pi*30*t,50);
plot(t,y);
ylim([-1.51.5])
grid
图2周期方波图
sin2πf1t*sin2πf2t(信号频率自定,不得雷同)
f1=10;
f2=20;
t=-2*pi/100:
pi/1024:
2*pi/100;
y=sin(2*pi*f1.*t).*sin(2*pi*f2.*t);
plot(t,y);
grid
图3
(2)正弦信号及其频谱
%正弦信号及其频谱
f=100;
t=-2*pi/100:
pi/1024:
2*pi/100;
y=sin(f.*t);
subplot(2,1,1)
plot(t,y)
N=256;t=0:
N-1;
y1=sin(f.*t);
k=0:
N/2;w=2*pi/N*k;
X=fft(y1,N);
magX=abs(X(1:
N/2+1));
subplot(2,1,2)
plot(w/pi,magX);
图4正弦信号及其频谱图
(3)利用MATLAB/SIMULINK功能建立如下模型,并对信号频谱进行观察。
一个频率为3Hz,幅值为3,另外一个频率为1Hz,幅值为1。
图5模型图
图6示波器波形图
2、编程实现数字基带信号的码型的仿真
(1)试做单极性归零码、双极性非归零码、单极性非归零码、双极性归零码,占空比50%(选择其中2种)
单极性归零码(随机产生码型)
closeall
clearall
globaldttdfN
N=2^14;%采样点数
L=64;%每码元的采样点数
M=N/L;%码元数
Rb=2;%码速率为2Mb/s
Ts=1/Rb;%码元间隔
dt=Ts/L;%时域采样间隔
Rt=0.5;%占空比
T=N*dt;%截短时间
t=linspace(-T/2,T/2,N);%时域横坐标分成N个点
forjj=1:
100
a=round(rand(1,M));%产生M个取值0,1等概的随机码
s=zeros(1,N);%产生一个N个元素的零序列
forii=1:
Rt*Ts/dt
s(ii+[0:
M-1]*L)=a;%产生单极性归零码
end
end
plot(t,s,'r')
xlabel('t(ms)')
ylabel('s(t)(V)')
axis([-10,+10,1.1*min(s),1.1*max(s)])
gridon
图7单极性归零码
双极性不归零码
%时间单位us频率单位MHz码元速率Mb/s
closeall%关闭所有的窗口
clearall%清除所有的变量
k=14;
N=2^k;%总采样点数
L=128;%每码元采样点数
M=N/L;%码元数
Rb=2;%码元速率
Ts=1/Rb;%码元间隔
dt=Ts/L;%时域分辨率dt(时域取样间隔)
df=1.0/(N*dt);%频域分辨率df,满足df*dt=1/N
T=N*dt;%计算时间宽度T
Bs=N*df/2;%系统带宽
t=linspace(-T/2,T/2,N);%产生时间取样点矩阵
f=linspace(-Bs,Bs,N);%产生频域取样点矩阵
forii=1:
20
n=1;%赋初值
whilerem(n,2)~=0;%保证仿真时有偶数个1
nrz=round(rand(1,M));%随机产生单极性归零码
n=length(find(nrz==1));
end
po0=find(nrz==0);%找出nrz中0的位置
nrz(po0)=-1;%将0赋为-1
copy0=ones(1,L);%定义复制的次数L
temp0=nrz(copy0,:
);%将nrz第一行复制L次,生成L*M的矩阵
dnrz=reshape(temp0,1,L*M);%将temp0重排成1*L*M的矩阵
end
%开窗口1
figure
(1)
plot(t,dnrz)
title('双极性不零码')
axis([0,10,-1.5,1.5])%设置坐标范
图8双极性不归零码
(2)双相码、AMI码、HDB3码等的仿真(选其中2种)。
AMI码的仿真
xn=[001100000011100000110];%输入单极性码
yn=xn;%输出yn初始化
num=0;%计数器初始化
fork=1:
length(xn)
ifxn(k)==1
num=num+1;%"1"计数器
ifnum/2==fix(num/2)%奇数个1时输出-1,进行极性交替
yn(k)=1;
else
yn(k)=-1;
end
end
yh=yn;
end%以上部分完成AMI码编码
input=yh;%AMI码输入
decode=input;%输出初始化
fork=1:
length(yh)
ifinput(k)==0
decode(k)=0;
else
decode(k)=1;
end
end
decode=abs(decode);%整流
subplot(3,1,1);stairs([0:
length(xn)-1],xn);axis([0length(xn)-22]);
subplot(3,1,2);stairs([0:
length(xn)-1],yh);axis([0length(xn)-22]);
subplot(3,1,3);stairs([0:
length(xn)-1],decode);axis([0length(xn)-22])
图9AMI码图
HDB3码的仿真
xn=[101100000001101000000010];%输入单极性码
yw=xn;%输出yn初始化
num=0;%计数器初始化
fork=1:
length(xn)
ifxn(k)==1
num=num+1;%"1"计数器
ifnum/2==fix(num/2)%奇数个1时输出-1,进行极性交替
yw(k)=1;
else
yw(k)=-1;
end
end
end
num=0;%连零计数器初始化
yz=yw;%输出初始化
sign=0;%极性标志初始化为0
V=zeros(1,length(yw));%V脉冲位置记录变量
B=zeros(1,length(yw));%B脉冲位置记录变量
fork=1:
length(yw)
ifyw(k)==0
num=num+1;%连“0”个数计数
ifnum==4%如果4连“0”
num=0;%计数器清零
yz(k)=1*yz(k-4);
V(k)=yz(k);%V脉冲位置记录
ifyz(k)==sign%如果当前V符号与前一个V符号的极性相同
yz(k)=-1*yz(k);
yz(k-3)=yz(k);%添加B符号,与V符号同极性
B(k-3)=yz(k);%B脉冲位置记录
V(k)=yz(k);%V脉冲位置记录
yz(k+1:
length(yw))=-1*yz(k+1:
length(yw));
end
sign=yz(k);%记录前一个V符号的极性
end
else
num=0;%当前输入为“1”则连“0”计数器清零
end
end%编码完成
re=[xn',yw',yz',V',B'];%结果输出:
xnAMIHDB3V&B符号
input=yz;%HDB3码输入
decode1=input;%输出初始化
sign=0;%极性标志初始化
fork=1:
length(yz)
ifinput(k)~=0
ifsign==yz(k)%如果当前码与前一个非零码的极性相同
decode1(k-3:
k)=[0000];%则该码判为V码并将*00V清零
end
sign=input(k);%极性标志
end
end
decode1=abs(decode1);%整流
error=sum([xn'-decode1']);%解码的正确性检验,作图
subplot(3,1,1);stairs([0:
length(xn)-1],xn);axis([0length(xn)-22]);
subplot(3,1,2);stairs([0:
length(xn)-1],yz);axis([0length(xn)-22]);
subplot(3,1,3);stairs([0:
length(xn)-1],decode1);axis([0length(xn)-22]);
图10HDB3码图
3、调制解调系统设计及仿真
AM和SSB调制解调系统设计及仿真:
要求:
(1)根调制和解调的原理框图,利用matlab的simulink功能,建立通信系统模型,观察各点波形及其频谱或功率谱。
(2)模拟调制系统输入模拟信号至少包含两个频率(频率自定);其他参数自定,不可雷同。
(3)加上噪声与上面图形作对比。
(4)结合所的波形及频谱或功率谱密度图分析系统的工作原理及性能。
1、AM调制相干解调
图11AM调制相干解调系统图
图12调制解调波形图
2、滤波法产生SSB调制信号并相干解调
图13SSB系统图
图14调制解调图
4、数字基带系统设计与仿真(输入数据自定)
(1)用simulink对系统建模设计一个数字基带系统
(2)采用开根号升余弦滤波器。
滚降系数自定。
(3)观察各点波形,并对发送信号和接收信号的功率谱进行估计。
(4)要求观察接收信号眼图,对比发送数据与恢复数据波形。
滚降系数α=0.5,数字基带系统如下:
图15系统结构模型图
接收眼图波形与分析:
图16眼图
从上图中可以看出,眼图的线迹比较细,比较清晰,并且“眼睛”很大,说明误码率比较低,码间串扰与噪声对系统传输可靠性影响不大。
发送信号与接收信号功率谱估计与分析:
图17发送功率谱和接收功率谱图
从两图比较中可以看出,接收信号的功率谱与发送信号的功率谱基本完全一样,说明整个基带传输系统模型的设计是合理的,能满足要求,具有较好的抗码间串扰的能力。
曼彻斯特码编码前后波形如图18所示:
图18曼彻斯特码编码前后波形图
发送数据波形与接收数据波形
图19发送数据波形与接收数据波形图
经过滤波器、信道的各点时域波形
图20经过滤波器、信道的各点时域波形
5、实验总结
在这次课程设计中,从刚开始对系统的整体构成不是很熟悉,思维比较模糊,到后来和其他小组同学进行了交流,明白了整个系统的构成。
知道了程序设计的步骤和流程。
课程设计主要是我们理论知识的延伸,我们在设计中发现问题,并且找到解决问题的方案。
在课程设计过程中还发现不做系统,许多细小的环节是注意不到的。
而这诸多环节往往影响你整个系统的正常运转。
这可真应验了“细节决定一切”这句话。
这一切告诉我做任何事情必须从全局出发,并且要注意其中的任何一个细节。
我们还能从设计中检验我们所学的理论知识,查漏补缺把这门课学的扎实。
六、参考文献
通信原理——基于Matlab的计算机仿真郭文彬等编著北京邮电出版社
Matlab/Simulink通信系统建模与仿真实例分析邵玉斌北京:
清华大学出版社,2008
现代通信实验系统的计算机仿真陈平等编著国防工业出版社2003
Matlab电子仿真与应用韩利竹等编著国防工业出版社
Matlab及其在电子信息类课程中的应用唐向宏等主编电子工业出版社
《MATLAB仿真技术与实例应用教程》张森主编机械工业出版社2004.1
《MATLAB仿真技术与应用》张葛祥主编清华大学出版社2003.6
通信原理樊昌信,误成柯等编著国防工业出版社2001
现代通信原理与技术张辉等西安电子工业出版社2007
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 通信 原理 课程设计 方案