Përmbajtje:
- Furnizimet
- Hapi 1: Vendosni tifozin tuaj
- Hapi 2: Krijoni një kontrollues PI (D)
- Hapi 3: Drejtoni Script Control në fillimin
Video: Kontroll i saktë i temperaturës në hapa Raspberry Pi 4: 3
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:14
Pimoroni Fan Shim është një zgjidhje e shkëlqyeshme për të ulur temperaturën e Pi tuaj kur nxehet. Prodhuesit madje ofrojnë softuer që nxit ventilatorin kur temperatura e CPU rritet mbi një prag të caktuar (p.sh. 65 gradë). Temperatura shpejt ulet nën një prag më të ulët dhe fik ventilatorin. Kjo është e madhe, por bën që temperatura të rritet dhe të bjerë nën ngarkesa të moderuara dhe krijon zhurmë të dëgjueshme të ventilatorit. Ky udhëzues do të zvogëlojë zhurmën e ventilatorit gjatë fiksimit të temperaturës së CPU në një vlerë specifike duke përdorur diçka të quajtur kontrollues PID. Pragjet më të larta (p.sh. 65 gradë) do të rezultojnë në një tifoz shumë më të qetë ndërsa pragjet më të ulëta (p.sh. 50 gradë) do të rezultojnë në një tifoz më të fortë, por kontroll më të mirë të temperaturës.
Shembulli i mësipërm tregon rezultatet e mia nga drejtimi i kontrolluesit PID dhe ndryshimi i temperaturës së synuar çdo 500 sekonda. Saktësia është +/- 1 gradë me një tejkalim të ndryshimeve të papritura të temperaturës.
E rëndësishmja, ky test u krye nën të njëjtën ngarkesë për kohën totale të provës (shikimi i BBC iPlayer).
Furnizimet
- Mjedër Pi 4
- Pimoroni Fan Shim
Hapi 1: Vendosni tifozin tuaj
Hapi i parë është të vendosni tifozin tuaj. Udhëzuesi Pimorini është i shkëlqyeshëm!
Pastaj hapni terminalin në Pi tuaj (ctrl alt t)
Dhe instaloni kodin e siguruar nga Pimoroni
git klon https://github.com/pimoroni/fanshim-pythoncd fanshim-python sudo./install.sh
Hapi 2: Krijoni një kontrollues PI (D)
Një kontrollues proporcional i derivatit integral (PID) është një sistem i përdorur për të kontrolluar vlerën e një procesi të caktuar (temperatura e CPU) duke manipuluar ndonjë pajisje fizike (Shpejtësia e Fanit). Ne mund të manipulojmë 'shpejtësinë' dhe zhurmën e ventilatorit duke e ndezur dhe fikur në mënyrë periodike (Modulimi i Valës së Pulsit). Kohëzgjatja e funksionimit në një periudhë të caktuar (p.sh. 1 sekondë) përcakton sa i shpejtë dhe sa i zhurmshëm është ventilatori (900ms = me zë të lartë dhe të shpejtë, 100ms = i qetë dhe i ngadalshëm). Ne do të përdorim PID për të manipuluar shpejtësinë e ventilatorit dhe kështu të kontrollojmë temperaturën.
Ne mund ta ndajmë përdorimin e një PID në një numër hapash.
- Vendosni për vlerën e ndryshores së procesit që dëshironi të arrini (p.sh. temperatura e CPU = 55). Kjo quhet pika juaj e caktuar.
- Llogaritni gabimin PID. Nëse pika juaj e caktuar është 55 gradë dhe temperatura aktuale është 60 gradë gabimi juaj është 5 gradë (Temperatura - pika e caktuar)
- Ndryshoni kohën e funksionimit të ventilatorit në proporcion me gabimin (Gabimet e mëdha rezultojnë në ndryshime të mëdha në shpejtësinë e ventilatorit, gabimet e vogla shkaktojnë ndryshime të vogla në shpejtësinë e ventilatorit).
- Rregulloni ventilatorin në përputhje me vlerat e kaluara (Integral/shuma e të gjitha gabimeve të mëparshme)
- Opsionale ju mund të rregulloni shpejtësinë e ventilatorit bazuar në shkallën e ndryshimit të gabimit (derivativ), por ne nuk do ta bëjmë këtë këtu
Tani që keni teorinë, ekzekutoni kodin më poshtë në Thonny IDE (ose ndonjë IDE tjetër python). Ndryshoni vlerën e 'objektivit' në kodin më poshtë për të ndryshuar temperaturën në të cilën dëshironi të mbani Pi -in tuaj. Unë i kam vendosur termat 'P' dhe 'I' në vlera disi arbitrare. Ndjehuni të lirë t'i rregulloni ato nëse nuk funksionojnë për ju. duke e bërë 'P' më të madh do të thotë që kontrolluesi do t'i përgjigjet me shpejtësi gabimeve të reja (por mund të mos jetë i qëndrueshëm). Ndryshimi i 'Unë' do të bëjë që kontrolluesi të peshojë përgjigjen e tij më shumë ndaj vlerave të kaluara. Unë nuk do të përpiqem t'i bëj këto terma shumë të mëdhenj pasi ndryshimi i shpejtë i shpejtësisë së ventilatorit nuk do të ndryshojë shpejt temperaturën. Gjithashtu, nëse jeni duke bërë punë tepër të rëndë në Pi tuaj, mund të mos arrini temperaturën e dëshiruar (kufijtë e ventilatorit ende vlejnë).
nga fanshim import FanShim
nga koha e importimit të gjumit, importimi i kohës nga importi i matematikës # Kthe temperaturën e CPU -së si një varg karakteresh def getCPUtemperature (): res = os.popen ('vcgencmd masë_temp'). readline () return (res.replace ("temp =", " ").zëvendëso (" 'C / n "," ")) fanshim = FanShim () target = 55 # temperatura e dëshiruar (luaj me këtë dhe shiko çfarë ndodh) % cikli i punës jashtë funksionit = fillimi në # fillimi në 0% cikli i punës P =.01 # termi proporcional i fitimit (luaj me këtë dhe shiko se çfarë ndodh) intErr = 0 # gabimi integral I =.0001 # termi i fitimit ndërgral (luaj me këtë dhe shiko se çfarë ndodh) ndërkohë që Vërtetë: # merrni temperaute temp = int (notoni (getCPUtemperature ())) # llogaritni gabimin dhe zbutni err = temp-target # llogaritni gabimin integral dhe kufizojeni intErr = intErr+gaboj nëse intErr> 10: intErr = 10 nëse intErr = period: on = period off = 0 tjetër: on = on off = period-on # cakto ciklin minimal të punës nëse aktivizohet <.09: on =.09 tjetër: on = në # PWM në pinsh fanshim nëse në == perioda: fanshim.set_fan (True) fle (on) else: fanshim.set_fan (True) s leep (on) fanshim.set_fan (False) fle (off)
Hapi 3: Drejtoni Script Control në fillimin
Ju mund ta ekzekutoni këtë skenar sa herë që filloni pi -në tuaj ose mund ta aktivizoni automatikisht në rindezje. Kjo është shumë e thjeshtë për tu bërë me crontab.
- hap terminalin
- shkruani crontab-e në terminal
- shtoni rreshtin e mëposhtëm të kodit në skedarin '@reboot python /home/pi/bootScripts/fanControl.py &'
- dilni dhe rindizni
Unë e vendosa skriptin (fanControl.py) në një floder të quajtur bootScripts por ju mund ta vendosni kudo vetëm sigurohuni që të specifikoni rrugën e saktë në crontab.
Gjithçka është bërë! Tani ventilatori juaj do të kontrollojë temperaturën e CPU -së tuaj në një vlerë të caktuar, duke minimizuar zhurmën e dëgjueshme që prodhon.
Recommended:
Voltmetër i saktë i ekranit me bojë E-bojë me valë (0-90v DC) Me Arduino Nano: 3 hapa
Voltmetër preciz i ekranit me bojë E-bojë Waveshare (0-90v DC) Me Arduino Nano: Në këtë udhëzues, unë përdor një ekran E-Paper 2.9 "Waveshare me një Arduino Nano, një ndarës të tensionit dhe një ADS1115 për të shfaqur tensione të sakta deri në 90 volt DC në E-Paper Display. Ky udhëzues kombinon këto dy projekte të mëparshme:- Ardui
Matës i saktë dhe i saktë i tensionit Arduino (0-90V DC): 3 hapa
Matës i saktë dhe i saktë i tensionit Arduino (0-90V DC): Në këtë udhëzues, unë kam ndërtuar një voltmetër për të matur tensione të larta DC (0-90v) me saktësi dhe saktësi relative duke përdorur një Arduino Nano. Matjet e provës që mora ishin mjaft të sakta, kryesisht brenda 0.3v të tensionit aktual të matur me një
Reaktori i harkut të Fundit të Shtypur 3D (Filmi i Saktë dhe i Veshshëm): 7 Hapa (me Fotografi)
Reaktori i harkut të Fundit të Shtypur 3D (Filmi i Saktë dhe i Veshshëm): Udhëzues i plotë në Youtube: Unë nuk mund të gjeja ndonjë skedar 3d të filmit veçanërisht të saktë për reaktorin/strehimin e harkut Mark 50 për nanoprimcat, kështu që shoku im dhe unë gatuam disa të ëmbla. U desh një shumë rregullim për ta bërë gjënë të dukej e saktë dhe e mrekullueshme
Leximi i temperaturës duke përdorur sensorin e temperaturës LM35 Me Arduino Uno: 4 hapa
Leximi i temperaturës duke përdorur sensorin e temperaturës LM35 Me Arduino Uno: Përshëndetje djema në këtë udhëzues ne do të mësojmë se si të përdorim LM35 me Arduino. Lm35 është një sensor i temperaturës i cili mund të lexojë vlerat e temperaturës nga -55 ° C në 150 ° C. Shtë një pajisje 3-terminale që siguron tension analog proporcional me temperaturën. E lartë
Riciklimi i çelësit të vjetër të zbehësit si një kontroll i ndryshueshëm i temperaturës për hekurin tuaj të bashkuar: 7 hapa
Riciklimi i çelësit të vjetër të zbehësit si kontrollues i ndryshueshëm i temperaturës për hekurin tuaj të salduar: Kam parë shumë kontroll profesional të temperaturës së ndryshueshme për hekurin e saldimit, por shumë të shtrenjtë. Kështu që unë bëj një nga një ndërprerës i vjetër i zbehjes, priza, pjata dhe priza e bandës e cila tashmë ishte hedhurinë dhe disa kuti të vjetra kalimi PVC që erdhën me të dhe kështu