散热方案¶
散热说明¶
由于M1&L1开发板性能较强,在长时间高负载运行时,底部核心模组会产生较多热量,使用安装散热器可以提升散热效果,确保设备稳定运行。
物料购买链接汇总¶
物料 |
名称 |
链接 |
|---|---|---|
螺丝 |
M2.5*14 |
|
铜柱 |
M2.5*3双通六角铜柱 |
|
散热器 |
带背胶单双风扇散热器 |
|
导热垫 |
导热垫 |
|
散热器 |
4B PWM调速散热风扇 |
散热固定方案¶
使用带背胶的散热片,粘贴至主要热源。
使用开发板四周的机械固定孔,固定散热片。机械孔固定位置参考下方尺寸图。
PS:为使散热效果较好,散热器与热源之间建议填充导热垫/硅脂。
被动散热案例¶
下文介绍一款简易被动散热器,供开发者进行设计参考。该散热器使用开发板的机械孔位安装。
PS:该物料需要移远定制,非标准件。
安装导热垫至背部模组
对齐散热片与开发板孔位
使用4枚M2.514螺母与4枚M2.53铜柱固定,完成安装
安装完成示意图如下
注意:该散热器仅只作为设计参考demo,是否满足实际应用的散热需求和成本要求。需要开发者自行结合实际应用场景和需求评估。
散热器参考模型:
主动散热案例¶
无温控风扇¶
主动散热需要对风扇进行供电,可通过40PIN上5V接口为5V风扇供电
将风扇固定到后方散热器上。参考如下:
注意此方案无法对风扇进行控速调整。开发板上电,风扇即转。
开发者也可选用此类集成散热器与背胶的产品。
温控风扇测试¶
开发板40PIN接口上,PIN33提供PWM功能,可用于风扇调速控制。
2PIN无调速风扇控制¶
针对2线无调速接口的风扇,可使用一下参考电路,配合PWM引脚实现风扇调速控制
电气连接示意图
3PIN可调速风扇控制¶
后台进程检测/sys/class/thermal/thermal_zone*
并轮读几个核的温度取最高,并且根据最高温度来配置风扇的PWM占空比。
|
|
|---|---|
<30℃ |
0 |
30~40℃ |
64 |
40~50℃ |
128 |
50~60℃ |
192 |
>60℃ |
255 |
硬件安装与接线图¶
此次采用 树莓派风扇 4B散热器,根据图示接到对应的M1/L1 40Pin引脚上。
风扇引脚 |
M1开发板引脚(40PIN) |
|---|---|
红线(电源正极) |
PIN2 |
黑线(电源负极) |
PIN6 |
蓝线(PWM) |
PIN33 |
实际安装如下


注意:不同厂商生产散热器对本产品兼容性不同,需要开发者自行评估。
4.软件测试流程¶
默认风扇功能是关闭的,开机后输入对应指令查看风扇服务的状态。
adb shell
40pin-ctrl fan status #查看当前风扇服务的状态,未启用风扇服务为bound,启用为enable
40pin-ctrl fan enable #使能风扇服务,使能后可以查看下状态是否为enable
40pin-ctrl fan disable #关闭风扇服务,停止测试才需要输入该指令
在第一个终端里面输入。
40pin-ctrl fan enable
40pin-ctrl fan status
#M1
watch -n 1 'PWM=/sys/bus/platform/devices/1c40000.qcom,spmi:qcom,pm6125@1:qcom,pwms@b300/pwm/pwmchip0/pwm0; p=$(cat "$PWM/period"); d=$(cat "$PWM/duty_cycle"); echo $(( (d * 255 + p / 2) / p ))'
#L1
watch -n 1 'PWM=/sys/bus/platform/devices/1c40000.qcom,spmi:qcom,pm2250@1:qcom,pwms@be00/pwm/pwmchip2/pwm0; p=$(cat "$PWM/period"); d=$(cat "$PWM/duty_cycle"); echo $(( (d * 255 + p / 2) / p ))'
查看当前的温度和PWM占空比是不是对得上。
开第二个终端,做升温。
for i in 1 2 3 4; do
yes > /dev/null &
done
如果第3步里面的升温不够可以把负载调大。
for i in $(seq 1 $(nproc)); do
yes > /dev/null &
done
看两个终端里面的温度和风扇的PWM占空比是不是和表里面的对齐。
测试结束后停止负载。
killall yes