我想知道是否可以通过GPIO引脚控制我的风扇(连接到树莓派板)。
基本上,我想有一个监控芯片温度的脚本 例如,当超过45'C时打开风扇。 我的风扇外接12v AC供电。
是否可以将GPIO引脚用作开关。
答案 0 :(得分:2)
正如@Fredrick所说,这个问题更适合https://raspberrypi.stackexchange.com/。
由于您正在切换交流负载,因此继电器是最简单的解决方案。
您可以使用小型晶体管切换机械继电器,但是您会听到这种咔嗒声,这可能很烦人。
另一种选择是固态继电器,它将静默切换,但更昂贵
答案 1 :(得分:2)
您可以使用中继“切换”它:http://www.susa.net/wordpress/2012/06/raspberry-pi-relay-using-gpio/
以下是有关如何使用Python编程的一些说明:http://lwk.mjhosting.co.uk/?p=343
正如gnibbler所说(谢谢!),第二个链接是关于rev1板。如果你有一个rev2板,一些GPIO引脚已经改变。 elinux.org/RPi_Low-level_peripherals
答案 2 :(得分:0)
您可以通过以下方式获取CPU温度:
/opt/vc/bin/vcgencmd measure_temp
上面的命令返回诸如temp=49.4'C
之类的值,例如,可以将其解析为浮点数
temp=$(/opt/vc/bin/vcgencmd measure_temp | cut -f2 -d= | cut -f1 -d\')
echo $temp
### output: 49.4
下一步
#!/usr/bin/env python
import time
import sys
from RPi import GPIO
pin = 21
# GPIO setup; GPIO Numbers instead of board numbers
GPIO.setmode(GPIO.BCM)
GPIO.setup(chan, GPIO.OUT)
GPIO.output(chan, GPIO.HIGH) # Turn on
time.sleep(2)
GPIO.output(chan, GPIO.LOW) # Turn off
GPIO.cleanup()
作为替代方案,您可以使用 gpio
命令行(与wiringpi
软件包一起提供):
gpio -g mode 21 out
gpio -g write 21 1 ## TURN ON
gpio -g write 21 0 ## TUNR OFF
注意:继电器具有三个连接器,使您可以在正常打开模式或正常关闭模式下使用它。您可以使用右侧连接器的左侧(相对于中央连接器)来切换模式。如果您使用常开模式,则继电器将在LOW
0
处打开,并在HIGH1
处关闭,即即使pi为,您的继电器也将打开。断电。