适用于:树莓派 3/4/5、NanoPi(NEO/R2S/R4S/R5S)、Orange Pi、Radxa、Libre Computer 等
🔥 1. 如何查看温度(通用方法)
✔️ 方法 1:读取 /sys/class/thermal/
— 所有 Linux SBC 都支持
# 显示所有温区
for zone in /sys/class/thermal/thermal_zone*; do
echo "$(cat $zone/type): $(($(cat $zone/temp)/1000))°C"
done
示例输出:
cpu-thermal: 56°C
gpu-thermal: 52°C
soc: 54°C
✔️ 方法 2:使用 sensors
命令(如已安装)
sudo apt update && sudo apt install lm-sensors -y
sensors
⚠️ 并非所有传感器都会显示 — 取决于内核和硬件监控支持。
✔️ 方法 3:树莓派专用命令
# 内置温度查询
vcgencmd measure_temp
# 输出示例:temp=56.2'C
✔️ 小技巧:创建通用别名
echo 'alias sbctemp="for z in /sys/class/thermal/thermal_zone*; do echo \"\$(cat \$z/type): \$(($(cat \$z/temp)/1000))°C\"; done"' >> ~/.bashrc
source ~/.bashrc
sbctemp
📊 2. 解读 sensors
输出 — 通用说明
您的 树莓派 5 输出示例:
rp1_adc-isa-0000
Adapter: ISA adapter
in1: 1.48 V
in2: 2.42 V
in3: 1.29 V
in4: 1.31 V
temp1: +50.8°C
cpu_thermal-virtual-0
Adapter: Virtual device
temp1: +56.2°C
rpi_volt-isa-0000
Adapter: ISA adapter
in0: N/A ALARM (LCRIT)
pwmfan-isa-0000
Adapter: ISA adapter
fan1: 21 RPM
🔍 各字段含义:
传感器 / 字段 | 含义 | 说明 |
---|---|---|
rp1_adc → temp1 |
RP1 芯片温度(靠近 USB/PCIe) | 非主 CPU 温度 |
cpu_thermal |
主 CPU 温度(最重要指标) | 关注此项即可 |
rpi_volt → in0: N/A ALARM |
严重警告 — 输入电压异常或曾发生欠压 | 见第 4 节 |
pwmfan → fan1 |
风扇转速(如使用风扇 HAT 或主动散热) | 21 RPM = 风扇未启动或极慢 |
📌 “ISA adapter” 或 “Virtual device” 是
lm-sensors
的标准标签,并不代表真实 ISA 总线设备,仅表示传感器集成在 SoC 内部或直接访问。
🌡️ 3. 安全温度范围 — 通用 SBC 指南
组件 | 空闲安全温度 | 负载安全温度 | 开始降频温度 | 危险关机温度 |
---|---|---|---|---|
CPU | < 50°C | < 70°C | ~80°C | 85°C–100°C+ |
GPU(如有) | < 55°C | < 75°C | ~80°C | 85°C–100°C+ |
SoC/整芯片 | < 55°C | < 75°C | ~80°C | 85°C–100°C+ |
NPU(如有) | < 60°C | < 80°C | ~90°C | 100°C–115°C |
✅ 您的树莓派 5 当前 56.2°C 属于正常范围,即使中等负载也完全安全。
🚨 若温度 > 80°C → 请检查散热(散热片/风扇)、环境温度或机箱通风。
⚡ 4. 电压监测 — 系统稳定关键
✔️ 关键观察点:
- 主输入电压 — 通常标记为
in0
、VIN
或VDD_5V
- 应保持 空闲 ≥ 4.90V,负载 ≥ 4.75V
- ALARM (LCRIT) = 检测到欠压 — 严重问题!
❗ 树莓派 5 示例:
rpi_volt-isa-0000
in0: N/A ALARM (LCRIT)
➡️ 表示:
- 电压传感器读取失败(可能是驱动/内核问题)
- 或 最近发生过欠压事件,警报尚未清除
- 使用以下命令进一步诊断:
# 树莓派专用:检查是否发生过降频或欠压 vcgencmd get_throttled
示例:
$ vcgencmd get_throttled
throttled=0x50000
➡️ 若返回值非 0x0,请查阅官方文档:https://www.raspberrypi.com/documentation/computers/os.html#get_throttled
常见标志位:
0x50000
= 当前欠压 + 当前降频0x50005
= 曾经和当前都发生过欠压/降频
✔️ 负载下测试电压
sudo apt install stress -y
watch -n 1 'sensors | grep in; vcgencmd get_throttled'
# 在另一个终端运行:
stress --cpu 4 --timeout 30s
🔌 5. 电源适配器推荐 — 通用 SBC
板型 | 最低电源要求 | 推荐电源 | 线缆要求 |
---|---|---|---|
树莓派 4/5 | 5V/3A USB-C | 5V/5A PD(官方) | e-marker 5A USB-C 线 |
NanoPi R5S/R6S | 5V/4A | 5V/5A+ | 短而粗的 5A 线缆 |
Orange Pi 5 | 5V/4A | 5V/5A PD | e-marker USB-C 线 |
大多数 ARM SBC | 5V/3A | 5V/5A | 避免长/细线缆 |
✅ 务必使用墙壁插座电源适配器 — 切勿使用电脑 USB 口供电。
✅ 避免使用 USB 集线器或延长线。
🛠️ 6. 散热与风扇建议
- 被动散热片:轻负载适用
- 主动风扇:推荐用于持续高负载、密闭机箱或高温环境
- 风扇转速 (
fan1: 21 RPM
) — 若接近零,请检查:- 风扇接线/供电
- PWM 控制(可能需要 dtoverlay 或风扇服务)
在 树莓派 5 上启用风扇控制(编辑 /boot/firmware/config.txt
):
# 启用 POE 风扇
dtoverlay=rp5-poe-fan
# 或通用 PWM 风扇
dtoverlay=pwm-fan
📈 7. 专业监控脚本(通用版)
🔄 实时监控(温度 + 电压 + 降频状态)
watch -n 2 '
echo "=== SBC 健康状态 ===";
[[ -x $(which sensors) ]] && sensors | grep -E "(temp|in|RPM)" | grep -v Adapter;
[[ -f /sys/class/thermal/thermal_zone0/temp ]] && echo "CPU: $(($(cat /sys/class/thermal/thermal_zone0/temp)/1000))°C";
[[ -x $(which vcgencmd) ]] && vcgencmd get_throttled;
echo "=== 警告阈值:>80°C | 电压<4.75V ==="
'
📝 记录日志
mkdir -p ~/logs
while true; do
echo "$(date): $(sbctemp 2>/dev/null | grep cpu || echo "N/A"), $(sensors 2>/dev/null | grep in0 || echo "Vin: N/A")" >> ~/logs/sbc_health.log
sleep 10
done
✅ 8. SBC 健康状态最终检查清单
- [ ] CPU 温度负载下 < 70°C(理想 < 60°C)
- [ ]
sensors
输出中无 “ALARM” - [ ]
vcgencmd get_throttled
返回0x0
(树莓派),或其他平台检查dmesg
是否有降频记录 - [ ] 负载下输入电压 ≥ 4.75V
- [ ] 使用优质电源 + 线缆
- [ ] 散热良好(散热片/风扇/机箱通风)
- [ ] 如安装风扇,转速应 > 500 RPM
🧩 9. 不同开发板注意事项
开发板 | 主要温度传感器 | 主要电压传感器 | 特别说明 |
---|---|---|---|
树莓派 5 | cpu_thermal |
rpi_volt in0 |
使用 vcgencmd ;ALARM = 欠压 |
NanoPi R5S | bigcore_thermal |
simple_vin in0 |
多核心/NPU 温度分区 |
Orange Pi 5 | soc_thermal |
axp2101 in0 |
常用 AXP 电源管理芯片 |
通用 ARM 板 | thermal_zone0 |
in0 或 VDD_5V |
若 sensors 无输出,可查 /sys/class/hwmon/ |
📌 建议保存此指南作为您的通用 SBC 健康检查手册!
无论您使用的是 树莓派、NanoPi、Orange Pi 或其他 Linux 单板机,本指南都能帮助您有效监控、理解和维护最佳的温度与电源状态。
让您的 SBC 保持凉爽、电力充足、稳定运行!😊🐧🔌