如何选择合适的蓝牙模块?

如何选择合适的蓝牙模块?,第1张

首先,根据距离的远近来选择。蓝牙传输距离分别为100米和10米。需要注意的是,一般10米的蓝牙模块有内置和外置两种安装方式。100米一般都是外置,如果设备是塑料盒的就选用内置的,如果是金属盒的就要将天线外置。

现在的生产厂商基本上都是生产40蓝牙模块,蓝牙40以下的模块,市场上新生产的基本上没有了。蓝牙40以上的,一般标称100米,但是, 100米的连接可能不太稳定,但在50米以上能稳定连接。

其次,还要考虑到功耗,智能设备一般要求低功耗,因此宜选用BLE模块。

再次,根据传输的特性来选择。蓝牙技术可制造出点对点连接、点对多点连接及个人局域网等产品。蓝牙封装模块可以提供点对点、点对多点的连接服务;

再其次,根据传输内容来选择。蓝牙模块能够无线传输数据、语音信息、文件等信息。文件传输模块主要适用展会、车站、医院、广场等人流量大,可以向群众免费发布信息、资料的公共场所;语音内嵌模块可以互相之间传输语音信息。

最后,根据封装形式来选择。蓝牙模块有直插型、表贴型和串口适配器三种。现在的智能设备追求小体积,一般采用邮票表贴型,且尺寸越小越好。

再最后,要考虑是主从关系。主模块能主动,能主动搜索连接别的,蓝牙版本等级与自身相同或更低的蓝牙模块;从模块就是被动,等待别人的搜索和连接,蓝牙版本要与自己相同或更高。市场上一般的智能设备都是选择从模块,而主模块一般用在手机等能作为控制中心的设备上面。

最最后,内置软件是否生产厂商自己开发。

蓝牙模块,是一种集成蓝牙功能的PCBA((Printed Circuit Board Assembly))板,一般是由芯片、PCB板、外围器件构成,用于短距离无线通讯。作为取代数据电缆的短距离无线通信技术,蓝牙支持点对点以及点对多点的通信,以无线方式将家庭或办公室中的各种数据和语音设备连成一个微微网(Pico-net),几个微微网还可以进一步实现互联,形成一个分布式网络(scatter-net),从而在这些连接设备之间实现快捷而方便的通信。蓝牙模块按照用途来分,可以分为数据蓝牙模块和语音蓝牙模块,其中数据蓝牙模块完成无线数据传输,而语音模块完成语音和立体声音频的无线数据传输;根据用途分有数据蓝牙模块,串口蓝牙模块,语音蓝牙模块,车载蓝牙模块。蓝牙模块根据协议分为支持11,12,20,30,40的模块通常后者兼容前者产品。蓝牙40是2012年最新蓝牙版本,是30的升级版本;较30版本更省电、成本低、3毫秒低延迟、超长有效连接距离、AES-128加密等;通常用在蓝牙耳机、蓝牙音箱等设备上。对于最终用户,形象点说:蓝牙模块是半成品,蓝牙适配器是成品。千月商城现面向全球用户销售蓝牙模块及蓝牙适配器等,千月蓝牙模块拥有自主研发部门,神十航天员也借助了IVT研发的蓝牙语音系统,经中继清晰的对地球上数千万学童授课,是人类首次在太空使用蓝牙技术。如需更多信息,敬请关注千月商城!

无线数据传输基本都是通过UART串口来实现的,蓝牙模块和WiFi模块都支持串口透传;

基于低功耗WiFi模块的无线数据传输方案:将传感器采集到的数据通过WiFi方式上传到服务器。充分利用已架设好的WiFi通讯网络实现数据采集和传输,达到集中监控的目的。可大大减少施工量,提高施工效率、降低维护成本。

基于低功耗蓝牙模块的无线数据传输方案:将传感器采集到的数据通过蓝牙方式,用户实现手机APP的数据读取、记录及数据上传。利用蓝牙配对的无线传输,且不依赖于外部网络,直接上传到手机,再经由手机网络或WiFi信号完成数据上传。不需要接线,大大加快项目落地速度。

