Valor de retorno do consumo atual de watt na linha de comando


Respostas:


22

No meu sistema, posso obter a energia consumida pela bateria de

cat /sys/class/power_supply/BAT0/power_now
9616000

Nos Thinkpads, se o tp_smapimódulo estiver carregado, o arquivo será

cat /sys/devices/platform/smapi/BAT0/power_now

O valor parece estar em µW, no entanto. Você pode convertê-lo com qualquer ferramenta com a qual se sinta confortável, por exemplo awk:

awk '{print $1*10^-6 " W"}' /sys/class/power_supply/BAT0/power_now
9.616 W

Caso não consiga encontrar o local no sistema de arquivos sysfs, é possível procurá-lo:

find /sys -type f -name power_now 2>/dev/null

Além disso, o pacote lm-sensorspode ser usado para determinar o uso de energia do sistema em algumas máquinas:

# sensors power_meter-acpi-0
power_meter-acpi-0
Adapter: ACPI interface
power1:      339.00 W  (interval =   1.00 s)

7

Meu laptop não possui nenhum desses (também não possui bateria atualmente), mas possui um dispositivo "powercap".
Parece que este dispositivo é capaz de definir restrições ao poder do usuário.

E (naturalmente) pode ler o poder extra para forçá-los.
O consumo de energia pode ser encontrado no energy_ujarquivo, ou seja:

cat /sys/class/powercap/*/energy_uj

Ele mostrará a palestra (ou palestras, se você tiver muitos dispositivos powercap) em micro-Joules. Na verdade, esse é um contador da energia consumida, portanto, é necessário dividi-lo por um delta de tempo para obter energia.

Esse é o poder consumido pelo meu laptop ou apenas uma parte dele? Eu não sei.


Bem, esses dispositivos são bastante comuns em computadores novos ... Em todos os meus testes, pelo menos um deles mostra um valor realista de consumo de energia com uma precisão muito boa. Eu deveria testar com um multímetro, no entanto.
Alba Mendez

Esta parece uma solução bastante agradável. De onde você tira o delta do tempo?
Freefri

@ Freefri você lê o valor, aguarde 1 segundo, leia o valor novamente. 1 segundo é o seu delta. (Energy_now-Energy_one_second_ago) / 1 segundo = joules consumidos por segundo (ou watts, 1 watt = 1 joule / 1 segundo)
GDR

6

Em um laptop, lendo os dados da ACPI de procfs ou sysfs. No meu sistema, os arquivos são:

/proc/acpi/battery/BAT0/state
/sys/bus/acpi/drivers/battery/PNP0C0A:00/power_supply/BAT0/power_now

Observe que o sysfs está fortemente vinculado a links, portanto existem várias maneiras de acessar o arquivo. power_nowé o nome do arquivo que você está procurando.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.