Innehållsförteckning:
- Steg 1: Förbereda scheman
- Steg 2: Förbereda delar
- Steg 3: Gör PCB -ritning
- Steg 4: Lödning
- Steg 5: Tillverkning och montering av kylfläkt HAT
- Steg 6: Montera kretskort
- Steg 7: Anslutning av RPI med kretsar
- Steg 8: Python Program Control All Circuits
- Steg 9: FAN -kretsdrift
- Steg 10: Vidareutveckling
Video: Raspberry Pi Box med kylfläkt med CPU -temperaturindikator: 10 steg (med bilder)
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:36
Jag hade introducerat hallon pi (nedan kallad RPI) CPU -temperaturindikeringskrets i det föregående projektet.
Kretsen visar helt enkelt RPI 4 olika CPU -temperaturnivå enligt följande.
- Grön lysdiod tänds när CPU -temperaturen ligger inom 30 ~ 39 grader
- Gul lysdiod indikerar att temperaturen har ökat inom intervallet 40 till 45 grader
- Den tredje röda lysdioden visar att CPU: n blir lite varm genom att nå 46 ~ 49 grader
- En annan röd lysdiod blinkar när temperaturen överstiger mer än 50 grader
***
När temperaturen överstiger mer än 50C, ska all hjälp vara nödvändig för lite RPI inte stressas för mycket.
Enligt den information jag såg på flera webbsidor som talar om högsta tolerabla temperaturnivå för RPI, är åsikterna olika, till exempel att någon nämner att mer än 60C fortfarande är helt OK när kylfläns används.
Men min personliga erfarenhet säger något annat att överföringsservern (med RPI med kylfläns) blir långsam och slutligen fungerar som zombie när jag slår på den i flera timmar.
Därför läggs denna extra krets och kylfläkt till för att reglera CPU -temperaturen under 50C för att stödja stabil drift av RPI.
***
Också tidigare introducerad CPU -temperaturindikeringskrets (hädanefter INDIKATOR) är integrerad tillsammans för att stödja bekväm temperaturkontroll utan att utföra kommandot "vcgencmd measure_temp" på konsolterminalen.
Steg 1: Förbereda scheman
I två tidigare projekt hade jag nämnt fullständig isolering av strömförsörjningen mellan RPI och externa kretsar.
Vid kylning FAN är oberoende strömförsörjning ganska viktigt eftersom DC 5V FAN (motor) är relativt tung belastning och ganska bullriga under drift.
Därför betonas följande överväganden för att utforma denna krets.
- Optokopplare används för att ansluta till RPI GPIO-stift för att få kylande FAN-aktiverande signal
- Ingen ström dras från RPI och använder en vanlig telefonladdare för strömkällan till denna krets.
- LED -indikator används för att informera kylfläkten
- 5V -relä används för att aktivera kylfläkt som mekaniskt sätt
***
Denna krets kommer att samverka med CPU-temperaturindikeringskretsen (hädanefter INDIKATOR) med hjälp av pythonprogramstyrning.
När INDIKATORN börjar blinka (temperaturen överstiger 50C) ska denna kylfläktskrets börja fungera.
Steg 2: Förbereda delar
Liksom andra tidigare projekt används mycket vanliga komponenter för att göra kylfläktar enligt nedan.
- Optokopplare: PC817 (SHARP) x 1
- 2N3904 (NPN) x 1, BD139 (NPN) x 1
- TQ2-5V (Panasonic) 5V relä
- 1N4148 diod
- Motstånd (1/4Watt): 220ohm x 2 (strömbegränsning), 2,2K (transistoromkoppling) x 2
- LED x 1
- 5V kylfläkt 200mA
- Universalkort mer än 20 (W) x 20 (H) hålstorlek (Du kan klippa valfri storlek på universalkortet för att passa kretsen)
- Tenntråd (Se min "Raspberry Pi -avstängningsindikator" -projektpost för mer detaljerad användning av tenntrådsanvändning)
- Kabel (röd och blå vanlig enkeltrådskabel)
- Varje handtelefonladdare 220V ingång och 5V utgång (USB typ B-kontakt)
- Stifthuvud (3 stift) x 2
***
Kylning FAN: s fysiska dimension bör vara tillräckligt liten för att kunna monteras ovanpå RPI.
Varje typ av relä kan användas när det kan fungera vid 5V och ha mer än en mekanisk kontakt.
Steg 3: Gör PCB -ritning
Eftersom antalet komponenter är litet är den nödvändiga universella PCB -storleken inte stor.
Var försiktig med stiftpolaritetslayouten för TQ2-5V som visas på bilden ovan. (I motsats till det konventionella tänkandet är den faktiska pluss/mark -layouten omvänd)
Personligen har jag oväntat problem efter lödning på grund av den omvända placeringen (vid jämförelse med andra reläprodukter) polaritetsstift på TQ2-5V.
Steg 4: Lödning
Eftersom kretsen i sig är ganska enkel är ledningsmönstret inte mycket komplext.
Jag skruvar fast monteringsfästet "L" för att fixera kretskortet i upprätt riktning.
Som du kan se senare är akrylchassit som monterar allt lite smått.
Därför är det nödvändigt att minska fotavtrycket eftersom akrylchassit är mycket trångt med kretskort och andra underdelar.
LED är placerad på framsidan för att enkelt känna igen FAN -drift.
Steg 5: Tillverkning och montering av kylfläkt HAT
Jag antar att universellt kretskort är en mycket användbar del som kan användas för olika användningsändamål.
Cooling FAN monteras på universal -kretskort och monteras och fixeras med bultar och muttrar.
För att tillåta luftflöde gör jag ett stort hål genom att borra PCB.
Även för enkel anslutning av bygelkablar öppnas GIPO 40 -stiftsområdet genom att skära PCB.
Steg 6: Montera kretskort
Som nämnts ovan planerade jag att konsolidera två olika kretsar till en enhet.
Tidigare tillverkad CPU -temperaturindikatorkrets slås samman med en ny kylfläkt som visas på bilden ovan., Allt är packat ihop till transparent och liten storlek (15cm B x 10cm D) akrylchassi.
Även om ungefär hälften av chassiutrymmet är tomt och tillgängligt, kommer ytterligare komponent att placeras i det kvarvarande utrymmet senare.
Steg 7: Anslutning av RPI med kretsar
Två kretsar är sammankopplade med RPI på isolerat sätt med optokopplare.
Ingen ström dras från RPI eftersom extern telefonladdare levererar ström till kretsarna.
Senare kommer du att veta att den här typen av isolerade gränssnittssystem är ganska lönsamt när ytterligare komponenter integreras mer i akrylchassit senare.
Steg 8: Python Program Control All Circuits
Endast mindre tillägg av kod krävs från källkoden för CPU -temperaturindikeringskretsen.
När temperaturen överstiger 50C startar tjugo (20) iteration av att slå på FAN i 10 sekunder och stänga av 3 sekunder.
Eftersom en liten motor på FAN kräver max 200mA ström under drift, används PWM (Pulse Width Modulation) typ av motoraktiveringsmetod för en mindre belastande handtelefonladdare.
Den modifierade källkoden är som nedan.
***
#-*-kodning: utf-8-*-
##
importera delprocess, signal, sys
importtid, re
importera RPi. GPIO som g
##
A = 12
B = 16
FLÄKT = 25
##
g.setmode (g. BCM)
g. inställning (A, g. OUT)
g. inställning (B, g. OUT)
g. inställning (FAN, g. OUT)
##
def signal_handler (sig, frame):
print ('Du tryckte på Ctrl+C!')
g. utmatning (A, falsk)
g. utmatning (B, falsk)
g. utmatning (FAN, falskt)
f.close ()
sys.exit (0)
signal.signal (signal. SIGINT, signal_handler)
##
medan det är sant:
f = open ('/home/pi/My_project/CPU_temperature_log.txt', 'a+')
temp_str = subprocess.check_output ('/opt/vc/bin/vcgencmd measure_temp', shell = True)
temp_str = temp_str.decode (kodning = 'UTF-8', fel = 'strikt')
CPU_temp = re.findall ("\ d+\. / D+", temp_str)
# extrahera aktuell CPU -temperatur
##
current_temp = float (CPU_temp [0])
om aktuell_temp> 30 och aktuell_temp <40:
# temperatur låg A = 0, B = 0
g. utmatning (A, falsk)
g. utmatning (B, falsk)
tid. sover (5)
elif current_temp> = 40 och current_temp <45:
# temperaturmedium A = 1, B = 0
g. utmatning (A, sant)
g. utmatning (B, falsk)
tid. sover (5)
elif current_temp> = 45 och current_temp <50:
# temperatur hög A = 0, B = 1
g. utmatning (A, falsk)
g. utmatning (B, sant)
tid. sover (5)
elif current_temp> = 50:
# CPU -kylning krävs hög A = 1, B = 1
g. utmatning (A, sant)
g. utmatning (B, sant)
för i inom intervallet (1, 20):
g. utmatning (FAN, True)
tid. sover (10)
g. utmatning (FAN, falskt)
tid. sover (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.close ()
##
Eftersom driftslogiken för denna pythonkod nästan liknar den för CPU -temperaturindikeringskretsen, kommer jag inte att upprepa detaljer här.
Steg 9: FAN -kretsdrift
När man tittar på grafen överstiger temperaturen 50C utan FAN -krets.
Det verkar som om den genomsnittliga CPU -temperaturen är runt 40 ~ 47C medan RPI fungerar.
Om tung systembelastning som att spela Youtube i webbläsaren tillämpas, brukar temperaturen stiga snabbt upp till 60C.
Men med FAN -krets kommer temperaturen att minska mindre än 50C inom 5 sekunder genom drift av kylfläkt.
Som ett resultat kan du slå på RPI hela dagen och göra alla arbeten du vill utan att oroa dig för överhettning.
Steg 10: Vidareutveckling
Som du kan se är hälften av akrylchassit tomt.
Jag lägger till ytterligare komponenter där och utökar detta grundläggande block av RPI -låda till något mer användbart.
Naturligtvis innebär mer tillägg också lite ökande komplexitet.
Hur som helst integrerar jag två kretsar i en enda låda i det här projektet.
Tack för att du läste denna berättelse.
Rekommenderad:
Automatisk kylfläkt med servo och DHT11 temperatur- och fuktsensor med Arduino: 8 steg
Automatisk kylfläkt med servo och DHT11 temperatur- och luftfuktighetssensor med Arduino: I denna handledning lär vi oss hur man startar & rotera en fläkt när temperaturen stiger över en viss nivå
Enkel Raspberry Pi kylfläkt: 8 steg (med bilder)
Enkel Raspberry Pi kylfläkt: Detta är det enklaste sättet jag har hittat att fästa en kylfläkt på min hallon pi. Allt som krävs är 3 zipties och 3 minuter. Det är väldigt enkelt, men jag hade inte sett den här metoden någon annanstans, så jag tyckte att det var värt att nämna
Automatiserad kylfläkt för Pi: 4 steg (med bilder)
Automatiserad kylfläkt för Pi: Beskrivning En enkel design för att styra en mini 5v fläkt med python, utan att behöva en brödbräda, transistorer etc. Allt du behöver är några kablar och ett 1 -kanalers relä. Jag hade ett tvåkanalsrelä som jag rekommenderar, eftersom det är nästan samma pris plus
Styr en kylfläkt på en Raspberry Pi 3: 9 -steg
Styr en kylfläkt på en Raspberry Pi 3: Lägg till en fläkt till en hallon pi 3, med kontroll för att slå på och av den efter behov. Ett enkelt sätt att lägga till en fläkt är att helt enkelt ansluta fläktledningarna till en 3.3V eller 5V stift och till marken. Med denna metod kommer fläkten att köra hela tiden. Jag tror att det är mycket mer
AMD CPU -kylfläkt till ett PowerColor ATI Radeon X1650 grafikkort .: 8 steg
AMD CPU -kylfläkt till ett PowerColor ATI Radeon X1650 -grafikkort .: Jag har det här gamla PowerColor ATI Radeon X1650 -grafikkortet som fortfarande fungerar. Men huvudproblemet är att kylfläkten inte är tillräcklig och att den nästan alltid fastnar. Jag hittade en gammal kylfläkt för en AMD Athlon 64 CPU och använde den istället