Sisällysluettelo:

Raspberry Pi -laatikko jäähdytystuuletinta CPU -lämpötilan ilmaisimella: 10 vaihetta (kuvilla)
Raspberry Pi -laatikko jäähdytystuuletinta CPU -lämpötilan ilmaisimella: 10 vaihetta (kuvilla)

Video: Raspberry Pi -laatikko jäähdytystuuletinta CPU -lämpötilan ilmaisimella: 10 vaihetta (kuvilla)

Video: Raspberry Pi -laatikko jäähdytystuuletinta CPU -lämpötilan ilmaisimella: 10 vaihetta (kuvilla)
Video: BigTreeTech - SKR 3 - TMC2130 with Sensorless Homing 2024, Marraskuu
Anonim
Raspberry Pi -laatikko jäähdytystuuletinta CPU -lämpötilan ilmaisimella
Raspberry Pi -laatikko jäähdytystuuletinta CPU -lämpötilan ilmaisimella

Olin ottanut raspberry pi (jäljempänä RPI) -prosessorin lämpötilan ilmaisinpiirin käyttöön edellisessä projektissa.

Piiri näyttää yksinkertaisesti RPI 4 eri suorittimen lämpötilatason seuraavasti.

- Vihreä LED palaa, kun suorittimen lämpötila on 30-39 astetta

- Keltainen LED osoittaa, että lämpötila on noussut 40–45 astetta

- Kolmas punainen LED osoittaa, että suoritin kuumenee hieman saavuttaen 46-49 astetta

- Toinen punainen LED vilkkuu, kun lämpötila on yli 50 astetta

***

Kun lämpötila on yli 50 ° C, apu on tarpeen pienelle RPI: lle, joka ei rasitu liikaa.

Niiden tietojen mukaan, joita olen nähnyt useilla verkkosivuilla, joissa puhutaan RPI: n suurimmasta sallitusta lämpötilasta, mielipiteet ovat erilaisia, kuten joku mainitsee, että yli 60 ° C on edelleen aivan OK, kun käytetään jäähdytyselementtiä.

Mutta henkilökohtainen kokemukseni sanoo jotain muuta, että siirtopalvelin (joka käyttää RPI: tä jäähdytyselementin kanssa) hidastuu ja toimii lopulta zombina, kun kytken sen päälle useita tunteja.

Siksi tämä lisäpiiri ja tuuletin lisätään CPU: n lämpötilan säätöön alle 50 ° C tukemaan RPI: n vakaata toimintaa.

***

Myös aiemmin esitellyt suorittimen lämpötilan ilmaisinpiiri (jäljempänä INDIKAATTORI) on integroitu yhteen tukemaan kätevää lämpötilan tarkistusta suorittamatta "vcgencmd meet_temp" -komentoa konsolin päätelaitteessa.

Vaihe 1: Kaavioiden valmistelu

Kaavioiden valmistelu
Kaavioiden valmistelu

Kahdessa edellisessä projektissa olin maininnut virtalähteen täydellisen eristämisen RPI: n ja ulkoisten piirien välillä.

Jäähdytyspuhaltimen tapauksessa itsenäinen virtalähde on varsin tärkeä, koska DC 5V FAN (moottori) on suhteellisen raskas kuormitus ja melko meluisa käytön aikana.

Siksi seuraavia näkökohtia korostetaan tämän piirin suunnittelussa.

- Opto-liittimiä käytetään liittymään RPI GPIO -tappiin jäähdytyspuhaltimen aktivoivan signaalin saamiseksi

- RPI ei saa virtaa ja tämän piirin virtalähteenä käytetään tavallista käsipuhelinlaturia.

- LED -ilmaisinta käytetään ilmoittamaan jäähdytyspuhaltimen toiminnasta

- 5 V: n relettä käytetään jäähdytyspuhaltimen aktivoimiseen mekaanisesti

***

Tämä piiri toimii yhdessä CPU: n lämpötilan ilmaisinpiirin (jäljempänä INDIKAATTORI) kanssa python-ohjelman ohjauksen avulla.

Kun ILMAISIN alkaa vilkkua (lämpötila on yli 50 ° C), tämän jäähdytyspuhallinpiirin on käynnistettävä toiminta.

Vaihe 2: Osien valmistelu

Kuten muutkin aikaisemmat projektit, hyvin yleisiä komponentteja käytetään jäähdytyspuhallinpiirin tekemiseen, kuten alla on lueteltu.

- Opto-liitin: PC817 (SHARP) x 1

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

