Tempos de funcionamento da bateria do Raspberry Pi Zero 2, otimização e configuração

Como fazer funcionar um Raspberry Pi com uma bateria

A forma mais fácil de ter uma experiência plug-and-play é utilizá-lo com um powerbank feito para recarregar telemóveis. São os mais fáceis porque tudo funciona, mas também são os menos personalizáveis.

Se pretender uma solução mais personalizável, considere obter a PowerBoost 1000 Básico que lhe permitirá aumentar as tensões a partir de 1,8 V, o que significa que pode utilizar duas pilhas NiMH ou uma pilha de lítio para alimentar o seu Raspberry Pi Zero 2 W.

Exemplos de aplicações alimentadas por bateria com o Pi Zero 2

A utilização do Raspberry Pi Zero 2 numa bateria faz sentido para aplicações como,

  • Emulação de jogos retro: Caixa Retroflag GPi ou uma construção personalizada com um ecrã de 7 polegadas
  • Dispositivos IoT/automação que estão longe de uma tomada eléctrica (sensor meteorológico, detetor de poluição, câmaras para animais, dispositivos de rega de plantas, alimentadores para animais de estimação)
  • Ecrãs de ePaper: etiquetas de nome digitais, cotações de acções, listas de tarefas

Como registar o tempo de atividade

pi zero 2 com conjunto de baterias

Para registar o seu tempo de atividade, deve instalar o pacote oportuna.

Abra um Terminal e execute:

sudo apt-get install uptimed

Após a instalação, é necessário iniciar e executar o serviço através da execução:

systemctl enable uptimed

depois

systemctl start uptimed

Uma vez que estamos a tentar estabelecer o tempo de funcionamento da bateria que podemos esperar, é importante garantir que os ficheiros de configuração do uptimed permitem intervalos de registo muito mais curtos do que o padrão.

Por predefinição, o uptimed só escreve nos registos de hora a hora e não regista quaisquer registos com menos de uma hora.

Para alterar isto, é necessário alterar o ficheiro de configuração. Por defeito

No Terminal, execute:

sudo nano /etc/uptimed.conf

Alterar as seguintes variáveis:

ACTUALIZAÇÃO_INTERVALO=60

LOG_MINIMUM_UPTIMED = 60

Por defeito, ambas as variáveis estão definidas para uma hora (3600 segundos ou 1h). Ao defini-las para 60 segundos, podemos registar o tempo de funcionamento da bateria até ao minuto.

Tempo de execução inativo

Duração: 30 horas e 12 minutos

Coloquei um banco de potência de 5000mA no Raspberry Pi Zero 2W sem acessórios e no Raspberry Pi OS (2021-10-31). Tudo está predefinido.

Isto representa a melhor duração de bateria que se pode obter de um Raspberry Pi Zero 2 W por defeito.

Tempo de execução do stress

Na realidade, é provável que tenha certas ligações, como HDMI ou algo no GPIO. Por isso, o próximo teste será uma forma melhor de descobrir qual é o pior cenário possível.

Duração: 6 horas e 54 minutos

Para efetuar um teste de esforço, executei o comando

stress-ngcpu 4cpu-method fft

Foram utilizados os métodos -cpu-method fft e -cpu 4 com base numa conclusão do fórum Raspberry Pique constatou que o seu consumo era um dos mais elevados

Notei imediatamente que a utilização da CPU subiu para 100% ao executar este comando.

Optimizações

Pode reduzir ainda mais o consumo de energia desligando vários componentes do Raspberry Pi Zero 2 W.

Eis as poupanças de energia que pode ativar:

Desligar o LED: 5mA1

Desligar o WiFi: 11mA-187mA2

Utilizar controladores antigos + desativar HDMI: 21mA + 17mA 2

Desligar o LED

raspberry pi zero 2 led wifi
Antes de

Pode poupar 5mA desligando o LED. Eis como.

Se quiser executá-lo apenas uma vez, tem de executar este comando no terminal:

echo none | sudo tee /sys/class/leds/led0/trigger

No entanto, se quiser que o LED seja permanentemente desligado na reinicialização, abra o terminal e digite

sudo crontab -e

Quando estiver no ficheiro, desloque-se até ao fim e escreva estas linhas:

@reboot echo none | sudo tee /sys/class/leds/led0/trigger &

Após a próxima e subsequentes reinicializações, o LED verde do seu Pi Zero 2 W permanecerá aceso até que ele inicialize o sistema operacional, e então ele será desligado.

Desligar o WiFi

Da mesma forma, pode desativar permanentemente o WiFi executando o comando

sudo rfkill block wifi

Para que este comando seja executado na reinicialização, abra o terminal e digite

sudo crontab -e

Desloque-se para a parte inferior e escreva esta linha

@reboot sudo rfkill block wifi &

Depois de reiniciar, deverá ver que o WiFi está desativado no arranque.

raspberry pi zero 2 desativar wifi e led desligado
Depois de

Utilizar controladores antigos + desativar HDMI

Se construiu um dispositivo alimentado por bateria, é muito mais provável que não esteja a utilizar um monitor.

Ou talvez planeie utilizar o seu Raspberry Pi Zero 2 W em modo headless. Essa é também outra razão para desativar o HDMI.

O que é contraditório aqui é que tive de ativar o WiFi, incorrendo assim em consumo de energia, para desativar o HDMI de modo a poder controlar o meu Pi Zero 2 via SSH. Portanto, escolham as vossas batalhas.

Ativar controladores GL antigos

Antes de desativar o HDMI, terá de utilizar o controlador de gráficos antigo. 

Abra um terminal e execute:

sudo raspi-config

Então, vá para Opções avançadas -> Driver GL -> Legado

Agora que isto está feito, pode ir em frente e desativar o seu HDMI executando o comando:

sudo nano /etc/rc.local

Logo acima da linha "exit 0", digite /usr/bin/tvservice -o

Para voltar a ativar o HDMI, basta eliminar esta linha. Fi-lo através de SSH.

Desativar núcleos

Embora todas as sugestões acima reduzam o consumo de energia em inatividade, também é possível limitar o consumo máximo de energia desactivando núcleos.

Para o fazer, é necessário abrir um terminal e escrever:

sudo nano /boot/cmdline.txt

Digite maxcpus=1 na primeira linha e guardar o ficheiro premindo CTRL + X e guardando-o premindo Y.

Depois, reinicie.

Após a reinicialização, pode verificar se a sua modificação funcionou executando lscpu no terminal.

Se vires "Lista de CPU(s) off-line: 1-3", então funcionou e está a funcionar com um núcleo.

desativar núcleos raspberry pi zero 2 w

Se quiser saber mais sobre o que pode fazer com o seu Raspberry Pi Zero 2, consulte este artigo.

Deixe um comentário