扩频通信系统仿真.doc
文本预览下载声明
一、题目
扩频通信系统仿真
二、功能描述(对系统要实现的功能进行描述)
1.对基带信号进行扩频,增强通信系统的抗干扰能力。
2.对通信系统仿真,使用BPSK调制与解调,实现信号的传递。
概要设计(根据功能描述,建立系统的体系结构,即将整个系统分解成若干子功能模块,并用框图表示各功能模块之间的衔接关系,并简要说明各模块的功能。)
扩频通信系统原理框图如下:
bsd 调制 扩频
b
s
d
调制
扩频
信源
f0
f0
信道
H
PN码振荡器
PN码
振荡器
noise
noise
getsignalbnoise 解调
getsignal
bnoise
解调
解扩
H
H
同步 PN码
同步
PN码
由信源输出的信号d,PN码为哈达玛矩阵H ,将d与 H 相乘生成扩频序列 s ,然后再有扩频序列 s 调制载波,这样就生成了已扩频调制的射频信号 b ,将 b 经过信道,即加噪声,得到信号 noise ,在接受端,接受到的扩频信号经高放和混频后,用与发送同步的伪随机序列对 noise 进行相干解扩,将信号的频带恢复成信号序列 bnoise 的频带,然后再进行相干解调,恢复出所传颂的信息 getsignal ,从而完成信息的传输。
详细设计(详细说明各功能模块的实现过程,包括用流程图对算法进行描述,所用到的数据结构等)
1.使用MATLAB实际详细设计过程如下:
1.由信源输出的信号即原序列 d,任意给出,程序中d=[-1,1,1-1]。
2.对原序列先扩频,将原序列与哈达玛相乘,则完成对原序列的扩频,设计中使用的扩频码是哈达玛矩阵 H,利用for循环生成的 H 为8行8列,选第7行作为扩频码,即H[7,:]=[1,1,-1,-1,-1,-1,1,1],扩频后的扩频信号 s 是含有32个元素的序列。
3.接着是调制,采用载波调制,设定码元速率 c =2000,载波速率 fc =8000,抽样速率 fs =128000,即一个码元用四个载波调制,然后一个载波抽样16次,将载波
c(t)=cos(2 *pi* fc* t)与扩频信号 s 相乘,则完成调制,生成调制信号b,共有32*16*4=2048个载波。
接下来是加噪声,使用MATLAB库函数y=awgn(x,snr)对调制信号b加噪声,生成信号noise。
当noise传到接收端,要先进行解扩,进行相干解扩,解将noise与扩频码H[7,:]相乘,完成解扩,生成解扩信号bnoise。
接着将解扩信号通过一个带通滤波器bankpass(fstop1=7200Hz,fpass1=7900Hz,fpass2=8100hz,fstop2=8800Hz),带通滤波器根据载波速率fc设置,滤除带外噪声,得到信号signal1,然后再解调,进行相干解调,将signal1与载波c(t)=2cos(2 *pi* fc* t)相乘,得到解调信号,再经过一个低通滤波器lowpass(fpass=1800Hz,fstop=3000Hz),低通滤波器根据码片速率c设置,最后抽样判决,在每个码元周期的中间进行抽样。
算法流程图
开始
开始
生成扩频码(哈达玛矩阵)(H)
生成扩频码(哈达玛矩阵)(H)
原序列d,载波m
对原序列进行扩频,生成扩频序列
对原序列进行扩频,生成扩频序列s
对扩频序列进行相干调制,生成调制信号
对扩频序列进行相干调制,生成调制信号
经过信道,即加噪声,得到信号
经过信道,即加噪声,得到信号noise
对接受到的信号noise,相干解扩
对接受到的信号noise,相干解扩
相干解调
相干解调
结束
结束
3.实验代码如下:
%生成哈达码矩阵(扩频码)
H=[1];
for i=1:3
H=[H,H;H,-H];%8行8列
end
d=[1,-1,1,-1];%对序列d进行扩频
d
figure(1);
stem(d);
axis([0,5,-2,2]);
title(原序列);
%扩频
s=[];
for i=1:length(d)
s=[s,d(i)*H(7,:)];%s为扩频后信号,32个元素的序列,H(7,:)=[1,1-1,-1,-1,-1,-1,1,1]
end
s;
figure(2);
stem(s);
axis([0,40,-2,2]);
title(扩频后信号);
%调制
c=2000;%码片速率
fc=8000;%载波频率
fs=128000;
t=0.0005/64:0.0005/64:0.0005;
m=sin(2*pi*fc*t);%载
显示全部