FAN
本节介绍在树莓派上如何使用 FAN 接口功能,为后续项目开发奠定基础。
提示
- 风扇接口默认为自动温控,会随核心温度自动调整转速。如需手动设置转速,建议在不需要时及时切换回自动温控模式。
- 请在上电前连接好风扇,否则相关控制指令将无效。
FAN 关键说明
- 在树莓派中 FAN 设备默认为
/sys/devices/platform/cooling_fan/hwmon/hwmon/pwm1(仅在上电前连接才可以识别到风扇设备)
手动控制转速
注意
风扇接口默认为自动温控,会根据核心温度自动调整转速。手动设置转速后将失去自动温控功能,建议不需要时及时切换回自动模式。
指令控制实现
- 注意相关说明,FAN 关键说明
- 查看是否存在风扇设备(有日志输出即存在设备)
ls /sys/devices/platform/cooling_fan/hwmon/hwmon0
- 切为手动控制(默认为自动温控)
echo 1 | sudo tee /sys/devices/platform/cooling_fan/hwmon/hwmon0/pwm1_enable# sudo echo 1 > /sys/devices/platform/cooling_fan/hwmon/hwmon0/pwm1_enable
- 控制风扇转速为 100% (255: 风扇转速,可选 0~255)
echo 255 | sudo tee /sys/devices/platform/cooling_fan/hwmon/hwmon0/pwm1# sudo echo 255 > /sys/devices/platform/cooling_fan/hwmon/hwmon0/pwm1
- 控制风扇转速为 50% (255: 风扇转速,可选 0~255)
echo 128 | sudo tee /sys/devices/platform/cooling_fan/hwmon/hwmon0/pwm1# sudo echo 128 > /sys/devices/platform/cooling_fan/hwmon/hwmon0/pwm1
- 控制风扇转速为 0% (255: 风扇转速,可选 0~255)
echo 0 | sudo tee /sys/devices/platform/cooling_fan/hwmon/hwmon0/pwm1# sudo echo 0 > /sys/devices/platform/cooling_fan/hwmon/hwmon0/pwm1
初始配置实现
- PI5 风扇默认是温度控制 50 度才开始转,如果想要控制其他温度就可以转,在配置中添加指定内容即可
- 进入 config.txt 文件
sudo nano /boot/firmware/config.txt
- 在最下方添加以下指令(【fan_temp0/1/2/3:表示温度(36000表示36℃)】、【fan_temp0/1/2/3_hyst:表示迟滞温度】、【fan_temp0/1/2/3_speed:表示对应的转速(值最大255)】)
dtparam=fan_temp0=36000,fan_temp0_hyst=2000,fan_temp0_speed=90dtparam=fan_temp1=40000,fan_temp1_hyst=3000,fan_temp1_speed=150dtparam=fan_temp2=52000,fan_temp2_hyst=4000,fan_temp2_speed=200dtparam=fan_temp3=58000,fan_temp3_hyst=5000,fan_temp3_speed=255
查看当前转速
- 注意相关说明,FAN 关键说明
- 查看是否存在风扇设备(有日志输出即存在设备)
ls /sys/devices/platform/cooling_fan/hwmon/hwmon0
- 打印当前风扇转速
cat /sys/devices/platform/cooling_fan/hwmon/hwmon0/fan1_input
恢复自动温控
- 注意相关说明,FAN 关键说明
- 查看是否存在风扇设备(有日志输出即存在设备)
ls /sys/devices/platform/cooling_fan/hwmon/hwmon0
- 切为自动温控
echo 2 | sudo tee /sys/devices/platform/cooling_fan/hwmon/hwmon0/pwm1_enable# sudo echo 2 > /sys/devices/platform/cooling_fan/hwmon/hwmon0/pwm1_enable