SKYLAB低功耗串口WiFi模块/蓝牙模块

针对万物互联时代的数据传输、智能控制、对接云平台的服务需求,SKYLAB研发推出的UART WiFi模块基于ESP8266方案的WG219/WG229,基于TR6260方案的LCS6260,基于ESP8285方案的WG231,内置无线网络协议IEEE80211协议栈以及TCP/IP协议栈,能够实现用户串口或TTL电平数据到无线网络之间的转换。满足物联网领域内智能家居,智能照明、智慧工厂和智慧医疗中的数据传输和智能控制需求。

基于Nordic nRF52832方案的SKB369是一款高度集成的BLE42蓝牙模块,专为无线24GHz ISM高速率传输设计,支持UART串口数据透传,拥有32位ARM Cortex-M4F CPU、闪存和模拟计算机和数字计算机外围设备。

基于Nordic nRF52840方案的SKB501是一款高度集成的BLE50蓝牙模块,性能良好,功耗低,接收灵敏度高,传输距离远,封装小。支持SPI/UART/TWI通信协议,产品能较好地嵌入到客户产品中,同时满足客户对蓝牙产品再次快速编程需求。

汽车里是可以安装无线网的。现在市面上有销售无线路由器移动随身WIFI车载MIFI无线上网卡等。车载WI-FI是面向公交、客车、私家车、游轮等公共交通工具推出的特种上网设备,WI-FI终端通过无线接入互联网获取信息、娱乐或移动办公的业务模式。车载WI-FI热点与普通的WI-FI热点使用方法相同,只要您的个人电脑、手持设备(如PAD、手机)等终端设备支持WI-FI功能,打开无线网络连接,在车上搜到相应的车载WI-FI信号即可登陆连接WI-FI网络,开启无线上网体验。车载WI-FI设备是指装载在车辆上的通过3G/4G/5G TO WI-FI、无线射频等技术,提供3G WI-FI热点的无线路由器。

扩展资料:

车载WI-FI设备不同于消费级的移动WIFI设备,车规级的WI-FI设备要在高速、高温、振动环境中工作,对设备的稳定性、灵敏度、抗恶劣环境能力等方面提出更苛刻的要求:防震等级:3重抗震(抗震结构设计,有效减缓外力冲击);工作温度范围:-45℃~105℃(非洲热带气候和俄罗斯寒冷天气均能正常工作);防火等级:B1级难燃型;防水等级:IP_5;防尘等级:IP5_;AP接入数/站点:30~50人同时在线使用; *** 作系统:定制化的嵌入式LINUX系统;WI-FI特性:共享。

Android 从 43(API Level 18) 开始支持低功耗蓝牙,但是只支持作为中心设备(Central)模式,这就意味着 Android 设备只能主动扫描和链接其他外围设备(Peripheral)。从 Android 50(API Level 21) 开始两种模式都支持。

低功耗蓝牙开发算是较偏技术,实际开发中坑是比较多的,网上有很多文章介绍使用和经验总结,但是有些问题答案不好找,甚至有些误导人,比如 :获取已经连接的蓝牙,有的是通过反射,一大堆判断,然而并不是对所有手机有用,关于Ble传输速率问题的解决,都是默认Android每次只能发送20个字节,然而也并不是,,,下面进入正文。

这里用的是 Android50 新增的扫描API,

这里说一下,如果做蓝牙设备管理页面,可能区分是否是已连接的设备,网上又通过反射或其他挺麻烦的 *** 作,也不见得获取到,官方Api 就有提供

与外围设备交互经常每次发的数据大于 mtu的,需要做分包处理,接收数据也要判断数据的完整性最后才返回原数据做处理,所以一般交互最少包含包长度,和包校验码和原数据。当然也可以加包头,指令还有其他完整性校验。下面分享几个公用方法:

