钜大LARGE | 点击量:270次 | 2023年07月11日
如何在双模Wi-Fi /蓝牙IoT设计中最大化电池寿命?
电池供电的物联网(IoT)设备和其他连接产品的设计人员被要求满足持续无线连接和延长电池寿命的相互矛盾的要求。对同一设备中的蓝牙5和Wi-Fi连接的需求不断增长,进一步扩大了已经受限制的功率限制。尽管Wi-Fi和Bluetooth协议提供了有助于降低功耗的标准协议,但更直接的支持是以体系结构的形式出现的,该体系结构结合了可以将网络处理任务与低功耗微控制器分担的无线电子系统。
本文将概述双模Wi-Fi/蓝牙连接的重要性以及它如何使IoT设计复杂化。然后,它将展示赛普拉斯半导体公司的开发板和相关软件如何用于开发具有连续连接性和更长电池寿命的双模Wi-Fi/蓝牙IoT设备。
对双模Wi-Fi/蓝牙连续连接的需求不断增长
蓝牙连接被认为是许多物联网设备的标准要求,旨在通过支持蓝牙的智能手机和其他移动设备与用户互动。然而,对于许多物联网应用来说,物联网设备需要Wi-Fi连接来访问无线局域网(WLAN)以直接到达互联网,或与同一网络上的其他对等设备和主机系统进行交互。
在许多方面,如果这些物联网设备只在需要传输其数据或其他信息时才需要连接到WLAN或蓝牙主机,那么开发者延长电池寿命的能力就会更直接了。因为许多物联网设备的有效工作周期通常很低,这些设备可以通过主要在低功耗睡眠模式下运行来延长电池寿命,唤醒足够长的时间来执行传感器测量,完成相关的处理任务,并在返回低功耗模式之前传输所产生的数据。在现实中,大多数物联网设备需要快速响应来自对等设备、主机系统和终端用户的异步传入的命令和数据。
充电温度:0~45℃
-放电温度:-40~+55℃
-40℃最大放电倍率:1C
-40℃ 0.5放电容量保持率≥70%
为了保持响应,物联网设备需要提供持续连接的外观,对传入的流量保持警觉,以便它们能在可接受的时间内做出响应。如果开发者试图通过反复唤醒他们的设备以接收传入的流量来满足这一基本要求,他们设备的电池将很快被耗尽。事实上,电池供电的Wi-Fi设备中的无线电接收器通常会随着时间的推移比无线电发射器消耗更多的电力,尽管与单个传输操作相关的电力消耗更高。当然,设备的主机处理器在每个接收操作中所消耗的功率,也给功率预算增加了自己的大量负荷。幸运的是,无线标准定义了一些协议,让开发者在降低功率的同时仍能保持持续连接的假象。
无线连接标准如何帮助设备降低功耗
在正常操作中,Wi-Fi接收站(STA)通过关闭大多数Wi-Fi子系统的电源来节省功率。因为访问点(AP)缓冲了休眠的STA的帧,所以不会丢失任何消息。作为其正常网络管理操作的一部分,AP会定期发送包含一个位图的信标,该位图称为流量指示图(TIM),该位图指示AP是否具有每个STA的等待流量。AP还定期发送包含传递流量指示图(DTIM)的信标,该指示指示缓冲的多播或广播数据的可用性。预计STA将在DTIM周期值(正常信标间隔的几倍)内有规律地唤醒。配置了较高DTIM周期值的IoT网络将使网络中的设备能够降低功耗,因为它们可能在唤醒接收器之前收到更长时间的睡眠,以接收指示AP正在为其保持帧的信标。这是下面讨论的标准802.11节能轮询机制背后的基本方法。
蓝牙低能量(BLE)让设备通过优化其蓝牙广告频率和有效载荷来降低功耗。通过增加广告间隔,物联网设备可以延迟发射器操作;通过减少有效载荷,物联网设备可以减少发射器事件的持续时间。当然,不是每个应用都能容忍长的广告间隔或最小的有效载荷。例如,在音频或实时传感设备中,长的广告间隔意味着延迟连接,可能对整个应用的行为产生不利影响。
外围设备可以使用另一个称为从属延迟的BLE功能,它允许外围设备跳过连接事件。与Wi-FiDTIM一样,BLE从属延迟允许设备在更长的时间内保持低功耗模式。这种特殊模式不是简单地增加连接间隔,而是允许外围设备跳过与主机的连接事件,但仍然可以根据需要唤醒和发送数据,而不会产生额外的延迟。
支持双模式连接并延长电池寿命
这些方法有助于减少Wi-Fi和蓝牙设备中全功率运行的时间和频率,但开发人员可以利用赛普拉斯半导体CY8CKIT-062S2-43012Wi-FiBT先锋套件中展示的硬件和软件功能做得更多,以延长电池寿命。除了跳线和USB电缆外,赛普拉斯套件还包括PSoC62S2Wi-FiBT先锋板,它为实现低功耗物联网设计提供了一个全面的开发平台和全功能的硬件系统。与赛普拉斯软件一起使用,赛普拉斯套件允许开发人员立即评估并快速部署各种复杂的电源管理功能。
除了多个接口连接器、按钮和LED之外,该套件的电路板还集成了一个CY8C5868LTI-LP038PSoC5LP器件,提供赛普拉斯KitProg3板上编程和调试。对于额外的板载存储,赛普拉斯集成了其S25FL512S512兆(Mbit)串行NOR闪存器件和CY15B1044Mbit串行铁电随机存取存储器(FRAM)(图1)。
图1:赛普拉斯PSoC62S2Wi-FiBTPioneer板提供了围绕围绕集成PSoC6微控制器和Wi-Fi/Bluetooth无线连接模块的载体模块构建的一套全面的系统功能。(:赛普拉斯半导体)
电路板的核心是一个载板模块,该模块集成了赛普拉斯半导体PSoC6微控制器和带有无源组件的MurataElectronics1LVLBEE59B1LV型无线连接模块。射频(RF)开关和双频2.45GHz(GHz)/5GHz迷你芯片天线完善了支持设备。
专门设计成消除处理性能和功率消耗,在PSoC6集成了150兆赫兹(MHz)之间的常规折衷ARM®Cortex®-M4,其作为主要的应用程序的处理器,和一个100兆赫的ARMCortex-M0+,其手柄低功耗运行。除了集成的闪存和静态RAM(SRAM),PSoC6还包括一个加密引擎,可编程的模拟和数字外设,CapSense触摸感应支持以及多个系统接口(图2)。
图2:PSoC6微控制器内置于赛普拉斯PSoC62S2Wi-FiBTPioneer板的载体模块中,它使用多核架构来满足应用程序处理和低功耗实时执行的要求。(:赛普拉斯半导体)
MurataLBEE59B1LV模块以10.0x7.2x1.4毫米(mm)的封装提供了一个完整的无线电子系统,该子系统可容纳用于嵌入式设备(WICED)的赛普拉斯CYW43012无线Internet连接Wi-Fi+蓝牙设备,参考时钟和滤波器(图3)。
图3:Murata1LVLBEE59B1LV型无线连接模块提供了一个完整的,经过预先认证的Wi-Fi+蓝牙无线电子系统,该子系统围绕CypressCYW43012WICED设备构建。(:村田电子)
该模块通过蓝牙5.0和Wi-Fi802.11a/b/g/n支持2.4GHz和5GHz无线连接。此外,该模块提供了一种802.11ac友好模式,该模式支持802.11ac的256正交幅度调制(QAM),用于5GHz频带中的20MHz信道,与纯802.11n产品相比,具有更高的吞吐量和更低的每比特能量。MurataLBEE59B1LV模块旨在加快开发速度,已在多个地区进行了预认证,从而消除了与合规性测试和认证相关的冗长延迟。
在该模块内,赛普拉斯WICED设备分别在Wi-Fi和蓝牙子系统中集成了ArmCortex-M3处理器和ArmCortex-M4处理器。尽管不适用于客户代码,但ArmCortex-M3处理器运行赛普拉斯固件,该固件支持Wi-Fi操作和其他功能,包括以下所述的卸载功能。蓝牙子系统中的ArmCortex-M4运行蓝牙控制器固件,蓝牙堆栈和配置文件。此外,该内核可以运行使用赛普拉斯WICED软件开发套件(SDK)编程的客户代码。
在无线物联网设计中使用省电方法
PSoC6和无线连接模块旨在最大限度地降低功耗,具有一套全面的电源模式和降功耗功能。赛普拉斯以大量的软件来支持这一高能效的硬件平台,旨在简化无线物联网设计中省电方法的使用。例如,开发人员可以使用独立的嵌入式Wi-Fi主机驱动程序(WHD)库轻松实现前面提到的省电投票方法。
开发人员只需调用WHD应用编程接口(API)函数whd_wifi_enable_powersave()即可启用省电轮询,随后调用whd_wifi_disable_powersave()即可在设备中禁用它。当启用时,STA会通知AP它已经进入睡眠状态。如前所述,接入点会缓冲任何为睡眠中的STA准备的帧,并配置其定期信标以指示帧的可用性。当STA醒来检查信标时,它开始一个标准过程来检索这些帧。
尽管省电轮询机制是为低占空比的STA设计的,但一种类似的方法,称为省电不轮询,支持具有更高吞吐量要求的STA。在这里,STA发送一个空函数数据帧,它启动了来自AP的帧传输。
省电轮询和省电不轮询允许设备减少接收器操作,但无助于消除与网络操作开销有关的不需要的交易。例如,包括物联网无线局域网在内的任何网络在连接到外部网络,特别是公共互联网时,将携带不需要的数据包流量。在不涉及物联网设备的主机处理器的情况下,在通信子系统内过滤掉这些数据包的能力将使主机处理器保持在低功耗睡眠模式。
除了不需要的数据包,合法的网络流量也可能导致主机处理器不必要地唤醒。例如,Wi-Fi标准地址解析协议(ARP)使用广播数据包作为其功能的一部分,将与设备相关的IP地址映射到设备的媒体访问控制(MAC)地址。这种操作对正常的WLAN功能至关重要,它允许设备与网络中的其他人联系,检测重复的IP地址,并在一个IP地址因任何原因而改变时通知其他设备。
ARP请求和响应数据包对网络运行非常重要,以至于物联网设备的主机处理器仅仅处理ARP请求和响应就会变得不堪重负。如果设备的WLAN接口只是在主机和网络之间传递请求和响应,每个ARP请求都会唤醒主机,有时是不必要的。
相比之下,Murata无线连接模块介入了这一交换,从PSoC6微控制器中卸载了ARP请求处理。当PSoC6从事其主要的物联网应用功能时,这种能力为应用执行保留了处理器周期。如果PSoC6处于睡眠模式,该功能有助于降低整个物联网设备的功耗。通过启用具有对等自动回复功能的ARP卸载,Murata模块只有在传入的ARP请求无法由Murata模块中的缓存条目满足时才会唤醒PSoC6(图4,左侧)。
图4:启用后,ARP卸载会拦截来自网络(左)或主机处理器(右)的ARP请求,当高速缓存满足请求时自动响应(顶部),并且仅在高速缓存未命中时唤醒处理器(底部)。(:赛普拉斯半导体)
同样的方法也可以帮助减少WLAN功耗。在正常操作中,村田模块可以监视(监听)网络流量并从其他ARP响应中缓存IP:MAC对。使用主机自动答复,Murata模块可以答复来自PSoC6的ARP请求,仅当无法通过ARP缓存满足PSoC6的请求时才调用其无线电子系统(右图4)。
基于菜单的节能功能的简单实现
使用Pioneer套件实现ARP卸载非常简单。赛普拉斯设备配置器工具包含在赛普拉斯ModusToolBox(MTB)集成开发环境(IDE)中,使开发人员可以通过几个菜单选项来部署此功能。赛普拉斯提供了预构建的配置文件,使开发人员可以快速选择不同的配置,包括ARP卸载。
使用设备配置器工具显式定义配置几乎是很简单的。开发人员使用该工具的菜单选项来启用主机唤醒引脚,命名该引脚(CYBSP_WIFI_HOST_WAKE)并设置引脚参数(图5)。
图5:赛普拉斯器件配置器工具允许开发人员使用菜单来设置先锋板提供的节能选项。(:赛普拉斯半导体)
在该工具的Wi-Fi标签中,开发人员启用主机唤醒功能并将中断引脚设置为之前输入的名称(CYBSP_WIFI_HOST_WAKE)。其他菜单条目支持ARP卸载,将功能设置为对等自动应答,启用网络监听以及设置缓存条目的有效时间(图6)。
图6:使用Cypress设备配置器工具中的其他菜单选项卡,开发人员可以启用ARP卸载功能和对等自动回复等特定功能。(:赛普拉斯半导体)
保存配置后,开发人员只需生成源文件,构建修改后的项目并对Pioneer板进行编程。使用类似的过程,开发人员可以将Murata模块配置为减轻Wi-Fi数据包过滤的负担,并处理其他常见类型的网络操作。相同的方法甚至允许IoT设备执行维持Wi-Fi连接所需的Wi-FiTCP保持活动协议,而无需唤醒IoT主机处理器。
在正常的WLAN操作中,客户端设备和主机服务器通过交换保持活动的数据包来维护TCP连接。如果几次尝试后此交换的任何一方均未收到响应,则它将终止连接。即使在功率受限的IoT设备中,主机处理器也必须不断唤醒以参与此交换,或者使用更多功率来不断重新建立连接。
与ARP卸载一样,开发人员可以使用DeviceConfigurator工具来启用TCP保持活动卸载。启用此功能后,Murata模块将自动执行keepalive协议,而无需唤醒PSoC6(图7)。
图7:启用TCP保持活动卸载后,无线连接模块(WLAN设备)将自动执行保持活动协议,从而允许主机处理器保持低功耗睡眠模式。(:赛普拉斯半导体)
尽管赛普拉斯建议使用设备配置器工具作为最简单的实现途径,但开发人员也可以手动实现赛普拉斯平台的节能功能,包括ARP卸载,数据包过滤,TCP保持活动卸载等。
赛普拉斯的低功耗助手(LPA)中间件是这两种方法的基础,该中间件支持Wi-Fi,蓝牙和PSoC6微控制器的这些节电功能,以及此处未提及的其他功能。
开发人员使用菜单或通过手动添加配置代码定义配置后,LPA固件对应用程序透明运行,自动协调使用低功耗硬件功能和软件功能。
结论
物联网设备中对持续无线连接和延长电池寿命的需求给设计人员提出了相互矛盾的要求,而仅同时需要支持Wi-Fi和蓝牙,这一要求就更加恶化。如图所示,赛普拉斯CY8CKIT-062S2-43012Wi-FiBT先锋套件通过将能够分担网络处理任务的无线电子系统与低功耗微控制器相结合,使设计人员可以满足他们的IoT无线连接和低功耗要求。