当前位置: 首页 > news >正文

关于 Lora中 Chirp Spread Spectrum(CSS)调制解调、发射接收以及同步估计的分析

本文结合相关论文对CSS信号的数学形式、调制解调、发射接收以及同步估计做了全面分析,希望有助于更好地理解lora信号

long-range (LoRa) modulation, also known as chirp spread spectrum (CSS) modulation, in LoRaWAN to ensure robust transmission over long distances by tolerating interference and noise.

参考:On the LoRa Chirp Spread Spectrum Modulation: Signal Properties and Their Impact on Transmitter and Receiver Architectures

正弦波线性调频信号由短时频率扫描组成,下图为其数学表示形式

a sine-wave chirp signal, concisely denoted as chirp in the following, consists of a short-time frequency sweep mathematically expressed as

使用M个chirp信号进行调制,Δf (s, t)表示调制符号s在t时刻的瞬时频率偏移

LoRa modulation uses M differently shaped chirps, each of which is in one-to-one correspondence with the M symbols of the modulation alphabet S = {0, ··· ,M − 1}. In particular, given a modulation symbol s ∈S, the instantaneous frequency-offset Δf (s, t) of the corresponding modulated chirp linearly increases starting from − B/2+B/M*s. Then, when the maximum frequency-offset B/2 is reached, Δf (s, t) wraps around to −B/2 and keeps on increasing linearly. Assuming t0 =0 as the symbol starting instant, the chirp stops when Δf (s, t = Ts)=Δf (s, 0). Its duration Ts is usually referred to as symbol time. 

chirp调制是一个wrap-around式的操作,频偏到达最大会返回至最低再开始

调制信号的产生

随后是正常的基带信号调制的过程

 基带信号的同相和正交信号的表示:in-phase and quadrature baseband signals

连续时间相位推导离散时间的相位

 此处的采样时间:符号时间/扩频系数,也就是采样频率为符号带宽BW,而无需奈奎斯特带宽

基带信号上采样之后发射

调制信号的接收和解调

h表示信道参数

相干解调

 针对接收信号使用极大似然方法进行符号估计

在信道参数和接收信号的条件下估计symbol属于s的概率,实质上就是找到接收信号在各个传输符号上的投影最大值

 实际的FFT Detector实现

 但是这种方法需要遍历各个符号,并不实用,实际上采用的是将接收信号的各个采样数值和basic up-chirp相关后进行FFT,找出最大值,就是估计出来的符号

实际的结构

解调前需要的同步:需要补偿CFO、STO、SFO

参考:Low Complexity LoRa Frame Synchronization for Ultra-Low Power Software-Defined Radios

 为何会有频偏:Low-cost crystal oscillators have an inherent mismatch with their nominal frequency value and therefore the down-conversion is performed with a different frequency than the up-conversion.

Before being able to demodulate the received symbols and recover the data, a LoRa receiver must also compensate for sampling, carrier frequency and symbol timing offsets that are due to unsynchronized timing references between the transmitter and the receiver.

 直观展示

CFO会使接收到的信号的频率整体搬移,超出频带,再经过采样,使采样后的在频带之内的信号与原信号不一致

CFO will shift the signal out of the receiver’s reception bandwidth, defined by in the interval [−N/2, .., N/2]. Sampling at a normalized minimum rate of 1/N folds the signal back into the receiver’s input bandwidth which, in Figure 3, has the effect of reconstructing complete up-chirps.

 STO影响了接收信号的起始时刻

Next, in the absence of synchronization, after sampling, the receiver has no way of identifying the start of the received sequence, resulting in an STO consisting of an integer number of samples, STOint (with STOint <N) plus a fraction of a sample, STOfrac. In the example of Figure 3, the signal is received with an STO (horizontal time shift) equal to 7.2 samples. Recovering STOint is mandatory for correct alignment to the modulated symbols and compensating for STOfrac is necessary for concentrating the symbol energy within a single FFT bin.

 SFO影响采样频率,导致累计采样误差

序列越长,累计误差的影响越大,导致一个符号里面的各个采样点被混淆,在使用FFT解调的时候被错认为其他的frequency bin

Finally, Figure 4 shows the impact of SFO on an otherwise perfectly synchronized signal. In the figure, we observe the effect of a receiver with a slightly higher sampling frequency to that of the emitter. We observe a cumulative sampling offset which has the effect of slowly moving the samples off of the desired integer frequency bins. If this offset is not corrected, the demodulator will start confusing a symbol (identified by its frequency bin) with its next neighbor. This is an important problem for high order modulations. For example, the highest order modulation in LoRa has N = 4096. Assuming low cost quartz crystals with a ±20 ppm precision are used in both emitter and receiver, a potential worst case offset of 40 ppm can lead to a drift of 0.16 sample after a single symbol. While this effect can sometimes be ignored during preamble acquisition, for example if the preamble is relatively short, this effect must imperatively be corrected during the demodulation phase of frame detection. An estimation of SFO can be extracted from CFO if the source of both offsets, the quartz crystal reference, is identical.

 核心方法:the presence of both up-chirps and down-chirps in a synchronization preamble leads to an elegant solution for extracting the integer part of both values.

CFO和STO的处理

 理想的信号

 收到CFO/STO影响下的接收信号

小数部分的提取:使用到两个完全相同的连续符号进行估计

SFO的估计 

The mismatch between the transmitter and receiver oscillators also results in different sampling frequencies, and therefore, the sampled LoRa signal at the receiver experiences a sampling frequency offset.

参考:LORA DIGITAL RECEIVER ANALYSIS AND IMPLEMENTATION

第d个symbol的第n个采样时刻的表示形式

然后对实际采样信号和实际参考信号进行同样的dechirp处理

 然后计算FFT,得到在SFO下的实际采样的计算值

 offset逐符号累计,会导致持续性解调错误

 Lora的前导preamble用于同步

 接收机检查输入信号功率并进行FFT,如果至少一个频率分档的幅度超过给定阈值,则将幅度最大的分档的指数标记为 ˆ Spre,并继续该过程。

重复识别到frequency bin之后,跳过一定的采样点,进入header部分

相关文章:

关于 Lora中 Chirp Spread Spectrum(CSS)调制解调、发射接收以及同步估计的分析

本文结合相关论文对CSS信号的数学形式、调制解调、发射接收以及同步估计做了全面分析&#xff0c;希望有助于更好地理解lora信号 long-range (LoRa) modulation, also known as chirp spread spectrum (CSS) modulation, in LoRaWAN to ensure robust transmission over long d…...

Java - API

API全称"Application Programming Interface"&#xff0c;指应用程序编程接口 API&#xff08;JDK17.0&#xff09;链接如下 : Overview (Java SE 17 & JDK 17) (oracle.com)https://docs.oracle.com/en/java/javase/17/docs/api/中文版&#xff1a; Java17中…...

力扣 3152. 特殊数字Ⅱ

题目描述 queries二维数组是nums数组待判断的索引区间&#xff08;左闭右闭&#xff09;。需要判断每个索引区间中的nums相邻元素奇偶性是否不同&#xff0c;如果都不同则该索引区间的搜索结果为True&#xff0c;否则为False。 暴力推演&#xff1a;也是我最开始的思路 遍历q…...

识别和缓解软件安全威胁的最佳工具

软件安全威胁会给企业带来重大损失&#xff0c;从经济损失到声誉受损。 企业必须主动识别和缓解这些威胁&#xff0c;防止它们造成危害。 幸运的是&#xff0c;有许多工具可以帮助企业识别和缓解软件安全威胁。 在本博客中&#xff0c;我们将探讨识别和缓解软件安全威胁的顶…...

Linux下的压缩与解压:掌握核心命令行工具

目录 一.前言 二.压缩文件概述 三.tar&#xff1a;Linux 的通用归档工具 常用 tar 命令 四.gzip&#xff1a;强大的压缩程序 常用 gzip 命令 五.zip 和 unzip&#xff1a;处理 ZIP 压缩文件 常用 zip 和 unzip 命令 实用技巧和最佳实践 六.结语 一.前言 在 Linux …...

BGP选路实验

