Puissance de l'appareil de mesure

Vous pouvez déterminer la consommation électrique des appareils Android dotés d'une jauge de charge de batterie, comme le Summit SMB347 ou le Maxim MAX17050 (disponible sur de nombreux appareils Nexus). Utilisez la jauge intégrée au système lorsque l'équipement de mesure externe n'est pas disponible ou qu'il est difficile de se connecter à un appareil (comme dans le cas d'une utilisation mobile).

Les mesures peuvent inclure le courant instantané, la charge restante, la capacité de la batterie au début et à la fin du test, et bien plus encore, en fonction des propriétés prises en charge par l'appareil (voir ci-dessous). Pour de meilleurs résultats, effectuez des mesures de puissance de l'appareil lors de tests A/B de longue durée qui utilisent le même type d'appareil avec la même jauge de carburant et la même résistance de détection de courant. Assurez-vous que la charge de démarrage de la batterie est la même pour chaque appareil afin d'éviter un comportement différent de la jauge de carburant à différents points de la courbe de décharge de la batterie.

Même avec des environnements de test identiques, il n’est pas garanti que les mesures soient d’une grande précision absolue. Cependant, la plupart des inexactitudes spécifiques à la jauge de carburant et à la résistance de détection sont cohérentes entre les tests, ce qui rend les comparaisons entre appareils identiques utiles. Nous vous recommandons d'exécuter plusieurs tests dans différentes configurations pour identifier les différences significatives et la consommation d'énergie relative entre les configurations.

Lecture de la consommation électrique

Pour lire les données de consommation d'énergie, insérez des appels à l'API dans votre code de test.

import android.os.BatteryManager;
import android.content.Context;
BatteryManager mBatteryManager =
(BatteryManager)Context.getSystemService(Context.BATTERY_SERVICE);
Long energy =
mBatteryManager.getLongProperty(BatteryManager.BATTERY_PROPERTY_ENERGY_COUNTER);
Slog.i(TAG, "Remaining energy = " + energy + "nWh");

Propriétés disponibles

Android prend en charge les propriétés suivantes de la jauge de charge de la batterie :

BATTERY_PROPERTY_CHARGE_COUNTER   Remaining battery capacity in microampere-hours
BATTERY_PROPERTY_CURRENT_NOW      Instantaneous battery current in microamperes
BATTERY_PROPERTY_CURRENT_AVERAGE  Average battery current in microamperes
BATTERY_PROPERTY_CAPACITY         Remaining battery capacity as an integer percentage
BATTERY_PROPERTY_ENERGY_COUNTER   Remaining energy in nanowatt-hours

La plupart des propriétés sont lues à partir des attributs du sous-système power_supply du noyau portant des noms similaires. Cependant, les propriétés exactes, la résolution des valeurs de propriété et la fréquence de mise à jour disponible pour un appareil spécifique dépendent de :

  • Matériel de jauge de carburant, tel qu'un Summit SMB347 ou un Maxim MAX17050.
  • Connexion de la jauge de carburant au système, telle que la valeur des résistances de détection de courant externes.
  • Configuration logicielle de la puce de jauge de carburant, telle que les valeurs choisies pour les intervalles de calcul du courant moyen dans le pilote du noyau.

Pour plus de détails, consultez les propriétés disponibles pour les appareils Nexus .

Jauge à essence Maxim

Lors de la détermination de l'état de charge de la batterie sur une longue période, la jauge de carburant Maxim (MAX17050, BC15) corrige les mesures de décalage du compteur coulomb. Pour les mesures effectuées sur une courte période (comme les tests de mesure de la consommation électrique), la jauge de carburant n'effectue aucune correction, ce qui fait du décalage la principale source d'erreur lorsque les mesures actuelles sont trop faibles (bien qu'aucun temps ne puisse éliminer le décalage). erreur complètement).

