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

news2025/7/24 3:06:55

目录

1.算法概述

2.仿真效果预览

3.MATLAB部分代码预览

4.完整MATLAB程序


1.算法概述

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

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

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

 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.MATLAB部分代码预览


function sui1();


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.完整MATLAB程序

matlab源码说明_我爱C编程的博客-CSDN博客

V

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/16856.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2022关键之年,国产奶粉「争霸之秋」

奶粉又到关键年。 在中国奶粉的发展历程中&#xff0c;有两个关键性的时间节点&#xff1a;2008年&#xff0c;三鹿事件打乱了国产奶粉的发展节奏&#xff0c;洋奶粉开始大行其道&#xff1b;2016年&#xff0c;婴配粉注册制实行&#xff0c;打着“更适合中国宝宝体质”旗号的…

数据库系统工程师难考吗?

数据库系统工程师属于软考中级科目&#xff0c;只要你多看书多做练习&#xff0c;熟悉考试题型&#xff0c;用对学习方法&#xff0c;并不难考的。但是你专业不对口&#xff0c;应该在备考上多下功夫&#xff0c;建议把考试大纲里的内容复习一遍&#xff0c;掌握好考纲里的知识…

使用android 提取小米手机日志

如何使用android sdk获取小米日志 下载android sdk 登录网址https://www.androiddevtools.cn/ 往下滑找到SDK tools,下载zip包并解压到电脑随便一个位置 解压缩位置打开SDK Manager.exe&#xff0c;安装相关工具&#xff08;具体可以网络搜索&#xff09; 打开电脑cmd 使用a…

世界杯听腾格尔《遥远的地方》,可以多帮助你爱的球队多进几个球

世界杯又到来啦&#xff0c;球迷朋友笑哈哈&#xff0c;听着音乐看球赛&#xff0c;球迷朋友乐开怀。——世界杯&#xff0c;中国球迷欢迎你&#xff01;随着2022年11月20号的临近&#xff0c;卡特尔世界杯即将打响&#xff0c;每一位中国球迷都为之热血沸腾。 虽然说中国的足球…

ly-tab插件动态更改高度进行多端适配

在开发移动端用ly-tab时遇到的一个小问题&#xff0c;众所周知当我们使用rem配合flexible.js时元素的高度会根据不同的设配进行自动适配&#xff0c;但是ly-tab插件的高度默认使用px为单位&#xff0c;就会导致在不同的设备中出现我们不可控的因素 比如当我们想将其定位到顶部…

[附源码]java毕业设计农产品溯源管理

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

[附源码]java毕业设计农村留守儿童援助信息系统论文2022

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

普乐蛙大型VR模拟航空体验馆vr飞船体验馆vr航天科普馆定制

普乐蛙VR科普基地&#xff0c;拥有展示VR科普体验的设备多台&#xff0c;向观众科普及现代高科技全沉浸式虚拟现实&#xff08;VR&#xff09;技术应用&#xff0c;同时通过360度全沉浸式VR动感仿真设备体验防风防震、火灾逃生、交通安全等科普常识、寓教于乐&#xff0c;其乐无…

YOLOv5实操——检测是否戴口罩

文章目录数据集和代码的准备yolov5源码下载数据集的下载制作个人数据集数据集标注json 转 txt训练阶段模型训练可视化测试阶段数据集和代码的准备 yolov5源码下载 yolov5官方下载地址 数据集的下载 直接下载别人制作好的数据集 Mask Wearing Dataset 下载 然后将其放入与yo…

模型压缩算法库 MMRazor 全面升级,更灵活、更自动

MMRazor 是 OpenMMLab 开源项目里模型压缩领域的算法工具箱&#xff0c;目前支持了知识蒸馏、模型通道剪枝和模型结构搜索&#xff0c;模型量化部分正在开发中。 量化设计 RFC&#xff08;request for comment&#xff09;链接也放在这啦&#xff0c;欢迎各位小伙伴去提需求和建…

分享一个超好看回忆相册(代码自取)

目录 前言 正文 部分代码 单面截图 更改文档标题 更改图片 更改文字 源码 前言 Calabash Brothers 《葫芦兄弟》&#xff08;又名&#xff1a;葫芦娃&#xff09;&#xff0c;是上海美术电影制片厂于1985-1987年原创出品的13集系列剪纸动画片&#xff0c;是中国动画第…

python基于PHP+MySQL家政管理系统的设计与实现

随着大家生活水平的提高,在生活中家政服务变得越来越受大家的欢迎,如何来选择一个好的员工就也变得越来越重要,如何让人们足不出户就能找到自己满意的家政人员是本网站要解决的主要问题,我们建立一个家政公司信息系统来实现需求者从网站中快速的获取正确真实的家政服务信息的手…

阿里云账户新手实名认证教程(超简单秒通过)

阿里云账号注册后需要实名认证后才可以使用&#xff0c;阿里云百科教大家快速实名认证的方法&#xff0c;不需要上传身份证的等信息&#xff0c;以个人认证为例&#xff0c;直接拿你当支付宝扫一下即可通过实名认证&#xff0c;阿里云百科来详细说下阿里云个人或企业实名认证方…

单链表(一篇带你掌握单链表)

在之前我们已经学习了顺序表&#xff0c;顺序表有一定的缺陷&#xff0c;比如需要扩容&#xff0c;在插入和删除时需要挪动数据等问题&#xff0c;在此基础上我们可以学习一一种新的数据结构-单链表&#xff0c;相对来说它可以按需申请空间&#xff0c;并且不需要挪动数据。 我…

Spring Security登录流程分析

本文内容来自王松老师的《深入浅出Spring Security》&#xff0c;自己在学习的时候为了加深理解顺手抄录的&#xff0c;有时候还会写一些自己的想法 登录流程分析 要搞请求Spring Security认证流程&#xff0c;我们先得认识与之相关的三个基本组件&#xff1a;AuthenticationMa…

Redis——》事务

推荐链接&#xff1a; 总结——》【Java】 总结——》【Mysql】 总结——》【Spring】 总结——》【SpringBoot】 总结——》【MyBatis、MyBatis-Plus】 Redis——》事务一、概念二、示例multi、execdiscardwatch三、事务发生错误1、入队阶段发生错误2、执…

数据库课程设计——学籍管理系统

目录 1 问题的提出 1 2 需求分析 2 2.1需求描述 2 2.2数据字典 3 2.2.1数据项 3 2.2.2主要的数据流定义 6 2.3数据流图和业务流图 7 2.3.1顶层数据流图 7 2.3.2第一层数据流图 8 2.3.3第一层数据流图 8 2.3.4第一层数据流图 9 2.3.5第一层数据流图 9 3 概念结构设计 10 3.1实…

docker基础命令

docker基础 docker中的三个基本概念: 镜像: Docker 镜像&#xff08;Image&#xff09;&#xff0c;就相当于是一个 root 文件系统 容器: 镜像&#xff08;Image&#xff09;和容器&#xff08;Container&#xff09;的关系&#xff0c;就像是面向对象程序设计中的类和实例一…

基于STM32的DS18B20多点测温系统(Proteus仿真+程序)

编号&#xff1a;22 基于STM32的DS18B20多点测温系统 功能描述&#xff1a; 本设计由STM32F103单片机三路DS18B20温度传感器1602液晶显示模块组成。 1、主控制器是STM32F103单片机 2、三路共用“单总线”DS1820温度传感器测量温度 3、1602液晶显示温度&#xff0c;保留一位小…

[附源码]java毕业设计明光中学考试系统

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…