为智能产品构建具有蓝牙功能的无电池型无线开关
投稿人:DigiKey 北美编辑
2019-03-05
智能互联产品的快速部署推动了对无线开关的需求,并促进了设备的互联。由于是无线开关,因此不需要另外连接电线,而且方便布置。然而,由于近些年采用的无线开关都是电池供电型开关,无形中增加了设计成本和复杂性,并且用户还需要进行电池更换。解决方案可能要依赖电感形式的能量收集。
环境能量有很多来源,包括光子、射频能量、振动、温差和压力。然而,本文将介绍一个电感式能量收集参考设计;该设计采用一种基于蓝牙和 Eddystone 开放式信标协议的新颖方法,使用了 ON Semiconductor 和 ZF Electronics 两家公司的零件。
通过将该设计和相关开发套件配套在一起,将能为超低功耗蓝牙 5.0 模块提供以无线方式向支持蓝牙的中枢或智能产品发送信号所需的全部电能。
超低功耗设计
ON Semiconductor 的 BLE-SWITCH001-GEVB 开发套件将直接替代蓝牙 5.0 模块与能量收集机械开关结合在一起,为开发人员提供了一种即时的无线开关解决方案,并为定制无线开关设计奠定了基础。在此设计中,ZF Electronics 的 AFIG-0007 电感式能量采集器将为 ON Semiconductor 的 RSL10 蓝牙 5 系统级封装 (SiP) 提供充足电能,使之足以传输低功耗蓝牙 (BLE) 信标。接收到信标之后,智能产品或中枢中支持 BLE 的接收器就可以执行相关操作,以控制灯、继电器或其他设备。
这种无电池设计的关键在于,RSL10 对信标传输的功率要求与 AFIG-0007 产生足够电能以满足这些要求的能力之间能否完美匹配。
RSL10 模块专为满足低功耗无线连接的新兴需求而设计,它集成了多个功能块,可提供完整的蓝牙 5 解决方案(图 1)。为进行处理,该模块配有两个内核,一个是负责通用处理的 Arm® Cortex®-M3 内核,另一个是针对特定应用的 ON Semiconductor 自有 LPDSP32 32 位数字信号处理器 (DSP) 内核。
图 1:ON Semiconductor 的 RSL10 SiP 模块集成了多个功能块,提供了一个完整的蓝牙 5.0 解决方案,并且耗电量极低。(图片来源:ON Semiconductor)
该模块使用多个外设和存储器(包括 384 KB 闪存、76 KB 程序存储器和 88 KB 数据存储器)来支持上述处理器。为进行蓝牙通信,该模块配有支持蓝牙物理层 (PHY) 的 2.4 千兆赫 (GHz) 射频前端,以及支持高级蓝牙 5.0 协议的基带控制器。
RSL10 能够在 1.1 - 3.3 伏的宽电源电压范围内运行,并且耗电量极低。使用嵌入式微处理器基准评测 (EEMB) 协会的 ULPMark 超低功耗 (ULP) 基准,RSL10 在 3 伏电源下运行时可达到行业领先的 1090 分,在 2.1 伏电源下运行时可达到 1360 分。
然而在许多无线应用中,支持重复长时间无线事务处理所需的电力可能会考验这一最高能效设计的极限。ON Semiconductor 的参考设计解决了如何利用蓝牙信标协议实现了较短的无线事务处理时间。
信标是符合蓝牙广告协议的短消息,用于向任何可用的侦听器广播标识符或其他短数据片段。通过与专用移动应用配合使用,信标在零售、娱乐、交通运输和其他公共场合得到了广泛应用,提供与用户位置相关的信息。ON Semiconductor 的无线开关设计使用一种特殊的信标,称为 Eddystone 信标。
Eddystone 信标遵循一个开放标准,该标准规定了与数据包(长度仅为几字节)相关的包络和数据有效载荷。对于 Eddystone 信标,有效载荷格式可以指定一个唯一的 ID (UUID)、一个 URL 或不同类型的遥测 (TLM) 数据,如温度(图 2)。
图 2:行业标准 Eddystone 格式仅用几个字节来定义信标包络和有效载荷。(图片来源:ON Semiconductor)
在找到 Eddystone 信标后,接收应用就能执行与该 UUID 相关的操作,并将用户发送到该 URL,或者对遥测数据作出适当响应。
能量收集来源
Eddystone 信标的传输时间可能短至 10 毫秒 (ms),并且使用超低功耗的 RSL10,完成这种传输所需的能量可低至 100 毫焦 (mJ),这一数值完全在 AFIG-0007 能量采集器的发电能力范围内。
在 AFIG-0007 内,线圈围绕在与磁块接触的金属磁芯周围(图 3,左图)。当用户按下弹簧式致动器时,磁块会发生移动(图 3,右图)。此项操作会使通过线圈的磁场极性发生逆转,从而根据磁感应原理产生电能脉冲。松开致动器会使磁块弹回原始位置,产生另一个具有相反极性的能量脉冲。
图 3:当用户按下 ZF Electronics 的 AFIG-0007 能量采集器内置的致动器时,磁块会从停留位置(左图)移动到开离位置(右图),按下致动器会产生一个能量脉冲,松开致动器会产生另一个能量脉冲。(图片来源:ZF Electronics)
ZF 能量采集器尺寸为 20 x 7 x 15 毫米 (mm),预期寿命为 1,000,000 次开关循环,符合无线开关设计的关键机械和物理要求。AFIG-0007 还能轻松满足此设计的能源要求。ZF 能够在每个按下和松开致动循环中产生约 300 mJ 的能量,这为 RSL10 提供了充足的电力来传输两到三个 Eddystone 信标。除这两个零件外,无线开关设计的实现只需添加其他少量元件便可完成能量收集电源电路。
能量收集电源设计
通常情况下,能量收集电源电路需要组合使用电压转换器和线圈,以使产生的电压电平达到微控制器所需的精确电平。在此设计中,RSL10 的 1.1 至 3.3 伏宽供电范围简化了电源电路的设计。AFIG-007 的输出由 NSR1030 肖特基全桥整流器进行整流,并由一个简单电路进行箝位,该电路包括一个 SZMM3Z6V2ST1G 齐纳二极管、一个滤波/储能电容器 (C1) 以及一个 NCP170 低压差 (LDO) 稳压器,所有这些零件都来自 ON Semiconductor(图 4)。
图 4:开发人员可以使用简单的电源电路为 ON Semiconductor 的 RSL10 供电,该电路可箝制 ZF Electronics 的 AFIG-007 能量采集器的整流输出。(图片来源:ON Semiconductor)
ON Semiconductor 的 BLE-SWITCH001-GEVB 套件将 AFIG-007 以及上述电源电路与 RSL10 集成在一个大小为 23 x 23 mm 的电路板上(图 5)。
图 5:ON Semiconductor 的 BLE-SWITCH001-GEVB 电路板将功能组件放置在 23 x 23 mm 电路板的中心区域(左图)。可拆卸翼板用于放置开发接口,包括一个可从底部接入的 10 引脚 JTAG 接口(右图)。(图片来源:ON Semiconductor)
7 mm 宽的中心区域包含了核心组件,而可拆卸翼板则提供了多个开发接口,包括一个用于标准适配器(如 Tag-Connect 的 TC2050-IDC)的 10 引脚 JTAG/SWD 接口。除了 10 引脚接口外,该侧翼板还提供了用于跳线和外部 3.3 伏电源 (Vout) 的针座,以便使用连接的 JTAG 编程器(例如 Segger Microcontroller Systems 的 8.16.28 J-LINK ULTRA+)进行编程和调试。
开关开发
BLE-SWITCH001-GEVB 电路板已预装固件,每 20 ms 发送一次 Eddystone 信标,直到系统耗尽单次开关致动产生的电量。在此应用示例中,设计首先发送一个包含 URL“https://onsemi.com/idk”的 Eddystone-URL 帧。发送完这个初始帧之后,该设计会传输内含遥测数据的 Eddystone TLM 帧,其中包括开关的电源电压、正常运行时间以及到目前为止所传输的数据包总数。
ON Semiconductor 的 RSL10 Eddystone 示例软件展示了构建和发送帧的基本设计模式(清单 1)。如清单 1 所示,开发人员调用函数 EddyService_Env_Initialize() 将针对 Eddystone-URL 帧的有效载荷加载到 Eddystone 环境结构 eddy_env_tag。为了发送信标,开发人员调用了 Eddy_GATTC_WriteReqInd() 函数,该函数用于构建封装,利用 RSL10 的 AES 加密加速器对数据进行加密,然后将消息发送 (ke_msg_send()) 到传输队列。较低的服务层用于检索排队的消息,构建数据包,和进行传输。
副本 struct eddy_env_tag eddy_env; void EddyService_Env_Initialize(void) { /* Reset the application manager environment */ memset(&eddy_env, 0, sizeof(eddy_env)); ...memcpy(eddy_env.advslotdata_value, (uint8_t[16] ) { 0x10, 0x03, 'o', 'n', 's', 'e', 'm', 'i', '.', 'c', 'o', 'm', '/', 'i', 'd', 'k' }, eddy_env.advslotdata_length); eddy_env.advtxpower_value = OUTPUT_POWER_DBM; /* Set radio output power of RF */ Eddy_GATTC_WriteReqInd(…)...valptr = (uint8_t *) &eddy_env.advtxpower_value; .../* Enable and configure the base band block */ BBIF->CTRL = BB_CLK_ENABLE | BBCLK_DIVIDER_8 | BB_WAKEUP; /* Copy in the exchange memory */ uint8_t plain_text[16]; for (int i = 0; i<=15;i++) plain_text[i] = eddy_env.challenge_value[15-i]; memcpy((void *) (EM_BLE_ENC_PLAIN_OFFSET + EM_BASE_ADDR), plain_text, 16); /* Configure the AES-128 engine for ciphering with the key and the memory * zone */ uint8_t encryptionkey[16]; for (int i = 0; i<=15;i++) encryptionkey[i] = eddy_env.lockstate_value[16-i]; Sys_AES_Config((void *) encryptionkey, EM_BLE_ENC_PLAIN_OFFSET); /* Run AES-128 encryption block */ Sys_AES_Cipher(); /* Access to the cipher-text at EM_BLE_ENC_CIPHER_OFFSET address */ uint8_t encryptedtext_temp[16]; memcpy(&encryptedtext_temp[0], (void *) (EM_BLE_ENC_CIPHER_OFFSET + EM_BASE_ADDR), 16); uint8_t encryptedtext[16]; for (int i = 0; i<=15;i++) encryptedtext[i] = encryptedtext_temp[15-i]; if (!memcmp(encryptedtext, eddy_env.unlocktoken_value, 16)) ...ke_msg_send(…)
清单 1:ON Semiconductor 示例代码展示了定义 Eddystone-URL 帧的有效载荷和发送已完成帧的基本设计模式。(代码来源:ON Semiconductor)
传输的信标可被范围内任何支持 BLE 的主机检测到,或者被附近使用信标应用的移动设备(如 ON Semiconductor 的 RSL10 移动应用)显示。若要通过无线开关控制设备,开发人员可以使用 ON Semiconductor 基于 RSL10 的 BDK-GEVK BLE 物联网开发套件来处理信标并执行相关操作。例如,开发人员可将 BDK-GEVK 基板和 ON Semiconductor 的 D-LED-B-GEVK 双 LED 镇流器板结合使用,利用无线开关实现对灯的控制。在设计电机驱动型应用时,开发人员可以将基板与 ON Semiconductor 的 BLDC-GEVK 无刷直流电机驱动器板或 D-STPR-GEVK 步进电机驱动器板组合在一起。
最后部署无线开关时,开发人员只需将两个翼板拆下,只留一个包含所有功能器件的 7 x 23 mm 组件即可(图 6)。
图 6:从 ON Semiconductor 的开发板上拆下两个翼板后(左图),开发人员可以轻松将 7 x 23 mm 组件放入典型摇臂开关空壳(右图)中。(图片来源:ON Semiconductor)
由于 ZF 致动器位于组件的后端,因此在像 CW Industries GIL-2000-2010 这样的空壳中可以放置在摇臂开关下面。
总结
无线开关为快速增长的智能产品控制需求提供了一种免维护的解决方案。然而,由于传统的无线设计需要电池才能运行,因而增加了设计成本和复杂性,且用户也不得不处理电池管理和更换事宜。ON Semiconductor 的参考设计在很大程度上解决了这些问题,这种设计利用能量收集技术,为超低功耗蓝牙 5.0 模块提供了所需的全部电能,能以无线方式向支持蓝牙的中枢或智能产品发送信号。
免责声明:各个作者和/或论坛参与者在本网站发表的观点、看法和意见不代表 DigiKey 的观点、看法和意见,也不代表 DigiKey 官方政策。