在本系列的前几篇文章中,我们讨论了什么是蓝牙Mesh(第1部分)、Mesh工作方式(第2部分)以及如何保障Mesh网络的隐私与安全(第3部分)。蓝牙Mesh的各项功能使其成为一种具有互操作性的安全低功耗网络。
英文原文链接:
不可否认,这些特性使蓝牙Mesh方案的实现略显复杂。如果让系统设计人员从头处理所有这些复杂问题,那么推出一款产品需要耗费数百人年的工作量。除此之外,物联网应用类型极为丰富多样,针对每种应用需要不同的外设功能与CPU处理能力,例如,如果您在设计智能家居产品,有些可能采用电池供电,有些采用交流电源供电,有些需要处理模拟信号,有些需要强大的处理能力和大量数字外设接口。
在本系列的前几篇文章中,我们讨论了什么是蓝牙Mesh(第1部分)、Mesh工作方式(第2部分)以及如何保障Mesh网络的隐私与安全(第3部分)。蓝牙Mesh的各项功能使其成为一种具有互操作性的安全低功耗网络。
英文原文链接:
不可否认,这些特性使蓝牙Mesh方案的实现略显复杂。如果让系统设计人员从头处理所有这些复杂问题,那么推出一款产品需要耗费数百人年的工作量。除此之外,物联网应用类型极为丰富多样,针对每种应用需要不同的外设功能与CPU处理能力,例如,如果您在设计智能家居产品,有些可能采用电池供电,有些采用交流电源供电,有些需要处理模拟信号,有些需要强大的处理能力和大量数字外设接口。
对于系统开发来说,固件开发需要的时间最长,工作量最大。尽管工程师设计的系统各不相同,如果使用同一芯片,那么其中一些固件还是可以重复使用的。基于此,工程师为首款产品评估选择器件/平台时,往往非常谨慎和严格,以便后续产品能最大限度地重复使用IP和现有固件。在本文中我们将讨论,在为蓝牙Mesh应用选择芯片平台时,必须考虑的几个关键因素。
整体来说,蓝牙Mesh应用开发和部署需要三个关键组成部分:
硬件
软件/固件
移动设备APP
硬件
在选择蓝牙Mesh产品平台时,首要的步骤是了解平台器件的现在和未来,在选择器件时应做长期考虑。举个例子,图1是智能家居系统的示例。
图1 使用蓝牙Mesh的智能家居系统示例。
正如您所看到的,这个网络中有各种设备,包括灯泡、风扇、温控器和百叶窗控制器。现实中的智能家居系统可以使用类型更丰富的蓝牙Mesh产品,如开关、调光器、人体感应器、喷灌控制器等。如果您正在设计智能家居产品,您需要设计出符合所有这些用途的系统平台。因此,即使您只是在开发智能开关应用,您仍然需要审视其他产品,为其他产品设计留有余量。
每种这样的应用都有不同的设计要求,楼宇自动化等其他领域也存在相同的情况。所以,您的设计应采用一种能够满足大多数应用需求的平台。此外,您应该能够根据应用需求调整或裁剪原有固件,而不必从头开始新的设计。
在选择蓝牙Mesh平台芯片前,首先应该深入了解芯片的规格与特性。
发射功率与接收灵敏度。对于无线设备而言,最重要的指标之一是发射功率与接收灵敏度。发射功率与接收灵敏度决定了设备的链路预算,以及设备与网络中其他节点间的通信距离。虽然蓝牙Mesh旨在拓展网络的覆盖范围,但发射功率与接收灵敏度决定了网络中各节点间的通信距离。
正如我们前文提到的,不同的产品功能需求都不同,因此芯片的需求会随着应用的变化而改变。此外,提供较高的发射功率也会增大电流消耗。对于电池供电的应用场景,可能需要限制发射功率,才能降低功耗、延长电池续航时间。例如,温度和湿度传感器、智能开关等应用通常采用电池供电,使用较低发射功率会更加理想。另一方面,交流电源供电应用能够支持更高的发射功率,从而拓展网络覆盖范围。因此,对于交流电源供电应用而言,能够支持高达10dBm发射功率的器件是一个不错的选择。
具备Mesh功能的器件应该既要能够支持电池供电应用所要求的较低发射功率,也要支持交流电源供电应用所要求的较高发射功率,能够提供不同的发射功率选项的同系列芯片是明智的做法。这样您只需对BOM进行修改,而无需对电路板布局进行任何更改,便于简化新产品设计,加快产品上市进程。
芯片可以集成功率放大器(IPA)达到更远的传输距离。但采用IPA会产生额外的成本。为了降低BOM成本,针对电池供电应用,可以采用pin to pin引脚兼容、但发射功率较低的低成本器件(如果有这种器件可供选择)。例如,为满足这一需求,赛普拉斯同时提供支持+4dBm发射功率的 CYW20819和支持最高达+10dBm发射功率的 CYW20820。两者采用引脚兼容的封装,并提供相同的功能集。
功耗。无论是交流电源供电还是电池供电,任何产品必须仔细考虑功耗问题。为了提高产品的环保性,监管机构不断施压,要求降低功耗,甚至对交流电源供电设备也不例外。如果产品不符合规定的功耗要求,就可能无法出售。
在考虑设备功耗时,必须考量多种因素。首先是收发过程中产生的无线电功耗。大多数蓝牙Mesh节点持续地扫描数据包。因此,这些设备几乎全部时间处于接收模式下,接收器功耗成为最重要的考量参数之一。
对于用作中继器、对收到的消息进行转发的Mesh设备来说,发射功耗是另一大重要指标。我们必须在器件的最大发射功率下考量发射功耗,有些器件在较低的发射功率下性能更佳,但在较高的发射功率下则不然。
芯片厂商的产品会支持不同的低功耗模式,我们需要理解哪种模式是自己的应用所需要的,这样才能根据器件处于常规工作模式和低功耗模式的时间,准确估算系统的平均功耗。
处理能力。一般来说,选择处理能力强的器件是正确做法。例如,LED灯泡之类的应用可能需要根据用户需求快速处理和改变LED状态(开/关或改变颜色)。由于设备在低功耗模式下功耗最低,使用速度较快的CPU能迅速完成处理工作。这样,设备处于休眠模式的时间就更长,从而降低总体平均功耗。
存储。可根据特定的应用选择闪存和RAM容量。找到能灵活使用存储器空间的产品系列十分关键。Mesh设计方案应该能够在使用不同存储器空间的设备之间移植应用代码,无需花费额外的精力,这样便于为存储器需求较低的应用选择较低成本的器件。此外,部分器件使用ROM来存储蓝牙协议栈和外设驱动程序,这样可以将闪存释放给应用程序使用。总起来看,同时拥有内部ROM和闪存的器件更加适合蓝牙Mesh产品。
外设。正如前文所提及的,不同应用可能需要不同的外设。例如,智能灯泡可能需要三、四个脉冲宽度调制器(PWM)用于RGB/RGBW LED的控制,一个数模转换器(ADC)用于温度测量(使用热敏电阻器),以及一个I2C接口用作无源红外(PIR)传感器控制器接口;自动调温器需要ADC和电源管理模块,以支持低功耗模式。在选择平台时,要针对所有应用列出可能的外设需求,以便找出最符合要求的器件。
芯片温度范围。因为LED和AC-DC子系统的高功率热耗散,照明之类的应用需要支持宽温度范围(最高+105°C),因此,应选择能够为产品同时提供工业温度级别和宽温度范围的芯片。
软件/固件
软件极其重要,必须认真考虑。这里的软件不仅仅指IDE和工具链,也包括底层的软件开发套件(SDK)。IDE必须易于使用,比如基于Eclipse的IDE。
需要特别关注SDK。蓝牙Mesh有多种模式和节点类型。具体使用哪种模式和节点类型取决于具体应用。要使终端产品通过蓝牙技术联盟(Bluetooth Special Interest Group,SIG)的蓝牙Mesh认证,底层的模式和节点类型也必须通过认证(一些器件厂商并未通过所有的蓝牙Mesh模式认证和节点类型认证)。如果应用所需的模式未经认证,终端产品开发者需要负责完成整个认证流程。这就要求开发者必须深入了解蓝牙Mesh技术规范,并投入额外的资金与时间通过SIG认证流程。Mesh芯片厂商理应负责解决这一复杂问题,并提供完全通过蓝牙Mesh认证的解决方案。因此,在为您的蓝牙Mesh应用选择芯片平台前,应查阅蓝牙SIG网站,了解准备选用的芯片通过了哪些Mesh模式认证和节点认证。
在确认器件支持所有Mesh模式和节点类型后,应尽量找出可用的参考示例代码。示例代码可让您事半功倍。
移动设备App
物联网的理念是万物互联,方便用户操控。基本上所有物联网应用都需要移动APP,基于蓝牙Mesh的物联网应用也有同样的要求。无论是控制灯泡还是从气象监测站读取温度信息,用户都需要使用自己的手机访问并控制设备。为了便于实现这项功能,芯片厂商必须为他们的蓝牙Mesh产品提供iOS和安卓版APP。
理想情况下,芯片厂商会提供这些APP的源代码,方便用户进行二次开发。如果芯片厂商不提供这类APP,您就需要从头开发。每个应用的App开发成本可能高达20万美元,还不包括用户开发APP对产品上市时间的影响。
您可以观看 深入了解蓝牙Mesh视频,学习如何创建蓝牙Mesh网络并与之进行通讯。
在下一篇,也是本系列文章的最后一篇,我们将讨论针对蓝牙Mesh应用时应该使用芯片还是模组。此外,我们还将探讨在选择这两种备选方案时的考虑因素。
系列讲座的其它内容,可以访问以下链接
对于系统开发来说,固件开发需要的时间最长,工作量最大。尽管工程师设计的系统各不相同,如果使用同一芯片,那么其中一些固件还是可以重复使用的。基于此,工程师为首款产品评估选择器件/平台时,往往非常谨慎和严格,以便后续产品能最大限度地重复使用IP和现有固件。在本文中我们将讨论,在为蓝牙Mesh应用选择芯片平台时,必须考虑的几个关键因素。
整体来说,蓝牙Mesh应用开发和部署需要三个关键组成部分:
硬件
软件/固件
移动设备APP
硬件
在选择蓝牙Mesh产品平台时,首要的步骤是了解平台器件的现在和未来,在选择器件时应做长期考虑。举个例子,图1是智能家居系统的示例。
图1 使用蓝牙Mesh的智能家居系统示例。
正如您所看到的,这个网络中有各种设备,包括灯泡、风扇、温控器和百叶窗控制器。现实中的智能家居系统可以使用类型更丰富的蓝牙Mesh产品,如开关、调光器、人体感应器、喷灌控制器等。如果您正在设计智能家居产品,您需要设计出符合所有这些用途的系统平台。因此,即使您只是在开发智能开关应用,您仍然需要审视其他产品,为其他产品设计留有余量。
每种这样的应用都有不同的设计要求,楼宇自动化等其他领域也存在相同的情况。所以,您的设计应采用一种能够满足大多数应用需求的平台。此外,您应该能够根据应用需求调整或裁剪原有固件,而不必从头开始新的设计。
在选择蓝牙Mesh平台芯片前,首先应该深入了解芯片的规格与特性。
发射功率与接收灵敏度。对于无线设备而言,最重要的指标之一是发射功率与接收灵敏度。发射功率与接收灵敏度决定了设备的链路预算,以及设备与网络中其他节点间的通信距离。虽然蓝牙Mesh旨在拓展网络的覆盖范围,但发射功率与接收灵敏度决定了网络中各节点间的通信距离。
正如我们前文提到的,不同的产品功能需求都不同,因此芯片的需求会随着应用的变化而改变。此外,提供较高的发射功率也会增大电流消耗。对于电池供电的应用场景,可能需要限制发射功率,才能降低功耗、延长电池续航时间。例如,温度和湿度传感器、智能开关等应用通常采用电池供电,使用较低发射功率会更加理想。另一方面,交流电源供电应用能够支持更高的发射功率,从而拓展网络覆盖范围。因此,对于交流电源供电应用而言,能够支持高达10dBm发射功率的器件是一个不错的选择。
具备Mesh功能的器件应该既要能够支持电池供电应用所要求的较低发射功率,也要支持交流电源供电应用所要求的较高发射功率,能够提供不同的发射功率选项的同系列芯片是明智的做法。这样您只需对BOM进行修改,而无需对电路板布局进行任何更改,便于简化新产品设计,加快产品上市进程。
芯片可以集成功率放大器(IPA)达到更远的传输距离。但采用IPA会产生额外的成本。为了降低BOM成本,针对电池供电应用,可以采用pin to pin引脚兼容、但发射功率较低的低成本器件(如果有这种器件可供选择)。例如,为满足这一需求,赛普拉斯同时提供支持+4dBm发射功率的 CYW20819和支持最高达+10dBm发射功率的 CYW20820。两者采用引脚兼容的封装,并提供相同的功能集。
功耗。无论是交流电源供电还是电池供电,任何产品必须仔细考虑功耗问题。为了提高产品的环保性,监管机构不断施压,要求降低功耗,甚至对交流电源供电设备也不例外。如果产品不符合规定的功耗要求,就可能无法出售。
在考虑设备功耗时,必须考量多种因素。首先是收发过程中产生的无线电功耗。大多数蓝牙Mesh节点持续地扫描数据包。因此,这些设备几乎全部时间处于接收模式下,接收器功耗成为最重要的考量参数之一。
对于用作中继器、对收到的消息进行转发的Mesh设备来说,发射功耗是另一大重要指标。我们必须在器件的最大发射功率下考量发射功耗,有些器件在较低的发射功率下性能更佳,但在较高的发射功率下则不然。
芯片厂商的产品会支持不同的低功耗模式,我们需要理解哪种模式是自己的应用所需要的,这样才能根据器件处于常规工作模式和低功耗模式的时间,准确估算系统的平均功耗。
处理能力。一般来说,选择处理能力强的器件是正确做法。例如,LED灯泡之类的应用可能需要根据用户需求快速处理和改变LED状态(开/关或改变颜色)。由于设备在低功耗模式下功耗最低,使用速度较快的CPU能迅速完成处理工作。这样,设备处于休眠模式的时间就更长,从而降低总体平均功耗。
存储。可根据特定的应用选择闪存和RAM容量。找到能灵活使用存储器空间的产品系列十分关键。Mesh设计方案应该能够在使用不同存储器空间的设备之间移植应用代码,无需花费额外的精力,这样便于为存储器需求较低的应用选择较低成本的器件。此外,部分器件使用ROM来存储蓝牙协议栈和外设驱动程序,这样可以将闪存释放给应用程序使用。总起来看,同时拥有内部ROM和闪存的器件更加适合蓝牙Mesh产品。
外设。正如前文所提及的,不同应用可能需要不同的外设。例如,智能灯泡可能需要三、四个脉冲宽度调制器(PWM)用于RGB/RGBW LED的控制,一个数模转换器(ADC)用于温度测量(使用热敏电阻器),以及一个I2C接口用作无源红外(PIR)传感器控制器接口;自动调温器需要ADC和电源管理模块,以支持低功耗模式。在选择平台时,要针对所有应用列出可能的外设需求,以便找出最符合要求的器件。
芯片温度范围。因为LED和AC-DC子系统的高功率热耗散,照明之类的应用需要支持宽温度范围(最高+105°C),因此,应选择能够为产品同时提供工业温度级别和宽温度范围的芯片。
软件/固件
软件极其重要,必须认真考虑。这里的软件不仅仅指IDE和工具链,也包括底层的软件开发套件(SDK)。IDE必须易于使用,比如基于Eclipse的IDE。
需要特别关注SDK。蓝牙Mesh有多种模式和节点类型。具体使用哪种模式和节点类型取决于具体应用。要使终端产品通过蓝牙技术联盟(Bluetooth Special Interest Group,SIG)的蓝牙Mesh认证,底层的模式和节点类型也必须通过认证(一些器件厂商并未通过所有的蓝牙Mesh模式认证和节点类型认证)。如果应用所需的模式未经认证,终端产品开发者需要负责完成整个认证流程。这就要求开发者必须深入了解蓝牙Mesh技术规范,并投入额外的资金与时间通过SIG认证流程。Mesh芯片厂商理应负责解决这一复杂问题,并提供完全通过蓝牙Mesh认证的解决方案。因此,在为您的蓝牙Mesh应用选择芯片平台前,应查阅蓝牙SIG网站,了解准备选用的芯片通过了哪些Mesh模式认证和节点认证。
在确认器件支持所有Mesh模式和节点类型后,应尽量找出可用的参考示例代码。示例代码可让您事半功倍。
移动设备App
物联网的理念是万物互联,方便用户操控。基本上所有物联网应用都需要移动APP,基于蓝牙Mesh的物联网应用也有同样的要求。无论是控制灯泡还是从气象监测站读取温度信息,用户都需要使用自己的手机访问并控制设备。为了便于实现这项功能,芯片厂商必须为他们的蓝牙Mesh产品提供iOS和安卓版APP。
理想情况下,芯片厂商会提供这些APP的源代码,方便用户进行二次开发。如果芯片厂商不提供这类APP,您就需要从头开发。每个应用的App开发成本可能高达20万美元,还不包括用户开发APP对产品上市时间的影响。
您可以观看 深入了解蓝牙Mesh视频,学习如何创建蓝牙Mesh网络并与之进行通讯。
在下一篇,也是本系列文章的最后一篇,我们将讨论针对蓝牙Mesh应用时应该使用芯片还是模组。此外,我们还将探讨在选择这两种备选方案时的考虑因素。
系列讲座的其它内容,可以访问以下链接
相关文章