WiFi感知中的多普勒频移

article/2025/8/26 8:11:12

引言:

多普勒效应(doppler effect)与多普勒偏移(doppler shift)代表相同含义,只是在文献中表达不同。

产生原因:

波源和观察者之间速度的相对差异是产生多普勒效应的原因

原理:

第一种表示形式:
  当波源与观测者以速度 v v v做相对运动时,有
f r = f t ( 1 + v / c 1 − v / c ) = f t ( c + v c − v ) f_r=f_t\left(\frac{1+v / c}{1-v / c}\right)=f_t\left(\frac{c+v}{c-v}\right) fr=ft(1v/c1+v/c)=ft(cvc+v)
  其中, f r f_r fr是观测者接受到的频率, f t f_t ft是波源的频率, c c c代表光速
  多普勒频移 f d f_d fd可以表示为:
f d = f r − f t = 2 v f t ( c − v ) f_d=f_r-f_t=2 v \frac{f_t}{(c-v)} fd=frft=2v(cv)ft
  由于 v ≪ c v \ll c vc,因此多普勒频移 f d f_d fd可以约等于成:
f d ≈ 2 v f t c f_d \approx 2 v \frac{f_t}{c} fd2vcft

第二种表示形式:
在这里插入图片描述
  波源静止,当接收端以恒定的速率 v v v 在长度为d,端点为 X和 Y的路径上运动时收到来自波源 S发出的信号,无线信号从波源S出发,在X点与Y点被接收端接收时所走的路径差可近似表示为:
Δ l = d ⋅ cos ⁡ Θ = v ⋅ Δ t ⋅ cos ⁡ Θ \Delta \mathrm{l}=\mathrm{d} \cdot \cos \Theta=v \cdot \Delta \mathrm{t} \cdot \cos \Theta Δl=dcosΘ=vΔtcosΘ
  每个波长对应 2 π r a d 2 \pi \mathrm{rad} 2πrad 的相位变化,由于路程差造成的接收端信号相位变化值为:
Δ φ = 2 π ⋅ Δ l λ = 2 π ⋅ v ⋅ Δ t λ ⋅ cos ⁡ Θ \Delta \varphi=2 \pi \cdot \frac{\Delta \mathrm{l}}{\lambda}=2 \pi \cdot \frac{v \cdot \Delta \mathrm{t}}{\lambda} \cdot \cos \Theta Δφ=2πλΔl=2πλvΔtcosΘ
  求相位和时间的导数,可得到相位随时间的变化率,即角频率 w \mathrm{w} w 为:
w = Δ φ Δ t = 2 π ⋅ v λ ⋅ cos ⁡ Θ \mathrm{w}=\frac{\Delta \varphi}{\Delta \mathrm{t}}=2 \pi \cdot \frac{v}{\lambda} \cdot \cos \Theta w=ΔtΔφ=2πλvcosΘ
  多普勒频移与角频率的关系为: w = 2 π f d w=2 \pi \mathrm{f}_{\mathrm{d}} w=2πfd
即  f d = 1 2 π ⋅ w = v λ ⋅ cos ⁡ Θ \text { 即 } f_d=\frac{1}{2 \pi} \cdot \mathrm{w}=\frac{v}{\lambda} \cdot \cos \Theta   fd=2π1w=λvcosΘ
  波长与频率之间的关系式为:
c = λ ⋅ f t \mathrm{c}=\lambda \cdot \mathrm{f_t} c=λft
  所以多普勒频移的关系式也可以是这样:
f d = 1 2 π ⋅ w = f t ⋅ v c ⋅ cos ⁡ Θ \mathrm{f}_{\mathrm{d}}=\frac{1}{2 \pi} \cdot \mathrm{w}=\frac{\mathrm{f_t} \cdot v}{\mathrm{c}} \cdot \cos \Theta fd=2π1w=cftvcosΘ

无线感知中的应用

在这里插入图片描述  当人在环境中移动时,人体反射信号的路径长度会发生相应的变化,这会在反射信号的载波频率上引入多普勒频移:
f d  = f v path  c f_{\text {d }}=f \frac{v_{\text {path }}}{c} f=fcvpath 
  其中, f f f代表信号载波的中心频率, v path  v_{\text {path }} vpath 代表路径长度变化的速度(小问题:这个速度是否约等于人体移动的速度), c c c代表光速
  注意:对于5GHz的WiFi信号,例如64信道,其中心频率为5.32GHz,那么人体行走的最大速度1.5m/s,则 f d  f_{\text {d }} f约等于27Hz。从大得多的载波频率中检测出如此细微的多普勒频移是很困难的。有问题待修正……
  幸运的是,商品 Wi-Fi 设备上可用的 CSI 信息可以仅用几百赫兹的采样率来估计多普勒频移。对于 Wi-Fi 信号,CSI 表示信号从发射器到接收器每个子载波的幅度衰减和相位变化,我们可以通过相位的变化推导多普勒频移。
仅考虑一个入射信号,CSI在 t 0 t_0 t0可以表示为:
x ( f , t 0 ) = A 0 e − j 2 π f τ 0 x\left(f, t_0\right)=A_0 e^{-j 2 \pi f \tau_0} x(f,t0)=A0ej2πfτ0
  其中, A 0 A_0 A0代表幅度衰减, τ 0 \tau_0 τ0代表时延,即信号从发射端到接收端传播的时间
  如果传播路径长度以 v v v的速度变化,而我们忽略幅度衰减变化,则经过短时间 t t t后,路径长度变化 Δ l path  = v t \Delta l_{\text {path }}=v t Δlpath =vt,时延变化 Δ τ = v t c \Delta \tau=\frac{v t}{c} Δτ=cvt,此时CSI可以表示为:
x ( f , t 0 + t ) = A 0 e − j 2 π f ( τ 0 + v t c ) = x ( f , t 0 ) e − j 2 π f v t c x\left(f, t_0+t\right)=A_0 e^{-j 2 \pi f\left(\tau_0+\frac{v t}{c}\right)}=x\left(f, t_0\right) e^{-j 2 \pi f \frac{v t}{c}} x(f,t0+t)=A0ej2πf(τ0+cvt)=x(f,t0)ej2πfcvt
  其中的 f v c f \frac{v}{c} fcv即代表多普勒频移。
  对于多个入射信号,CSI可以表示为:
x ( f , t 0 + t ) = ∑ i = 1 L A i e − j 2 π f ( τ i + v i t c ) , x\left(f, t_0+t\right)=\sum_{i=1}^L A_i e^{-j 2 \pi f\left(\tau_i+\frac{v_i t}{c}\right)}, x(f,t0+t)=i=1LAiej2πf(τi+cvit),
  其中, L L L代表路径个数, τ i \tau_i τi代表 t 0 t_0 t0时刻第 i th  i^{\text {th }} ith 条路径传播时延, v i v_i vi 代表第 i th  i^{\text {th }} ith 条路径变换的速度。第 i th  i^{\text {th }} ith 条路径的多普勒频移即 ( f v i c ) \left(f \frac{v_i}{c}\right) (fcvi)。因此,如果 CSI 的采样率大于最大多普勒频移的两倍,我们就可以得到每个路径信号的多普勒频移。对于步行速度,CSI所需的采样率在几百赫兹以下,这在商品Wi-Fi设备上很容易实现。

体现到CSI数据上

对CSI做STFT,得到多普勒频移,根据公式 f d  = f v path  c f_{\text {d }}=f \frac{v_{\text {path }}}{c} f=fcvpath ,得到 v path  v_{\text {path }} vpath 

参考文献

IndoTrack: Device-Free Indoor Human Tracking with Commodity Wi-Fi


http://chatgpt.dhexx.cn/article/JijA6ZlD.shtml

相关文章

多普勒频移计算

多普勒频移:信号源靠近观察者,连续波之间的到达时间降低,频率增加;信号源远离观察者,连续波之间的到达时间增加,频率降低。 为载波频率;为光速

多普勒频移

多普勒效应公式 观察者 (Observer) 和发射源 (Source) 的频率关系为(此式不适用于光波,光波的多普勒效应见下文): f 为观察到的频率; f为发射源于该介质中的原始发射频率; v为波在该介质中的行进速度&…

雷达篇(一)多普勒频移

目录 1. 多普勒键移在雷达中的作用 2. 多普勒公式推导 2.1 推导方法一 2.2 推导方法二 1. 多普勒键移在雷达中的作用 在大杂波中检测动目标连续波(CW)雷达检测运动目标并测量目标的径向速度在合成孔径和逆合成孔径雷达中用于产生目标图像在…

多普勒频移(doppler shift/doppler effect)

想从多普勒偏移的角度去考虑以下动作识别研究。针对WiFi信号,多普勒偏移有点难度。在难度的之前,我要先理解一下这个技术是否可以应用到我的研究方向上来。 参考文献先: 1. Wisee 2. WiVi 3. Widance 4. WifiU 5. 维基百科的说明以及百度百科…

多普勒效应(多普勒频移)

多普勒效应(多普勒频移) 人物介绍现象历史公式证明参考文献 人物介绍 克里斯蒂安安德烈亚斯多普勒(Christian Andreas Doppler,1803年11月29日-1853年3月17日)多普勒效应发现者,奥地利数学家、物…

通信系统中的多普勒频移

多普勒现象在通信系统中的表现 当终端在运动特别是在高速运动时,移动终端和基站接收端的信号频率会发生变化,其计算公式如下图所示: f d f c ∗ v ∗ c o s θ f_d\frac{f}{c}*v*cos\theta fd​cf​∗v∗cosθ θ \theta θ为移动台移动方…

