打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
树莓派3b使用一路继电器控制小风扇

1.初得树莓派3b,但是风扇声音太吵了!

后来送的一路继电器可以用来控制风扇就简单的做了一个CPU温控风扇。

第一步,认清GPIO口。

   这里明显可以看出有1-40的编号方式和GPIOXX Ground等等两种方式。注意01是方的,这个在背面也是可以看清楚的。01是焊锡丝是不一样的。别反了咯、

第二步,接线

    带螺丝的输出端是常开、常闭、vcc,输入端是vcc,gnd,in(数据)。

    1.输入端接GPIO:       

         vcc和gnd接好树莓派的5v和接地口,in接GPIO08,

  2. 输出端接电源风扇: 

         带螺丝的一端,中间的接5v电源(这里直接树莓派5V口供电)。

        两边的一个是常开口,一个是常闭口,我们选择常开口,接风扇的正极,风扇负极接地。注:常开口就是NO,in不触发时候就是常开路。

第三步,代码

而我这里使用的是BCM编码方式,就是GPIO08代表的是BCM编码的这个08的编号方式。

下面就是使用Python来进行简单的控制啦。

代码如下:

  1. import sys

  2. import time

  3. try:

  4. import RPi.GPIO as GPIO #支持GPIO模块

  5. except RuntimeError:

  6. print("Error importting Rpi.GPIO")

  7. def cpu_temp(): #这个函数就是去读取树莓派中的一个文件,里面是cpu的温度/1000就是我们熟悉的温度了,可以直接Cat该文件

  8. f = open("/sys/class/thermal/thermal_zone0/temp",'r')

  9. return float(f.read())/1000

  10. def main():

  11. channel = 8

  12. GPIO.setmode(GPIO.BCM) #BCM就是我们上面所说的08编号方式。

  13. # init 08 off

  14. GPIO.setup(channel,GPIO.OUT,initial=GPIO.LOW) #设置channel=8的接口的编号方式是输出,默认是低电平。

  15. is_close = True

  16. while 1:

  17. temp = cpu_temp()

  18. if is_close:

  19. if temp > 45.0: #温度大于45直接高电平,触发风扇端的信号。

  20. GPIO.output(channel,GPIO.HIGH)

  21. is_close = False

  22. else:

  23. if temp < 38.0:

  24. GPIO.output(channel,GPIO.LOW)

  25. is_close = True

  26. time.sleep(2.0) #延时再读取

  27. if __name__ == '__main__':

  28. main()

#支持GPIO模块

直接python3 myfengshan.py

第四步,设置开机自启

现在我们设置后台运行,进入/etc目录下:cd /etc,打开rc.local :nano rc.local ,再exit()前加一行:

python3  /home/pi/......./myfengshan.py &

中间的是你代码的绝对路径,&是后台运行,直接在后台循环就可以啦!

我就是小菜鸟,喜欢就点赞给我动力吧!
 

来源:https://www.icode9.com/content-4-439351.html
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
树莓派实现温度监控并控制风扇散热 | 树莓派实验室
树莓派3 B型今天推出 – 64位四核A53 1.2GHz的BCM2837 | Darling Coder
树莓派3B 如何输出用PWM输出音频AUDIO
3、树莓派 RPI.GPIO 使用手册
树莓派开发系列教程9
gpio引脚介绍 树莓派3b
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服