Orodha ya maudhui:

Sanduku la Raspberry Pi la FAN ya kupoza Na Kiashiria cha Joto la CPU: Hatua 10 (na Picha)
Sanduku la Raspberry Pi la FAN ya kupoza Na Kiashiria cha Joto la CPU: Hatua 10 (na Picha)

Video: Sanduku la Raspberry Pi la FAN ya kupoza Na Kiashiria cha Joto la CPU: Hatua 10 (na Picha)

Video: Sanduku la Raspberry Pi la FAN ya kupoza Na Kiashiria cha Joto la CPU: Hatua 10 (na Picha)
Video: Сводные таблицы Excel с нуля до профи за полчаса + Дэшборды! | 1-ое Видео курса "Сводные Таблицы" 2024, Novemba
Anonim
Sanduku la Raspberry Pi la Baridi ya kupoza Na Kiashiria cha Joto la CPU
Sanduku la Raspberry Pi la Baridi ya kupoza Na Kiashiria cha Joto la CPU

Nilikuwa nimeanzisha raspberry pi (Hapa kama RPI) Mzunguko wa kiashiria cha joto cha CPU katika mradi uliopita.

Mzunguko unaonyesha tu RPI 4 kiwango tofauti cha joto cha CPU kama ifuatavyo.

- LED ya kijani imewashwa wakati joto la CPU liko ndani ya digrii 30 ~ 39

- LED ya manjano inaonyesha joto limeongezeka kwa kiwango cha 40 hadi 45 digrii

- 3 ya LED Nyekundu inaonyesha CPU kuwa moto kidogo kwa kufikia digrii 46 ~ 49

- Mwangaza mwingine mwekundu utawaka wakati joto linazidi digrii zaidi ya 50

***

Wakati joto linazidi zaidi ya 50C, msaada wowote utakuwa muhimu kwa RPI kidogo haisisitiza sana.

Kulingana na habari nilizoona kwenye kurasa kadhaa za wavuti ambazo zinazungumza juu ya kiwango cha juu cha joto cha RPI, maoni ni tofauti kama vile mtu anataja kuwa zaidi ya 60C bado ni sawa wakati kuzama kwa joto kunatumiwa.

Lakini uzoefu wangu wa kibinafsi unasema kitu tofauti kwamba seva ya uambukizi (kwa kutumia RPI na kuzama kwa joto) inakua polepole na mwishowe ikifanya kama zombie wakati ninaiwasha kwa masaa kadhaa.

Kwa hivyo mzunguko huu wa ziada na FAN ya kupoza imeongezwa kwa kudhibiti joto la CPU chini ya 50C kwa kusaidia utendaji thabiti wa RPI.

***

Mzunguko wa kiashiria cha joto cha CPU pia (hapo awali kama INDICATOR) umeunganishwa pamoja kusaidia uangalizi wa kiwango cha joto bila kutekeleza amri ya "vcgencmd measure_temp" kwenye kituo cha kiweko.

Hatua ya 1: Kuandaa Skematiki

Kuandaa Schematics
Kuandaa Schematics

Katika miradi miwili iliyopita, nilikuwa nimetaja kutengwa kabisa kwa usambazaji wa umeme kati ya RPI na nyaya za nje.

Katika hali ya kupoza FAN, usambazaji wa umeme wa kujitegemea ni muhimu sana kwani DC 5V FAN (motor) ni mzigo mzito na ni kelele kabisa wakati wa operesheni.

Kwa hivyo, mambo yafuatayo yanasisitizwa kwa kuunda mzunguko huu.

- Opto-couplers hutumiwa kuunganishwa na pini ya RPI GPIO ili kupata ishara ya kuamsha FAN

- Hakuna nguvu inayotokana na RPI na kutumia chaja ya kawaida ya simu kwa chanzo cha nguvu cha mzunguko huu.

- Kiashiria cha LED hutumiwa kuarifu operesheni ya baridi ya FAN

- 5V relay hutumiwa kwa kuamsha FAN ya baridi kama njia ya kiufundi

***

Mzunguko huu utaingiliana na mzunguko wa kiashiria cha joto cha CPU (Hapa INDICATOR) kwa njia ya udhibiti wa programu ya chatu.

Wakati kiashiria kinapoanza kupepesa (joto linazidi 50C), mzunguko huu wa baridi wa FAN utaanza kufanya kazi.

Hatua ya 2: Kuandaa Sehemu

Kama miradi mingine iliyopita, vifaa vya kawaida hutumiwa kutengeneza mzunguko wa FAN baridi kama ilivyoorodheshwa hapa chini.

- Opto-coupler: PC817 (SHARP) x 1

- 2N3904 (NPN) x 1, BD139 (NPN) x 1

- TQ2-5V (Panasonic) 5V relay

