本人在Nordic Semiconductor公司进行暑假实习时参与了一个技术项目,主旨是在实际环境中应用蓝牙网状网络(Bluetooth® Mesh)技术。该项目致力于提高商业大楼中的紧急照明检测效率。基于以下几个原因,检测这些紧急照明装置的传统方法既耗时又昂贵,工作人员必须对每一个灯具进行人工检查,而在设置灯具数量众多的大型建筑物中,这个工作过程变得更加艰巨。这里涉及验证每个灯具的功能是否符合安全标准,通常涉及难以触及的位置,并且与多个维护团队进行协调。这类人工检查的方式还会影响建筑大楼的日常运营,导致额外的间接费用。检测和维护需要专门的人员和设备,从而进一步增加了开支。我将所有这些难题纳入考虑范围,设计出利用蓝牙Mesh技术的自动化解决方案原型。
在本文中,我将详细介绍所解决的问题,说明解决方案的设计过程,以及蓝牙Mesh的实施步骤。尽管我的Mesh网络技术工作背景有限,但我的目标是快速建立一个可用产品。我在本文中探讨了所解决的具体问题,强调蓝牙Mesh技术对于此项用途的适合性。我希望这有助于鼓励您使用蓝牙Mesh技术和nRF Connect SDK来进行探索和解决新的难题。
导言
最近网络照明控制(NLC)配置文件发布,蓝牙Mesh势必成为照明产业最受欢迎的技术。鉴于安装便利,标准化功能集,以及在主电源断电以电池供电情况下的功耗极低,蓝牙Mesh成为了紧急照明设备的理想选择。因此,我们在构思项目想法时,便直觉地决定以蓝牙Mesh技术为核心。研究过不同的选择方案并接受主管的建议指导后,我们选择专注于实际的应用:满足公共建筑的特定安全需求。
使用案例
公共建筑必须满足某些安全标准[1],其中之一涉及到配备电池供电的紧急照明设备,能够在停电时启动以引导人们离开建筑物。这些照明设备必须定期维护,以确保它们在规定的时间内(通常是两个小时)正常发挥作用。虽然一些新式建筑具备自动检测系统,但这些系统的设置通常比较复杂,需要在施工期间进行整合或进行费用昂贵的改造。目前大多数建筑需要手动切断照明设备的电源,并且在两个小时后由合格的电工人员来检测设备功能,这种方法既耗费时间又效率低下,因为要测试每个灯具是十分困难的,通常只检查最容易接触到的照明设备。因而,我思考是否可以开发出一种简单的、经济实惠的、符合法规标准,并可以在旧建筑中实施的安全替代方案。
以一万平方米办公室为例,这相当于294个紧急照明灯泡配置。如果采用人工检测方式,一个人需要工作大约16个小时[2],这里便能显着看出自动化系统的潜在优势:每年可以节省检测人力,降低灯泡更换成本,并且通过次数更多的检测来增强安全性,而没有额外的工作负担或成本。在清楚了解眼前的问题后,我们继续讨论实现这一目标的必要条件。
必要条件
这个项目需要满足总体项目目标和具体用户需求。总体目标涵盖简便性、经济性和安全性,具体用户需求则着重于检测功能、响应速度、集中管理以及通过附加功能扩展系统的能力。
这个项目的要求涵盖了易用性、成本效益和安全基准。而且,该系统还必须足够灵活以便轻松整合到现有的结构中,而不受特定网络设置的制约。考虑到紧急照明灯的亮度会根据使用情况而变化,系统需要具有为检测故障设定阀值的机制。总结来说,检测系统的严格限制条件如下:
为何选择蓝牙Mesh?
顾名思义,蓝牙Mesh采用网状网络架构,这项技术的设定可实现多对多的通信网络,使得成千上万的蓝牙功能设备能够彼此互通,其核心功能之一是内置的安全性,完全符合项目的要求。而且,蓝牙通信技术在市面上相当普及,全球范围大多数智能手机都支持蓝牙功能。得益于蓝牙功能的普遍性,再加上Mesh网络本身拥有的可扩展性,因而蓝牙Mesh成为开发原型时的理想选择。
蓝牙Mesh的另一项显着特点是使用三个主要广告信道,这些信道提供系统冗余,确保网络即使在无线电通信繁忙的环境中也能有效运作。
如果您有兴趣了解更多有关蓝牙Mesh的详细信息,请参阅 蓝牙Mesh。
产品开发
在深入研究产品开发的具体细节时,我认识到每一个紧急照明设备都需要具备以下关键功能:启动检测功能、纪录检测数据,并将这些数据传输到中央装置以供用户分析。因此,我创建了客户端控制器(也就是Hub),用于管理用户输入、与照明检测仪(服务器)进行通信,并接收数据和显示结果。这个系统主要由两个部分组成:Hub和照明检测仪。根据设想,照明检测仪是将芯片、传感器和继电器内置于照明灯具内的单一产品。
考虑到紧急照明灯具之间的安装距离,Mesh网络的设计可确保位置较近的灯具之间进行高效的数据传输。
紧急照明检测仪
这个组件直接位于紧急照明灯具内,并连接到两个外部组件:一个是用于评测灯泡亮度的亮度传感器,另一个是用于将灯泡切换到电池供电的继电器。图1显示紧急照明检测仪与光源和传感器之间的基本连接电路图。
图1:紧急照明检测仪与继电器和亮度传感器连接的基本电路图
下一个阶段是为照明检测仪定义通信协议,需要能够在接收到命令后启动检测操作,向Hub报告启动以避免用户等待,并且将检测结果传回Hub。为了增强用户体验,我们在照明检测仪上增加了储存和检索测试纪录的功能。这项功能在Hub断电或断开连接时特别有用,因为无需重新进行检测。此外,照明检测仪可以向Hub报告当前的传感器数值,以协助诊断。
下一步是决定照明检测仪必须发送或需要处理哪些信息,它必需具有启动检测的能力,这是从其他地方接收到的信息,所以需要进行处理,还需要向客户端回复检测结果。而且,照明检测仪还需要能够确认检测已经开始,否则用户将等待数小时却得不到任何回应,而这与实现良好用户体验的目标背道而驰。现在,这一切已经满足了最基本的必要条件,但为了更加方便,我们增添了一项在服务器上储存结果纪录以供检索的功能。如果客户端断电或因某种原因断开连接,这项功能大有帮助,如此一来用户就不必重做检测,而且可以检索检测的纪录。最后,客户端可以检索传感器的当前数值,这样就可以检查传感器是否出现问题。
Hub
Hub作为主要的用户接口,需要存取照明检测仪发送的数据。它必须能够启动检测,请求检测纪录和检索传感器数值。此外,它还导入了一项验证是否正在进行检测的功能,尤其是在错过初始确认的情况发生时。考虑到紧急照明装置的亮度各不相同,我增加了用于调整照明检测仪阀值的校准功能。
校准服务
为了保持系统的完整性,将校准工作分配给单独的Mesh模型,即校准服务。这项设计可以控制接入,防止某些客户端进行未经授权的校准操作。校准服务处理Hub发出的校准请求,并以「OK」信息确认校准成功。
最终设计如图2所示,每个组件都经由Mesh进行通信,模型的信息处理机制(handler)负责管理信息和特定功能,就像Hub中的检测功能和照明检测仪中的UART读取器。Hub与用户接口负责进行外部通信,而紧急照明检测仪则负责读取传感器数值。
图2:系统框图
信息通信表
下表概述Hub、紧急照明检测仪和校准服务之间的信息交换,指示由哪个组件发送(TX)或接收(RX)每种类型的信息。
信息 |
Hub |
紧急照明检测仪 |
|
---|---|---|---|
检测开始 |
发送(TX) |
接收(RX) |
|
检测执行状态 |
接收(RX) |
发送(TX) |
|
状态 |
接收(RX) |
发送(TX) |
|
纪录项目 |
接收(RX) |
发送(TX) |
|
传感器数值状态 |
接收(RX) |
发送(TX) |
|
取得纪录 |
发送(TX) |
接收(RX) |
|
检测执行 |
发送(TX) |
接收(RX) |
|
校准 |
发送(TX) |
接收(RX) |
|
接收(RX) |
发送(TX) |
图3显示了这些紧急照明组成的小型网络全貌,说明了照明灯具之间的通信及其与Hub的连接。图中详细介绍了照明灯具内的每个组件,以及系统中信息的发送和接收过程。校准服务和紧急检测仪描述成两个独立的组件,但实际上它们集成在一个芯片中。由于每个照明灯具都具转发功能,因此无需直接接触即可与用户接口进行通信。
图3:照明灯具网络的基本全貌
软件解决方案
在开发这个系统时,我首先使用nRF Connect SDK中的现有模板,特别是Bluetooth Mesh: Chat模板,因为它是符合项目中Mesh网络必要条件的供应商模型。这个项目需要三个模型:服务器、照明监控客户端,以及校准服务器。紧急照明灯具在同一个装置上使用校准服务器和照明监控服务器,因此只需要两个应用程序文件:light_monitor_srv(紧急照明灯具)和light_monitor_cli(Hub)。
开发步骤如下:
从chat模板开始作为基础,我可以跳过项目中耗费时间的初始设定阶段,直接投入开发工作。此外,该模板管理壳层接口(shell interface)的方法提供了宝贵的见解,这对于我开始将壳层功能整合到项目中特别有帮助。在有时间限制考虑时,这一点对于快速启动项目非常重要。
未来的工作
这个项目是暑期设计的原型,尚有很大的改进空间。未来的改进之处可包括与现有系统的整合,以实现集中控制、移动设备的可操作性,以及改进前端部分。在量产版本中,紧急照明灯可作为单独的产品或现有灯具的附加组件,与集成的传感器和芯片一起生产。通过报告生成和警报功能使得系统进一步自动化,可以大大减少人工监控。所有这些都是为了创建相比现有系统更简单易用的系统。
结论
本文实例说明使用nRF Connect SDK进行快速蓝牙Mesh技术项目开发的简便性和可用性。在大约七周内,我将一个概念发展到功能齐全的原型,充分展示了此类解决方案为各种重视可靠性、安全性和可扩展性的应用带来的开发潜力。我鼓励您亲自构建系统,并分享所遇到的问题或意见。
参考数据
[1] https://www.regjeringen.no/contentassets/20503ddfe0664fac9e2185c1a6c80716/veiledning-til-byggteknisk-forskrift-tek17_01_07_2017.pdf
[2] https://www.tu.no/artikler/for-darlig-test-av-nodlys/270580
** 原文请参考Nordic Semiconductor博客Automated emergency light testing through Bluetooth Mesh