我自己封装的一个BleUtil ,因为涉及跟公司业务关联性太强(主要是传输包的协议不同)就先不开源出来了,如果这边文章对大家有帮助反馈不错,我会考虑上传个demo到github供大家使用,
在这先给大家推荐一个不错 Demo ,里面除了没有分包,协议,和传输速率。基本的功能都有,而且调试数据到打印到界面上了。最主要是它可以用两个个手机一个当中心设备一个当外围设备调试。

首先传输速率优化有两个方向,1 外围设备传输到Android 。2 Android传输到外围设备。
我在开发中首先先使用上面那位仁兄的demo调试,两个Android 设备调试不延时,上一个成功马上下一个,最多一秒发11个20字节的包。

后来和我们的蓝牙设备调试时发现发送特别快,但是数据不完整,他蓝牙模块接收成功了,但是透传数据到芯片处理时发现不完整,我们的硬件小伙伴说因为 波特率 限制(差不多每10字节透传要耗时1ms)和蓝牙模块的buff (打印时是最多100byte,100打印的)限制,就算蓝牙模块每包都告诉你接收成功,也是没透传完就又接收了。后来通过调试每次发20K数据,最后是 Android 发是 20字节/130ms 稳定。给Android 发是 20字节/ 8ms 。 (天杀的20字节,网上都是说20字节最多了)

后来看了国外一家物联网公司总结的 Ble 吞吐量的文章(上面有连接),知道Android 每个延时是可以连续接收6个包的。就改为 120字节/ 16ms (为啥是16ms,不是每次间隔要6个包吗,怎么像间隔两次,这时因为波特率影响,多了5个包100字节,差不多 我们的单片机透传到蓝牙模块要多耗时不到10ms )
而Android 发数据可以申请 我们设备的mtu 来得到最多每次能发多少字节。延时还是130ms,即:241字节/ 130ms 提高12倍,这个速度还可以。

根据蓝牙BLE协议, 物理层physical layer的传输速率是1Mbps,相当于每秒125K字节。事实上,其只是基准传输速率,协议规定BLE不能连续不断地传输数据包,否则就不能称为低功耗蓝牙了。连续传输自然会带来高功耗。所以,蓝牙的最高传输速率并不由物理层的工作频率决定的。

在实际的 *** 作过程中,如果主机连线不断地发送数据包,要么丢包严重要么连接出现异常而断开。

在BLE里面,传输速度受其连接参数所影响。连接参数定义如下:

1)连接间隔。蓝牙基带是跳频工作的,主机和从机会商定多长时间进行跳频连接,连接上才能进行数据传输。这个连接和广播状态和连接状态的连接不是一样的意思。主机在从机广播时进行连接是应用层的主动软件行为。而跳频过程中的连接是蓝牙基带协议的规定,完全由硬件控制,对应用层透明。明显,如果这个连接间隔时间越短,那么传输的速度就增大。连接上传完数据后,蓝牙基带即进入休眠状态,保证低功耗。其是125毫秒一个单位。

2)连接延迟。其是为了低功耗考虑,允许从机在跳频过程中不理会主机的跳频指令,继续睡眠一段时间。而主机不能因为从机睡眠而认为其断开连接了。其是125毫秒一个单位。明显,这个数值越小,传输速度也高。

蓝牙BLE协议规定连接参数最小是5,即725毫秒;而Android手机规定连接参数最小是8,即10毫秒。iOS规定是16,即20毫秒。

连接参数完全由主机决定,但从机可以发出更新参数申请,主机可以接受也可以拒绝。android手机一部接受,而ios比较严格,拒绝的概率比较高。

参考:
在iOS和Android上最大化BLE吞吐量
最大化BLE吞吐量第2部分:使用更大的ATT MTU


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/dianzi/13515779.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-08-23
下一篇 2023-08-23

发表评论

登录后才能评论

评论列表(0条)

保存