|
通用 SBC 温度与电压健康检查 — 快速参考指南

通用 SBC 温度与电压健康检查 — 快速参考指南

**

适用于:树莓派 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 → temp1RP1 芯片温度(靠近 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°C85°C–100°C+
GPU(如有)< 55°C< 75°C~80°C85°C–100°C+
SoC/整芯片< 55°C< 75°C~80°C85°C–100°C+
NPU(如有)< 60°C< 80°C~90°C100°C–115°C

✅ 您的树莓派 5 当前 56.2°C 属于正常范围**,即使中等负载也完全安全。 🚨 若温度 > 80°C → 请检查散热(散热片/风扇)、环境温度或机箱通风。


⚡ 4. 电压监测 — 系统稳定关键

✔️ 关键观察点:

  • 主输入电压 — 通常标记为 in0VINVDD_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/55V/3A USB-C5V/5A PD(官方)e-marker 5A USB-C 线
NanoPi R5S/R6S5V/4A5V/5A+短而粗的 5A 线缆
Orange Pi 55V/4A5V/5A PDe-marker USB-C 线
大多数 ARM SBC5V/3A5V/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 | 电压/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. 不同开发板注意事项

开发板主要温度传感器主要电压传感器特别说明
树莓派 5cpu_thermalrpi_volt in0使用 vcgencmd;ALARM = 欠压
NanoPi R5Sbigcore_thermalsimple_vin in0多核心/NPU 温度分区
Orange Pi 5soc_thermalaxp2101 in0常用 AXP 电源管理芯片
通用 ARM 板thermal_zone0in0VDD_5V若 sensors 无输出,可查 /sys/class/hwmon/

📌 建议保存此指南作为您的通用 SBC 健康检查手册!

无论您使用的是 树莓派、NanoPi、Orange Pi 或其他 Linux 单板机,本指南都能帮助您有效监控、理解和维护最佳的温度与电源状态。

让您的 SBC 保持凉爽、电力充足、稳定运行!😊🐧🔌