- TQ2-5V (Panasonic) 5V rele

- 1N4148 diodi

- Vastukset (1/4Watt): 220ohm x 2 (virranrajoitus), 2,2K (transistorikytkentä) x 2

- LED x 1

- 5V jäähdytystuuletin 200mA

- Yleiskortti, jonka koko on yli 20 (W) x 20 (H)

- Tinalanka (katso lisätietoja Raspberry Pi -katkaisun ilmaisimen projektipostauksesta saadaksesi lisätietoja tinalangan käytöstä)

- Kaapeli (punainen ja sininen yhteinen yksijohtiminen kaapeli)

- Mikä tahansa käsipuhelinlaturin 220 V: n tulo ja 5 V: n lähtö (USB-tyypin B-liitin)

- Tappipää (3 nastaa) x 2

***

Jäähdytyspuhaltimen fyysisen ulottuvuuden tulee olla tarpeeksi pieni, jotta se voidaan asentaa RPI: n päälle.

Mitä tahansa reletyyppiä voidaan käyttää, kun se voi toimia 5 V: n jännitteellä ja sillä on useampi kuin yksi mekaaninen kosketin.

Vaihe 3: Piirilevyn piirtäminen

Piirilevyjen piirtäminen
Piirilevyjen piirtäminen

Koska komponenttien määrä on pieni, vaadittu yleispiirilevyn koko ei ole suuri.

Huolehdi TQ2-5V: n nastan napaisuusasettelusta yllä olevan kuvan mukaisesti. (Toisin kuin perinteinen ajattelu, todellinen plus/maa -asettelu on järjestetty päinvastaiseksi)

Henkilökohtaisesti minulla on odottamaton ongelma juottamisen jälkeen käänteisesti sijoitettujen (verrattuna muihin reletuotteisiin) TQ2-5V-napaisuuden nastojen vuoksi.

Vaihe 4: Juotos

Juotos
Juotos

Koska piiri itsessään on melko yksinkertainen, johdotuskuvio ei ole kovin monimutkainen.

Pultin L -muotoista asennuskiinnikettä PCB: n kiinnittämiseksi pystyasentoon.

Kuten myöhemmin näet, akryylirunko, joka kiinnittää kaiken, on kooltaan hieman pieni.

Siksi jalanjäljen kaventaminen on välttämätöntä, koska akryylialusta on täynnä PCB-levyjä ja muita osia.

LED -valo sijaitsee etupuolella, mikä helpottaa FAN -toiminnon tunnistamista.

Vaihe 5: Jäähdytystuulettimen hatun valmistus ja asennus

Jäähdyttimen TUULETIN HATTI valmistus ja asennus
Jäähdyttimen TUULETIN HATTI valmistus ja asennus

Oletan, että yleispiirilevy on erittäin hyödyllinen osa, jota voidaan käyttää erilaisiin käyttötarkoituksiin.

Jäähdytystuuletin asennetaan yleispiirilevyyn ja kiinnitetään ja kiinnitetään ruuveilla ja muttereilla.

Ilmavirran sallimiseksi teen suuren reiän poraamalla PCB: tä.

Myös hyppyjohtojen helpon liittämisen vuoksi GIPO 40 -nastainen alue avataan leikkaamalla PCB.

Vaihe 6: Kokoa piirilevyt

Kokoa piirilevyt
Kokoa piirilevyt

Kuten edellä mainittiin, aikoin yhdistää kaksi eri piiriä yhdeksi yksiköksi.

Aiemmin valmistettu suorittimen lämpötilan ilmaisinpiiri yhdistetään uuteen jäähdytyspuhallinpiiriin yllä olevan kuvan mukaisesti., Kaikki on pakattu yhteen läpinäkyvään ja pieneen (15 cm L x 10 cm S) akryylirunkoon.

Vaikka noin puolet runkotilasta on tyhjä ja käytettävissä, lisäkomponentti sijoitetaan jäljellä olevaan tilaan myöhemmin.

Vaihe 7: RPI -johdotus piireillä

RPI -johdotus piireillä
RPI -johdotus piireillä

Kaksi piiriä on kytketty toisiinsa RPI: llä eristetyllä tavalla käyttäen opto-liittimiä.

RPI ei myöskään saa virtaa, koska ulkoinen käsipuhelinlaturi syöttää virtoja piireihin.

Myöhemmin tiedät, että tällainen eristetty liitäntäjärjestelmä on varsin kannattava, kun lisäkomponentteja integroidaan enemmän akryylirunkoon myöhemmin.

Vaihe 8: Python -ohjelma hallitsee kaikkia piirejä

Python -ohjelma ohjaa kaikkia piirejä
Python -ohjelma ohjaa kaikkia piirejä

Suorittimen lämpötilan ilmaisinpiirin lähdekoodista vaaditaan vain pieni koodin lisäys.

Kun lämpötila on yli 50 ° C, alkaa kaksikymmentä (20) iteraatiota, kun tuuletin kytketään päälle 10 sekunniksi ja sammutus 3 sekunniksi.

Koska pieni tuuletinmoottori vaatii maksimissaan 200 mA virtaa käytön aikana, PWM (Pulse Width Modulation) -tyyppistä moottorin aktivointimenetelmää käytetään vähemmän kuormittavaan matkapuhelimen laturiin.

Muokattu lähdekoodi on kuten alla.

***

#-*-koodaus: utf-8-*-

##

tuoda aliprosessi, signaali, sys

tuonti aika, uudelleen

Tuo RPi. GPIO g

##

A = 12

B = 16

FAN = 25

##

g.setmode (g. BCM)

g.asetukset (A, g. OUT)

g. asetus (B, g. ULOS)

g. asetus (TUULETIN, g. ULOS)

##

def signal_handler (sig, frame):

tulosta ('Painoit Ctrl+C!')

g. lähtö (A, epätosi)

g. lähtö (B, epätosi)

g. lähtö (FAN, False)

f. sulje ()

sys.exit (0)

signal.signal (signal. SIGINT, signal_handler)

##

vaikka totta:

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

temp_str = aliprosessi.check_output ('/opt/vc/bin/vcgencmd meet_temp', shell = True)

temp_str = temp_str.decode (koodaus = 'UTF-8', virheet = 'tiukka')

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

# poimimalla suorittimen nykyinen lämpötila

##

current_temp = kelluva (CPU_temp [0])

jos current_temp> 30 ja current_temp <40:

# matala lämpötila A = 0, B = 0

g. lähtö (A, epätosi)

g. lähtö (B, epätosi)

aika.unen (5)

elif current_temp> = 40 ja current_temp <45:

# lämpötila -aine A = 1, B = 0

g. lähtö (A, True)

g. lähtö (B, epätosi)

aika.unen (5)

elif current_temp> = 45 ja current_temp <50:

# korkein lämpötila A = 0, B = 1

g. lähtö (A, epätosi)

g. lähtö (B, True)

aika.unen (5)

elif current_temp> = 50:

# Suorittimen jäähdytys vaaditaan korkea A = 1, B = 1

g. lähtö (A, True)

g. lähtö (B, True)

i alueella (1, 20):

g. lähtö (FAN, True)

aika. unta (10)

g. lähtö (FAN, False)

aika. unta (3)

current_time = time.time ()

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

f.write (str (formated_time)+'\ t'+str (current_temp)+'\ n')

f. sulje ()

##

Koska tämän python -koodin toimintalogiikka on melkein samanlainen kuin suorittimen lämpötilan ilmaisinpiirin, en toista tässä yksityiskohtia.

Vaihe 9: TUULETINpiirin toiminta

TUULETINpiirin toiminta
TUULETINpiirin toiminta

Kaaviota tarkasteltaessa lämpötila ylittää 50 ° C ilman tuuletinpiiriä.

Näyttää siltä, että CPU: n keskilämpötila on noin 40-47 ° C RPI: n ollessa toiminnassa.

Jos käytetään suurta järjestelmän kuormitusta, kuten Youtuben pelaamista verkkoselaimessa, yleensä lämpötilan nousu nopeasti jopa 60 ° C.

Mutta tuuletinpiirillä lämpötila laskee alle 50 ° C 5 sekunnin kuluessa jäähdytyspuhaltimen avulla.

Tämän seurauksena voit ottaa RPI: n käyttöön koko päivän ja tehdä haluamiasi töitä ilman, että sinun tarvitsee huolehtia ylikuumenemisesta.

Vaihe 10: Jatkokehitys

Edelleen kehittäminen
Edelleen kehittäminen

Kuten näette, puolet akryylirungosta on tyhjä.

Laitan sinne lisäkomponentteja ja laajennan tämän RPI -laatikon peruslohkon hyödyllisemmäksi.

Tietysti lisääminen tarkoittaa myös hieman monimutkaisuuden lisääntymistä.

Joka tapauksessa integroin kaksi piiriä tähän projektiin yhteen laatikkoon.

Kiitos, että luit tämän tarinan.

Suositeltava: