Sisukord:

Täpne temperatuuri reguleerimine Raspberry Pi -l 4: 3 sammu
Täpne temperatuuri reguleerimine Raspberry Pi -l 4: 3 sammu

Video: Täpne temperatuuri reguleerimine Raspberry Pi -l 4: 3 sammu

Video: Täpne temperatuuri reguleerimine Raspberry Pi -l 4: 3 sammu
Video: 20 товаров для автомобиля с Алиэкспресс, автотовары №29 2024, November
Anonim
Raspberry Pi 4 täpne temperatuuri reguleerimine
Raspberry Pi 4 täpne temperatuuri reguleerimine

Pimoroni ventilaatorikate on suurepärane lahendus teie Pi temperatuuri vähendamiseks kuumalt töötades. Tootjad pakuvad isegi tarkvara, mis käivitab ventilaatori, kui protsessori temperatuur tõuseb üle teatud läve (nt 65 kraadi). Temperatuur langeb kiiresti alla alamläve ja lülitab ventilaatori välja. See on suurepärane, kuid põhjustab temperatuuri tõusu ja langust mõõdukate koormuste korral ning tekitab kuuldava ventilaatori müra. See juhend vähendab ventilaatori müra, määrates samal ajal CPU temperatuuri kindlale väärtusele, kasutades nn PID -kontrollerit. Kõrgemad künnised (nt 65 kraadi) muudavad ventilaatori palju vaiksemaks, madalamad (nt 50 kraadi) aga tugevamaks, kuid paremaks temperatuuri reguleerimiseks.

Ülaltoodud näide näitab minu tulemusi PID -regulaatori käivitamisel ja sihttemperatuuri muutmisel iga 500 sekundi järel. Täpsus on +/- 1 kraad koos mõningase ületamisega äkilistel temperatuurimuutustel.

Oluline on see, et see test viidi läbi kogu koormuse ajal sama koormuse all (vaadates BBC iPlayerit).

Tarvikud

  • Vaarika Pi 4
  • Pimoroni fänn Shim

Samm: seadistage ventilaator

Ventilaatori seadistamine
Ventilaatori seadistamine

Esimene samm on ventilaatori seadistamine. Pimorini õpetus on suurepärane!

Seejärel avage oma Pi terminal (ctrl alt t)

Ja installige Pimoroni pakutud kood

git kloon https://github.com/pimoroni/fanshim-pythoncd fanshim-python sudo./install.sh

2. samm: looge PI (D) kontroller

Looge PI (D) kontroller
Looge PI (D) kontroller

Proportsionaalse integreeritud tuletise (PID) kontroller on süsteem, mida kasutatakse teatud protsessi väärtuse (protsessori temperatuuri) kontrollimiseks, manipuleerides mõne füüsilise seadmega (ventilaatori kiirus). Me saame manipuleerida ventilaatori kiiruse ja müraga, lülitades selle perioodiliselt sisse ja välja (Pulse Wave Modulation). Ajavahemik, mille jooksul see teatud aja jooksul sisse lülitatakse (nt 1 sekund), määrab ventilaatori kiiruse ja valju (900 ms = vali ja kiire, 100 ms = vaikne ja aeglane). Kasutame PID -d ventilaatori kiiruse muutmiseks ja seega temperatuuri reguleerimiseks.

PID kasutamise saame jagada mitmeks sammuks.

  1. Otsustage selle protsessimuutuja väärtus, mida soovite saavutada (nt protsessori temperatuur = 55). Seda nimetatakse teie seadeväärtuseks.
  2. Arvutage PID -viga. Kui teie seadepunkt on 55 kraadi ja tegelik temperatuur on 60 kraadi, on teie viga 5 kraadi (temperatuur - seadepunkt)
  3. Muutke ventilaatori tööaega proportsionaalselt veaga (suured vead põhjustavad suuri muutusi ventilaatori kiiruses, väikesed vead põhjustavad väikeseid muutusi ventilaatori kiiruses).
  4. Ventilaatori kohandamine eelmiste väärtustega (integraal/kõigi eelmiste vigade summa)
  5. Soovi korral reguleerite ventilaatori kiirust vea (tuletis) muutumiskiiruse alusel, kuid me ei tee seda siin

Nüüd, kui teil on teooria, käivitage Thonny IDE -s (või mõnes muus pythoni IDE -s) allolev kood. Muutke allolevas koodis sihtmärgi väärtust, et muuta, millisel temperatuuril soovite oma Pi säilitada. Olen määranud terminid „P” ja „I” mõnevõrra suvalistele väärtustele. Muutke neid julgelt, kui need teie jaoks ei tööta. P -i suurendamine tähendab, et kontroller reageerib kiiresti uutele vigadele (kuid ei pruugi olla stabiilne). "I" muutmine paneb kontrolleri oma vastust varasematele väärtustele rohkem kaaluma. Ma ei üritaks neid termineid liiga suureks muuta, kuna ventilaatori kiiruse kiire muutmine ei muuda kiiresti temperatuuri. Samuti, kui teete oma Pi -ga uskumatult rasket tööd, ei pruugi te soovitud temperatuuri saavutada (ventilaatori piirid kehtivad endiselt).

from fanshim import FanShim

ajast importimise unerežiim, aja import os import matemaatika # Tagastab CPU temperatuuri märgistringina def getCPUtemperature (): res = os.popen ('vcgencmd meet_temp'). readline () return (res.replace ("temp =", " ").replace (" 'C / n "," ")) fanshim = FanShim () target = 55 # soovitud temperatuur (mängi sellega ja vaata, mis juhtub) periood = 1 # PWM periood on =.1 # initsialiseeri 0 % töötsükkel välja = periood-on # initsialiseerimine 0-protsendiliseks töötsükliks P =.01 # proportsionaalne võimendustermin (mängige sellega ja vaadake, mis juhtub) intErr = 0 # integraalviga I =.0001 # intergral gain term (mängige sellega ja vaadake, mis juhtub) kuigi tõsi: # get temperaute temp = int (float (getCPUtemperature ())) # arvutage viga ja sujuge viga = temp-target # arvutage integra lerror ja piirake seda intErr = intErr+viga, kui intErr> 10: intErr = 10, kui intErr = periood: sees = periood väljas = 0 muud: sisse = sisse lülitatud = periood-sisse # määrab minimaalse töötsükli, kui on sisse lülitatud <.09: sisse =.09 muu: sisse lülitatud on == periood: fanshim.set_fan (True) uni (on) else: fanshim.set_fan (True) s leep (on) fanshim.set_fan (False) uni (väljas)

Samm: käivitage käivitamisel juhtskript

Käivitage käivitamisel juhtskript
Käivitage käivitamisel juhtskript

Saate seda skripti käivitada iga kord, kui käivitate oma pi või võite lasta selle automaatselt taaskäivitamisel käivitada. Crontabiga on seda ülilihtne teha.

  1. avage terminal
  2. tippige terminali crontab-e
  3. lisage failile järgmine koodirida '@reboot python /home/pi/bootScripts/fanControl.py &'
  4. väljuge ja taaskäivitage

Panin skripti (fanControl.py) floderisse nimega bootScripts, kuid võite selle ükskõik kuhu panna, veenduge, et määrate crontabis õige tee.

Kõik tehtud! Nüüd reguleerib teie ventilaator teie protsessori temperatuuri kindlale väärtusele, minimeerides samal ajal selle tekitatavat kuuldavat müra.

Soovitan: