我已经在 Android 1.6 手机上实现了一个路由协议(protocol),该手机使用无线(ad-hoc)网络来交换消息。现在我想从能量消耗的角度来评估它,基础是尝试计算传输单个数据包所浪费的能量,有人知道该怎么做吗?欢迎使用软件/硬件解决方案!
最佳答案
我不相信任何应用程序会给您任何形式的有意义的结果。您确实需要考虑硬件解决方案,而且它可能需要自制。
我用于手机功率测量的设置包括以下内容:
- 稳压电源:应该能够提供至少 3 安培的电流。
- 采样电流表。您可能需要自己设计这个,使用一个小值精密电阻和一个 ADC 来测量电阻上的电压降(这将为您提供电流)
- ADC 可以是专有的采集卡 - 这些可以很容易地从 RS 等来源获得,具体取决于您所在的位置。对于此应用程序,它可能需要大约 1kHz 的采样率。
- 用于从 ADC 捕获数据的软件。 National Instruments LabView 最常用于此类应用。大多数像样的采集卡都支持 LabView,尽管您可以使用任何您喜欢的东西。他们几乎都有 C API。
- 一个虚拟电池,使此配置能够连接到手机。最简单的方法通常是丢弃真正的电池(小心,如果是锂 ionic 电池!)。
当您设计系统时,请记住,对于 6 伏或 9 伏电源,小阻值电阻器上的压降非常小,因此您的 ADC 需要非常灵敏才能获得有意义的结果。
一旦你拥有了所有这些,你将能够观察设备电流随时间的变化。你会发现这比你想象的要多得多。电话将一直打开和关闭各种电路。特别是,当访问蜂窝网络时,您会看到相当大的功率峰值。
经过一些调查,您将能够看到 WiFi 何时启动,尤其是传输突发。
祝你好运。
关于android - 如何计算使用 wifi 的 Android 手机的功耗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2960319/