【通信原理】【实验】实验三: 数字调制解调实验2ASK--2FSK--2PSK思路(GZHU)
文章目錄
- 一. 總體思路:
- 二. 內(nèi)容
- 2.1 第一個(gè)實(shí)驗(yàn)部分:2ASK (二進(jìn)制幅度調(diào)制)
- 2.1.1 2ASK
- 2.1.2 信道
- 2.1.3 符號(hào)解釋
- 2.1.4 問題思考
- 3.1 第二個(gè)實(shí)驗(yàn)部分:2FSK (二進(jìn)制頻率調(diào)制)
- 3.1.1思路:
- 4.1 第三個(gè)實(shí)驗(yàn)部分:2PSK (二進(jìn)制相位調(diào)制)
- 5.1 第四部分 2DSK
一. 總體思路:
針對(duì)2ASK調(diào)制使用相干解調(diào)法:對(duì)整個(gè)過程進(jìn)行分析
相比實(shí)驗(yàn)二:數(shù)字基帶傳輸實(shí)驗(yàn)(GZHU) 這里只是增加了調(diào)制和解調(diào)兩個(gè)部分,同時(shí)對(duì)于2ASK 這里選擇的碼型是單極性不歸零碼型;剩下的部分跟實(shí)驗(yàn)二是一樣的;調(diào)制方法:包絡(luò)法和模擬相乘法進(jìn)行調(diào)制和相干解調(diào);
二. 內(nèi)容
采用Matlab對(duì)數(shù)字調(diào)制解調(diào)系統(tǒng)進(jìn)行搭建并仿真,基本參數(shù)設(shè)置如下:
? 1. 信源為長(zhǎng)度N=1000的隨機(jī)“0”、“1”序列,發(fā)送端符號(hào)速率RB=1000Baud;
? 2. 基帶數(shù)字信號(hào)根據(jù)具體調(diào)制方式采用合適的基帶編碼;
? 3. 發(fā)送端的發(fā)送濾波器采用平方根升余弦濾波器,采樣頻率fs=16000Hz,滾降系數(shù)α=0.25,延遲delay=5;
? 4. 信道為awgn信道,信噪比snr=-5dB、5dB;
? 5. 接收端的低通濾波器采用平方根升余弦濾波器進(jìn)行匹配濾波;
請(qǐng)實(shí)驗(yàn)仿真并給出以下信息:、
載波頻率fc=4000Hz
(1) 發(fā)送端采用平方根升余弦脈沖成型后的時(shí)域和頻域波形;
(2) 發(fā)送端進(jìn)行2ASK調(diào)制后的時(shí)域和頻域波形;%
(3) 接收端進(jìn)行2ASK相干解調(diào)后的時(shí)域和頻域波形;
(4) 接收端進(jìn)行匹配濾波的時(shí)域和頻域波形;
(5) 發(fā)送端輸入信號(hào)和接收判決器輸出的信號(hào)波形對(duì)比圖;
(6) 誤碼率;
(7) 分析接收端抽樣判決閾值的選取對(duì)誤碼率的影響。
簡(jiǎn)單實(shí)驗(yàn)使用單極性不歸零碼型;
2.1 第一個(gè)實(shí)驗(yàn)部分:2ASK (二進(jìn)制幅度調(diào)制)
代碼:跟實(shí)驗(yàn)二不同的是信號(hào)在輸入信道前進(jìn)行調(diào)制,輸出信道后進(jìn)行解調(diào),剩下的都是跟實(shí)驗(yàn)二一樣!
2.1.1 2ASK
fc = 4000; % 載波頻率% f_up = 2000 % 上分支載波頻率 % f_down = 4000 % 下分支載波頻率x_len = length(x_shaped); % 發(fā)送信號(hào)長(zhǎng)度ln = 0:x_len - 1;t = ln/fs; % 時(shí)間t 2ASK調(diào)制cari_x = cos(2*pi*fc*t); % 載波 m_x_c = x_shaped .* cari_x; % 模擬相乘法進(jìn)行調(diào)制2.1.2 信道
m_x_c_n = awgn(m_x_c, snr, 'measured', 'db'); % 添加高斯白噪聲 1 相干解調(diào) x_c_n = m_x_c_n .* cari_x; % 與同頻率相乘 .* 1 脈沖成型 res = conv(x_c_n, h_sqrt); % 接收端脈沖成型,濾波器還是使用平方根升余弦 1接收端同步抽樣
% 抽樣同步 SynPosi = delay * oversamp * 2 + 1; % 兩個(gè)時(shí)延*過采樣率 SymPosi = SynPosi + (0:oversamp:(N-1) * oversamp); % 采樣點(diǎn)res_signl = res(SymPosi); % 接收端采樣信號(hào)判決 for i = 1:Nif res_signl(i) > 0.5res_match(i) = 1;elseif res_signl(i) <= 0.5res_match(i) = 0;end end計(jì)算誤碼率
for i = 1:Nif res_match(i) ~= s_nrz(i)c_error = c_error endend2.1.3 符號(hào)解釋
:
fc : 載波頻率
cari_x : 載波
m_x_c : 調(diào)制后信號(hào)
m_x_c_n : 調(diào)制后信號(hào)在信道上添加高斯白噪聲
x_c_n : 接收端解調(diào)后信號(hào)
res : 經(jīng)過卷積后的接收端信號(hào),此時(shí)已經(jīng)是低頻信號(hào)
res_signl : 經(jīng)過抽樣判決后的信號(hào)
res_match: 接收通過判決匹配信號(hào)
c_error : 錯(cuò)誤碼元個(gè)數(shù)
elv : 誤碼率
2.1.4 問題思考
基帶信號(hào)有碼間串?dāng)_,那么調(diào)制信道是否有碼間串?dāng)_?
有,只要是帶限信道就會(huì)產(chǎn)生碼間串?dāng)_
怎么避免碼間串?dāng)_呢?
組成 一起就能避免碼間串?dāng)_!
單極性不歸零碼
因?yàn)槿绻x擇雙極性碼型的時(shí)候,表示0或者1的正弦波的幅度的絕對(duì)值是相等;而單極性表示0或者1的時(shí)候表示1是正弦波,表示0是0;
這是因?yàn)檩d波的是將基帶信號(hào)搬移到載波頻譜上,所以是將每個(gè)基帶信號(hào)與載波對(duì)應(yīng)元素進(jìn)行相乘,而乘法是矩陣乘法,也就是mxn維度*nxm維度,點(diǎn)乘是nxm維度*nxm維度;
6. 接受端解調(diào)
解調(diào)方法:相干解調(diào)和包絡(luò)解調(diào)(以下是相干解調(diào))
就是將經(jīng)過載波的信號(hào)通過相乘器(與載波信號(hào)(同頻同相)進(jìn)行相乘),進(jìn)行簡(jiǎn)單的頻譜搬移,之后通過低通濾波器將高頻成分過濾,得到的就是基帶信號(hào)的低頻成分;
選擇0.5,因?yàn)槭褂玫氖菃螛O性碼元
3.1 第二個(gè)實(shí)驗(yàn)部分:2FSK (二進(jìn)制頻率調(diào)制)
3.1.1思路:
- 2FSK = 2ASK + 2ASK
4.1 第三個(gè)實(shí)驗(yàn)部分:2PSK (二進(jìn)制相位調(diào)制)
在2ASP的基礎(chǔ)上進(jìn)修改
將2ASK的碼型由原來的單極性不歸零碼改為雙極性不歸零碼
修改接受端的判別閾值有原來的0.5修改為0
不發(fā)生倒pi現(xiàn)象:
- 這是因?yàn)槭褂昧穗p極性不歸零碼的時(shí)候-1 會(huì)將同頻同相的載波在-1 的位置與1 進(jìn)行倒置,得到的是相位的變化來表示原來的-1和1;
不發(fā)生倒pi現(xiàn)象:
- 將接收端載波在相位上偏移pi個(gè)單位,實(shí)現(xiàn)倒pi 效果
carri_x_1 = cos(2 * pi * fc * t + pi); %接收端在倒pi現(xiàn)象
對(duì)接收端載波進(jìn)行一個(gè)pi相位的偏移部分代碼:
ln = 0:length(x_shaped) - 1; t = ln / fs; carri_x_1 = cos(2*pi*fc*t + pi); % 接受端的載波比發(fā)送端的載波在時(shí)域上多個(gè)pi單位 發(fā)送端載波 cari_x = cos(2*pi*fc*t); x_c_n_1 = m_x_c_n .* carri_x_1; %乘以與發(fā)送端同頻不同相的載波 figure('name', '倒pi接收端'); subplot(2,1,1),plot(x_c_n_1); axis([0 800 -1 1]); %時(shí)域波形 title('----時(shí)域');f_x_c_n_1 = fft(x_c_n_1, N); %傅里葉變換 f_x_c_n_1_abs = abs(f_x_c_n_1); %取絕對(duì)值 subplot(2,1,2),plot(f,f_x_c_n_1_abs); %頻域波形 title('----頻域');%時(shí)域上卷積濾波 res1 = conv(x_c_n_1, h_sqrt); %頻域乘積,時(shí)域卷積 figure('name', '2PSK相干解調(diào)'); subplot(2,1,1),plot(res1);axis([0 800 -1 1]); %接收端時(shí)域波形 title('----倒π時(shí)域');f_res1 = fft(res1, N); %傅里葉變換 f_res1_abs = abs(f_res1); %取絕對(duì)值 subplot(2,1,2),plot(f,f_res1_abs); title('----倒π頻域'); grid on;%接收端同步 res_signal1 = res1(SymPosi); %倒π現(xiàn)象%接收端采樣 res_match1 = zeros(length(res_signal1)); %初始化一個(gè)長(zhǎng)度為 N 的全零數(shù)組,存放接收端抽樣判決得到的碼元 for i = 1:Nif res_signal1(i) > 0res_match1(i) = 1;elseif res_signal1(i) <= 0res_match1(i) = -1;end endfigure('name', '----2PSK匹配波形'); subplot(2,1,1),stem(D_x);axis([0 100 -1 1]); title('----原始波形'); subplot(2,1,2),stem(res_match1);axis([0 100 -1 1]); title('----2PSK抽樣判決波形'); RecBit2 = zeros(N); %誤碼率 error = 0;%求誤碼率方法1 % for j = 1:N % if RecBit2(j) ~= D_x(j) % error = error + 1; % end % end % elv1 = error / N; %sprintf('誤碼率:%0.5f% ',elv1);% 方法2: [error, radio] = symerr(RecBit2,D_x)sprintf('錯(cuò)誤碼元數(shù)量:%d ',error); sprintf('誤碼率:%0.5f%',radio);5.1 第四部分 2DSK
實(shí)驗(yàn)完整代碼:后續(xù)…
【2ASK】:https://download.csdn.net/download/zcw1234515/19547248
【2FSK】:https://download.csdn.net/download/zcw1234515/19547258
【2PSK】:https://download.csdn.net/download/zcw1234515/19547270
github[本來先把代碼放github避免下載花積分,后來知道原來可以把下載積分設(shè)置為0]
參考文獻(xiàn):
[1] 基于MATLAB仿真的模擬乘法器AM波分析
[2]講解傅里葉變換的知乎
總結(jié)
以上是生活随笔為你收集整理的【通信原理】【实验】实验三: 数字调制解调实验2ASK--2FSK--2PSK思路(GZHU)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【通信原理】【实验】实验二:数字基带传输
- 下一篇: 【隐私】大数据下的隐私威胁【转载】