蓝牙 LE 的 txPower 到底是什么以及如何使用它?

2023-11-24

我正在尝试了解 txPower 到底是什么以及如何使用它,因为我计划开发使用 Beacons 的 Android 应用程序。

我在网上看到了2个定义:

1.信标的发射功率。

2.距信标1米处的接收功率。

这两个定义有何关系? 此外,当使用 QuickBeacon 等应用程序从设备传输 Beacon 信号时,如何确定将功率 (txPower) 设置为什么?


大多数信标格式在传输中包含一个字节指示当您在一米之外时预期的信号水平。该字节有时称为txPower(传输功率的缩写)有时测得的功率。

不要将此与某些信标型号上的第二个配置设置混淆,后者可让您改变发射器实际发送广播的强度。这通常称为发射功率,这就是为什么测量功率是一个不太容易混淆的术语。

测量的功率场用于进行距离估计。如果手机发现其信号电平与信标发射的测量功率场相同,它就知道距离正好一米。如果信号更强,它就知道距离更近了。如果信号较弱,它就知道距离较远。使用公式,您可以粗略地了解以米为单位的距离。

要使距离估计准确,需要将测量的功率场正确设置为一米处的预期信号电平。它通常由制造商预先配置到信标中,但通常是可调节的。为什么要调整它?如果将信标放置在柜子内,可能会减弱信号。如果将信标靠在金属墙上,可能会因反射而增加信号。为此原因,建议您在安装后通过测量和设置信标的测量功率值来校准信标。

校准涉及使用电话测量信标信号电平(使用称为接收信号强度指示器或 RSSI 的测量方法,以 dBm 为单位测量)。为了进行校准,您将一部带有典型蓝牙接收器的手机(最好是 iPhone 6,但 Nexus 设备也能正常工作)距离信标正好一米,然后测量 30 秒内的平均信号强度。许多信标配置应用程序和工具,例如定位 iOS 版 and Android有校准实用程序。

获得校准值后,您需要根据制造商的说明在信标内配置它。这将为您提供更准确的距离估计。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

蓝牙 LE 的 txPower 到底是什么以及如何使用它? 的相关文章

