m无线通信信道matlab仿真,包括自由空间损耗模型,Okumura-Hata模型,COST231 Hata模型,SUI信道模型

简介: m无线通信信道matlab仿真,包括自由空间损耗模型,Okumura-Hata模型,COST231 Hata模型,SUI信道模型

1.算法概述

    无线信道是移动通信的传输媒体,所有的信息都在这个信道中传输。信道性能的好坏直接决定着人们通信的质量,因此要想在有限的频谱资源上尽可能地高质量、大容量传输有用的信息就要求我们必须十分清楚地了解信道的特性。然后根据信道地特性采取一系列的抗干扰和抗衰落措施,来保证传输质量和传输容量方面的要求。对几种常用的信道模型进行了详细的理论分析,主要包括自由空间损耗模型,Okumura-Hata模型,COST231 Hata模型,最后对802.16规范中建议使用的SUI信道模型进行了详细的理论分析。针对每种信道的特点,我们采用MATLAB对所介绍的信道进行仿真。

 Okumura-Hata模型,当频率范围在150Mhz至1500Mhz的范围内的时候,其表达式:

1.png

COST231 Hata模型应用频率在1 500MHz到2 000MHz之间,适用于小区半径大于1km的宏蜂窝系统,发射有效天线高度在30m到200m之间,接收有效天线高度在1m到10m之间。路径损耗计算的经验公式为:

2.png

SUI模型,为了仿真一个无线接收机接受信号强度的变化,我们需要知道:接收机所处的地理环境, 接收机到发射机的各个路径信号所受的影响,多普勒频偏等,即信道模型。对于频域单载波(SC-FDE) 技术,IEEE802.16主要规定其应用于11GHz以下的非视距(NLOS)固定无线接入( FWA),其典型的信道特征如下:

·蜂窝半径<1 0 k m,具有多样化的地形和植被密度;

·基站发送天线高1 5-4 0 m;

·接收天线高2~10 m,位于屋檐、窗口以下,或者是房顶高度的定向天线;

·高的蜂窝覆盖率(80%~90%)。

SUI模型基于AT&T的Wireless和Erceg等人的工作,Erceg将地形分成三种类型:

A类:最大路径衰落,适用于山地地形以及很大的植被密度,对应于信道模型SUI-5、SUI-6;

B类:中等路径衰落,适用于A、C描述之间的地形,对应于信道模型SUI-3、SUI-4;

C类:最小路径衰落,适用于平原地形以及极小的植被密度,对应于信道模型SUI-1、SUI- 2;

SUI模型对于各类衰落规定了具体的衰落公式,提出6种SUI模型的适用环境如下:

·蜂窝半径7 k m;

·基站发送天线高30m,接收天线高6m;

·基站发送天线波束宽度120度,接收天线波束宽度:全向(360)和(3 0);

·天线垂直极化;

·90%的蜂窝覆盖率,覆盖范围内99.9%的可信度。

2.仿真效果预览
matlab2022a仿真

3.png
4.png
5.png
6.png
7.png

3.MATLAB部分代码预览

 
 
