我想测量ESP8266-01的功耗。为此,我将万用表与 ESP8266 串联以测量电流,但随后 ESP8266 没有通电,万用表显示为零。
无法测量 ESP8266 模块的功耗
物联网
ESP8266
能量消耗
2021-06-11 13:40:36
1个回答
这实际上是一个电气工程问题,而不是一个物联网问题。
您所发现的与“负载电压”问题有关。本质上,现代电表不直接读取电流,而是在电路中放置一个分流电阻器(即,您正确串联电表),然后测量其两端的电压降。
挑战在于分流电阻器的选择 - 太小,低电流会导致压降,这可能不会达到预期的测量 ADC 计数,太大,并且为操作系统而消耗的电流可能会导致电压降过大足以使系统无法运行。
对于在不同时间消耗不同电量的东西,问题会变得更糟 - 例如,如果您的 MCU 以全时钟启动,然后进入睡眠状态,则可能很难通过仪表为其供电直到点睡眠,在可以测量微小睡眠电流的电流范围内。数字无线电系统也存在这个问题,因为无线电可以在短脉冲中吸收 10 倍或更多倍的基线电流。
- 尽管如此,还是值得在您的仪表上尝试不同的范围
- 如果您的仪表是自动量程的,您可以使用自己的分流电阻器,并在电压模式下操作仪表。
- 在某些情况下,您可能希望通过绕过仪表的夹线启动电路,然后一旦认为电路处于您想要测量的低功率模式,您就可以移除夹线。如果幸运的话,这可行,但最终可能会导致计时错误,或导致电压下降触发掉电检测器。
在脉冲系统中,无论如何随时间进行测量通常很有用。我使用选定的电阻器(根据需要,从 10-100 欧姆不等)作为分流器,并添加了一个电容器来调节变化,取得了一些不错的结果。然后可以在示波器上对其进行监控,以查看功耗如何随时间变化。
对于更正式的研究,我发现使用更大的分流电阻器修改的 INA219 I2C 高侧电流测量突破非常有用。它由一个 Arduino 管理,它以高速率读取它,并记录摘要信息 - 峰值电流、随时间变化的平均值,并在更短的时间内集成。然后,该串行测量流与所研究设备的调试输出合并,从而可以查看各种操作的“成本”。
在进行这些测量时,考虑串行通道和编程器等 I/O 接口可能贡献或窃取电流也很重要,因此在进行可靠测量之前,需要断开这些接口或评估它们的影响。
其它你可能感兴趣的问题