随机推荐

  • Android调用onClick方法而不点击

    我想使用现有的 onClick 方法来使我的程序更简单 它由 onClick 方法和其他方法组成 Override public void onClick View v switch v getId case R id button1 br
  • 要在 Scala 中映射的案例类

    有没有好的方法可以转换 Scalacase class实例 例如 case class MyClass param1 String param2 String val x MyClass hello world 成某种映射 例如 getCC
  • 无法将 null 分配给隐式类型变量

    根据 Visual Studio 的说法 这是不行的 var foo null 但这没关系 var foo false double null null 为什么 是个 double null也影响到null在 else 分支中 隐式类型变量
  • x86-64 REX 前缀中的“REX”代表什么?

    From 英特尔的SDM 第 2 2 1 节指定 REX 前缀用于 指定 GPR 和 SSE 寄存器 指定 64 位操作数大小 指定扩展控制寄存器 但缩写词中的字母 REX 代表什么 这个2002年热门薯条演示AMD 扩展了幻灯片 10 上
  • Structuremap 是否支持开箱即用的 Lazy?

    结构图是否允许您以惰性方式进行构造函数注入 意思是在使用之前不创建注入的对象 UPDATE StructureMap v3 开箱即用地实现了这一点 因此不再需要这个技巧 StructureMap 版本 2 没有 但通过一些技巧 您可以让它完
  • Square 和 Rectangle 继承有什么问题?

    我读过一些关于将 Square 作为 Rectangle 类的继承类是一种不好的做法的文章 说它违反了 LSP 里氏替换原则 我还是不明白 我用Ruby做了一个示例代码 class Rectangle attr accessor width
  • Delphi 自动 Format Source 损坏匿名程序

    昨天我发现了 Delphi 中的 Format Source 功能 它节省了我很多时间 然而 我发现它破坏了匿名过程的布局 有没有什么设置可以改善这个结果 例如 如果我有以下代码 procedure TServerThread cbUpda
  • C/C++ 中的 asc 和 chr 等效项

    好吧 标题几乎概括了这一点 我想在 C 中使用类似 asc 0 的东西 并且想让程序平台独立 所以不想使用 48 任何帮助表示赞赏 您可以简单地使用单引号来使字符常量 char c a 字符类型is数字类型 所以没有真正的需要asc and
  • 在一个套接字上订阅多个多播组(Linux、C)

    是否可以在单个套接字上从多个多播组接收数据 例如 void AddGroup int sock const char mc addr str int mc port const char interface struct sockaddr
  • Ninject 使用 WCF Web API Preview 5

    有人能为我指出正确的方向 让 Ninject 与 WCF Web API Preview 5 一起使用吗 我已在我的 ASP NET MVC 3 项目以及使用 Ninject Extensions Wcf 库的另一个内部 WCF 服务中成功
  • 如何在 IE 中使用 javascript 从客户端获取文件大小?

    我使用了以下方法 HTML
  • Android,Glide 显示错误图像约一秒

    我正在使用 Glide 库从 URL 加载图像 这是我从 Graph Request Facebook 获得的 它用在 RecyclerAdapter 中 当我滚动时 每个 ImageView 显示错误的图片大约不到一秒 然后纠正一张 这是
  • 如何设置 DT_RPATH 或 DT_RUNPATH?

    在 Linux 上 ld so 8 手册页讨论了动态库的搜索顺序 它说DT RPATH已被弃用 并且还提到DT RUNPATH 没有提到 rpath链接器选项 The ld 1 手册页提到了 rpath and rpath link选项 但
  • 如何用 pandas DataFrame 中的前一个或下一个值替换 NaN?

    假设我有一个 DataFrame 其中包含一些NaNs gt gt gt import pandas as pd gt gt gt df pd DataFrame 1 2 3 4 None None None None 9 gt gt gt
  • 如何将 HTML 和文本复制到剪贴板?

    我试图同时放入 HTML 和纯文本的剪贴板片段 以便支持 HTML 的编辑器可以粘贴 HTML 而其他编辑器可以使用纯文本 Clipboard SetData DataFormats Html htmlWithHeader Clipboar
  • 在其父级边界之外显示用户控件内的控件

    我有一个带有文本框和列表框的用户控件 它使用它们为用户提供自动完成功能 但是 我希望将列表框绘制在用户控件边界之外 以便在必须将列表框绘制在用户控件边缘附近时不会被截断 关于如何做到这一点有什么建议吗 本质上 我想要一个列表框浮动在其容器控
  • Dart 中双数的正则表达式

    从我之前的问题来看 我试图只允许双精度格式的数字进入文本字段 我浏览了整个网络 没有找到 dart 的正则表达式 TextFormField inputFormatters WhitelistingTextInputFormatter Re
  • Android GridView像listview一样添加页眉和页脚

    也许你想打电话addHeaderView or addFooterView in GridView 它没有 我们自然希望将页眉视图或页脚视图添加到GridView 也许你和我一样苦苦寻找了很久 却最终没有找到解决办法 这里我给出一个解决方案
  • BCP 错误“无法打开 BCP 主机数据文件”

    我刚刚在我的 sqlserver 名称导出表中创建了一个新表 现在我尝试使用 cmd bcp 推出 但出现以下错误 SQLState S1000 NativeError 0 错误 Microsoft ODBC 驱动程序 13 对于 SQL
  • 蓝牙 LE 的 txPower 到底是什么以及如何使用它?

    我正在尝试了解 txPower 到底是什么以及如何使用它 因为我计划开发使用 Beacons 的 Android 应用程序 我在网上看到了2个定义 1 信标的发射功率 2 距信标1米处的接收功率 这两个定义有何关系 此外 当使用 Quick