Mündəricat:
- Təchizat
- Addım 1: Fanınızı qurun
- Addım 2: PI (D) Nəzarətçisi yaradın
- Addım 3: Başlanğıcda Nəzarət Skriptini işə salın
Video: Raspberry Pi 4: 3 addımlarında Həssas Temperatur Nəzarəti
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:44
Pimoroni Fan Shim, Pi işləyərkən istiliyini azaltmaq üçün əla bir həlldir. İstehsalçılar, hətta CPU istiliyi müəyyən bir həddən (məsələn, 65 dərəcə) yuxarı qalxdıqda fanı işə salan proqram təmin edir. Temperatur tez bir zamanda aşağı bir eşikdən aşağı düşür və fanı söndürür. Bu əladır, amma istiliyin orta yüklər altında yüksəlməsinə və düşməsinə səbəb olur və fanat səsləri eşidilir. Bu təlimat, PID nəzarətçisi adlanan bir şey istifadə edərək CPU temperaturunu müəyyən bir dəyərə sabitləyərkən fanın səs -küyünü azaldacaq. Daha yüksək eşiklər (məsələn, 65 dərəcə) daha çox səssiz bir fanla nəticələnəcək, daha aşağı eşiklər (məsələn, 50 dərəcə) daha yüksək bir fanat, lakin daha yaxşı bir temperatur nəzarəti ilə nəticələnəcək.
Yuxarıdakı nümunə, PID nəzarətçisini işə salmaqdan və hədəf istiliyini hər 500 saniyədən bir dəyişməkdən əldə etdiyim nəticələri göstərir. Dəqiqlik +/- 1 dərəcədir və termometriyədə ani dəyişikliklər müşahidə olunur.
Əhəmiyyətli olan bu test, ümumi test müddəti üçün eyni yük altında həyata keçirildi (BBC iPlayer -ə baxır).
Təchizat
- Moruq Pi 4
- Pimoroni Fan Shim
Addım 1: Fanınızı qurun
İlk addım pərəstişkarınızı qurmaqdır. Pimorini dərsliyi əladır!
Sonra Pi cihazınızın terminalını açın (ctrl alt t)
Və Pimoroni tərəfindən verilən kodu quraşdırın
git klonu https://github.com/pimoroni/fanshim-pythoncd fanshim-python sudo./install.sh
Addım 2: PI (D) Nəzarətçisi yaradın
Proportional İnteqral Törəmə (PID) nəzarətçisi, müəyyən bir fiziki cihazı (Fan Sürəti) manipulyasiya edərək müəyyən bir prosesin dəyərini (CPU temperaturu) idarə etmək üçün istifadə olunan bir sistemdir. Fanı vaxtaşırı yandırıb söndürərək 'sürətini' və səs -küyünü idarə edə bilərik (Pulse Dalğası Modulyasiyası). Müəyyən bir müddətdə (məsələn, 1 saniyə) işə salınma müddəti, fanın nə qədər sürətli və nə qədər yüksək olduğunu müəyyən edir (900ms = yüksək və sürətli, 100 ms = sakit və yavaş). Fanın sürətini manipulyasiya etmək və beləliklə temperaturu idarə etmək üçün PID -dən istifadə edəcəyik.
PID istifadəsini addımların sayına bölə bilərik.
- Əldə etmək istədiyiniz proses dəyişəninin dəyərinə qərar verin (məsələn, CPU temperaturu = 55). Buna təyinat nöqtəniz deyilir.
- PID səhvini hesablayın. İstədiyiniz nöqtəniz 55 dərəcə və faktiki temperatur 60 dərəcədirsə, səhviniz 5 dərəcədir (Temperatur - setpoint)
- Fanın vaxtını xətaya görə dəyişdirin (Böyük səhvlər fan sürətində böyük dəyişikliklərə səbəb olur, kiçik səhvlər fan sürətində kiçik dəyişikliklərə səbəb olur).
- Fanı keçmiş dəyərlərə uyğun olaraq tənzimləyin (Bütün əvvəlki səhvlərin cəmidir)
- İsteğe bağlı olaraq, fan sürətini xətanın dəyişmə sürətinə (törəmə) əsaslanaraq düzəldə bilərsiniz, amma burada bunu etməyəcəyik
İndi nəzəriyyəniz Thonny IDE -də (və ya başqa bir python IDE) aşağıdakı kodu işlədin. Pi'nizi hansı temperaturda saxlamaq istədiyinizi dəyişdirmək üçün aşağıdakı koddakı 'hədəf' dəyərini dəyişdirin. 'P' və 'I' şərtlərini bir qədər ixtiyari dəyərlərə qoydum. Sizin üçün işləmirsə bunları tənzimləməkdən çekinmeyin. 'P' ni daha böyük etmək, nəzarətçinin yeni səhvlərə sürətli cavab verəcəyi deməkdir (lakin sabit olmaya bilər). 'I' dəyişdirilməsi, nəzarətçinin keçmiş dəyərlərə daha çox reaksiya verməsinə səbəb olacaq. Bu şərtləri çox böyük etməyə çalışmazdım, çünki fan sürətini sürətlə dəyişmək istiliyi sürətlə dəyişməyəcək. Ayrıca, Pi -də inanılmaz dərəcədə ağır işlər görürsünüzsə, istədiyiniz müddətə çata bilməyəcəksiniz (fanın sərhədləri hələ də tətbiq olunur).
fanshim idxalından FanShim
vaxt idxal yuxudan, vaxt idxal os idxal riyaziyyat # CPU temperaturunu xarakter simli olaraq qaytarın defCPUtemperature (): res = os.popen ('vcgencmd ölçü_temp'). readline () qayıt (res.replace ("temp =", " ").replace (" 'C / n "," ")) fanshim = FanShim () target = 55 # istədiyiniz temperatur (bununla oynayın və nə olduğunu görün) dövr = 1 # PWM dövrü =.1 # 0 -a sıfırlayın % vəzifə dövrü söndürüldü = dövrdən başlayaraq # sıfırdan 0% -ə qədər vəzifə dövrü P =.01 # nisbi mənfəət müddəti (bununla oynayın və nə olduğunu görün) intErr = 0 # inteqral səhv I =.0001 # intergral mənfəət müddəti (bununla oynayın və nə baş verdiyini görün) True olarkən: # get temperaute temp = int (float (getCPUtemperature ())) # səhv hesablayın və xətanı düzəldin = temp-target # inteqra lerrorunu hesablayın və intErr = intErr+err məhdudlaşdırın intErr> 10: intErr = 10 əgər intErr = period: on = off off = 0 başqa: on = on off = period-on # əgər <.09: on =.09 başqa olarsa minimum vəzifə dövrünü təyin edin: on = on fanshim pinində # PWM varsa == dövrü: fanshim.set_fan (Doğru) yuxu (açıq) başqa: fanshim.set_fan (Doğru) s cüzam (açıq) fanshim.set_fan (Yanlış) yuxu (söndürülmüş)
Addım 3: Başlanğıcda Nəzarət Skriptini işə salın
Pi -yə hər dəfə başladığınızda bu skriptdən istifadə edə bilərsiniz və ya avtomatik olaraq yenidən başladıqda işə sala bilərsiniz. Bunu crontab ilə etmək çox sadədir.
- terminalı açın
- terminala crontab-e yazın
- aşağıdakı kodu "@reboot python /home/pi/bootScripts/fanControl.py &" faylına əlavə edin
- çıxın və yenidən başladın
Ssenarini (fanControl.py) bootScripts adlı bir floderə qoydum, ancaq hər hansı bir yerə qoya bilərsiniz, yalnız crontab -da düzgün yolu göstərdiyinizə əmin olun.
Hər şey hazırdır! İndi pərəstişkarınız CPU -nun istiliyini müəyyən bir dəyərə qədər idarə edəcək və istehsal etdiyi səs -küyü minimuma endirəcək.
Tövsiyə:
ESP8266 ilə Otaq Nəzarəti - Temperatur, Hərəkət, Pərdələr və İşıqlandırma: 8 addım
ESP8266 ilə Otaq Nəzarəti | Temperatur, Hərəkət, Pərdələr və İşıqlandırma: Bu layihə, NodeMCU ESP8266 moduluna əsaslanan bir sistemdən ibarətdir ki, bu da LED şeridin parlaqlığını və otağınızın pərdəsini idarə etməyə imkan verir, həmçinin otağınızın hərəkət hadisələri haqqında məlumat göndərə bilir. və buluddakı temperatur
Raspberry Pi 3: 8 Addımlarında Raspbian OS -nin Başsız Quraşdırılması
Raspberry Pi 3 -də Raspbian OS -nin Başsız Quraşdırılması: Başsız bir Raspberry Pi qurğusunun necə aparılacağına dair təlimata xoş gəldiniz. Bir adam bir Raspberry Pi aldıqda və yaxın günlərdə maraqlı layihələr həyata keçirməyi ümid etdikdə macəralı səyahət başlayır. Yaxşı səslənir, amma həyəcan azalır
Yüksək Həssas Temperatur Nəzarətçisi: 6 Addım (Şəkillərlə birlikdə)
Yüksək Həssas Temperatur Nəzarətçisi: Elmdə və mühəndislik aləmində temperaturun (termodinamikdəki atomların hərəkəti) izlənməsi, hüceyrə biologiyasından tutmuş sərt yanacaqlı raketlərə qədər demək olar ki, hər yerdə nəzərə alınmalı olan əsas fiziki parametrlərdən biridir
Arduino və PWM pərəstişkarları ilə temperatur nəzarəti: 6 addım (şəkillərlə)
Arduino və PWM Fanları ilə İstilik Nəzarəti: DIY server/şəbəkə rafının soyudulması üçün Arduino və PWM fanatlarında PID ilə temperatur nəzarəti Bir neçə həftə əvvəl şəbəkə cihazları və bir neçə server ilə bir raf qurmaq lazım idi. buna görə də qış ilə temperatur aralığı
Lehimləmə Dəmiriniz üçün Dəyişən Bir Temperatur Nəzarəti olaraq Köhnə Dimmer Şalterinizi Geri Dönüşdürün: 7 Addım
Lehimləmə Dəmiriniz üçün Dəyişən Bir Temperatur Nəzarəti olaraq Köhnə Dimmer Şalterinizin Geri Dönüşdürülməsi: Lehimləmə dəmiri üçün bir çox peşəkar dəyişkən temperatur tənzimləyicisi gördüm, amma çox bahalı. Beləliklə, köhnə bir dimmer açarından, çıxışdan, dəstə boşqabından və artıq lazımsız olan fişdən və onunla birlikdə gələn köhnə PVC keçid qutusundan və s