文章目录

  • 1 前言
  • 2 无线信道特性的数学表达
  • 3 无线信道特性分析
    • 3.1 多径特性
      • 3.1.1 时延功率谱
      • 3.1.2 均方根时延扩展
      • 3.1.3 信道相干带宽
      • 3.1.4 根据多径特性对信道分类
    • 3.2 时变特性
      • 3.2.1 多普勒谱
      • 3.2.2 多普勒扩展和相干时间
      • 3.2.3 根据时变特性对信道分类
  • 4 无线信道matlab仿真
    • 4.1 单径平坦型瑞利衰落信道仿真
      • 4.1.1 瑞利衰落信道的定义
      • 4.1.2 瑞利衰落信道生成方法
      • 4.1.3 瑞利衰落信道仿真
        • 4.1.3.1 方法一:采用正弦波叠加法产生瑞利衰落信道
        • 4.1.3.1 方法二:改进的Jakes谱模型产生单径平坦型瑞利衰落信道
        • 4.1.3.1 方法三:利用matlab自带的实现瑞利衰落信道的函数rayleighchan

1 前言

我觉得真正理解无线信道特性并进行信道建模不是一件那么容易的事。
现在把我学习和总结的一些东西记录在这篇文章里,希望能够随着知识的积累和理解的深入,不断完善。

2 无线信道特性的数学表达

对于在CSDN中编辑数学公式比较麻烦,这里就直接截图粘贴笔记了。
(1)先考虑多径

(2)考虑多径的情况下,加入时变


3 无线信道特性分析

这里对信道特性的描述只限于小尺度衰落。

3.1 多径特性

3.1.1 时延功率谱

3.1.2 均方根时延扩展

3.1.3 信道相干带宽

3.1.4 根据多径特性对信道分类

根据信号带宽(信号符号周期)和信道相干带宽(信道相对时延)的关系,可以将信道分为平坦衰落信道和频率选择性衰落信道。
(1)平坦衰落信道
如果相对时延和信号带宽的倒数相比非常小时,此时移动信道的带宽大于发送信号的带宽,发送信号通过信道之后频谱特性保持不变,只有信号强度受到时变信道增益的影响发生变化。
(2)频率选择性衰落信道
当信号的带宽足够大时,在整个信号带宽内信道不能再被视为常数,信道延迟不能再近似忽略,此时信道被称为频率选择性衰落信道。
属于平衰落信道还是频率选择性信道,主要时看信道时延扩展信号周期之间的关系(或者说信道带宽与信号带宽的关系):如果信号时延扩展小于信号周期(或者说相干带宽大于信号带宽),则是平衰落信道。如果信号时延扩展大于信号周期(或者说相干带宽小于信号带宽),则是频率选择性衰落信道。

3.2 时变特性

3.2.1 多普勒谱

3.2.2 多普勒扩展和相干时间

3.2.3 根据时变特性对信道分类

根据信道相干时间 和所传输的数字基带信号的符号速率 相比较,来决定信号在信道传输中是受到了慢衰落还是快衰落。
(1)若信道的相干时间小于所传信号的符号速率 ,则在符号周期内,信道的冲激响应快速变化,称为快衰落信道;
(2)若信道的相干时间 大于所传信号的符号速率 ,则在符号周期内,信道的冲激响应保持不变,称为慢衰落信道。

4 无线信道matlab仿真

4.1 单径平坦型瑞利衰落信道仿真

4.1.1 瑞利衰落信道的定义


这里顺便提一下莱斯信道:

4.1.2 瑞利衰落信道生成方法

对于单径的瑞利衰落信道,信道增益是具有0均值的复高斯随机过程(它的功率谱密度称为多普勒谱)。对于多径的情况,通常假设径与径之间是不相关的,每一径的多普勒功率谱形状相同,但功率(方差)不同。我们想要仿真多径衰落信道,首先可以产生特定多普勒功率谱密度的瑞利随机过程。
有几种产生单径平坦型瑞利衰落信道的模型,Clark/Gans模型(滤波白噪声模型)、Jakes模型(正弦波叠加法)、改进的Jakes模型,这里主要介绍下Jakes模型的原理,有时间再介绍其它两种模型。
正弦波叠加法的基本思想是,根据中心极限定理,若干个独立同分布的随机变量的和服从高斯分布,因此多个不同频率的复正弦波叠加,则实部虚部均分别服从高斯分布,又两个高斯变量的平方和的根服从瑞利分布,因此包络服从瑞利分布。

4.1.3 瑞利衰落信道仿真

4.1.3.1 方法一:采用正弦波叠加法产生瑞利衰落信道

程序:

% plot_Jakes_Flat.m%MIMO-OFDM Wireless Communications with MATLAB㈢   Yong Soo Cho, Jaekwon Kim, Won Young Yang and Chung G. Kang
%?2010 John Wiley & Sons (Asia) Pte Ltdclose all, clear all
% initial parameter
fd= 926;
Ts= 1e-6;
M= 2^12;
t= [0:M-1]*Ts;
f= [-M/2:M/2-1]/(M*Ts*fd);
Ns= 50000;
t_state= 0;
% channel generation
[h,t_state]=Jakes_Flat(fd,Ts,Ns,t_state,1,0);
% plotting
subplot(311), plot([1:Ns]*Ts,10*log10(abs(h))), axis([0 Ns*Ts -20 10])
title(['Channel Modeled by Jakes, f_d=',num2str(fd),'Hz, T_s=',num2str(Ts),'s']);
xlabel('time[s]'), ylabel('Magnitude[dB]')
subplot(323), hist(abs(h),50);
title(['Channel Modeled by Jakes, f_d=',num2str(fd),'Hz, T_s=',num2str(Ts),'s']);
xlabel('Magnitude'), ylabel('Occasions')
subplot(324), hist(angle(h),50);
title(['Channel Modeled by Jakes, f_d=',num2str(fd),'Hz, T_s=',num2str(Ts),'s']);
xlabel('Phase[rad]'), ylabel('Occasions')
% Autocorrelation of channel
temp=zeros(2,Ns);
for i=1:Nsj=i:Ns; temp1(1:2,j-i+1)= temp(1:2,j-i+1)+[h(i)'*h(j); ones(1,Ns-i+1)];
end
k=1:M; Simulated_corr(k)= real(temp(1,k))./temp(2,k);
Classical_corr= besselj(0,2*pi*fd*t);
% Fourier transform of autocorrelation
Classical_Y= fftshift(fft(Classical_corr));
Simulated_Y= fftshift(fft(Simulated_corr));
% plotting
subplot(325)
plot(t,abs(Classical_corr),'b:', t,abs(Simulated_corr),'r:')
title(['Autocorrelation of Channel, f_d=',num2str(fd),'Hz'])
grid on, xlabel('delay \tau [s]'), ylabel('Correlation')
legend('Classical','Simulated')
subplot(326)
plot(f,abs(Classical_Y),'b:', f,abs(Simulated_Y),'r:')
title(['Doppler Spectrum,f_d=',num2str(fd),'Hz'])
axis([-1 1 0 600]), xlabel('f/f_d'), ylabel('Magnitude')
legend('Classical','Simulated')

信道系数产生的函数:

function [h,tf]=Jakes_Flat(fd,Ts,Ns,t0,E0,phi_N)
% Inputs:
%   fd      : Doppler frequency
%   Ts      : sampling period
%   Ns      : number of samples
%   t0      : initial time
%   E0      : channel power
%   phi_N  : inital phase of the maximum doppler frequency sinusoid
% Outputs:
%   h       : complex fading vector
%   t_state: current time%MIMO-OFDM Wireless Communications with MATLAB㈢   Yong Soo Cho, Jaekwon Kim, Won Young Yang and Chung G. Kang
%?2010 John Wiley & Sons (Asia) Pte Ltdif nargin<6,  phi_N=0;    end
if nargin<5,  E0=1;       end
if nargin<4,  t0=0;  end
if nargin<3,  error('More arguments are needed for Jakes_Flat()');   end
N0=8;                  % As suggested by Jakes
N=4*N0+2;             % an accurate approximation
wd=2*pi*fd;           % Maximum doppler frequency[rad]
%t_state = t0;
%for i=1:Ns
%   ich=sqrt(2)*cos(phi_N)*cos(wd*t_state);
%   qch=sqrt(2)*sin(phi_N)*cos(wd*t_state);
%   for k=1:N0
%      phi_n=pi*k/(N0+1);
%      wn=wd*cos(2*pi*k/N);
%      ich=ich+2*cos(phi_n)*cos(wn*t_state);
%      qch=qch+2*sin(phi_n)*cos(wn*t_state);
%   end
%   h1(i) = E0/sqrt(2*N0+1)*complex(ich,qch);
%   t_state=t_state+Ts;             % save last time
%end
t = t0+[0:Ns-1]*Ts;  tf = t(end)+Ts;
coswt = [sqrt(2)*cos(wd*t); 2*cos(wd*cos(2*pi/N*[1:N0]')*t)]; % 侥 (2.32)
h = E0/sqrt(2*N0+1)*exp(j*[phi_N pi/(N0+1)*[1:N0]])*coswt; %侥 (2.29) with (2.30),(2.31), and (2.32)
% discrepancy = norm(h-h1)

PS:如果对程序有不懂的,可以参考(https://zhuanlan.zhihu.com/p/336379619)的介绍。
仿真结果:

4.1.3.1 方法二:改进的Jakes谱模型产生单径平坦型瑞利衰落信道

仿真程序如下:

function [h]=rayleigh(fd,t)
%该程序利用改进的jakes模型来产生单径的平坦型瑞利衰落信道
%Yahong R.Zheng and Chengshan Xiao "Improved Models for
%the Generation of Multiple Uncorrelated Rayleigh Fading Waveforms"
%IEEE Commu letters, Vol.6, NO.6, JUNE 2002
%输入变量说明:
%  fd:信道的最大多普勒频移 单位Hz
%  t :信号的抽样时间序列,抽样间隔单位s
%  h为输出的瑞利信道函数,是一个时间函数复序列 %假设的入射波数目N=40; wm=2*pi*fd;%每象限的入射波数目即振荡器数目N0=N/4;%信道函数的实部Tc=zeros(1,length(t));%信道函数的虚部Ts=zeros(1,length(t));%归一化功率系数P_nor=sqrt(1/N0);%区别个条路径的均匀分布随机相位theta=2*pi*rand(1,1)-pi;for ii=1:N0%第i条入射波的入射角 alfa(ii)=(2*pi*ii-pi+theta)/N;%对每个子载波而言在(-pi,pi)之间均匀分布的随机相位fi_tc=2*pi*rand(1,1)-pi;fi_ts=2*pi*rand(1,1)-pi;%计算冲激响应函数Tc=Tc+cos(cos(alfa(ii))*wm*t+fi_tc);Ts=Ts+cos(sin(alfa(ii))*wm*t+fi_ts);end;%乘归一化功率系数得到传输函数h=P_nor*(Tc+j*Ts );

调用上述函数,产生不同最大多普勒频移下的单径平坦型瑞利衰落信道:

close all;
clc;
fd=10;              %多普勒频移为10
ts=1/1000;          %信道抽样时间间隔
t=0:ts:1;           %生成时间序列
h1=rayleigh(fd,t);  %产生信道数据
fd=20;              %多普勒频移为20
h2=rayleigh(fd,t);  %产生信道数据
subplot(2,1,1),plot(20*log10(abs(h1(1:1000))))
title('fd =10Hz时的信道功率曲线')
xlabel('时间');ylabel('功率')
subplot(2,1,2),plot(20*log10(abs(h2(1:1000))))
title('fd=20Hz时的信道功率曲线')
xlabel('时间');ylabel('功率')

产生的瑞利衰落信道功率曲线:

4.1.3.1 方法三:利用matlab自带的实现瑞利衰落信道的函数rayleighchan

格式1:chan = rayleighchan(ts,fd)
生成一个单径的瑞利衰落信道,ts是输入信号的采样周期(单位s),fd为最大多普勒频移(单位Hz)。
rayleighchan函数除了可以产生单径的平坦型瑞利衰落信道外,还可以产生频率选择性衰落信道(多径衰落信道),每一径是一个独立的瑞利衰落信道。按下述格式调用:
格式2:chan = rayleighchan(ts,fd,tau,pdb)
ts和fd的意义同前面相同,tau是每一径相对于第一径的时延(单位s),pdb是每一径相对第一径的平均增益(单位dB)。

参考资料:
《MIMO-OFDM无线通信技术及MATLAB实现》
《详解MATLAB/Simulink通信系统建模与仿真》

无线信道特性分析及建模仿真相关推荐

  1. 太赫兹无线信道的测量、建模和分析

    摘要 太赫兹通信有望成为第六代移动通信网络的关键技术之一.为实现太赫兹通信,对太赫兹无线传播信道的研究不可或缺.首先,介绍了3种主要的太赫兹信道测量方法,包括基于矢量网络分析仪的频域信道测量.基于滑动 ...

  2. 无线移动信道特性分析

    各类信号从发射端发送出以后,在到达接收端之前经历的所有路径,统称为信道.其中,如果传输的是无线电信号,电磁波所经历的路径,我们则称之为无线信道. 与其它通信信道相比,无线信道是最为复杂的一种,其衰落特 ...

  3. 2020.10.15-simulink入门-无线信道特性

    1.打开matlab,输入simulink回车,或者是点击右上角的simulink按钮 2.选空白模板blank model,或是按需求选择其它的 3.搭电路: discrete time scatt ...

  4. matlab中幅度调制,幅度调制信号的特性分析及其MATLAB仿真研究

    第 26 卷 第 3 期 安徽理工大学学报(自然科学版) Vol. 26 No. 3 2006 年 9 月 Journal of A nhuiU niversity of Science and Te ...

  5. matlab单相变压器在,基于MATLAB单相变压器的仿真建模及特性分析.pdf

    基于MATLAB单相变压器的仿真建模及特性分析,matlab变压器仿真,matlab数学建模与仿真,matlab建模仿真实例,matlab建模与仿真,matlab建模与仿真应用,matlab仿真怎么建 ...

  6. matlab中频率选择性衰落信道,浅海水声信道模型分析及频率选择性衰落仿真

    第10卷第12期 Vo l .10,No .12 宜宾学院学报 J ou rnal of Yibin Un i versity 2010年12月 Dec .,2010 收稿日期1修回作者简介贺繇(), ...

  7. 机器学习在无线信道建模中的应用现状与展望

    [摘  要]为了适应未来6G通信系统的超宽频谱.超大规模天线阵列.高度异构化以及众多新型应用场景,信道建模成为新系统开发必不可少的技术基础.由于6G通信系统将具有典型的大数据特征,基于机器学习的数据驱 ...

  8. m基于matlab的WLAN室内无线信道建模与仿真

    目录 1.算法仿真效果 2.算法涉及理论知识概要 3.MATLAB核心程序 4.完整算法代码文件 1.算法仿真效果 matlab2022a仿真结果如下: 2.算法涉及理论知识概要 室内无线信道是指室内 ...

  9. matlab仿真散射信道,无线信道建模原理及SUI-3信道的MATlab仿真.doc

    无线信道建模原理及SUI-3信道的MATlab仿真 无线衰落信道及仿真 无线衰落信道 在无线移动信道中,信号从发射天线经过复杂的传播环境到达接收天线,接收信号为各反射.衍射和散射分量以及信道噪声的复合 ...

  10. 无线信道建模技术在5G场景下的分析与应用

    [摘  要]通过对5G场景下的无线信道建模技术进行分析,给出了不同场景的信道特性和建模方法,并阐述了该技术在理论研究.仿真分析和实际测试中的具体应用方式,为无线信道建模技术在5G中的应用提供参考. [ ...

最新文章

  1. Luogu P4709 信息传递 (群论、生成函数、多项式指数函数)
  2. 生日快乐编程代码_世界上最好的编程语言,刚刚度过了25周岁生日
  3. 中兴zxr10路由器重启命令_蒲公英路由器刷第三方固件(一)
  4. js中写java集合代码,JS实现JAVA的List功能
  5. 关于Python3.7和Python3.6中元组类型数据内存存储问题
  6. d3.js html显示图片,d3.js v4:如何在鼠标点击节点后显示图像
  7. 华为云TaurusDB性能挑战赛-java赛题mvn编译时报错:不支持multi-catch
  8. android系统加载主题的流程,详解Android布局加载流程源码
  9. 【釜底抽薪】谷歌锁喉华为
  10. c 连接oracle 通用类,c#操作oracle,有没有相仿sqlhelp之类的通用操作类(6)
  11. SQL Server时间粒度系列----第9节时间粒度示例演示
  12. 如何安装和配置 AngularJS Eclipse
  13. 全网首发:终于把freetype的bitmap模式汉字字体旋转成功了
  14. MyBatis中Mapper映射文件的输入(parameterType)和输出(resultType)映射
  15. C语言中进制转换与函数
  16. maven仓库repositories和mirrors的配置及区别详解(轻松搞明白)
  17. 扫地机器人单扫和双扫_扫地机器人初体验 懒人神器还是逗猫的塑料玩具
  18. 杂记 去中心化系统介绍
  19. 垃圾小白羊leetcode刷题记录3
  20. spark-2.2.0发行说明

热门文章

  1. 两种excel 去掉公式保留数值的方法
  2. JZOJ 5750 青青草原播种计划
  3. Skynet服务器框架(八) 任务和消息调度机制
  4. 零极限:关于蓝色太阳水原理
  5. 今有物不知其数三三数之JAVA_今有物不知其数.三三数之剩二.五五数之剩三.七七数之剩二.问物几何? 题目和参考答案——青夏教育精英家教网——...
  6. 大数据背后的无奈与焦虑:“128元连衣裙”划分矮穷挫与白富美?
  7. unity动画之帧动画使用
  8. 如何提高 CSS 动画性能
  9. 企业内部知识共享平台的好处-以Confluence为例
  10. 丑小鸭课件软件测试,丑小鸭免费课件