树莓派风扇控制
如果直接将风扇接在树莓派上,风扇会一直运行,为了使风扇既能散热又不会浪费电力,因此需要让风扇在温度高时开启,温度低时停止。
树莓派自带gpio接口,使用一段python脚本就能风扇启停的自动控制。
硬件部分
- 树莓派
- 风扇
- 三极管
- 杜邦线
连接硬件

rpi-pins-40-0.png

2d109722720e0cf37dc2bf800d46f21fbe09aa53.jpg
- 发射级接风扇黑线
- 基级接 gpio 14
- 集电极接 GDN
- 风扇红线接+5v
驱动代码
软件部分使用了wiringpi ,因此想要使gpio工作起来,需要安装wiringpi。
sudo pip install wiringpi
简单示例:
import RPi.GPIO as gpio
import time
gpio.setmode(gpio.BCM) #设置引脚编码规则
gpio.setwarnings(False) #忽略引脚被占用警告
gpio.setup(14,gpio.OUT) #设置14号引脚为输出模式
while True:
with open('/sys/class/thermal/thermal_zone0/temp') as fp: #读取温度
temp = round(int(fp.readline())/1000,2)
print(temp)
if temp > 35.00: # 大于35℃开启风扇
gpio.output(14,gpio.LOW)
elif temp < 34.00:# 小于于34℃关闭风扇
gpio.output(14,gpio.HIGH)
time.sleep(2)
# 简单示例有能力的请自行编写脚本