树莓派3B+温控风扇

亡梦爱人 提交于 2019-11-29 06:26:57

树莓派3B+温控风扇

已添加散热片的树莓派3B+,在空载工作过程中温度过高,需要增加风扇达到物理降温的效果。但在使用过程中,风扇发出的声音过高,需要在温度较低的情况下停止风扇的工作。

准备材料

  • 树莓派3B+:1个
  • 小风扇:1个
  • 杜邦线:若干(>=3根)
  • 1k电阻:1个
  • NPN三极管:1个

备注:材料中的三极管可以使用PNP三极管代替,但需要注意电流方向以及GPIO的电平。由于购买的外壳含有开关控制模块,因此本次实验中使用NPN三极管,使在树莓派仅供电未工作情况下风扇不启动。

电路图

在这里插入图片描述

附带树莓派3B+引脚图:

在这里插入图片描述

代码

  1. 获取温度

    import os
    
    def get_temp():
      res = os.popen('vcgencmd measure_temp').readline()
      return float(res.replace('temp=', '').replace("'C\n", ''))
    
  2. 控制风扇启停

    # gpio channel, 按照实际情况修改
    gpio_channel = 18
    
    GPIO.setmode(GPIO.BCM)
    GPIO.setwarnings(False)
    GPIO.setup(gpio_channel, GPIO.OUT)
    
    # 启动风扇
    GPIO.output(gpio_channel, GPIO.HIGH)
    
    # 关闭风扇
    GPIO.output(gpio_channel, GPIO.LOW)
    

    备注:

    1. BCM和Board引脚编号:

      在这里插入图片描述

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!