您好,欢迎来到保捱科技网。
搜索
您的当前位置:首页Matlab与通信仿真课程设计报告

Matlab与通信仿真课程设计报告

来源:保捱科技网


Matlab与通信仿真课程设计

实验一 单边带调幅系统的建模仿真

一、 实验目的

1. 了解单边带调幅系统的工作原理

2. 掌握单边带调幅系统的Matlab和Simulink建模过程

二、 实验内容

1、Matlab设计一个单边带发信机、带通信道和相应的接收机,参数要求如下。

(1)输入话音信号为一个话音信号,采样率8000Hz。话音输入后首先进行预滤波,预滤波器是一个频率范围在[300,3400]Hz的带通滤波器。其目的是将话音频谱在3400Hz以下。单边带调制的载波频率设计为10KHz,调制输出上边带。要求观测单边带调制前后的信号功率谱。 (2)信道是一个带限高斯噪声信道,其通带频率范围是[10000, 13500]Hz。要求能够根据信噪比SNR要求加入高斯噪声。

(3)接收机采用相干解调方式。为了模拟载波频率误差对解调话音音质的影响,设本地载波频率为9.8KHz,与发信机载波频率相差200Hz。解调滤波器设计为300Hz到3400Hz的带通滤波器。

2、用Simulink方式设计一个单边带传输系统并通过声卡输出接收机解调的结果声音。系统参数参照实例5.9,系统仿真参数设置为50KH 显示结果

(1)能观察音频信号、SSB加载后的信号,解调后的信号波形 (2)能观察音频信号频谱、SSB加载后的信号频谱,解调后的信号频谱

(3)解调结果放到.wav音频文件,改变信道信噪比听解调的结果

三、 实验要求

1.按要求设计仿真参数;

2.按计算所得参数建立Matlab和SIMULINK系统模型; 3.设置各模块参数及仿真参数后仿真系统; 4.分析仿真结果。

实验二 数字通信系统的建模仿真

一、 实验目的

1. 了解数字通信系统的建模过程

2. 了解数字通信系统的仿真过程,并掌握对建模的好坏进行分析

二、 实验内容

1

Matlab与通信仿真课程设计

建立并测试一个直接序列扩频的码分多址传输系统,对比以Gold序列、m序列以及随机整数发生器 Random Integer Generator 作为直接序列扩频的扩频序列的传输性能,观察两路CDMA码源的收发数据波形,测试误码率,并用频谱仪观察直接序列扩频调制前后和解调前后的信号频谱。

 1、建立一个直接序列扩频

观察收发数据波形;并用频谱仪观察原信号、直接序列扩频后的信号频谱、加噪声的信号频谱、解扩后的信号频谱;测试误码率。

 2、对比以Gold序列、m序列(已做)以及随机整数发生器 Random Integer Generator作为直接序列扩频码源的传输性能,观察波形、频谱(扩频后、加噪声后、解扩后、解调后)、误码率,比较分析传输性能

 3、建立并测试一个直接序列扩频的码分多址传输系统 观察两路CDMA码源的收发数据波形;观察误码率;观察频谱(各自扩频后、加噪声后、各自解扩后、各自解调后);

 4、对比以Gold序列、m序列以及随机整数发生器 Random Integer Generator作为直接序列扩频码源的码分多址传输系统

观察波形、频谱(各自扩频后、各自解调后)、误码率,分析传输性能

 5、完成跳频扩频传输系统

三、 实验要求

1.按要求设计仿真参数;

2.按计算所得参数建立SIMULINK系统模型; 3.设置各模块参数及仿真参数后仿真系统; 4.分析仿真结果。 5.撰写实验报告。

工作内容及工作计划:1周(14-15) 时间 6.3- 6.4- 6.5 6.8- 6.13 地点 科技楼机房3 科技楼机房3 科技楼机房3 科技楼机房3 3-315 工作内容 单边带调幅系统的建模 单边带调幅系统的仿真 直接序列扩频的码分多址传输系统建模 直接序列扩频的码分多址传输系统仿真 测试并答辩 撰写课程设计报告

2

Matlab与通信仿真课程设计

实验一 单边带调幅系统的建模仿真

一、 实验目的

3. 了解单边带调幅系统的工作原理

4. 掌握单边带调幅系统的Matlab和Simulink建模过程

二、 实验内容

1、Matlab设计一个单边带发信机、带通信道和相应的接收机,参数要求如下。

1.1输入话音信号为一个话音信号,采样率8000Hz。话音输入后首先进行预滤波,预滤波器是一个频率范围在[300,3400]Hz的带通滤波器。其目的是将话音频谱在3400Hz以下。单边带调制的载波频率设计为10KHz,调制输出上边带。要求观测单边带调制前后的信号功率谱。 程序清单:

[wav,fs]=wavread('GDGvoice8000.wav');

t_end=1/fs*length(wav); %计算声音的时间长度 Fs=50000; %仿真系统采样率 t=1/Fs:1/Fs:t_end; %仿真系统采样时间点 %设计300~3400Hz的带同预滤波器 [fenzi,fenmu]=butter(3,[300 3400]/(fs/2)); %对音频信号进行预滤波 wav=filter(fenzi,fenmu,wav);

%利用插值函数将音频信号的采样率提升为Fs=50KHz wav = interp1([1/fs:1/fs:t_end],wav,t,'spline');

wav_hilbert=imag(hilbert(wav)); %音频信号的希尔伯特变换 fc=10000; %载波信号

SSB_OUT=wav.*cos(2*pi*fc*t)-wav_hilbert.*sin(2*pi*fc*t);%单边带调制 figure(1) %观察调制前后频谱 subplot(221);plot(wav(53550:53750)); axis([0 200 -0.3 0.3]); subplot(222);psd(wav,10000,Fs); axis([0 25000 -20 10]); subplot(223);plot(SSB_OUT(53550:53750)); axis([0 200 -0.3 0.3]); subplot(224);psd(SSB_OUT,10000,Fs); axis([0 25000 -20 10]); wavwrite(0.5*SSB_OUT,Fs,'SSB_OUT.wav');%将SSB调制输出存盘备用 运行结果:如图 1

3

Matlab与通信仿真课程设计

图 1 一段话音信号及其单边带调制输出波形得到功率谱仿真结果 1.2信道是一个带限高斯噪声信道,其通带频率范围是[10000, 13500]Hz。要求能够根据信噪比SNR要求加入高斯噪声。 程序清单: 主函数 clear;

[in,Fs]=wavread('SSB_OUT.wav'); SNRdB=20;

out=ch5example9prog2(in,SNRdB); wavwrite(out,Fs,'Channel_OUT,wav'); 子函数

function out=ch5example9prog2(in,SNRdB) %SNR_dB设定信噪比 %in输入信号序列 %out信道输出序列 Fs=50000; %系统采样率 Power_of_in=var(in);

Power_of_noise=Power_of_in/(10.^(SNRdB/10)); bandwidth=13500-10000;%信道带宽

NO=Power_of_noise/bandwidth;%噪声功率谱密度值W/Hz

4

Matlab与通信仿真课程设计

Gauss_noise=sqrt(NO*Fs/2).*randn(size(in));

[num,den]=butter(4,[10000 13500]/(Fs/2)); %带通信到10~13.5khz signal_of_filter_out=filter(num,den,in); noise_of_filter_out=filter(num,den,Gauss_noise);

SNR_dB=10*log10(var(signal_of_filter_out)/var(noise_of_filter_out)) out=signal_of_filter_out+noise_of_filter_out;%信道输出 运行结果:

计算出的信噪比结果。

1.3接收机采用相干解调方式。为了模拟载波频率误差对解调话音音质的影响,设本地载波频率为9.8KHz,与发信机载波频率相差200Hz。解调滤波器设计为300Hz到3400Hz的带通滤波器。

程序清单: clear;

[recvsignal,Fs]=wavread('Chennel_OUT.wav');%读入信道输出信号数据 t=(1/Fs:1/Fs:length(recvsignal)/Fs);

fc_loal=10000-200; %本地载波频率9.8kHz local_carrier=cos(2*pi*fc_local.*t); %本地载波 xianggan_out=recvsignal.*local_carrier; %相干解调

[fenzi,fenmu]=butter(3,[300 3400]/[Fs/2]); %设计300~3400Hz的带通滤波器

demod_out=filter(fenzi,fenmu,xianggan_out); %对相干输出信号进行滤波 sound(demod_out/max(demod_out),Fs); %播放解调音频 wavwrite(demod_out,Fs,'SSBDemod_OUT.wav');

2、用Simulink方式设计一个单边带传输系统并通过声卡输出接收机解调的结果声音。系统参数参照实例5.9,系统仿真参数设置为50KH 2.1能观察音频信号、SSB加载后的信号,解调后的信号波形

2.2能观察音频信号频谱、SSB加载后的信号频谱,解调后的信号频谱 2.3解调结果放到.wav音频文件,改变信道信噪比听解调的结果

系统框图:如图2

5

Matlab与通信仿真课程设计

音频信号读入信号预滤波提升采样频率希尔伯特变换相乘载波信号原信号与载波信号相乘提升采样频率希尔伯特变换相减送入信道载波信号调制后的信号相乘滤波输出信号图 2 simulink仿真系统框图

SIMULINK

系统模型(带限):如图 3

