瑞利信道建模 matlab程序原理到实现
目標
產(chǎn)生無線信道中的小尺度衰落系數(shù)h(t),其模服從瑞利分布:y(t) = h(t)*s(t) + n(t)
Steps:
(1)瑞利信道建模
① 什么是瑞利分布?
復(fù)高斯隨機變量的模服從瑞利分布,即兩個高斯隨機變量的平方和開根號服從瑞利分布。
② 如何產(chǎn)生服從高斯分布的隨機變量?
根據(jù)中心極限定理,N個獨立同分布隨機變量的和服從高斯分布。
(2)Matlab 仿真
③ 如何用Matlab產(chǎn)生服從高斯分布的隨機變量?
采用正弦疊加法進行Matlab仿真,利用N個服從均勻入射的正弦波作為基礎(chǔ)信號,產(chǎn)生服從高斯分布的信號。基本原理如下:
其中, fd為最大多普勒頻移。
度量
觀察接收信號的功率譜是否符合經(jīng)典譜的形狀。
采用Simulink結(jié)合.m文件的形式實現(xiàn)
【注:】本文采用的是MATLAB R2020b 版本
打開Simulik 做出如下仿真圖
其中MATLAB Function中需要寫入自己寫好的代碼,代碼的原理參考前文描述。
function y=srch(x)L=length(x);%輸入信號長度N=1024; %累加個數(shù)ts=1e-4; %采樣時間fc=1e9; %載波頻率c=3e8; %光速v=120/3.6; %移動速度米/秒fd=(v/c)*fc;%最大多普勒頻移persistent theta; %設(shè)置入射角為全局變量if isempty(theta)theta=2*pi*rand(1,N); %返回2*pi*(1 x N維向量)endpersistent t0; %設(shè)置采樣時刻為全局變量if isempty(t0)t0=0;endt=t0:ts:(t0+(L-1)*ts); %L個輸入數(shù)據(jù)對應(yīng)的采樣時刻t0=t(end); %為下一組輸入信號的起始采樣時刻賦初值h=complex(zeros(N,L)); %初始化矩陣h or %h=complex(h(:,:));%h矩陣的第i列代表N個入射信號for i=1:Lh(:,i)=exp(1i*(2*pi*fd*cos((2*pi*(1:N))/N)*t(i)+theta))/sqrt(N);endh=sum(h,1); %按列求和,hi代表第i個輸入信號對應(yīng)的信道衰落值y=h.'.*x; %輸入信號和信道衰落相乘 end仿真結(jié)果
運行matlab得到如下仿真結(jié)果:
分析函數(shù)波形知接收信號的功率譜是符合經(jīng)典譜的形狀。
可以用matlab給的Rayleigh庫進行比較
在原有的simulink仿真圖上稍作修改得到如下仿真圖
運行matlab得到如下仿真結(jié)果:
分析函數(shù)波形知接收信號的功率譜是符合經(jīng)典譜的形狀。
比較兩者可看出結(jié)果是一致的。
總結(jié)
以上是生活随笔為你收集整理的瑞利信道建模 matlab程序原理到实现的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 香农辅助定理、KL散度和Jensen不等
- 下一篇: 图论及其应用 2018年期末考试 答案总