樹莓派PWM控制降溫風扇,基於ubuntu系統

2021-10-19 10:27:38 字數 2126 閱讀 2235

本文章是基於ubuntu的樹莓派控制降溫風扇,採用python編寫,具有開機自啟的功能,有很好的降低噪音的功能。其思路是獲取cpu溫度,並依據不同溫度產生不同的pwm來進行控制風扇。具體**如下:

import rpi.gpio as gpio

import time

fan=

18#bcm引腳編號

temp_min=

30temp_max=

50gpio.setmode(gpio.bcm)

gpio.setup(fan,gpio.out)

#gpio.output(fan,gpio.high)

gpio.setwarnings(

false

)pwm = gpio.pwm(fan,50)

pwm.start(

100)

time.sleep(5)

pwm.stop(

)print

("風扇防止卡死程式執行結束"

)# 設定風扇

while

true

:file

=open

("/sys/class/thermal/thermal_zone0/temp"

)# 讀取結果,並轉換為浮點數

temp =

float

(file

.read())

# 關閉檔案

file

.close(

)print

("溫度: %.1f"

%(temp/

1000))

if temp

1000

: pwm.stop(

)print

("溫度低於設定值,風扇關閉"

)#set_fan(0)#低電平,為開啟風扇

elif temp>temp_max*

1000

: pwm.start(

100)

;print

("溫度高於最高設定值,風扇全速執行"

)#set_fan(1)#高電平,為關閉風扇

else

: dc =

(temp - temp_min *

1000)*

100/

((temp_max - temp_min)

*1000

) pwm.start(dc)

print

("pwm duty cycle:%.1f"

%dc)

time.sleep(10)

#每隔十秒檢測一下溫度

gpio.cleanup(

)

硬體電路圖如下:

這裡點解電容的作用是為了防止噪音產生的。

最後為了防止樹莓派每一次開機都要自己去啟動指令碼,所以我們設定一下開機自啟動。

我這裡使用的是supervisor來操作,操作流程如下

安裝supervisorsudo apt install supervisor開啟配置檔案目錄cd /etc/supervisor/conf.d新建配置檔案touch pwmfs.conf編寫配置檔案內容vim /etc/supervisor/conf.d/pwmfs.conf配置檔案內容如下:

[program:pwmfs]

command

= python3 /home/ubuntu/pwmfs.py

autostart =

true

注:其中/home/ubuntu/pwmfs.py就是你存放指令碼的位置。

重啟服務sudo systemctl restart supervisor其他命令

檢視supervisor執行狀態:sudo supervisorctl status

檢視後台程序號:ps -aux|grep pwmfs| grep -v grep

樹莓派 溫度控制散熱風扇

樹莓派9層外殼自帶乙個散熱風扇,風扇是2針的,不能控制,插上電源後就一直全速運轉,晚上噪音很大。而且,一直執行,風扇壽命也會降低。考慮加乙個電機驅動模組,使用pwm控制風扇電壓。cpu溫度如果低於一定程度,風扇可以直接停轉。自帶風扇標記說明5v電壓下只有0.16a電流,在 找到乙個體積小,低的驅動模...

樹莓派風扇散熱自動控制

因為樹莓派風扇如果一直轉很吵的。在網上看到有人diy了一下,通過python 來實現風扇自動控制。我也嘗試做一下。需要新增乙個三極體。這裡就不說了。建立乙個 usr local src fan.py檔案。coding utf 8 讓風扇達到一定的溫度時再執行。import sys import ti...

樹莓派基於python的pwm產生

import rpi.gpio as gpio 匯入gpio口驅動模組 import time 匯入時間模組 pwm pin 18 定義pwm輸出引腳 gpio.setmode gpio.bcm 定義樹莓派gpio引腳以bcm方式編號 gpio.setup pwm pin,gpio.out 使能gp...