日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【通信原理】【实验】实验二:数字基带传输实验(GZHU)

發布時間:2025/1/21 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【通信原理】【实验】实验二:数字基带传输实验(GZHU) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄


實驗二:數字基帶傳輸實驗

  • 信源為長度N=1000的隨機“0”,“1”序列,發送端符號速率RB=1000Baud
  • 采用雙極性編碼;
  • x = randi([0,1], 1, N); % 隨機生成0或者1 個數是N個 D_x = 2 * x - 1 ; % 雙極性碼型
  • 使用升余弦脈沖成型,嘗試不同滾降系數和延遲的平方根升余弦脈沖成型的效果:
    (a) 固定時延delay=3,討論滾降系數α=0.25,0.5,0.75三者的區別;
  • 更改不同的delay(時延)和alpha(滾降系數)
    使用conv()函數脈沖成型輸出的是時域上的波形
    之后使用fft();傅里葉變換,在取絕對值abs()后得到的是頻域上的波形;因為fft后的結果是復數,復數沒法作圖,所以一般會用模(復數的絕對值),實部或幅角這些實數作圖。所有要加上絕對值;

  • 編寫數字基帶傳輸的完整Matlab實現代碼,包括脈沖成型、信道、匹配接收、判決幾個部分,取α=0.25,delay=5;高斯信道,信噪比為-15dB:5dB:15dB。注意發送濾波器和接收濾波器對信號產生的時延影響。請給出以下信息:snr=-10,-5,0,5,10
    (a) 發送端脈沖成型后的時域波形和頻域波形;
    發送端脈沖成型是在平方根升余弦之后使用conv()函數,得到時間域波形,fft()函數得到頻域上波形;
  • (b) 接收端匹配接收后的時域波形和頻域波形;
    接受端也是使用升余弦函數繼續脈沖成型;
    不過信號是使用傳輸信號(含有高斯白噪聲的);當經過conv()函數就是脈沖成型;
    ? 發送和接收的信號波形對比度;
    當經過抽樣判決的時候得到

    Rect_M = zeros(N); % 初始化一個列表,存放1/-1 for i = 1:N if res_s(i) >0 Rect_M(i)=1; elseif res_s(i) <0 Rect_M(i)=-1; end end

    畫出接收端抽樣判決之后得到的序列 Rect_M與發送端發送的序列 D_x 的波形,兩者對比。

    (d) 數字基帶傳輸的誤碼率

    % 計算誤碼率 都是矩形波比較D_x和Rect_M erro = 0; for i =1:N if Rect_M(i) ~= D_x(i) erro = erro + 1; end end error_lv = erro/N;

    接收端誤碼率就是統計原始雙極性碼與和恢復出來的碼元之間錯誤碼元的占比;

    實驗性代碼,沒有怎么整理,錯誤難免!希看官輕批!

    clear; clc; N = 1000; x = randi([0,1], 1, N); % 隨機生成0或者1 D_x = 2 * x - 1 ; % 雙極性碼型 Rect_p = ones(1,8); % 擴采樣 %subplot(2, 1 ,1); %stem(D_x);axis([0 200 -1 1]);title("原始波形"); x_p = kron(D_x,Rect_p); % 擴充8倍 后有解釋%subplot(2,1,1); %stem(D_x); %title("原始波形雙極性碼");axis([0 200 -1 1]); %subplot(2, 1 ,2); %stem(x_p);axis([0 200 -1 1]);title("擴采樣波形"); fb=1000; %發送端符號速率 fs=8000; %濾波器采樣頻率 oversamp=fs/fb; %過采樣率 delay = 5 ; %濾波器時延 alpha = 0.25; %滾降系數 erro=0; S_N =-5; % 信噪比-10 -5 0 5 10 h_sqrt = rcosine (1, oversamp, 'fir/sqrt', alpha, delay); % %平方根升余弦濾波器 (發送端) % 發送端時域上的波形 sendsignal_oversample=kron(D_x, [1, zeros(1, oversamp-1)]); sendshaped=conv(sendsignal_oversample, h_sqrt); % 發送端脈沖成型 figure('name','發送端脈沖成型') subplot(2,1,1); stem(sendshaped); title("時域");axis([0 200 -1 1]); f_x = fft(sendshaped,N); y = abs(f_x); subplot(2,1,2); plot(y); title("頻域"); % 高斯白噪聲 x_n = awgn(sendshaped, 10, 'measured', 'db'); % 添加高斯白噪聲 % 加噪聲后頻域上的波形 % figure('name','添加高斯白噪聲后') % 畫子圖,第一個 %%subplot(2, 1, 1); %stem(sendsignal_oversample);axis([100 500 -10 15]);title("S/N:-10 接收端時間域波形"); %stem(noi_s);axis([0 200 -1 1]);title("發送端波形"); res = conv(x_n,h_sqrt); % 接收端脈沖成型 figure('name','接收端時域和頻域'); subplot(2, 1, 1); stem(res);title('時域:');axis([0 100 -3 3]); res1 = fft(res,N); r_ = abs(res1); % 傅里葉變換后取絕對值 subplot(2, 1, 2); plot(r_);title('頻域:');%axis([0 100 -7 7]); % 接收端同步,抽樣 % 抽樣判決 兩個時延*擴采樣 SynPosi = delay * oversamp * 2 + 1 ; SymPosi = SynPosi + (0:oversamp:(N - 1 ) * oversamp ); res_s = res(SymPosi) % 接收信號 Rect_M = zeros(N); % 初始化一個列表,存放1/-1 for i = 1:N if res_s(i) >0 Rect_M(i)=1; elseif res_s(i) <0 Rect_M(i)=-1; end end figure('name','接受端抽樣判決'); subplot(2,1,1); stem(Rect_M);axis([0 200 -2 2]); title("S_N=10 判決后波形匹配"); subplot(2,1,2); stem(D_x); title("原始波形雙極性碼");axis([0 200 -2 2]); % 計算誤碼率 都是矩形波比較D_x和Rect_M erro = 0; for i =1:N if Rect_M(i) ~= D_x(i) erro = erro + 1; end end error_lv = erro/N;

    x_p = kron(D_x,Rect_p); % 擴充8倍 后有解釋

    解釋:D_x :雙極性碼元
    x_p :擴采樣之后的碼元
    h_sqrt :平方根升余弦后的信號
    sendshaped:發送端脈沖成型信號
    x_n :發送端脈沖成型信號在信道傳輸的時候添加了高斯噪聲
    res :接收端脈沖成型
    SynPosi = delay * oversamp * 2 + 1 ; SymPosi = SynPosi + (0:oversamp:(N - 1 ) * oversamp ); 抽樣判決點

    這里由于發送端和接收端都存在時延,所有delay要* 2之后乘上擴采樣倍數,選擇合適的采樣點;之后每隔擴采樣點采樣一次
    (0:oversamp:(N - 1 ) * oversamp )%意思是從0到(N - 1 ) * oversamp 每個oversamp個采樣點采樣一次

    最后一個就是figure(s)運行一次出現多張畫布;所以對每個小題都建立一張畫布。subplot(2,1,1);意思是一張畫布中畫多個圖,這樣是生成兩行一列的圖,現在選擇第一行的圖畫;

    plot()和stem()區別,前者是畫連續圖,后者是畫散點圖;
    \

    上述兩個細節看百度

    總結

    以上是生活随笔為你收集整理的【通信原理】【实验】实验二:数字基带传输实验(GZHU)的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。