最近在淘宝5 块钱买了个小风扇,噪音有点太大了,遂写个脚本,温控后夜里安静多了。
脚本代码仅供参考,按需使用。
#!/usr/bin/env python3
# /home/pi/fan_pwm.py
import RPi.GPIO as GPIO, time
FAN=18
GPIO.setmode(GPIO.BCM); GPIO.setup(FAN, GPIO.OUT)
pwm = GPIO.PWM(FAN, 1000) # 1kHz
pwm.start(0)
while True:
with open(‘/sys/class/thermal/thermal_zone0/temp’) as f:
t = int(f.read()) / 1000
dc = 0 if t < 45 else min(100, (t-45)*4) # 45℃ 以下停转
pwm.ChangeDutyCycle(dc)
time.sleep(10)