- 1N4148 diode

- Resistors (1 / 4Watt): 220ohm x 2 (upeo wa sasa), 2.2K (Transistor switching) x 2

- LED x 1

- 5V baridi FAN 200mA

- Bodi ya Universal zaidi ya 20 (W) na saizi 20 (H) saizi (Unaweza kukata saizi yoyote ya bodi ya ulimwengu kutoshea mzunguko)

- Bati la waya (Tafadhali rejelea mradi wangu wa "Raspberry Pi shutdown kiashiria" kwa maelezo zaidi ya matumizi ya waya wa bati)

- Cable (nyekundu na bluu cable ya waya moja ya kawaida)

- Chaja yoyote ya simu ya mkono 220V pembejeo na pato la 5V (kontakt aina ya USB B)

- Piga kichwa (pini 3) x 2

***

Upeo wa mwelekeo wa mwili wa FAN unapaswa kuwa mdogo wa kutosha kuwekwa juu ya RPI.

Aina yoyote ya relay inaweza kutumika wakati inaweza kufanya kazi kwa 5V na kuwa na mawasiliano zaidi ya moja ya mitambo.

Hatua ya 3: Kufanya Mchoro wa PCB

Kufanya Kuchora PCB
Kufanya Kuchora PCB

Kwa kuwa idadi ya vifaa ni ndogo, inahitajika ukubwa wa PCB ya ulimwengu sio kubwa.

Tafadhali chukua ujali wa mpangilio wa polarity ya TQ2-5V kama inavyoonekana kwenye picha hapo juu. (Kinyume na fikira za kawaida, mpangilio halisi wa nyongeza / ardhi hupangwa tena)

Binafsi nina shida isiyotarajiwa baada ya kutengenezea kwa sababu ya eneo liko kinyume (Unapolinganisha na bidhaa zingine za kupokezana) pini za polarity za TQ2-5V.

Hatua ya 4: Kufunga

Kufundisha
Kufundisha

Kama mzunguko yenyewe ni rahisi, muundo wa wiring sio ngumu sana.

Ninaunganisha mabano ya kuunda "L" kurekebisha PCB kama mwelekeo ulio wima.

Kama unavyoona baadaye, chasisi ya akriliki ambayo inaweka kila kitu ni ndogo kidogo.

Kwa hivyo, kupunguza uchapishaji wa miguu ni muhimu kwani chasisi ya akriliki imejaa sana PCB na sehemu zingine ndogo.

LED iko upande wa mbele kwa kutambua kwa urahisi operesheni ya FAN.

Hatua ya 5: Kutengeneza na Kupandisha Baridi Kofia YA FANI

Kufanya na Kupandisha Baridi Kofia YA MASHABIKI
Kufanya na Kupandisha Baridi Kofia YA MASHABIKI

Nadhani PCB ya ulimwengu wote ni sehemu muhimu sana ambayo inaweza kutumika kwa matumizi anuwai.

FAN ya kupoza imewekwa kwenye PCB ya ulimwengu wote na imewekwa na iliyowekwa na bolts na karanga.

Kwa kuruhusu mtiririko wa hewa, ninafanya shimo kubwa kwa kuchimba PCB.

Pia kwa nyaya rahisi za kuziba, eneo la pini 40 la GIPO linafunguliwa kwa kukata PCB.

Hatua ya 6: Kusanya PCB

Kusanya PCB
Kusanya PCB

Kama ilivyoelezwa hapo juu, nilipanga kuimarisha mizunguko miwili tofauti kuwa kitengo kimoja.

Mzunguko wa kiashiria cha joto cha CPU kilichoundwa hapo awali umeunganishwa na mzunguko mpya wa FAN kama inavyoonekana kwenye picha hapo juu., Kila kitu kimejaa pamoja katika saizi ya uwazi na ndogo ya (15cm W x 10cm D) chasisi ya akriliki.

Ingawa karibu nusu ya nafasi ya chasisi haina kitu na inapatikana, sehemu ya ziada itawekwa kwenye nafasi iliyobaki baadaye.

Hatua ya 7: WP RPI na nyaya

WP RPI na nyaya
WP RPI na nyaya

Mizunguko miwili imeunganishwa na RPI kama njia iliyotengwa kwa kutumia opto-couplers.

Pia hakuna nguvu inayotolewa kutoka RPI kama nguvu ya usambazaji wa sinia ya mkono wa nje kwa nyaya.

Baadaye utajua aina hii ya mpango wa kiolesura cha pekee ni malipo kabisa wakati vifaa vya ziada vimejumuishwa zaidi kwenye chasisi ya akriliki baadaye.

Hatua ya 8: Programu ya Python Udhibiti Mizunguko Yote

Udhibiti wa Programu ya Python Mizunguko Yote
Udhibiti wa Programu ya Python Mizunguko Yote