要求&#xff1a; 1.如图连接网络&#xff0c;合理规格IP地址&#xff0c;AS200内IGP协议为OSPF&#xff1b; 2.R1属于AS 100&#xff1b;R2-R3-R4小AS234、R5-R6-R7小AS567&#xff0c;同时声明大AS 200&#xff0c;R8属于AS300&#xff1b; 3.R2-R5、R4-R7之间为联邦EBGP邻居…...

白骑士的C#教学高级篇 3.3 网络编程

网络编程是现代应用程序开发中至关重要的一部分。C# 提供了一套丰富的 API 来处理基本网络通信、Web请求与响应。在本节中&#xff0c;我们将深入探讨这些内容&#xff0c;帮助您掌握如何在 C# 中进行网络编程。 基本网络通信 基本网络通信通常涉及套接字&#xff08;Socket&a…...

AI大模型赋能游戏:更智能、更个性化的NPC

参考论文&#xff1a;https://arxiv.org/abs/2403.10249 在传统游戏中&#xff0c;NPC&#xff08;非玩家角色&#xff09;的行为往往是预先设定好的&#xff0c;缺乏灵活性和变化性。然而&#xff0c;基于大模型的NPC可以利用其强大的推理和学习能力&#xff0c;实时生成对话…...

pymysql的上下文管理器:简化数据库操作

pymysql的上下文管理器&#xff1a;简化数据库操作 当我们使用 pymysql 操作数据库时&#xff0c;管理数据库连接和游标的生命周期是一项重要的任务。Python 的上下文管理器提供了一种优雅的方式来处理资源的获取和释放。在本文中&#xff0c;我们将探索如何创建一个简单的 py…...

AI秘境-墨小黑奇遇记 - 修炼成神经(二)

在解开了感知机和门电路的谜题后&#xff0c;墨小黑对人工智能的世界渐渐产生了浓厚的兴趣。他开始意识到&#xff0c;自己不仅是在学习一门复杂的技术&#xff0c;更是在探索一个充满未知与挑战的神秘领域。 入夜&#xff0c;墨小黑一脸无奈地盯着电脑屏幕&#xff0c;思考着自…...

计算机网络之分组交换时延的计算

一.类型 分组交换的时延包括一下几种&#xff1a; 1.1发送时延 发送时延&#xff0c;也叫传输时延&#xff0c;结点将分组的所有比特推向链路所需要的时间&#xff0c;即从发送分组的第一个比特算起&#xff0c;到该分组的最后一个比特发送完为止。 发送时延 分组长度 / 发…...

虚幻5|入门AI行为树,建立敌人

本章分成两块部分一块是第一点的制作一个简单的AI&#xff0c;后面第二点之后是第二部分建立ai行为树。这两个部分是一个衔接&#xff0c;最好不要跳看 一&#xff0c;制作一个简单的AI 1.首先&#xff0c;我们创建一个敌人的角色蓝图&#xff0c;添加一个场景组件widget用于…...

ARM处理架构中的PMU(Performance Monitoring Unit)和 AMU(Activity Monitors Unit)简介

在 ARM 架构中,PMU(Performance Monitoring Unit)和 AMU(Activity Monitors Unit)是用于性能分析和监控的硬件单元,但它们的功能和应用场景有所不同。以下是它们的主要区别: 1. PMU (Performance Monitoring Unit) 功能:PMU 是一种用于监控处理器性能的硬件单元。它可…...

Service服务在Android中的使用

目录 一&#xff0c;Service简介 二&#xff0c;Service的两种启动方式 1&#xff0c;非绑定式启动Service 2&#xff0c;绑定式启动Service 三&#xff0c;Service的生命周期 1&#xff0c;非绑定式Service的生命周期 2&#xff0c;绑定式Service的生命周期 四&#xf…...

浅谈C语言位段

1、位段的定义 百度百科中是这样解释位段的: 位段&#xff0c;C语言允许在一个结构体中以位为单位来指定其成员所占内存长度&#xff0c;这种以位为单位的成员称为“位段”或称“位域”( bit field) 。利用位段能够用较少的位数存储数据。 以下&#xff0c;我们均在VS2022的…...

arcgisserver登陆信息不正确

密码明明对&#xff0c;但是登录提示登录信息不正确 Arcgis server 9.3.1 无法登录ArcGIS Manager 提示Incorrect Login Information 操作系统windows 2008 x64server 解决办法&#xff1a; 关闭window防火墙解决。 如果防火墙已经关闭&#xff1a; 通过修改用户口令后就可以重…...

KOLA: CAREFULLY BENCHMARKING WORLD KNOWLEDGE OF LARGE LANGUAGE MODELS

文章目录 题目摘要简介KOLA 基准实验评估结论和未来工作道德声明 题目 KOLA&#xff1a;仔细对大型语言模型的世界知识进行基准测试 论文地址:https://arxiv.org/abs/2306.09296 项目地址:https://github.com/ranahaani/GNews 摘要 大型语言模型 (LLM) 的卓越性能要求评估方法…...

Robot Operating System——机器人关节的角度、速度和力矩

大纲 应用场景定义字段解释 案例 sensor_msgs::msg::JointState 是 ROS (Robot Operating System) 中的一个消息类型&#xff0c;用于表示机器人关节的状态信息。它通常用于传输和处理机器人关节的角度、速度和力矩等信息。 应用场景 机器人控制 关节控制&#xff1a;在机器人…...

一分钟掌握java9新特性