Pour une conception typique de résistance de détection de 10 mOhm, le courant de décalage doit être supérieur à 1,5 mA, ce qui signifie que toute mesure est de +/-1,5 mA (la disposition du PCB peut également affecter cette variation). Par exemple, lorsque vous mesurez un courant important (200 mA), vous pouvez vous attendre à ce qui suit :

  • 2 mA (erreur de gain de 1 % de 200 mA en raison d'une erreur de gain de la jauge de carburant)
  • +2 mA (erreur de gain de 1 % de 200 mA en raison d'une erreur de résistance de détection)
  • +1,5 mA (erreur de décalage de détection de courant de la jauge de carburant)

L'erreur totale est de 5,5 mA (2,75 %). Comparez cela à un courant moyen (50 mA) où les mêmes pourcentages d'erreur donnent une erreur totale de 7 % ou à un petit courant (15 mA) où +/-1,5 mA donne une erreur totale de 10 %.

Pour de meilleurs résultats, nous vous recommandons de mesurer une valeur supérieure à 20 mA. Les erreurs de mesure de gain sont systématiques et reproductibles, vous permettant de tester un appareil dans plusieurs modes et d'obtenir des mesures relatives nettes (à l'exception du décalage de 1,5 mA).

Pour les mesures relatives +/-100 uA, le temps de mesure requis dépend de :

  • Bruit d'échantillonnage ADC . Le MAX17050, avec sa configuration d'usine normale, produit une variation d'échantillon à échantillon de +/- 1,5 mA en raison du bruit, chaque échantillon étant délivré à 175,8 ms. Vous pouvez vous attendre à un bruit approximatif de +/-100 µA pour une fenêtre de test de 1 minute et à un bruit propre de 3 sigma inférieur à 100 µA (ou un bruit de 1 sigma à 33 µA) pour une fenêtre de test de 6 minutes.
  • Exemple d'alias en raison de la variation de charge . La variation exagère les erreurs, donc pour les échantillons présentant une variation inhérente au chargement, envisagez d'utiliser une fenêtre de test plus longue.

Appareils Nexus pris en charge

Nexus 5
Modèle Nexus 5
Jauge de carburant Jauge de carburant Maxim MAX17048 (ModelGauge™, sans compteur coulomb)
Propriétés BATTERY_PROPERTY_CAPACITY
Des mesures La jauge de carburant ne prend en charge aucune mesure autre que l'état de charge de la batterie avec une résolution de %/256 (1/256e de pour cent de la capacité totale de la batterie).
Nexus 6
Modèle Nexus 6
Jauge de carburant Jauge de carburant Maxim MAX17050 (un compteur coulomb avec réglages Maxim ModelGauge™) et une résistance de détection de courant de 10 mohms.
Propriétés BATTERY_PROPERTY_CAPACITY
BATTERY_PROPERTY_CURRENT_NOW
BATTERY_PROPERTY_CURRENT_AVERAGE
BATTERY_PROPERTY_CHARGE_COUNTER
BATTERY_PROPERTY_ENERGY_COUNTER
Des mesures Résolution CURRENT_NOW 156,25uA, période de mise à jour est de 175,8 ms.
Résolution CURRENT_AVERAGE 156,25uA, période de mise à jour configurable de 0,7 s à 6,4 h, par défaut 11,25 s.
La résolution de CHARGE_COUNTER (courant accumulé, précision non étendue) est de 500 uAh (lecture du compteur coulomb brut, non ajustée par la jauge de carburant pour le décalage du compteur coulomb, plus les entrées de l'algorithme ModelGauge m3, y compris la compensation à vide).
CHARGE_COUNTER_EXT (précision étendue dans le noyau) résolution 8nAh.
ENERGY_COUNTER est CHARGE_COUNTER_EXT à une tension nominale de 3,7 V.
Nexus 9
Modèle Nexus 9
Jauge de carburant Jauge de carburant Maxim MAX17050 (un compteur coulomb avec réglages Maxim ModelGauge™) et une résistance de détection de courant de 10 mohms.
Propriétés BATTERY_PROPERTY_CAPACITY
BATTERY_PROPERTY_CURRENT_NOW
BATTERY_PROPERTY_CURRENT_AVERAGE
BATTERY_PROPERTY_CHARGE_COUNTER
BATTERY_PROPERTY_ENERGY_COUNTER
Des mesures Résolution CURRENT_NOW 156,25uA, période de mise à jour est de 175,8 ms.
Résolution CURRENT_AVERAGE 156,25uA, période de mise à jour configurable de 0,7 s à 6,4 h, par défaut 11,25 s.
La résolution CHARGE_COUNTER (courant accumulé, précision non étendue) est de 500 uAh.
CHARGE_COUNTER_EXT (précision étendue dans le noyau) résolution 8nAh.
ENERGY_COUNTER est CHARGE_COUNTER_EXT à une tension nominale de 3,7 V.
Période de mise à jour actuelle accumulée 175,8 ms.
ADC échantillonné à une quantification de 175 ms avec une période d'échantillonnage de 4 ms. Peut ajuster le cycle de service.
Nexus 10
Modèle Nexus 10
Jauge de carburant Jauge de carburant Dallas Semiconductor DS2784 (un compteur coulomb), avec une résistance de détection de courant de 10 mohms.
Propriétés BATTERY_PROPERTY_CAPACITY
BATTERY_PROPERTY_CURRENT_NOW
BATTERY_PROPERTY_CURRENT_AVERAGE
BATTERY_PROPERTY_CHARGE_COUNTER
BATTERY_PROPERTY_ENERGY_COUNTER
Des mesures La résolution de la mesure du courant (instantané et moyen) est de 156,3 uA.
La période de mise à jour actuelle instantanée CURRENT_NOW est de 3,5 secondes.
La période de mise à jour CURRENT_AVERAGE est de 28 secondes (non configurable).
La résolution CHARGE_COUNTER (courant accumulé, précision non étendue) est de 625 uAh.
La résolution CHARGE_COUNTER_EXT (précision étendue dans le noyau) est de 144 nAh.
ENERGY_COUNTER est CHARGE_COUNTER_EXT à une tension nominale de 3,7 V.
La période de mise à jour pour tous est de 3,5 secondes.