N=10000;%独立随机数实现的数目
OR=20;%观察频率(Hz)
M=256;%多普勒滤波器的阶数
Dop_res=0.1;%SUI参数中的多普勒判决(Hz)(在重复采样进程中)
res_accu=20;%重复采样进程的精确度
%%%%%SUI信道参数%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
tau=[0.0 0.4 0.9];%每个抽头的时延
Dop=[0.4 0.3 0.5];%最大多普勒频移参数
K=[4 0 0];%K因子
P=[0 -15 -20];%每一阶的功率衰减
 
 
ant_corr=0.4;%天线相关性
Fnorm=-1.5113;%增益归一化因子
%%%%%%%%%%%计算m的值%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
P = 10.^(P/10);%计算线性功率
s2 = P./(K+1); % 计算方差
m2 = P.*(K./(K+1)); % 计算常数功率
m = sqrt(m2); % 计算常数部分
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
rmsdel = sqrt( sum(P.*(tau.^2))/sum(P) - (sum(P.*tau)/sum(P))^2 );
fprintf('rms delay spread %6.3f μs\n', rmsdel);
%%%%%%%%%在特定功率下计算伦琴信道系数%%%%%%%%%%%%%%%%
L = length(P); % 阶数
paths_r = sqrt(1/2)*(randn(L,N) + j*randn(L,N)).*((sqrt(s2))' * ones(1,N)); %L*N矩阵每阶的数据噪声
paths_c = m' * ones(1,N);%常数部分
 
for p = 1:L 
    D = Dop(p) / max(Dop) / 2; % 归一化最大多普勒频移 
    f0 = [0:M*D]/(M*D); % 频率因子 
 
 
    PSD = 0.785*f0.^4 - 1.72*f0.^2 + 1.0; % PSD估计 
    filt = [ PSD(1:end-1) zeros(1,M-floor(2*M*D)) PSD(end:-1:2) ]; % S(f) 
    filt = sqrt(filt); %从S(f)到|H(f)| 
    filt = ifftshift(ifft(filt)); % 获得脉冲响应 
    filt = real(filt); % 寻找实数滤波器
    filt = filt / sqrt(sum(filt.^2)); %归一化滤波器
    path = fftfilt(filt, [ paths_r(p,:) zeros(1,M) ]); 
    paths_r(p,:) = path(1+M/2:end-M/2); 
end; 
paths = paths_r + paths_c;%路径输出数据
Pest = mean(abs(paths).^2, 2);
fprintf('tap mean power level: %0.2f dB\n', 10*log10(Pest));
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
SR = max(Dop)*2; % 精确采样率
m = lcm(SR/Dop_res, OR/Dop_res); %求最小公倍数
P = m/SR*Dop_res; % 分子
Q = m/OR*Dop_res; % 分母 
paths_OR = zeros(L,ceil(N*P/Q)); % 创造新矩阵
for p=1:L
    paths_OR(p,:) = resample(paths(p,:), P, Q, res_accu);
end;
Pest = mean(abs(paths_OR).^2, 2);
fprintf('tap mean power level: %0.2f dB\n', 10*log10(Pest));
paths_OR1=10*log10(paths_OR);
NN=length(paths_OR(1,:));
y1=abs(paths_OR).^2;
y2=10*log10(y1);%转换为dB
t=60;%时间长度
x=1:NN;
y=x/OR;
01-22m
相关文章
|
4天前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于yolov4深度学习网络的公共场所人流密度检测系统matlab仿真,带GUI界面
本项目使用 MATLAB 2022a 进行 YOLOv4 算法仿真,实现公共场所人流密度检测。通过卷积神经网络提取图像特征,将图像划分为多个网格进行目标检测和识别,最终计算人流密度。核心程序包括图像和视频读取、处理和显示功能。仿真结果展示了算法的有效性和准确性。
50 31
|
17天前
|
算法
基于WOA算法的SVDD参数寻优matlab仿真
该程序利用鲸鱼优化算法(WOA)对支持向量数据描述(SVDD)模型的参数进行优化,以提高数据分类的准确性。通过MATLAB2022A实现,展示了不同信噪比(SNR)下模型的分类误差。WOA通过模拟鲸鱼捕食行为,动态调整SVDD参数,如惩罚因子C和核函数参数γ,以寻找最优参数组合,增强模型的鲁棒性和泛化能力。
基于粒子滤波器的电池剩余使用寿命计算matlab仿真
本研究基于粒子滤波器预测电池剩余使用寿命(RUL),采用MATLAB2022a实现。通过非线性动力学模型模拟电池老化过程,利用粒子滤波器处理非线性和非高斯问题,准确估计电池SOH变化趋势,进而预测RUL。系统仿真结果显示了良好的预测性能。
|
4天前
|
算法
基于Adaboost模型的数据预测和分类matlab仿真
AdaBoost(Adaptive Boosting)是一种由Yoav Freund和Robert Schapire于1995年提出的集成学习方法,旨在通过迭代训练多个弱分类器并赋予分类效果好的弱分类器更高权重,最终构建一个强分类器。该方法通过逐步调整样本权重,使算法更关注前一轮中被误分类的样本,从而逐步优化模型。示例代码在MATLAB 2022A版本中运行,展示了随着弱分类器数量增加,分类错误率的变化及测试数据的分类结果。
|
3天前
|
供应链 算法 调度
排队算法的matlab仿真,带GUI界面
该程序使用MATLAB 2022A版本实现排队算法的仿真,并带有GUI界面。程序支持单队列单服务台、单队列多服务台和多队列多服务台三种排队方式。核心函数`func_mms2`通过模拟到达时间和服务时间,计算阻塞率和利用率。排队论研究系统中顾客和服务台的交互行为,广泛应用于通信网络、生产调度和服务行业等领域,旨在优化系统性能,减少等待时间,提高资源利用率。
|
12天前
|
机器学习/深度学习 算法 Python
基于BP神经网络的金融序列预测matlab仿真
本项目基于BP神经网络实现金融序列预测,使用MATLAB2022A版本进行开发与测试。通过构建多层前馈神经网络模型,利用历史金融数据训练模型,实现对未来金融时间序列如股票价格、汇率等的预测,并展示了预测误差及训练曲线。
|
13天前
|
算法
超市火灾烟雾蔓延及人员疏散的matlab模拟仿真,带GUI界面
本项目基于MATLAB2022A开发,模拟了大型商业建筑中火灾发生后的人员疏散与烟雾扩散情况。算法通过设定引导点指导人员疏散,考虑视野范围、随机运动及多细胞竞争同一格点的情况。人员疏散时,根据是否处于烟雾区调整运动策略和速度,初始疏散采用正态分布启动。烟雾扩散模型基于流体方程,考虑了无风环境下的简化。
|
10天前
|
存储 算法
基于HMM隐马尔可夫模型的金融数据预测算法matlab仿真
本项目基于HMM模型实现金融数据预测,包括模型训练与预测两部分。在MATLAB2022A上运行,通过计算状态转移和观测概率预测未来值,并绘制了预测值、真实值及预测误差的对比图。HMM模型适用于金融市场的时间序列分析,能够有效捕捉隐藏状态及其转换规律,为金融预测提供有力工具。
|
10天前
|
机器学习/深度学习 算法 信息无障碍
基于GoogleNet深度学习网络的手语识别算法matlab仿真
本项目展示了基于GoogleNet的深度学习手语识别算法,使用Matlab2022a实现。通过卷积神经网络(CNN)识别手语手势,如&quot;How are you&quot;、&quot;I am fine&quot;、&quot;I love you&quot;等。核心在于Inception模块,通过多尺度处理和1x1卷积减少计算量,提高效率。项目附带完整代码及操作视频。
|
16天前
|
存储 算法 数据安全/隐私保护
基于方块编码的图像压缩matlab仿真,带GUI界面
本项目展示了基于方块编码的图像压缩算法,包括算法运行效果、软件环境(Matlab 2022a)、核心程序及理论概述。算法通过将图像划分为固定大小的方块并进行量化、编码,实现高效压缩,适用于存储和传输大体积图像数据。

热门文章

最新文章

下一篇
DataWorks