10M polkadot substrate : 你的第一份合约

• 介绍 • 教程目标 • 更新你的 Rust 环境 • 安装 Substrate 合约节点 • 创建一个新的智能合约项目 • 测试默认合约 • 建立合同 • 启动 Substrate 智能合约节点 • 部署合约 • 在区块链上创建实例 • 调用智能合约 • Substrate Tutorials , Substrate 教程 • Contact…

substrate轻松学2:区块链与substrate

从2008年中本聪发布《比特币:一种点对点的电子现金系统》开始,区块链技术开始进入我们的世界,区块链防篡改、去信任等等概念更是被炒的热火朝天。那么什么是区块链,它能做什么?到底有没有前途?这不是我们这…

创建第一个 Substrate 区块链

创建第一个 Substrate 区块链 区块链软件使单个计算机(称为节点)能够相互通信以形成分散的点对点 (P2P) 网络。为保证链上数据的安全和链上的持续进展,节点通过某种形式的共识,就每个数据块中的数据状态以及块的处理顺序达成一致…

技术干货|通过 Substrate - IBC 实现 Substrate 资产跨链

全长 2760 字,预计阅读 10 分钟 作者:DaviRain 撰文:MiX 微信交流:MixMetaverse 章鱼网络 DaviRain 受邀参加 RUST.CC 中国大会,分享主题为《通过 Substrate - IBC 实现 Substrate 资产跨链》的 Workshop。主要讨论了…

Substrate之旅4:基于Substrate私有链的搭建

参考:https://docs.substrate.io/tutorials/v3/private-network/ 实现目标 这里我们学习: 如何基于Substrate来构成一个两节点的链网络。如何配置使用Aura的共识机制。如何定制账户,并设置其为Aura的Validator。 启动两个节点的链网络 确…

cydia java_Cydia Substrate 使用

前言 我们以前介绍过Xposed,这个只可以Hook java层,如果要hook native层就要使用InlineHook了,以前的文章都有提到。今天介绍一个既可以Hook java层又可以Hook native层的框架,就是Cydia Substrate。 环境 安装Cydia Substrate ap…

10E polkadot substrate : 配置合约托盘

• 介绍 • 添加托盘依赖项 • 实现 Contracts 配置特征 • 公开合约 API • 更新外部节点 • 启动本地 Substrate 节点 • Substrate Tutorials , Substrate 教程 • Contact 联系方式 • 介绍 如果您完成了构建本地区块链教程,那么您已经知道 Substrate节点模板…

Substrate之旅2:Substrate开发环境搭建

我们将基于Ubuntu 18.04来安装Substrate的开发环境。 我这边Ubuntu是安装在VMWorkstation虚拟机上的。 安装依赖 安装参考:https://docs.substrate.io/tutorials/v3/create-your-first-substrate-chain/#install-rust-and-the-rust-toolchain 但具体的操作步骤&…

认识substrate

了解substrate 前言从互联网发展看区块链未来--跨链跨链是未来 公链和联盟链可交互的联盟链polkadot组件substrate介绍区块链的构造组件substrate开发的特性 polkadot :substrate 之上建立如何通过substrate构造自己的链一键链上升级--永不分叉为什么需要链上升级 substrate与企…

CydiaSubstrate框架

往期推荐 Frida Native层HOOK Frida hook Java层 frida环境安装 Xposed框架安装、使用及插件开发 需要相关资料的朋友,可以【[加入此处即可打包获取]】 Cydia Substrate是一个基于Hook的代码修改框架,可以在Android、iOS平台使用,并实现…

创建Substrate 私有网络

创建Substrate 私有网络 所有区块链都要求网络中的节点就消息集及其顺序达成一致,以成功创建区块并从一个区块推进到下一个区块。每个块代表特定时间点的数据状态,节点对状态的一致称为共识。有几种不同的算法用于达成共识,包括:…

Build the Substrate Kitties Chain(中文翻译)

欢迎来到Substrate Kitties课程。 本课程将向您介绍如何构建一个可以创建并持有非同质化代币(NFT,这个NFT名称为Substrate Kitties)的区块链。课程分为部2部分: Part I 描述如何构建Kitties pallet,以及这个pallet怎样…

oracle substrate,Substrate 2.0 带来了哪些改变?

Substrate 已到了 2.0 版本的主要里程碑处。该区块链框架现在包含链下工作机(off-chain workers)和 70 多个可组合模块,并为构建优化的、与 Polkadot 兼容的、可投入生产的区块链奠定了坚实的基础。数十个实时区块链已经在运行 Substrate 2.0,包括Polkad…

Substrate 基础教程(Tutorials) -- 授权特定节点

五、授权特定节点 在添加可信节点中,您看到了如何使用一组已知的验证器节点构建一个简单的网络。该教程演示了一个简化版的许可网络(permissioned network)。在一个被许可的网络中,只有被授权的节点(authorized nodes…