图 3 Simulink方式设计单边带传输系统并通过声卡输出接收机解调模型 信号输入:

[wavs,fs]=wavread('GDGvoice8000.wav'); t_end=1/fs*length(wavs);

6

Matlab与通信仿真课程设计

t=(1/fs:1/fs:t_end)'; source=[t wavs];

通过workspace编写程序对模块进行信号输入。

音频输出:

wavwrite(demod_sout,Fs,'simSSBDemod_OUT.wav');

这里输出也同样利用编程将信号输出到指定目录下,同时保存文件名为 simSSBDemod_OUT.wav 音频文件。 参数设置:

首先将系统的仿真步进时长设置为1/50000,即仿真采样频率50KHz,对信号进行预滤波,这里采用butter带通滤波器频率设置为[300 3400]Kz。带通下边频率设置为300*2*pi,带通上边频率设置为3400*2*pi。滤波器阶数设置为6阶(调制和解调模块设置一样)。由于希尔伯特变换需要输入信号离散,所以将信号滤波之后进入一个零阶保持器,将信号离散化,保持器采样时间与系统采样时间相同。同样的,由于本地载波也需要希尔伯特变换,所以对本地载波也要进行离散化变化参数设置同上。本地载波频率设置为(10KHz)初相位设置为pi/2(调制和解调模块设置一样),经过希尔伯特变化后进入一个实部和虚部的分离器,然后将二者实部虚部分别相乘之后再相加就可以得到SSB调制信号。因为输出时需要的是离散化的信号,所以要将乘法器的采样时间设置为1/50000.。得到调制信号之后就可以进行信道的加入噪声,将信号经过高斯白噪声信道(SNR可以自由设置,越大则对调制信号的影响越小)这里设置为20。然后对信号进行相干解调。最后通过一个与前一个相同的带通滤波器,最后将解调后的信号输出。 仿真结果及分析: 如图2.1 功率频谱图

图2.1 功率频谱图原始信号功率谱(左),SSB加载后功率谱(右)

7

Matlab与通信仿真课程设计

如图 2.2音频、加载、解调信号

如图 2.2原始音频(上)、SSB加载信号(中)、解调信号(下) 加大信道中信噪比的参数,使解调出的信号与原始音频信号更相近,信道中噪声的干扰也同时减小。从波形可以看出,该系统调制后的信号与原始音频信号的差别不大,但是通过对将解调之后的信号和原始信号进行对比可以看到信号的幅度明显减弱了,在验证时,相比原始的音频信号,解调出来的音频信号的声音更尖细。

实验二 数字通信系统的建模仿真

一、实验目的

1. 了解数字通信系统的建模过程

2. 了解数字通信系统的仿真过程,并掌握对建模的好坏进行分析

二、 实验内容

建立并测试一个直接序列扩频的码分多址传输系统,对比以Gold序列、m序列以及随机整数发生器 Random Integer Generator 作为直接序列扩频的扩频序列的传输性能,观察两路CDMA码源的收发数据波形,测试误码率,并用频谱仪观察直接序列扩频调制前后和解调前后的信号频谱。

1、建立一个直接序列扩频

8

Matlab与通信仿真课程设计

观察收发数据波形;并用频谱仪观察原信号、直接序列扩频后的信号频谱、加噪声的信号频谱、解扩后的信号频谱;测试误码率。

仿真模型(先解扩再解调):如图1

图 1 直接扩频发射机仿真系统模型(先解扩后解调)

其中CDMA模型:如图 2

图 2 CDMA模型

参数设置:

用贝努力序列产生二进制数据源,采样时间(sample time)设置为实验要求的1/100s,其余默认。PN序列:采样时间(sample time)设置为实验要求的1/2000s,其余默认。单极性转变成双极性和双极性转化成单极性模块:因为是二进制数据源所以参数设置为2。单频干扰源:频率设置为300Hz,并且采样时间设置为1/2000。信道:噪声方差设置为10。调制模块:解扩信号的采样率为2000次/s, BPSK基带数据信号速率为100bps,其采样率为100次/s,所以在BPSK解调器中应设置sample per symbol参数为20。经过单双极性变换并进行速率采样后用频谱仪观察。解调模块中是参数设置与调制模块的一致。在BPSK解调后面接Error Rate Calculation观察误码率。

运行结果及分析: 如图1.1

9

Matlab与通信仿真课程设计

图1.1 原始信号频谱(左)加噪声之后信号频谱(右)

原始信号加入单频噪声之后产生尖峰。

如图1.2 图1.3

图1.2接扩之后信号频谱 图1.3display计算出的误差

接扩后输出频谱(信号)AWGN信道噪声方差为10,即为中间凸起。

仿真模型(先解调后解扩):如图 3模型不同点。

