Raspberry Pi Zero 2电池运行时间、优化和设置
如何使用电池运行 Raspberry Pi
要获得即插即用的体验,最简单的方法就是使用为手机充电的移动电源。它们是最简单的,因为一切都能正常工作;但它们也是最不可定制的。
如果您想要更多的定制解决方案,可以考虑使用 PowerBoost 1000 基本型 它允许您将电压从 1.8V 提升到 1.8V,这意味着您可以使用 2 节镍氢电池或一节锂电池为 Raspberry Pi Zero 2 W 供电。
使用 Pi Zero 2 电池供电的应用示例
在电池上使用 Raspberry Pi Zero 2 对以下应用很有意义、
- 复古游戏模拟:Retroflag GPi 机箱或 定制的 7 英寸屏幕
- 远离电源插座的物联网/自动化设备(天气传感器、污染探测器、动物摄像头、植物浇灌设备、宠物喂食器)
- 电子纸显示屏:数字名牌、股票代码、待办事项列表
如何记录正常运行时间
要记录正常运行时间,应安装以下软件包 适当的时候.
打开终端并运行:
sudo apt-get install uptimed
安装完成后,您需要通过运行来启动和运行服务:
systemctl enable uptimed
则
systemctl start uptimed
由于我们正试图确定电池的运行时间,因此必须确保 uptimed 的配置文件允许比默认时间更短的日志记录时间间隔。
默认情况下,uptimed 只每小时向日志写入一次,不会记录任何短于一小时的记录。
要更改这一点,需要修改配置文件。默认情况下
在终端运行
sudo nano /etc/uptimed.conf
更改以下变量
update_interval=60
log_minimum_uptimed = 60
默认情况下,这两个变量都设置为一小时(3600 秒或 1 小时)。如果将它们设置为 60 秒,我们就可以记录电池的运行时间,精确到分钟。
空闲运行时间
运行时间30 小时 12 分钟
我在 Raspberry Pi Zero 2W 上运行了一个 5000mA 的蓄电池,没有安装任何附件,也没有运行 Raspberry Pi OS (2021-10-31)。一切正常。
这代表了默认 Raspberry Pi Zero 2 W 的最佳电池续航时间。
压力运行时间
实际上,你很可能会在 GPIO 上安装 HDMI 或其他附件。因此,接下来的测试将是找出最坏情况的更好方法。
播放时间:6 小时 54 分钟
为了进行压力测试,我运行了命令
stress-ng –cpu 4 –cpu-method fft
使用了 -cpu-method fft 和 -cpu 4 基于 Raspberry Pi 论坛的结论发现它是负载较高的国家之一
执行该命令后,我立即发现 CPU 使用率飙升至 100%。
优化
您可以关闭 Raspberry Pi Zero 2 W 的各种组件,进一步降低功耗。
以下是您可以启用的节电功能:
关闭 LED:5mA1
关闭 WiFi: 11mA-187mA2
使用传统驱动程序 + 禁用 HDMI:21 毫安 + 17 毫安 2
关闭 LED
关闭 LED 可以节省 5mA 电流。具体方法如下。
如果只想运行一次,则需要在终端中运行此命令:
echo none | sudo tee /sys/class/leds/led0/trigger
但是,如果您想在重启时永久关闭 LED 指示灯,请打开终端并输入
sudo crontab -e
进入文件后,一路滚动到底部,输入这几行:
@reboot echo none | sudo tee /sys/class/leds/led0/trigger &
下次重启后,Pi Zero 2 W 的绿色 LED 灯将一直亮着,直到启动操作系统,然后熄灭。
关闭 WiFi
同样,你也可以通过运行以下命令永久关闭 WiFi
sudo rfkill block wifi
要使该命令在重启时运行,请打开终端并键入
sudo crontab -e
滚动到底部,输入这一行
@reboot sudo rfkill block wifi &
重新启动后,你应该会看到 WiFi 在启动时被禁用。
使用传统驱动程序 + 禁用 HDMI
如果您制作的是电池供电的设备,那么不使用监视器的可能性要大得多。
或者您打算在无头模式下运行 Raspberry Pi Zero 2 W。这也是禁用 HDMI 的另一个原因。
与此矛盾的是,为了禁用 HDMI 以便通过 SSH 控制 Pi Zero 2,我不得不启用 WiFi,从而导致耗电。所以,选择你的战斗吧。
启用传统 GL 驱动程序
在禁用 HDMI 之前,您需要使用传统图形驱动程序。
打开终端并运行
sudo raspi-config
然后,去到 高级选项 -> GL 驱动程序 -> 传统
现在,您可以运行命令禁用 HDMI:
sudo nano /etc/rc.local
在 "退出 0 "行的上方,输入 /usr/bin/tvservice -o
要重新启用 HDMI,只需删除这一行即可。我是通过 SSH 实现的。
禁用内核
虽然上述所有技巧都能降低空闲功耗,但您也可以通过禁用内核来限制最大功耗。
为此,您需要打开终端并输入
sudo nano /boot/cmdline.txt
键入 maxcpus=1 在第一行,然后按 CTRL + X 保存文件,再按 Y 保存。
然后,重新启动。
重启后,您可以通过运行 lscpu 在终端。
如果看到 "离线 CPU 列表:1-3",则说明运行成功,只使用了一个内核。
如果您想进一步了解 Raspberry Pi Zero 2 的功能,请查阅 本条.