大尺度衰落下的路径损耗问题(1)

作者计划利用假期深入研究无线通信基础知识,特别是大尺度衰落问题,通过《无线通信基础》和《MIMO-OFDM无线通信技术及MATLAB实现》进行学习,分享了自由空间路径损耗模型和对数距离/对数正态阴影损耗模型的MATLAB代码实现。
摘要由CSDN通过智能技术生成

        最近开始了假期,也快一年没有在CSDN上发表自己的博客了。最近重新开始静下心来经营一下博客。打算彻底研究一下无线通信的基础相关问题。这个假期争取把《无线通信基础》(David Tse著)以及《MIMO-OFDM无线通信技术及MATLAB实现》这两部通信的经典书籍彻底的通一下,为下一篇小论文以及大论文打一下基础并找一下灵感。

        自由空间的大尺度衰落问题在通信和无线传输领域,特别是在无线通信系统中是常见的问题。最近笔者也在学习这方面的一些理论,之前的学习主要在峰均比抑制或者是通信系统的方面,对于无线通信的一些深层次的问题研究的不多,需要进一步去学习。

        首先介绍一下大尺度衰落(Large-scale fading)问题:大尺度衰落一般由随距离而变化的信号路径损耗和由建筑物、山脉等大型障碍物的阴影造成的,当移动台运动的距离与小区尺寸相当时,此时就会产生与频率无关的大尺度衰落。大尺度衰落主要表现为平均路径的损耗以及阴影衰落。

1.一般路径损耗模型

        参考《MIMO-OFDM无线通信技术及MATLAB实现》中给出的三种一般的路径损耗曲线模型。

       自由空间传播模型:这也一种最理想化的情况,发射机与接收机之间不存在任何障碍,常常用于卫星通信系统之中,在我们大气中很难达到这种情况。在《无线通信基础》中介绍了自由空间下固定天线以及运动天线理想模型的例子以及公式推导,我就不在此一一赘述了。在这里主要介绍损耗模型的代码。

        下面这段MATLAB代码实现了自由空间路径损耗模型。用于估计无线信号在自由空间中传播时的路径损耗,即信号强度随距离增加而减弱的情况。如果输入三个变量仅考虑发射端增益。最终的PL为路径损耗。最终生成自由空间的路径损耗随距离变化的曲线图。图中可以观察到天线增益减小时,路径损耗会增大,但是在其他环境中可能会变得不一样。

function PL=PL_free(fc,dist,Gt,Gr)
% Free Space Path loss Model
% Input
%       fc        : carrier frequency[Hz]
%       dist      : between base station and mobile station[m]
%       Gt        : transmitter gain
%       Gr        : receiver gain
% output
%       PL        : path loss[dB]
lamda = 3e8/fc;
tmp = lamda./(4*pi*dist);
if nargin>2
    tmp = tmp*sqrt(Gt); 
end
if nargin>3
    tmp = tmp*sqrt(Gr);  
end
PL = -20*log10(tmp);

 

       对数距离路径损耗和对数正态阴影损耗模型:一般情况下,自由空间还是对于日常通信中还不太实用,涉及更加真实的环境条件下,对数路径以及对数正态阴影衰落模型也会更加的实用较自由空间模型。在下面给出的代码中包括以上两种模型的公式,输入四个变量为对数五个则为对数正态。具体公式可以参考原书的讲解。可以由仿真图看出,加入方差的对数正态阴影损耗模型更加符合真实情况,在确定性的对数路径损耗模型叠加了阴影效应。

function PL=PL_logdist_or_norm(fc,d,d0,n,sigma)
% Log-distance or Log-normal Shadowing Path Loss model
% Input
%       fc    : carrier frequency[Hz]
%       d     : between base station and mobile station[m]
%       d0    : reference distance[m]
%       n     : path loss exponent, n
%       sigma : variance[dB]
% output
%       PL    : path loss[dB]
lamda = 3e8/fc;
PL = -20*log10(lamda/(4*pi*d0)) + 10*n*log10(d/d0);
if nargin>4
    PL = PL + sigma*randn(size(d));  
end 

以上代码均来自《MIMO-OFDM无线通信技术及MATLAB实现》,书中很多代码由于年代久远无法运行,这个假期我争取把无法运行的代码改出来,帮助到所有热爱通信的朋友。

  • 7
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天下第一关lennon

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值