繼續(xù)講解!該來(lái)到直接序列擴(kuò)頻知識(shí)的講解課程了。這個(gè)難度對(duì)于本科生而言,已經(jīng)綽綽有余!真心希望老師們能夠量力而行的給學(xué)生們布置畢業(yè)設(shè)計(jì)課題!什么是擴(kuò)頻通信呢?
擴(kuò)展頻譜通信,簡(jiǎn)稱擴(kuò)頻通信,是一種信息傳輸方式,其信號(hào)所占有的頻帶寬度遠(yuǎn)大于所傳信息必需的最小帶寬。頻帶的擴(kuò)展是通過(guò)一個(gè)獨(dú)立的碼序列(一般是偽隨機(jī)碼,比如m序列和GOLD序列)來(lái)完成,用編碼及調(diào)制的方法來(lái)實(shí)現(xiàn)的,與所傳信息數(shù)據(jù)無(wú)關(guān)。在接收端則用同樣的碼進(jìn)行相關(guān)同步接收、解擴(kuò)及恢復(fù)所傳信息數(shù)據(jù)。擴(kuò)展頻譜通信與光纖通信、衛(wèi)星通信一同被稱為進(jìn)入信息時(shí)代的三大高技術(shù)通信傳輸方式。
這么重要的技術(shù)一定要仿真一下哦。這樣你能直觀的了解此項(xiàng)技術(shù)!2022年,此項(xiàng)專題已經(jīng)整理成多個(gè)系列!歡迎大家深入學(xué)習(xí)!
%%% 擴(kuò)頻通信調(diào)制解調(diào)器誤碼性能仿真程序 %%%
%%%% DS_BPSK_modem_sim1.m %%%
%%% date: 2017-03-01 author:算法工匠 %%%%
%%%%% 程序說(shuō)明
% 完成擴(kuò)頻通信系統(tǒng)仿真,比較不同信噪比下的誤碼性能。
% 參數(shù)化編程。
% 通信體制具體內(nèi)容如下:
% M序列:255位
% 調(diào)制方式:BPSK 編碼方式:無(wú)
% 滾降因子:0.5
% 解調(diào)方式:相干解調(diào) 譯碼方式:無(wú)
% 噪聲:加性高斯白噪聲
% 基帶信號(hào)仿真
%%% 仿真環(huán)境
% 軟件版本:matlab 2015b
%%% sim系列說(shuō)明之處
%
clear all;close all;format long;
%%********** 程序主體 *********%%
%%%%%% 系統(tǒng)參數(shù) %%%%%
bit_rate = 1024;
symbol_rate = 1024;
fre_sample = 16*symbol_rate;
symbol_sample_rate = 16;
% 一個(gè)符號(hào)內(nèi)的采樣倍數(shù)
fre_carrier = 4000;
%%%%%% 信源 %%%%%%%%
%%% 隨機(jī)信號(hào)
% msg_source = randint(1,1000);
msg_source = [ones(1,20) zeros(1,20) randint(1,60)];
% 給出標(biāo)志性的幀頭,方便調(diào)試。
% 通常幀頭會(huì)采用擴(kuò)頻序列,為了方便調(diào)試,可以采用全1和全0。
%%%%%% 發(fā)射機(jī) %%%%%%
%%%% 生成m序列
%%% m序列初始狀態(tài)
stg = 8;
taps= [1 8];
inidata = [1 0 1 1 1 1 0 1]; % 初始相位
m_sequence = funct_mseq_2015(stg, taps, inidata);
% m_sequence取值為0和1。
bi_m_sequence = 2*m_sequence - 1;
%%%%% 擴(kuò)頻
ds_msg_source = (2*msg_source-1)'*bi_m_sequence;
% 完成每個(gè)符號(hào)的擴(kuò)頻
%%% 串并轉(zhuǎn)換
bipolar_ds_msg_source = reshape(ds_msg_source',1,[]);
%%%%%% 調(diào)制器
%%% 濾波器
% rcosflt 滾降成型濾波
rcos_msg_source = rcosflt(bipolar_ds_msg_source,symbol_rate,fre_sample);
% Roll-off factor 為 0.5。
% 頻域觀察
fft_rcos_msg_source = abs(fft(rcos_msg_source));
% figure(1)
% plot(rcos_msg_source,'-*')
% title('時(shí)域波形')
% figure(2)
% plot(fft_rcos_msg_source)
% title('頻域波形')
aaa = 1; % 調(diào)試斷點(diǎn)
%%% 載波發(fā)送
time =[1:length(rcos_msg_source)];
rcos_msg_source_carrier = rcos_msg_source'.*cos(2*pi*fre_carrier.*time/fre_sample);
% 頻域觀察
fft_rcos_msg_source_carrier = abs(fft(rcos_msg_source_carrier));
figure(3)
plot(rcos_msg_source_carrier)
title('時(shí)域波形')
figure(4)
plot(fft_rcos_msg_source_carrier)
title('頻域波形')
aaa = 1; % 調(diào)試斷點(diǎn)
%%%%%% 信道 %%%%%%%%
% 設(shè)置信噪比
snr = -10 ;
% 擴(kuò)頻下的信噪比需要換算才能得到真正的信噪比。
% 非常重要的概念?。。?/span>
%%% 高斯白噪聲信道
rcos_msg_source_carrier_noise = awgn(rcos_msg_source_carrier,snr,'measured');
% rcos_msg_source_carrier_noise = awgn(rcos_msg_source_carrier,snr);
%%% 瑞利信道
% 暫無(wú)
%%%%%% 接收機(jī) %%%%%%
%%%%%% 解調(diào)器
%%% 載波恢復(fù)
% 生成本地載波
rcos_msg_source_noise = rcos_msg_source_carrier_noise.*cos(2*pi*fre_carrier.*time/fre_sample);
% 濾波高頻,保留基帶信號(hào)
LPF_fir128 = fir1(128,0.2);
% 生成低通濾波器
rcos_msg_source_LP = filter( LPF_fir128, 1, rcos_msg_source_noise );
% 延時(shí)64個(gè)采樣點(diǎn)輸出。
figure(5)
plot(rcos_msg_source_LP)
title('時(shí)域波形')
figure(6)
plot(abs(fft(rcos_msg_source_LP)))
title('頻域波形')
% 生成匹配濾波器
rolloff_factor = 0.5; % 滾降因子
rcos_fir = rcosdesign(rolloff_factor, 6, symbol_sample_rate);
% 生成匹配濾波器系數(shù)
% 濾波
rcos_msg_source_MF = filter( rcos_fir, 1, rcos_msg_source_LP );
% 使用filter函數(shù)
figure(7)
plot(rcos_msg_source_MF,'-*')
title('時(shí)域波形')
figure(8)
plot(abs(fft(rcos_msg_source_MF)))
title('頻域波形')
%%% 最佳采樣點(diǎn)選擇
% 選取最佳采樣點(diǎn),一個(gè)符號(hào)取一個(gè)點(diǎn)進(jìn)行判決
decision_site = 160;
% (96+128+96)/2 = 160 三個(gè)濾波器延遲值
rcos_msg_source_MF_option = rcos_msg_source_MF(decision_site: symbol_sample_rate : end);
% 涉及三個(gè)濾波器,固含有三個(gè)濾波器延遲累加。
%%%%%%%% 解擴(kuò)頻
% 不涉及捕獲過(guò)程
% 捕獲會(huì)涉及信號(hào)的頻率和碼相位參數(shù)的獲取
for i = 1:length(rcos_msg_source_MF_option)/length(bi_m_sequence)
% 乘累加
sum_PN(i) = sum(bi_m_sequence.*rcos_msg_source_MF_option((i-1)*length(bi_m_sequence)+1:i*length(bi_m_sequence)));
end
%%%%% 判決輸出
msg_source_MF_option_sign = sign(sum_PN);
figure(9)
plot(rcos_msg_source_MF_option,'-*')
title('時(shí)域波形')
%%%%%% 解碼器
% bchdecode % BCH譯碼
%%%%% 信宿 %%%%%%%%
%%% 誤碼性能比對(duì)
% [err_number,bit_err_ratio] = biterr(x,y)
[err_number,bit_err_ratio] = biterr(msg_source(1:length(msg_source_MF_option_sign)), (msg_source_MF_option_sign + 1)/2)
%%%%%%%%% 仿真結(jié)果 %%%%%%%
% 給出不同信噪比下的誤碼性能。
再來(lái)看一下程序的結(jié)論。有總結(jié)才能有提高!
%%%%% 結(jié)論 %%%%%%
% 完成了擴(kuò)頻通信系統(tǒng)的仿真。
% 沒(méi)有包含編譯碼內(nèi)容。
% 同步內(nèi)容沒(méi)有涉及。
% 信噪比需要經(jīng)過(guò)擴(kuò)頻因子的換算。
% 程序中在snr=-10dB時(shí),誤碼為0。
% 2017-3-5
要用到之前課上學(xué)過(guò)的函數(shù)程序funct_mseq_2015。知識(shí)可是一環(huán)套一環(huán)的哦。如果不會(huì),請(qǐng)閱讀前面的課程。

未完,待續(xù)!
題外話!
倡議和提倡垃圾分類,這樣能帶來(lái)回收的便利。我們大學(xué)校園里面已經(jīng)開(kāi)始這樣的環(huán)保行動(dòng)了,南京市鼓樓區(qū)的小學(xué)也采用了垃圾分類箱。環(huán)保意識(shí)從孩子開(kāi)始樹(shù)立,真棒。日本在這方面做的很棒,雖然我不喜歡小日本,但這樣的環(huán)保意識(shí)和行動(dòng)還是值得稱贊的。垃圾分類可以提高垃圾的資源價(jià)值和經(jīng)濟(jì)價(jià)值,力爭(zhēng)物盡其用。
作為一名大學(xué)老師,是不是管的太多了。是的,我管的很多,連學(xué)生們上衛(wèi)生間不遵守規(guī)定都要管。不管不行啊,我們都是社會(huì)大家庭的一份子。這些大學(xué)生出去后要給社會(huì)注入正能量才行啊,這就需要老師在大學(xué)期間什么都要管一點(diǎn)。你們說(shuō),對(duì)嗎?
修訂記錄
20181105 完成初稿;
20221122 修訂內(nèi)容v2;
原文標(biāo)題:計(jì)算機(jī)通信與網(wǎng)絡(luò)v2 實(shí)驗(yàn)課程(15)
文章出處:【微信公眾號(hào):通信工程師專輯】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
-
通信網(wǎng)絡(luò)
+關(guān)注
關(guān)注
21文章
2062瀏覽量
52687
原文標(biāo)題:計(jì)算機(jī)通信與網(wǎng)絡(luò)v2 實(shí)驗(yàn)課程(15)
文章出處:【微信號(hào):gh_30373fc74387,微信公眾號(hào):通信工程師專輯】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
計(jì)算機(jī)網(wǎng)絡(luò)入門指南

微軟OmniParser V2:大模型轉(zhuǎn)化為計(jì)算機(jī)智能體
微軟OmniParser V2發(fā)布:大模型轉(zhuǎn)化為計(jì)算機(jī)智能體
BU-67121W實(shí)驗(yàn)室航空電子接口計(jì)算機(jī)North Hills
云端超級(jí)計(jì)算機(jī)使用教程
刀片計(jì)算機(jī)設(shè)計(jì)方案:192-6U VPX i7 刀片計(jì)算機(jī)

量子計(jì)算機(jī)與普通計(jì)算機(jī)工作原理的區(qū)別

評(píng)論