4. 测量工具与设备

TinyML 设备的核心特征是“永远在线、偶尔计算”,其功耗往往在微安级(睡眠)到毫安级(推理)之间动态跳变。要准确评估推理电流、睡眠电流与平均能耗,测量工具的选择直接决定了数据的可信度。本章将系统对比万用表、示波器、电流探头与专用功耗分析仪(Joulescope、Nordic PPK)的工作原理、适用场景与操作要点,帮助你在实验室调试、产线抽检和现场部署中做出合理的工具选型。

TinyML 功耗测量工具选型与使用场景 万用表 直流平均电流 μA~mA 量程 采样率低 适合静态/睡眠 成本低、易上手 示波器+电流探头 实时波形 带宽 50MHz+ mA~A 量程 适合瞬态/事件 需注意插入阻抗 Joulescope nA~A 宽动态 1MHz 采样 自动量程切换 能量/功率积分 USB 供电分析 Nordic PPK II nRF 系列专用 200kHz 采样 数字I/O同步 功耗事件标记 配套 nRF Connect 选型决策路径 ① 静态/睡眠电流 → 万用表(高精度模式) ② 推理瞬态波形 → 示波器+电流探头(高带宽) ③ 动态范围大且需能量积分 → Joulescope ④ nRF 平台开发调试 → Nordic PPK II 测量链路关键点 DUT 供电端 测量工具接入 数据采集 功耗分析 优化迭代

4.1 万用表:静态电流测量的基础工具

万用表(数字万用表,DMM)是功耗测量中最普及的工具,其核心优势在于高精度直流电流测量和极低的使用门槛。对于 TinyML 设备,万用表主要用于测量睡眠电流、待机电流和稳定状态下的推理平均电流。典型场景包括:验证设备在深度睡眠模式下的电流是否符合数据手册标称值(如 nRF52840 的 1.5μA 睡眠电流),或者测量推理过程中 10 秒内的平均电流。

操作流程:

  1. 量程选择:先使用自动量程模式粗测,再切换到手动量程以获得最佳分辨率。例如,测量 2μA 睡眠电流时,应选择 200μA 量程(分辨率 0.1μA),而非 10A 量程。
  2. 串联接入:将万用表串联在电源与 DUT(被测设备)之间,确保电流从红表笔流入、黑表笔流出。注意:测量电流时严禁将表笔并联在电源两端,否则会短路。
  3. 积分时间设置:对于波动较小的电流,设置较长的积分时间(如 100ms)以抑制噪声;对于缓慢变化的电流,可采用“最小/最大”记录模式捕捉峰值。
  4. 记录与计算:记录稳定读数后,结合工作电压计算功耗(P = V × I)。例如,3.3V 供电下测得 5.2μA 睡眠电流,则睡眠功耗为 17.2μW。
风险提示:万用表的电流测量回路存在串联电阻(通常为 0.1Ω~10Ω 取决于量程),在低电压供电(如 1.8V)的 TinyML 设备上,该压降可能导致设备无法正常启动或测量值偏低。建议使用 4 线制(开尔文)测量或选择低阻抗电流量程。

万用表的局限性在于其采样率极低(通常 1~10 次/秒),无法捕捉推理过程中毫秒级的电流脉冲。例如,一次 50ms 的推理事件中,电流从 5μA 跳变到 15mA 再回落,万用表只能显示一个模糊的平均值,无法反映真实的瞬态行为。因此,万用表适合作为“静态基线”测量工具,而非动态功耗分析工具。

4.2 示波器与电流探头:捕捉推理瞬态波形

当需要观察推理过程中电流的实时变化——例如 MCU 唤醒、传感器采样、DSP 计算、无线传输等不同阶段的电流波形时,示波器配合电流探头是首选方案。其核心价值在于高时间分辨率(ns 级)和同步触发能力,可以精确关联代码执行事件与电流变化。

电流探头选型要点:

探头类型 带宽 最小可测电流 插入阻抗 适用场景
交流/直流电流探头(如 TCP0030A) DC~120MHz 1mA 极低(<0.1Ω) 大电流瞬态、无线发射
高灵敏度探头(如 CX1101A) DC~100MHz 1μA 可忽略 睡眠电流与推理电流混合场景
电流互感器(CT) 仅交流 10mA 极低 仅用于交流分量,不适合直流

测量配置步骤:

  1. 将电流探头夹在 DUT 的电源线上,注意方向标记(电流流向应与箭头一致)。
  2. 设置示波器触发模式:使用“上升沿触发”捕捉推理启动瞬间,或使用“脉宽触发”捕捉特定长度的电流脉冲。
  3. 调整垂直刻度:先使用较粗的刻度(如 50mA/div)定位信号,再逐步缩小到 5mA/div 以观察细节。
  4. 开启“高分辨率采集”模式(Hi-Res)或“平均”模式,降低噪声干扰。
实战案例:某语音唤醒设备在推理时电流波形显示:唤醒脉冲 3ms(8mA)、特征提取 12ms(12mA)、分类器推理 25ms(20mA)、无线输出 5ms(35mA)。通过示波器波形积分,计算出单次推理总电荷为 0.85mC,结合 3.3V 电压得到单次推理能耗 2.8mJ。这一数据直接用于电池寿命估算:200mAh 电池可用次数 = 200mAh × 3.6C/mAh ÷ 0.85mC ≈ 847,000 次。

示波器方案的短板在于动态范围不足:当睡眠电流为 5μA 而推理电流为 20mA 时,两者相差 4000 倍,单次采集难以同时精确显示两个量级。此时需要手动切换探头量程或使用分段采集,操作繁琐且容易遗漏关键数据。

4.3 专用功耗分析仪:Joulescope 与 Nordic PPK 的深度对比

专用功耗分析仪专为嵌入式设备的宽动态范围功耗测量而设计,解决了万用表采样率低和示波器动态范围不足的核心矛盾。目前 TinyML 领域最常用的两款工具是 Joulescope 和 Nordic Power Profiler Kit II(PPK II)。

Joulescope 核心特性:

  • 宽动态范围:从 1nA 到 1A 自动量程切换,无需手动干预,可同时捕捉睡眠电流和推理峰值电流。
  • 高采样率:1MHz 采样率,能够分辨微秒级的电流变化,适合分析无线传输的瞬态脉冲。
  • 能量积分功能:硬件级实时计算功率和能量,直接输出“单次推理能耗”或“平均功耗”等指标。
  • USB 供电与数据回传:通过 USB 连接 PC,使用 Joulescope UI 软件进行波形显示、数据记录和导出。

Nordic PPK II 核心特性:

  • nRF 系列深度集成:与 nRF Connect SDK 无缝对接,可自动关联代码中的功耗事件(如进入睡眠、开始传输)。
  • 数字 I/O 同步:提供 8 路数字输入,可同时监测 GPIO 状态,实现“电流波形 + 逻辑分析”的同步观测。
  • 200kHz 采样率:对于 BLE 广播、Zigbee 事件等毫秒级功耗分析足够,但不如 Joulescope 精细。
  • 低成本与便携性:价格约为 Joulescope 的 1/3,适合开发板级调试。
对比维度 Joulescope Nordic PPK II
动态范围 1nA ~ 1A(自动量程) 200nA ~ 1A(手动/自动)
采样率 1MHz 200kHz
能量积分 硬件级实时积分 软件积分(需后处理)
平台兼容性 任意 MCU/SoC 主要针对 nRF 系列
数字 I/O 同步 不支持 8 通道
典型价格 约 $500 约 $150

选型建议:如果你的项目使用 nRF 系列芯片且需要快速定位代码功耗瓶颈,PPK II 是性价比最高的选择;如果涉及多平台(如 STM32、ESP32、RP2040)或需要高精度能量积分数据用于电池寿命建模,Joulescope 更合适。

4.4 工具链组合策略与常见误区

在实际 TinyML 功耗测试中,单一工具往往无法覆盖所有需求。推荐的组合策略是:万用表做静态基线验证 → 示波器+电流探头做瞬态波形分析 → 专用功耗分析仪做全流程能量统计。三者形成互补,覆盖从“静态电流”到“动态能量”的完整测量维度。

典型测量流程:

  1. 使用万用表测量设备在深度睡眠、浅睡眠、空闲三种状态下的稳定电流,记录基线数据。
  2. 使用示波器+电流探头触发一次完整的“唤醒→推理→传输→睡眠”循环,观察各阶段电流波形和时序。
  3. 使用 Joulescope 或 PPK II 连续记录 100 次推理循环,统计平均能耗、峰值电流、P99 延迟等统计指标。
  4. 将测量数据导出,结合代码执行时间戳,定位功耗异常点(如外设未关闭、DMA 泄漏电流等)。
常见误区:
  • 误区一:用万用表测量推理平均电流来估算电池寿命。由于推理电流波动剧烈,万用表读数可能偏差 30% 以上,应使用能量积分数据。
  • 误区二:忽略测量工具的插入压降。在 1.8V 供电系统中,10Ω 串联电阻会导致 5% 的电压降,直接影响 MCU 的工作频率和电流特性。
  • 误区三:只测电流不测电压。功耗 = 电压 × 电流,电池放电过程中电压会下降,应同时记录电压波形。
  • 误区四:采样率不足导致漏掉关键瞬态。例如 BLE 广播的 2μs 脉冲,若采样率低于 500kHz,峰值电流会被严重低估。

案例复盘:某团队在开发智能门锁时,使用万用表测得待机电流为 12μA,据此估算电池寿命为 2 年。但实际部署后仅 3 个月电池耗尽。后续使用 Joulescope 测量发现:虽然待机电流确实为 12μA,但每次开锁时有一个 200ms 的 80mA 电流脉冲(用于驱动电机),每天开锁 20 次,这部分能耗占总能耗的 85%。通过优化电机驱动策略(降低 PWM 频率)和增加电容储能,将单次开锁能耗从 16mJ 降至 6mJ,电池寿命恢复到 1.5 年。这一案例说明:平均电流法会掩盖高功耗短脉冲的影响,必须使用具备能量积分能力的工具进行全周期统计。

最后,无论选择哪种工具,都应建立标准化的测量环境:使用稳定的直流电源(如电池或高精度电源),保持环境温度恒定(25°C ± 2°C),并记录测量工具的校准日期。只有保证测量链路的一致性和可重复性,不同时间、不同工程师的测试数据才具有可比性,也才能为 TinyML 设备的功耗优化提供可靠的数据基础。