热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

蓝牙模块各种工作模式

摘要:本文主要归纳总结蓝牙模块的不同工作模式

摘要:本文主要归纳总结蓝牙模块的不同工作模式,通过蓝牙模块不同的工作模式了解其扮演不同角色时工作的一个基本原理,为更深入的研究蓝牙模块底层的工作机制和技术方案进行铺垫。

1、主设备工作模式

        主设备是能够搜索别人并主动建立连接的一方,从扫描状态转化而来的。其可以和一个或多个从设备进行连接通信,它会定期的扫描周围的广播状态设备发送的广播信息,可以对周围设备进行搜索并选择所需要连接的从设备进行配对连接,建立通信链路成功后,主从双方就可以发送接收数据。例如智能手机,数据传输中做主机的蓝牙模块。

        一个蓝牙设备以主模式发起连接时,需要知道从设备的mac地址,配对密码等信息,配对完成后,可直接连接。同时主设备可以设置默认连接从设备的mac地址,这样主设备模块上电会自动搜索该mac地址的从设备并且进行连接。并且支持白名单功能,用户只需要把需要连接的设备的mac写入白名单中,模块搜索到符合白名单的设备时就进行连接。主从透传协议相同时,用户不需要关注串口数据与无线数据包之间的数据转换过程,只需通过简单的参数设置,即可实现主设备串口与从设备串口之间的数据透传。

        为保证连接的稳定性,预防断电、信号等异常问题导致模块之间断开连接,可以开启断线重连功能,当异常干扰问题消失,模块工作环境恢复正常,主设备会自动搜索刚刚断连的从设备,尽可能减少数据的丢失,提高系统稳定性。

2、从设备工作模式

        从设备模式是从广播者模式转化而来的,未被连接的从设备首先进入广播状态,等待被主机搜索,当主机扫描到从设备建立连接后,就可以和主机设备进行数据的收发,其不能主动的建立连接,只能等别人来连接自己。和广播模式有区别的地方在于,从设备模式的蓝牙模块是可以被连接的,定期的和主机进行连接和数据传输,在数据传输过程中作从机。例如蓝牙手表手环,蓝牙鼠标等工作在从设备模式。

        一对一应用中从设备可以设为两种类型,一是静默状态,即只能与指定的主设备通信,不被别的蓝牙设备查找;二是开发状态,既可被指定主设备查找,也可以被别的蓝牙设备查找后建立连接。

        从设备模式下,用户可以根据协议自己开发APP。此模式下包含一个串口收发的Service,用户可以通过UUID找到它,里面有两个通道,分别是读和写。用户可以操作这两个通道进行数据的传输。如果用户使用的主设备和从设备是同一个厂家生成的蓝牙模块,那么主设备和从设备相连接可以无需关注里面的协议,蓝牙设备在出厂前预先设置了两个蓝牙设备之间的配对信息,两端设备接通电源后自动构建链路,不需要外围电路的介入,两个设备的串口直接就可以进行数据的透明传输,为用户建立一个简单的无线传输通道。

        通过上述对蓝牙模块主设备模式和从设备模式的分别阐述,可以将基本的主从建立连接的过程总结如下:蓝牙主设备发起连接,首先是查找,找出周围处于可被查找的蓝牙设备。主设备找到从设备后,与从设备进行配对,此时需要输入从设备的PIN码,也有设备不需要输入PIN码。

        配对完成后,从端蓝牙设备会记录主端设备的信任信息,此时主设备即可向从设备发起连接,已配对的设备在下次连接时不再需要重新配对。已配对的设备,作为从端蓝牙设备也可以发起建立链路的请求,但作数据通信的蓝牙模块一般不启动调用。一旦建立了链接,主机和从机之间就可以进行双向的数据或语音通信。在通信状态下,主设备和从设备都可以发起断链,即断开蓝牙链路。

