我打算使用BNO055绝对方位传感器来收集加速度计,磁力计和陀螺仪测量值,以用于一个应用程序。到目前为止,我希望将数据以10 Hz的速率发送到数据收集实体(具有无线技术的Pi或BeagleBone)。

设置可以是:


3种此类物联网事物

1个中央集合物

星型拓扑,集合点位于中心

根据我的经验,与802.15.4 ZigBee和/或Bluetooth LE(4.0)相比,802.11 WLAN似乎是唯一的最佳选择。原因是BNO055会以非常快的速度(〜0.1秒)生成并发送大量数据。我只是在制作一个简单的原型,因此我宁愿使用简单的UDP来发送数据。

我目前关注的是距离系数,因为该位置将放置在船体内部,这也意味着由于金属表面会造成大量数据丢失。但是我可以自由地在全功率下运行节点(连接电源或高锂离子电池)。

问题:


WLAN是为应用选择正确的无线技术?如果没有,我应该尝试其他哪种技术?
我可以避免或注意到的如此低延迟(10 Hz)的IoT应用类型可能会遇到什么障碍? />

评论

802.11一定会为您提供足够的数据速率。在这里考虑范围吗?您还知道每个周期传感器将发送多少数据吗?

电池是边缘设备供电吗?

@Helmar,我想您是在要求在电池供电的设备上使用WiFi会很快耗尽它们吗?

我目前关注的是距离系数,因为该位置将放置在船体内部,这也意味着由于金属表面会导致大量数据丢失。但是我可以自由地在全功率下运行节点(连接电源或高锂离子电池)

@ Shan-Desai我编辑了您的问题,以包括这些信息。最好在问题中提供所有信息。随意编辑更喜欢的形式。

#1 楼

延迟与速率的关系



IoT应用程序的低延迟(10 Hz)类型


这是一个概念错误。延迟和费率在很大程度上是独立的。您可能拥有一个每秒记录数千个读数的系统,并将其存储在SD卡上,并且每个月一次有人访问远程站点,提取卡并将其邮寄给您-该系统的传输率很高,但也非常出色潜伏。或者您可能有一个系统,可以在读取读数后的几微秒内报告读数,但每小时仅读取一个读数。

因此,您需要做的第一件事就是阐明您的要求-您是否需要获取大量数据,还是需要在数据仍然非常最新时获取数据,或者两者都获取?

对于大多数数字传输方案而言,10 Hz更新速率相对可行,除了对于每个时间段的传输次数有法规限制的数据,或者数据速率如此之低的数据(因为它们的带宽窄以提高链路效率,或者因为它们很粗糙)而无法移动您想要足够快地发送的数据量。

延迟与可靠性和复杂性

由于在小区域中的实际传播时间需要异域电路才能均匀测量,对于本地无线电系统移动消息所花费的时间基本上是对其进行编码的时间长度-除非系统设计规范ts添加更多。一个需要对消息进行大量“考虑”的系统可能会增加延迟,尽管使用的软件可能很小。每个消息需要多次“讨论”的来回循环,这必定会增加循环数和链接或协议的任何周转时间的时间。

但是,最有可能造成延迟的原因是可靠性层-如果消息丢失或损坏,系统应该怎么做?如果再次尝试,那几乎总是意味着增加延迟,而如果只是丢弃消息并继续前进,则可能意味着差距。

对于您的那种应用,可行的方法是不可靠的方案,但每个数据包不仅包括当前测量值,而且还重复一些先前的测量值(对于计数应用程序,则是连续的总计)。而且,这些不一定是最新的测量值-根据干扰的模式,最佳方案可能很容易以当前,上一个,下一个上一个,第5个上一个,第13个上一个之类的形式结束,以便可以通过的数据包往往也有很高的机会也包含未通过的数据包。

实用系统

许多现成的2.4 GHz系统可能会工作如果组件之间有合理的视线或泄漏路径,则在您的示例中很好。


nRF24L01-样式为2.4 GHz的数字无线电将易于处理数据速率,并易于用于制造相当低延迟的信道跳变系统-例如,这些和它们的竞争对手被用来交互飞行许多廉价的无人驾驶飞机。
BTLE具有状态复杂性的模式,这可能是有问题的,但是广告模式非常简单,可以按您想要的重复率运行。根据您的建议,围绕嵌入式板构建的定制接收器应该能够跟上并为您提供每个数据包的完整详细信息。与智能手机也有一些交叉兼容性,但是在这种情况下,主机操作系统可能只会为您提供一小部分流量,并且在数据包内容更改时可能不会始终如一地通知您。
当然还有很多其他功能选择