图 3 先解调后解扩

参数设置不同点:

BPSK模型参数不变,在后面增加一个单极性转变成双极性模块,Product采样时间设置为1/100。其余不变。 结果分析:

先解调在解扩抗噪声性能明显减弱。

10

Matlab与通信仿真课程设计

2、对比以Gold序列、m序列(已做)以及随机整数发生器 Random Integer Generator作为直接序列扩频码源的传输性能,观察波形、频谱(扩频后、加噪声后、解扩后、解调后)、误码率,比较分析传输性能 仿真模型:

整体模块及参数设置不变。把解调里和发送端的PN序列改为Gold序列或随机整数发生器序列。 Gold序列:如图 4

图 4解调模块(左)发送端模块(右)

随机整数发生器 Random Integer Generator:如图5

图5解调模块(左)发送端模块(右)

参数设置:

随机整数发生器序列和Gold序列修改方法一样,随机整数发生器序列和Gold序列参数默认,其余参数不变。 三种序列对比:

从误码率可以观察出PN随机序列、Gold序列及随机整数发生器作为直接序列扩频码源总体上可以观察出这三者的误码率大小差不多。其中Gold序列产生的误码率相较而言略大。从波形上可以看出经过解调和调制之后,波形与原数据源产生的波形基本。

3、建立并测试一个直接序列扩频的码分多址传输系统

观察两路CDMA码源的收发数据波形;观察误码率;观察频谱(各自扩频后、加噪声后、各自解扩后、各自解调后); 系统模型:如图 6

11

Matlab与通信仿真课程设计

图 6 码分多址(CDMA)系统框图

参数设置:

两个扩频发射机子系统结构相同,但传输数据和所用的PN序列不同,两个接收机所使用的本地PN序列对应于所要求接收的扩频信号所使用的PN序列,具体是:发射机CDMA Trans,使用PN序列的特征多项式为[1 0 0 0 0 1 1],初始状态为[0 0 0 0 0 1];传输数据Bernoulli Binary Generato模块的随机数种子为61;发射机CDMA Trans.1使用相同的特征多项式,但初始状态为[ 0 0 0 0 1 1];传输数据Bernoulli Binary Generato模块的随机数种子为77.这样两个扩频输出信号使用了相同m序列的不同相位作为扩频码。两个扩频信号叠加送入同一个AWGN信道传输,信道噪声方差可设为5。两个接收机中作为对比的数据源的随机种子也对应设置为61和77.仿真执行中各接收机的调制波形与对应发送数据波形相同。

运行结果及分析: 如图3.1 图3.2 图3.3

图3.1两路发射机扩频后对比

12

Matlab与通信仿真课程设计

图3.3两路信号经过叠加并通过噪声信道之后

图3.3接扩并解调后对比

误码率:

图3.4CDMA Trans(左)CDMA Trans 1(右)

4、对比以Gold序列、m序列以及随机整数发生器 Random Integer Generator作为直接序列扩频码源的码分多址传输系统观察波形、频谱(各自扩频后、各自解调后)、误码率,分析传输性能

Gold序列和随机整数发生器:

模块建立时只需要把PN序列部分改为Gold序列或随机整数发生器即可,特征多项式按照PN序列设置,其余参数不需要修改。 Gold序列运行结果:

13

Matlab与通信仿真课程设计

图4.1两路发射机扩频后对比

图4 2两路信号经过叠加并通过噪声信道之后

图4.3接扩并解调后对比

Gold序列误码率:

图4.1CDMA Trans(左)CDMA Trans 1(右)

14

Matlab与通信仿真课程设计

随机整数发生器序列序列运行结果:

图4.4两路发射机扩频后对比

图4.5两路信号经过叠加并通过噪声信道之后

图4.6接扩并解调后对比

随机整数发生器序列误码率:

图4.2CDMA Trans(左)CDMA Trans 1(右)

15

Matlab与通信仿真课程设计

结果分析:

从误码率可以观察出,在两路的CDMA通信模型中,三种码型传输误码率相差不大。但m序列要优于其它两种序列。 三、 实验总结

通过本次课程设计,在对于Matlab/Simulink通信系统建模仿真得到了一 定的提升。了解了一个仿真系统的设计过程,从分析到过程设计到最后的具体模块,对模块的参数设计也有一定的提升。对于一个仿真系统是否工作正常,可以利用数字示波器和频谱议进行分析,然后得到某个模块参数设置不正确或者数据类型有错误。也自己动手搭建了m随即序列、Gold序列、及随机整数序列的传输解调系统,观察各个序列的抗噪声能力。M序列优于其它序列。

16

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- baoaiwan.cn 版权所有 赣ICP备2024042794号-3

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务