3、主从一体工作模式

        主从一体工作模式是指蓝牙模块可以同时作为主设备和从设备。其可以在两个角色间切换,工作在从模式时,等待其它主设备来连接,需要时,转换为主模式,向其它设备发起连接调用。主从一体提供了扩展蓝牙模块的能力,在蓝牙4.1协议规范后,添加了“链路层拓扑”的功能,就可以允许蓝牙模块同时作为主设备和从设备,在任何角色组合中操作。例如蓝牙HUB终端。

        当具备主从一体的蓝牙模块工作时,该蓝牙模块可以作为主设备搜集其它外围从节点设备的信息,同时作为一个从设备将搜集到信息上报给主控终端如手机。这样的好处就是外围的从节点设备信息可以不局限在本地保存,通过主从一体的蓝牙模块发挥中继器的作用,搜集后上传给云端或集中控制器保存或显示。

        主从一体额外增加了蓝牙模块的功能,成本优化和易用性。 如果蓝牙模块以前在封闭系统中作为主设备工作,那现在还可以同时作为从机连接到智能手机,从而实现新的连接维度。在主从一体工作模式下,一个蓝牙模块就可以扮演两种角色,从而可以优化系统架构。

4、广播者工作模式

        蓝牙广播是蓝牙4.0以上设备必须支持的功能。它不涉及到更上层的连接层和协议层。因此,利用蓝牙广播的数据包来传递的信息,在蓝牙设备上具有更好的实时性和兼容性。在广播模式下,蓝牙模块定期持续的向周围发送一定长度广播的数据包,该数据可以被扫描者搜索到,模块可以在低功耗的模式下持续的进行广播,应用于极低功耗,小数据量,单向传输的应用场合。蓝牙广播通道的重要功能就是是用于发现设备,发起连接和发放数据。

        广播模式主要有两种使用场景:(1)单一方向的、无连接的数据通信,数据发送者在广播信道上广播数据,数据接收者扫描、接收数据;广播者”将用作服务器。其目的是定期将数据传输到设备,但不支持任何连接。如信标、广告牌、室内定位、物料跟踪等。(2)面向连接的建立,如蓝牙从设备广播消息后由主设备搜索到后进行连接,广播者和从设备模式的唯一区别是不能被主机连接,只能广播数据。

        蓝牙的广播一般是向外广播自己的mac地址、名称以及支持的特性,广播主要是用于被其它的设备发现,而不是进行数据发送的。广播包长度是固定的字节,虽然可以有厂商自定义的数据,但是数据也是有限的。

        广播数据包有两种:广播包(Advertising Data)和响应包(Scan Response),其中广播包是每个设备必须广播的,而响应包是可选的,每个包长度都是固定字节N,数据包的长度N随着蓝牙协议的标准提高而扩容,例如蓝牙5.0的数据包从蓝牙4.2的31字节升级成为255字节,数据包中分为有效数据和无效数据两部分。每个广播包的长度必须是N个字节,如果不到N个字节 ,则剩下的全用0填充补全,这部分的数据是无效的。

5、观察者工作模式

         观察者模式,该模式下模块为非连接,相对广播者模式的一对多发送广播,观察者可以一对多接收数据。在该模式中,设备可以仅监听和读取空中的广播数据。和主机唯一的区别是不能发起连接,只能持续扫描从机。

        观察者工作模式可应用于数据采集集中器的应用场合,如传感器集中器采集等功能;另一个典型的例子是蓝牙网关,蓝牙模块处于观察者模式,无广播,它可以扫描周围的广播设备,但不能要求与广播设备连接。

6、iBeacon工作模式   

        iBeacon 是苹果公司2013年9月推出的一项室内低耗能蓝牙技术。其工作方式是:iBeacon是一个低功耗的蓝牙信标,使用的是BLE技术,工作在广播模式,利用的是BLE中名为“通告帧”(Advertising)的广播帧。通告帧是定期发送的帧,只要是支持BLE的设备就可以接收到。广播的发射功率可以调整,不停的广播蓝牙设备的mac地址、UUID等固定字节的字符串等信息,接收到该字符串应用软件会根据该字符串采取一些措施。

        iBeacon是基于2010年发布的蓝牙4.0技术规范的基础上发展而来的微定位技术。它是建立在低功耗蓝牙协议基础上的一种广播协议,同时它也是拥有这个协议的一款低功耗蓝牙设备(从机),但是它不能和任何低功耗蓝牙主机进行连接,通常是放在室内的某个固定位置,借此向周围进行连续性广播,所有广播数据在特定规则下进行排列。

        与WIFI定位相比,iBeacon定位具有低成本和高安全性,其应用场景多种多样。常见的应用是精确营销,比如博物馆、展厅的信息推送或者购物中心服务商向顾客发送折扣卷及进店积分等。如果把它放在室内固定的位置,可以作为一个定位器,手机打开蓝牙连接之后通过APP就可以获取其位置,同时会推送一些设置好的信息到我们手机上。

        微信摇一摇也加入了iBeacon功能,例如住酒店,用户在酒店大堂摇一摇,就可以获取房间信息。很简单,你的手机加入装了一个支持iBeacon的APP或者你用微信摇一摇周边,刚好你又在这个iBeacon设备旁边,手机就会收到一段蓝牙信号,然后手机带着这个信号,去服务器问,这个信号是啥意思,服务器看到这个信号,又看到是你的手机带着这个信号过来的,那就给你发信息。

        蓝牙iBeacon是一种非常新颖的交互方式,它是一种低功耗协议,也是一种低功耗蓝牙设备。在智能领域有非常广泛的前景

7、Mesh组网工作模式

        蓝牙Mesh组网技术在2017年得到SIG批准,这是一种独立的网络技术,兼容4及5系列蓝牙协议。它把蓝牙设备作为信号中继站,利用低功耗蓝牙广播的方式进行信息收发,蓝牙Mesh技术拓展了蓝牙的通讯关系,打破了以往蓝牙设备只能够主从一对一、广播一对多通信的限制,使网络内的蓝牙设备可以实现“多对多”的设备通信,这将大大增加蓝牙的通讯距离和应用场景,填补了蓝牙在大规模组网,大面积覆盖应用领域的空白。

        Mesh网络也称为"多跳网络",或者“网状网络”。Mesh网络的每一个节点都可以作为AP和路由器,通信时,当某个节点损坏或者堵塞时,可以自动绕过该节点,重新选择路径达到目的地,可以让网络更高效可靠。

        工作在Mesh组网模式的BLE蓝牙模块可以简单的将多个模块加入到网络中来,一个加入到蓝牙Mesh网络中的设备称为节点利用星型网络和中继技术,每个网络可以连接理论最大65536个节点,每个节点都可以发送、接收、转发消息。消息可以在Mesh网络中被转发从而到达更远的距离。网络和网络还可以互连,最终可将无数蓝牙模块通过手机、平板电脑或 PC 进行互联或直接操控。并且不需要网关,即使某一个设备出现故障也会跳过并选择最近的设备进行传输。整个联网过程只需要设备上电并设置通信密码就可以自动组网,真正实现简单互联。

        由于目前几乎所有的智能手机都具备蓝牙功能,所以可以使用手机对蓝牙Mesh设备进行直接控制。蓝牙Mesh是一种可以像ZigBee一样实现大规模组网,同时又不必依赖网关,可以使用手机进行直接控制的方案。

        总而言之,蓝牙Mesh组网有着广阔的发展前景,这种技术可组节点成百上千,无需网关可以直接与智能终端通信,满足物联网的连接需求,这是任何其它短距离无线技术都不具备的条件,在智能家居、智能建筑等众多领域具有应用优势,蓝牙Mesh技术将成为物联网短距离规模组网的最优方案。

总结

        可以看出,不同类型的蓝牙模块根据使用场景的不同,可以有不同的工作模式,并不仅仅是简单的点对点通信,随着蓝牙协议标准的升级,蓝牙技术也跟着不断提高,工作模式的不同使得蓝牙模块可以扮演不同的角色,适配不同的技术应用,发挥其所需要的功能,最后通过一张思维导图来对本文进行概述性总结。


推荐阅读
  • flowable工作流 流程变量_信也科技工作流平台的技术实践
    1背景随着公司业务发展及内部业务流程诉求的增长,目前信息化系统不能够很好满足期望,主要体现如下:目前OA流程引擎无法满足企业特定业务流程需求,且移动端体 ... [详细]
  • Android中高级面试必知必会,积累总结
    本文介绍了Android中高级面试的必知必会内容,并总结了相关经验。文章指出,如今的Android市场对开发人员的要求更高,需要更专业的人才。同时,文章还给出了针对Android岗位的职责和要求,并提供了简历突出的建议。 ... [详细]
  • t-io 2.0.0发布-法网天眼第一版的回顾和更新说明
    本文回顾了t-io 1.x版本的工程结构和性能数据,并介绍了t-io在码云上的成绩和用户反馈。同时,还提到了@openSeLi同学发布的t-io 30W长连接并发压力测试报告。最后,详细介绍了t-io 2.0.0版本的更新内容,包括更简洁的使用方式和内置的httpsession功能。 ... [详细]
  • Linux如何安装Mongodb的详细步骤和注意事项
    本文介绍了Linux如何安装Mongodb的详细步骤和注意事项,同时介绍了Mongodb的特点和优势。Mongodb是一个开源的数据库,适用于各种规模的企业和各类应用程序。它具有灵活的数据模式和高性能的数据读写操作,能够提高企业的敏捷性和可扩展性。文章还提供了Mongodb的下载安装包地址。 ... [详细]
  • 数字账号安全与数据资产问题的研究及解决方案
    本文研究了数字账号安全与数据资产问题,并提出了解决方案。近期,大量QQ账号被盗事件引起了广泛关注。欺诈者对数字账号的价值认识超过了账号主人,因此他们不断攻击和盗用账号。然而,平台和账号主人对账号安全问题的态度不正确,只有用户自身意识到问题的严重性并采取行动,才能推动平台优先解决这些问题。本文旨在提醒用户关注账号安全,并呼吁平台承担起更多的责任。令牌云团队对此进行了长期深入的研究,并提出了相应的解决方案。 ... [详细]
  • 单点登录原理及实现方案详解
    本文详细介绍了单点登录的原理及实现方案,其中包括共享Session的方式,以及基于Redis的Session共享方案。同时,还分享了作者在应用环境中所遇到的问题和经验,希望对读者有所帮助。 ... [详细]
  • 企业数据应用挑战及元数据管理的重要性
    本文主要介绍了企业在日常经营管理过程中面临的数据应用挑战,包括数据找不到、数据读不懂、数据不可信等问题。针对这些挑战,通过元数据管理可以实现数据的可见、可懂、可用,帮助业务快速获取所需数据。文章提出了“灵魂”三问——元数据是什么、有什么用、又该怎么管,强调了元数据管理在企业数据治理中的基础和前提作用。 ... [详细]
  • 集成电路企业在进行跨隔离网数据交换时面临着安全性问题,传统的数据交换方式存在安全性堪忧、效率低下等问题。本文以《Ftrans跨网文件安全交换系统》为例,介绍了如何通过丰富的审批流程来满足企业的合规要求,保障数据交换的安全性。 ... [详细]
  • 本文介绍了OpenStack的逻辑概念以及其构成简介,包括了软件开源项目、基础设施资源管理平台、三大核心组件等内容。同时还介绍了Horizon(UI模块)等相关信息。 ... [详细]
  • 基于PgpoolII的PostgreSQL集群安装与配置教程
    本文介绍了基于PgpoolII的PostgreSQL集群的安装与配置教程。Pgpool-II是一个位于PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件,提供了连接池、复制、负载均衡、缓存、看门狗、限制链接等功能,可以用于搭建高可用的PostgreSQL集群。文章详细介绍了通过yum安装Pgpool-II的步骤,并提供了相关的官方参考地址。 ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • 本文介绍了高校天文共享平台的开发过程中的思考和规划。该平台旨在为高校学生提供天象预报、科普知识、观测活动、图片分享等功能。文章分析了项目的技术栈选择、网站前端布局、业务流程、数据库结构等方面,并总结了项目存在的问题,如前后端未分离、代码混乱等。作者表示希望通过记录和规划,能够理清思路,进一步完善该平台。 ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • Java学习笔记之面向对象编程(OOP)
    本文介绍了Java学习笔记中的面向对象编程(OOP)内容,包括OOP的三大特性(封装、继承、多态)和五大原则(单一职责原则、开放封闭原则、里式替换原则、依赖倒置原则)。通过学习OOP,可以提高代码复用性、拓展性和安全性。 ... [详细]
  • 在线教育平台的搭建及其优势
    在线教育平台的搭建对于教育发展来说是一次重大进步。未来在线教育市场前景广阔,但许多老师不知道如何入手。本文介绍了在线教育平台的搭建方法以及与传统教育相比的优势,包括时间、地点、空间的灵活性,改善教育不公平现象以及个性化教学的特点。在线教育平台的搭建将为学生提供更好的教育资源,解决教育不公平的问题。 ... [详细]
author-avatar
手机用户2602923801
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有