树莓派根据温度自动启动风扇




视频演示

https://www.bilibili.com/video/av78150577/

准备

  1. 风扇 x 1
  2. 三极管(我用的S8550)x 1
  3. 杜邦线 x 若干
  4. 面包板

接线

点击查看树莓派 40Pin 引脚对照表

接线图

代码

python3

  1. # -*- coding: utf-8 -*-
  2. # 树莓派 根据温度自动启动或停用风扇
  3. import RPi.GPIO as GPIO
  4. import time
  5. FAN=14 #BCM引脚编号
  6. GPIO.setmode(GPIO.BCM)
  7. GPIO.setup(FAN,GPIO.OUT)
  8. GPIO.output(FAN,GPIO.HIGH)
  9. # 设置风扇
  10. def set_fan(value):
  11. print('设置风扇(BCM14)电平状态:',value)
  12. GPIO.output(FAN,value)
  13. pass
  14. while True:
  15. file = open("/sys/class/thermal/thermal_zone0/temp")
  16. # 读取结果,并转换为浮点数
  17. temp = float(file.read()) / 1000
  18. # 关闭文件
  19. file.close()
  20. print("温度: %.1f" %temp)
  21. if temp>=50:
  22. set_fan(0)#低电平,为开启风扇
  23. elif temp<=46:
  24. set_fan(1)#高电平,为关闭风扇
  25. time.sleep(10)

参考文章:

树莓派实现温度监控并控制风扇散热