Mündəricat:
- Addım 1: sxemlərin hazırlanması
- Addım 2: Parçaların hazırlanması
- Addım 3: PCB Rəsminin Hazırlanması
- Addım 4: Lehimləmə
- Addım 5: Soyuducu FAN ŞAPKASI hazırlamaq və quraşdırmaq
- Addım 6: PCB -ləri yığın
- Addım 7: RPI -ni sxemlərlə bağlayın
- Addım 8: Python Proqramı Bütün Dövrləri Nəzarət Edir
- Addım 9: FAN Dövrə Əməliyyatı
- Addım 10: Əlavə İnkişaf
Video: CPU İstilik Göstəricisi olan Soyuducu FAN Raspberry Pi Qutu: 10 Addım (Şəkillərlə)
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:43
Əvvəlki layihədə moruq pi (bundan sonra RPI olaraq) CPU temperatur göstərici dövrəsini təqdim etmişdim.
Dövrə, RPI 4 fərqli CPU temperatur səviyyəsini aşağıdakı kimi göstərir.
- Yaşıl LED, CPU temperaturu 30 ~ 39 dərəcə olduqda yanır
- Sarı LED, temperaturun 40-45 dərəcə aralığında artdığını göstərir
- Üçüncü Qırmızı LED, CPU -nun 46 ~ 49 dərəcəyə çataraq bir qədər istiləşdiyini göstərir
- Temperatur 50 dərəcəni keçəndə başqa bir qırmızı LED yanıb -sönəcək
***
Temperatur 50C -dən yuxarı olduqda, kiçik RPI -nin çox gərginləşməməsi üçün hər hansı bir kömək lazım olacaq.
RPI-nin maksimum dözümlü temperatur səviyyəsindən bəhs edən bir neçə veb səhifədə gördüyüm məlumata görə, fikirlər müxtəlifdir, məsələn, kimsə istilik yuyucusu istifadə edildikdə hələ də 60C-dən çox yaxşı olduğunu qeyd edir.
Ancaq şəxsi təcrübəm fərqli bir şey deyir ki, ötürmə serveri (istilik qəbuledicisi ilə RPI istifadə edərək) yavaşlayır və nəhayət bir neçə saat açanda zombi kimi davranır.
Buna görə də, bu əlavə dövrə və soyutma FAN, RPI -nin sabit işləməsini dəstəkləmək üçün CPU temperaturunu 50C -nin altında tənzimləmək üçün əlavə olunur.
***
Həm də əvvəllər təqdim edilmiş CPU temperatur göstərici dövrəsi (bundan sonra İNDİKATOR olaraq) konsol terminalında "vcgencmd ölçü_temp" əmrini yerinə yetirmədən rahat temperatur səviyyəsi yoxlamasını dəstəkləmək üçün birlikdə birləşdirilmişdir.
Addım 1: sxemlərin hazırlanması
Əvvəlki iki layihədə, RPI və xarici sxemlər arasında enerji təchizatının tamamilə izolyasiyasından bəhs etmişdim.
FAN soyudulduqda, müstəqil enerji təchizatı olduqca vacibdir, çünki DC 5V FAN (mühərrik) nisbətən ağır yükdür və əməliyyat zamanı olduqca səs -küylüdür.
Buna görə də, bu dövrənin dizaynı üçün aşağıdakı mülahizələr vurğulanır.
- Opto-bağlayıcılar soyutma FAN aktivləşdirmə siqnalı almaq üçün RPI GPIO pin ilə əlaqə yaratmaq üçün istifadə olunur
- RPI-dən alınan enerji və bu dövrənin enerji mənbəyi üçün ümumi əl telefonu şarj cihazından istifadə edilmir.
- LED göstəricisi soyutma FAN işini məlumatlandırmaq üçün istifadə olunur
- 5V rölesi, soyutma FANını mexaniki olaraq aktivləşdirmək üçün istifadə olunur
***
Bu dövrə, python proqramı nəzarəti vasitəsi ilə CPU temperatur göstərici dövrəsi (bundan sonra İSTİFADƏÇİ) ilə işləyəcək.
Göstərici yanıb -sönməyə başladıqda (temperatur 50C -dən yuxarı), bu soyutma FAN dövrəsi işə başlayacaq.
Addım 2: Parçaların hazırlanması
Digər əvvəlki layihələr kimi, aşağıda sadalanan soyutma FAN dövrə etmək üçün çox ümumi komponentlər istifadə olunur.
- Opto-bağlayıcı: PC817 (SHARP) x 1
- 2N3904 (NPN) x 1, BD139 (NPN) x 1
- TQ2-5V (Panasonic) 5V rölesi
- 1N4148 diod
- Rezistorlar (1/4Watt): 220ohm x 2 (cari məhdudiyyət), 2.2K (Transistor keçid) x 2
- LED x 1
- 5V soyutma FAN 200mA
- Universal lövhə 20 (H) ilə 20 (H) deşik ölçüsündən çoxdur (Hər hansı bir universal lövhəni dövrə uyğun olaraq kəsə bilərsiniz)
- Qalay teli (qalay məftilin istifadəsi haqqında daha ətraflı məlumat üçün "Raspberry Pi bağlama göstəricisi" layihəmə baxın)
- Kabel (qırmızı və mavi ümumi tək telli kabel)
- İstənilən əl telefon şarj cihazı 220V giriş və 5V çıxış (USB tip B konnektoru)
- Pin başı (3 sancaq) x 2
***
Soyutma FAN -ın fiziki ölçüsü RPI -nin üstünə quraşdırılacaq qədər kiçik olmalıdır.
5V -də işləyə bildiyi və birdən çox mexaniki kontağa malik olduğu zaman hər cür röle istifadə edilə bilər.
Addım 3: PCB Rəsminin Hazırlanması
Komponentlərin sayı az olduğundan, tələb olunan universal PCB ölçüsü böyük deyil.
Zəhmət olmasa yuxarıdakı şəkildə göstərildiyi kimi TQ2-5V pin polarite düzeni ilə maraqlanın. (Adi düşüncə tərzinin əksinə olaraq, faktiki artı/zəmin tərzi tərsinə düzülmüşdür)
Şəxsən TQ2-5V polarite sancaqlarının əksinə yerləşdiyi (digər röle məhsulları ilə müqayisə edərkən) səbəbiylə lehimləndikdən sonra gözlənilməz bir problemim var.
Addım 4: Lehimləmə
Dövrənin özü olduqca sadə olduğu üçün naqillərin quruluşu o qədər də mürəkkəb deyil.
PCB -ni dik istiqamətdə düzəltmək üçün "L" formalı montaj mötərizəsini boltlarla bağlayıram.
Daha sonra görə biləcəyiniz kimi, hər şeyi montaj edən akril şassi ölçüləri bir qədər kiçikdir.
Akril şassi PCB və digər alt hissələrlə çox sıx olduğu üçün dar ayaq izi lazımdır.
FAN işini asanlıqla tanımaq üçün LED ön tərəfdə yerləşir.
Addım 5: Soyuducu FAN ŞAPKASI hazırlamaq və quraşdırmaq
Düşünürəm ki, universal PCB müxtəlif istifadə məqsədləri üçün istifadə edilə bilən çox faydalı bir hissədir.
Soyuducu FAN universal PCB -yə quraşdırılır və boltlar və qoz -fındıqlarla bərkidilir.
Hava axını təmin etmək üçün PCB qazaraq böyük bir çuxur açıram.
Həm də keçid kabellərinin asan bağlanması üçün PCB kəsilərək GIPO 40 sancaqlar sahəsi açılır.
Addım 6: PCB -ləri yığın
Yuxarıda qeyd edildiyi kimi, iki fərqli dövrəni bir vahiddə birləşdirməyi planlaşdırdım.
Əvvəllər hazırlanmış CPU temperatur göstərici dövrəsi yuxarıdakı şəkildə göstərildiyi kimi yeni soyutma FAN dövrəsi ilə birləşdirilir., Hər şey şəffaf və kiçik ölçülü (15cm G x 10cm D) akril şassi ilə birlikdə yığılmışdır.
Şassi sahəsinin təxminən yarısı boş və əlçatan olsa da, sonradan qalan hissəyə əlavə komponent yerləşdiriləcək.
Addım 7: RPI -ni sxemlərlə bağlayın
Opto-kuplörlərdən istifadə edərək iki sxem RPI ilə təcrid olunmuş şəkildə bağlanır.
Xarici əl telefon şarj cihazı dövrələrə enerji verdiyinə görə RPI-dən heç bir güc alınmır.
Daha sonra əlavə komponentlər daha sonra akril şassisə daha çox inteqrasiya edildikdə, bu cür təcrid olunmuş interfeys sxeminin kifayət qədər ödənişli olduğunu biləcəksiniz.
Addım 8: Python Proqramı Bütün Dövrləri Nəzarət Edir
CPU temperatur göstərici dövrəsinin mənbə kodundan yalnız kiçik bir kod əlavə edilməsi tələb olunur.
Temperatur 50C -dən yuxarı olduqda, FAN -ı 10 saniyə açmaq və 3 saniyəni söndürmək üçün iyirmi (20) təkrarlama başlayır.
Kiçik FAN mühərriki işləyərkən maksimum 200mA cərəyan tələb etdiyi üçün daha az yüklənən əl telefon şarj cihazı üçün PWM (Pulse Width Modulation) tipli motor aktivləşdirmə üsulu istifadə olunur.
Dəyişdirilmiş mənbə kodu aşağıdakı kimidir.
***
#-*-kodlaşdırma: utf-8-*-
##
idxal alt prosesi, siqnal, sys
idxal vaxtı, yenidən
g kimi RPi. GPIO idxal edin
##
A = 12
B = 16
FAN = 25
##
g.setmode (g. BCM)
g. qurma (A, g. OUT)
g. qurma (B, g. Çıxdı)
g. qurma (FAN, g. OUT)
##
def signal_handler (siq, çərçivə):
çap et ('Ctrl+C düymələrinə basmısan!')
g. Çıxış (A, Yanlış)
g. Çıxış (B, Yanlış)
g. Çıxış (FAN, Yanlış)
f.close ()
sys.exit (0)
siqnal.siqnal (siqnal. SIGINT, signal_handler)
##
Doğru halda:
f = açıq ('/home/pi/My_project/CPU_temperature_log.txt', 'a+')
temp_str = subprocess.check_output ('/opt/vc/bin/vcgencmd tədbir_temp', shell = Doğru)
temp_str = temp_str.decode (kodlaşdırma = 'UTF-8', səhvlər = 'ciddi')
CPU_temp = re.findall ("\ d+\. / D+", temp_str)
# cari CPU istiliyinin çıxarılması
##
current_temp = float (CPU_temp [0])
current_temp> 30 və current_temp <40 olarsa:
# temperatur aşağı A = 0, B = 0
g. Çıxış (A, Yanlış)
g. Çıxış (B, Yanlış)
vaxt.yuxu (5)
elif current_temp> = 40 və current_temp <45:
# temperatur mühiti A = 1, B = 0
g. Çıxış (A, Doğru)
g. Çıxış (B, Yanlış)
vaxt.yuxu (5)
elif current_temp> = 45 və current_temp <50:
# yüksək temperatur A = 0, B = 1
g. Çıxış (A, Yanlış)
g. Çıxış (B, Doğru)
vaxt.yuxu (5)
elif current_temp> = 50:
# CPU soyutma yüksək A = 1, B = 1 tələb olunur
g. Çıxış (A, Doğru)
g. Çıxış (B, Doğru)
i üçündür (1, 20):
g. Çıxış (FAN, Doğru)
vaxt.yuxu (10)
g. Çıxış (FAN, Yanlış)
vaxt.yuxu (3)
cari_vaxt = vaxt.vaxt ()
formatated_time = time.strftime ("%H:%M:%S", time.gmtime (current_time))
f. yazın (str (formated_time)+'\ t'+str (current_temp)+'\ n')
f.close ()
##
Bu python kodunun işləmə məntiqi, CPU temperatur göstəricisi dövrəsi ilə demək olar ki, oxşar olduğu üçün burada detalları təkrarlamayacağam.
Addım 9: FAN Dövrə Əməliyyatı
Qrafikə baxanda, FAN dövrəsi olmadan 50C -dən yuxarı olan temperatur.
RPI işləyərkən CPU -nun orta temperaturu 40 ~ 47C civarında görünür.
Veb brauzerdə Youtube oynamaq kimi ağır sistem yükü tətbiq olunarsa, ümumiyyətlə temperatur 60C -ə qədər sürətlə yüksəlir.
Ancaq FAN dövrəsi ilə, soyutma FAN -ın işə salınması ilə 5 saniyə ərzində temperatur 50C -dən aşağı düşəcək.
Nəticədə, bütün gün RPI-ni yandıra bilərsiniz və həddindən artıq istiləşmədən narahat olmadan istədiyiniz işləri edə bilərsiniz.
Addım 10: Əlavə İnkişaf
Gördüyünüz kimi, akril şassinin yarısı boş qalır.
Orada əlavə komponentlər qoyacağam və bu əsas RPI qutusunu daha faydalı bir şeyə genişləndirəcəyəm.
Əlbəttə ki, daha çox əlavə etmək bir az da artan mürəkkəblik deməkdir.
Hər halda, bu proyektdə iki dövrəni bir qutuya birləşdirirəm.
Bu hekayəni oxuduğunuz üçün təşəkkürlər.
Tövsiyə:
Raspberry Pi CPU İstilik Göstəricisi: 11 Addım (Şəkillərlə birlikdə)
Raspberry Pi CPU İstilik Göstəricisi: Əvvəllər sadə moruq pi (bundan sonra RPI) əməliyyat vəziyyəti göstərici dövrə təqdim etmişdim, bu dəfə başsız (monitor olmadan) işləyən RPI üçün daha faydalı bir göstərici dövrə izah edəcəyəm. CPU teması
Evdə hazırlanan Peltier Soyuducu / Soyuducu İstilik Nəzarətçisi DIY: 6 addım (şəkillərlə)
Evdə hazırlanan Peltier Soyuducu / Soyuducu İstilik Nəzarətçisi DIY: Ev termoelektrikli Peltier soyuducu / mini soyuducu W1209 temperatur tənzimləyicisi ilə necə hazırlanır. Bu TEC1-12706 modulu və Peltier effekti mükəmməl DIY soyuducusu edir
OreServer - LED Pleyer Göstəricisi olan Raspberry Pi Xüsusi Minecraft Server: 9 Addım (Şəkillərlə)
OreServer - LED Pleyer Göstəricisi olan Raspberry Pi Xüsusi Minecraft Serveri: İyul 2020 YENİLƏNİB - Bu layihəyə başlamazdan əvvəl unutmayın ki, bunu ikidən çox yaratmaq üçün istifadə etdiyim müxtəlif proqram vasitələrində çoxlu dəyişikliklər və yeniləmələr edilmişdir. illər öncə. Nəticədə, bir çox addımlar artıq yazıldığı kimi işləmir
Arduino İstilik və Nəmlik Göstəricisi: 7 addım (şəkillərlə)
Arduino tərəfindən İstilik və Nəmlik Göstəricisi: Bu Təlimat Arduino ilə temperatur və rütubəti göstərə biləcək bir qutunun necə hazırlanacağını göstərəcəkdir. Bu qutunu otağınızın temperaturu və rütubətini ölçmək üçün masaya qoya bilərsiniz. sıxılmış f
RGB İstilik Göstəricisi (XinaBox ilə): 5 Addım (Şəkillərlə)
RGB Temperatur Göstəricisi (XinaBox ilə): Bu, rəsmi olaraq ilk Instructables məqaləmdir, buna görə də sınamaq üçün bu fürsətdən istifadə etdiyimi etiraf edəcəm. Platformanın necə işlədiyini, bütün istifadəçi təcrübəsi tərəfini hiss edin. Ancaq bunu edərkən, edə biləcəyimi düşündüm