低功耗蓝牙版本包括BLE 4.0/4.1, 4.2 以及5.0/5.1/5.2,其中BLE 4.0/4.1, 4.2 只有1Mbps PHY,BLE 5 也可以选择2Mbps的PHY,但在实际使用中,BLE速率受限因素很多,可以参考 <BLE 传输速率/数据吞吐量(Data Throughput) >,本文基于Bluetooth官方博客文档,介绍BLE最高传输速率。
1. BLE 传输速率计算公式
一个完整的数据传输周期(即 connection interval):
一个完整的数据传输周期包括:
T: 即Tx,包括头,有效payload以及MIC验证码等
R: 即Rx,当设备将一个数据包发送到对等设备时,对等设备将发回具有最小数据包长度的数据包,以指示先前的传输已成功。
T_IFS: 数据帧间隔,连续的数据包之间需要休息一会,取值为150us
数据吞吐量的公式为:
2. BLE 4.0 / 4.1计算
BLE 4.0/4.1 数据包格式如下:
一个完整的数据传输时间周期:
4.0 / 4.1吞吐量计算公式为
3. BLE 4.2
对于蓝牙v4.2,其调制速率与4.0和4.1相同,仍为1Mb / s。但是数据包格式不同,如下图
一个完整的数据传输时间周期:
BLE 4.2 吞吐量计算公式为:
4. BLE 5
对于BLE5,调制速率具有两个:1Mbps和2Mbps,选择1Mbps时,BLE 5与BLE 4.2具有相同的数据包格式,吞吐量也和BLE4.2一样。
接下来计算BLE 选择 2Mbps PHY后的情况。
一个完整时期的时间包括:
Bluetooth 5吞吐量,计算公式为:
5. 结论
BLE 5最高传输速率1.4Mbps
实际中,为了获得更快传输速率:
选择一个合适connection interval,
设置MTU尽量大
应用层不需要回应可以设为No Response,
6. 功耗估算
假如使用一个200mAh的1.5V纽扣电池给BLE设备供电。
首先,从BLE芯片中,能找到其Tx Power值,例如Nordic nRF52840芯片Tx Power是+8 dBm,对应的功耗6mW,因此,其工作时的电流为:
6mW / 1.5V = 4mA
那么,则可以计算如下:
200mAh/4mA = 50h = 180,000 s
假如,BLE一次完整的传输时间的是3ms。那么就可以得到能传输的次数:
180,000s/3ms = 60,000,000次
进一步的,可以估算设备的使用时间。
参考:
https://www.bluetooth.com/blog/exploring-bluetooth-5-how-fast-can-it-be/
不当之处,可联系本公众号
作者:美好的2020
链接:https://www.jianshu.com/p/0c36e2e16943
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。