try-with-resources语句 /** * 在处理必须关闭的资源时&#xff0c;使用try-with-resources语句替代try-finally语句。 生成的代码更简洁&#xff0c;更清晰&#xff0c;并且生成的异常更有用 * java9 之前写法 */ public static String readFile1(String fileName){ tr…...

89. UE5 RPG 实现伤害 冷却 消耗技能描述

在上一篇文章里&#xff0c;我们能够通过富文本显示多种格式的文字&#xff0c;并显示技能描述。在这一篇文章里&#xff0c;我们继续优化技能描述&#xff0c;将技能说需要显示的内容显示出来。 实现火球术的基础描述 首先&#xff0c;我们现实现火球术的基础描述&#xff0…...

el-tree树状控件,定位到选中的节点的位置

效果图 在el-tree 控件加 :render-content"renderContent" 在掉接口的方法中 实际有用的是setTimeout 方法和this.$refs.xxxxxx.setCheckedKeys([industrycodeList]) if(res.data.swindustrylist.length>0){res.data.swindustrylist.forEach(item > {industry…...

YOLO目标检测的单目(多目标测距),使用相机光学模型,支持目标检测模型训练,可输出目标位置和距离信息并可视化

本项目旨在开发一个基于YOLO的目标检测系统&#xff0c;该系统不仅能检测图像中的多个目标&#xff0c;还能利用单目摄像头的图像估计每个目标与摄像头之间的相对距离。系统的核心组成部分包括目标检测、距离估计、模型训练以及结果可视化。 主要功能 目标检测&#xff1a;使用…...

unity简易lua文件迁移工具

一. 了解商业游戏的Lua热更新开发方式 市面上的3种结合Lua热更新的开发方式 1.纯Lua开发&#xff08;所有的游戏主要逻辑都用Lua实现&#xff09; 好处&#xff1a;机动性强&#xff1b;坏处&#xff1a;代码效率略差 2.半C#&#xff0c;半Lua开发&#xff08;核心逻辑C#开发…...

Elasticsearch中的自动补全功能详解与实践

简介 自动补全是现代搜索引擎中的一项重要功能&#xff0c;它能够根据用户的输入提供实时的建议&#xff0c;提高用户体验。Elasticsearch提供了Completion Suggester查询来实现这一功能。本文将详细介绍Elasticsearch中的自动补全功能&#xff0c;并提供详细的配置和查询示例…...

前端如何使用Nginx代理dist网页,代理websocket,代理后端

本文将指导您如何配置Nginx以代理前后端分离的项目&#xff0c;并特别说明了对WebSocket的代理设置。通过本教程&#xff0c;您将能够实现一次性配置&#xff0c;进而使项目能够在任意局域网服务器上部署&#xff0c;并可通过IP地址或域名访问服务。 笔者建议 先速览本文了解大…...

Cannot connect to the Docker daemon at unix:///var/run/docker.sock. 问题解决

问题描述 原来我的服务器docker服务运行正常&#xff0c;但在某次尝试用时, 根据系统的错误提示执行了snap install docker指令之后&#xff0c; 再执行docker ps命令则提示Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running…...

零基础学习Redis(2) -- Redis安装与配置

Redis官方是并不支持Windows系统的&#xff0c;并且现在绝大部分公司都是使用的Linux&#xff0c;所以我们在Linux上进行安装&#xff0c;这里我使用的是Ubuntu 1. 安装步骤 1. 首先使用工具连接到我们的云服务器&#xff0c;然后输入apt指令搜索redis相关的软件包&#xff1…...

UniApp第一天

一、官网介绍 1.1、 SDK SDK是"Software Development Kit"的缩写&#xff0c;中文意思是“软件开发工具包”。SDK通常是由软件开发者为其他开发者提供的一个软件工具集合&#xff0c;用于帮助开发者快速开发、测试和部署软件应用。SDK通常包含了一系列的开发工具、库…...

TLE4966-3G带方向检测功能的高灵敏度汽车霍尔开关

TLE4966-3G是一款集成电路双霍尔效应传感器&#xff0c;专为使用旋转极轮的高精度应用而设计。通过片上有源补偿电路和斩波器技术实现精确的磁切换点和高温稳定性。 该传感器在Q2提供速度输出&#xff0c;其状态&#xff08;高或低&#xff09;与磁场值相对应。对于超过阈值BO…...

Github 2024-08-14 C开源项目日报Top10

根据Github Trendings的统计,今日(2024-08-14统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量C项目10Objective-C项目1PHP项目1Python项目1PHP:流行的Web开发脚本语言 创建周期:4710 天开发语言:C, PHP协议类型:OtherStar数量:37340 …...

东莞网站建设_东莞网页设计/自己如何注册网站

B2C(Business to Customer)。B2C中的B是Business&#xff0c;意思是企业&#xff0c;2则是to的谐音&#xff0c;C是Customer&#xff0c;意思是消费者&#xff0c;所以B2C是企业对消费者的电子商务模式。这种形式的电子商务一般以网络零售业为主&#xff0c;主要借助于Internet…...

成都集团网站建设/竞价托管哪家效果好

为国内高校的AI实力打call。 日前&#xff0c;全球计算机科学专业排名CSrankings进行了数据更新。这一排名由美国马萨诸塞大学安姆斯特分校的Emery Berger教授发起&#xff0c;他希望能够建立一个透明且有意义的排名体系。值得注意的是&#xff0c;CSrankings完全基于论文发表…...

隐藏网站开发语言/360收录查询

本题要求你写个程序把给定的符号打印成沙漏的形状。例如给定17个“*”&#xff0c;要求按下列格式打印************ *****所谓“沙漏形状”&#xff0c;是指每行输出奇数个符号&#xff1b;各行符号中心对齐&#xff1b;相邻两行符号数差2&#xff1b;符号数先从大到小顺序递减…...

谷歌企业网站seo/东莞网站公司排名

代理模式是一个十分优秀的软件架构模式&#xff0c;许多应用都用到了代理模式。代理模式就是为其他对象提供一种代理以控制对这个对象的访问。在某些情况下&#xff0c;一个对象不合适或者不能直接引用另一个对象&#xff0c;而代理对象可以在客户端和目标对象之间起到中介的作…...

中美网站建设/收录网站查询

C语言编译器报错C语言编译器报错及其解决编译器: TDM-GCC 4.7.1 32-bit执行 gcc.exe...gcc.exe "C:\Users\Administrator\Desktop\test1\2045.c" -o "C:\Users\Administrator\Desktop\test1\2045.exe" -m32 -g3 -I"F:\software(软件安装包)\Dev-cpp\M…...

音乐主题资源网站建设/网络营销策略有哪些

原文&#xff1a;https://docs.oracle.com/javase/7/docs/...