Ongeza tu nambari ndogo tu inahitajika kutoka kwa msimbo wa chanzo wa mzunguko wa kiashiria cha joto cha CPU.

Wakati joto linazidi 50C, iteration ishirini (20) ya kuwasha FAN kwa sekunde 10 na kuzima sekunde 3 inaanza.

Kama motor ndogo ya FAN inahitaji 200mA ya juu wakati wa operesheni, aina ya njia ya uanzishaji wa PWM (Pulse Width Modulation) hutumiwa kwa sinia ya simu ya mkono.

Nambari ya chanzo iliyobadilishwa ni kama ilivyo hapo chini.

***

# - * - kuorodhesha: utf-8 - * -

##

kuagiza subprocess, ishara, sys

muda wa kuagiza, re

kuagiza RPi. GPIO kama g

##

A = 12

B = 16

SHABIKI = 25

##

g.setmode (g. BCM)

kuanzisha. (A, g. OUT)

g kuanzisha (B, g. OUT)

g. kuanzisha (FAN, g. OUT)

##

def signal_handler (sig, fremu):

chapisha ('Umebonyeza Ctrl + C!')

g. Pato (A, Uongo)

g. pato (B, Uongo)

g. pato (FAN, Uongo)

f. karibu ()

tembea (0)

ishara.saini (ishara. SIGINT, signal_handler)

##

wakati Kweli:

f = fungua ('/ home / pi / My_project / CPU_temperature_log.txt', 'a +')

temp_str = subprocess.check_output ('/ opt / vc / bin / vcgencmd kipimo_temp', ganda = Kweli)

temp_str = temp_str.decode (encoding = 'UTF-8', makosa = 'kali')

CPU_temp = re.findall ("\ d + \. / D +", temp_str)

# kutoa joto la sasa la CPU

##

sasa_temp = kuelea (CPU_temp [0])

ikiwa sasa_temp> 30 na sasa_temp <40:

# joto chini A = 0, B = 0

g. Pato (A, Uongo)

g. pato (B, Uongo)

saa. kulala (5)

elif current_temp> = 40 na sasa_temp <45:

# joto kati A = 1, B = 0

g. pato (A, Kweli)

g. pato (B, Uongo)

saa. kulala (5)

elif current_temp> = 45 na sasa_temp <50:

# joto la juu A = 0, B = 1

g. Pato (A, Uongo)

g. Pato (B, Kweli)

saa. kulala (5)

elif ya sasa_temp> = 50:

# CPU baridi inahitajika juu A = 1, B = 1

g. pato (A, Kweli)

g. Pato (B, Kweli)

kwa mimi katika anuwai (1, 20):

g. Pato (FAN, Kweli)

saa. kulala (10)

g. pato (FAN, Uongo)

saa. kulala (3)

wakati_wa sasa = wakati. wakati ()

formated_time = time.strftime ("% H:% M:% S", time.gmtime (wakati_wa sasa))

f. andika (str (formated_time) + '\ t' + str (sasa_temp) + '\ n')

f. karibu ()

##

Kwa kuwa mantiki ya operesheni ya nambari hii ya chatu ni sawa na ile ya mzunguko wa kiashiria cha joto la CPU, sitarudia maelezo hapa.

Hatua ya 9: Operesheni ya Mzunguko wa FAN

Operesheni ya Mzunguko wa FAN
Operesheni ya Mzunguko wa FAN

Unapoangalia grafu, joto linalozidi 50C bila mzunguko wa FAN.

Inaonekana joto la wastani la CPU ni karibu 40 ~ 47C wakati RPI inafanya kazi.

Ikiwa mzigo mzito wa mfumo kama vile kucheza Youtube kwenye kivinjari cha wavuti unatumika, kawaida joto hupanda haraka hadi 60C.

Lakini na mzunguko wa FAN, joto litapungua chini ya 50C ndani ya sekunde 5 kwa operesheni ya FAN ya kupoza.

Kama matokeo, unaweza kuwasha RPI siku nzima na kufanya kazi zozote unazopenda bila wasiwasi wa kupasha moto kupita kiasi.

Hatua ya 10: Maendeleo zaidi

Maendeleo zaidi
Maendeleo zaidi

Kama unavyoona, nusu ya chasisi ya akriliki imebaki tupu.

Nitaweka vifaa vya ziada hapo na kupanua kizuizi hiki cha msingi cha sanduku la RPI kuwa kitu muhimu zaidi.

Kwa kweli nyongeza zaidi inamaanisha ugumu wa kuongezeka pia.

Kwa hivyo ninaunganisha mizunguko miwili kwenye sanduku moja katika mradi huu.

Asante kwa kusoma hadithi hii.

Ilipendekeza: