Sommario:

Raspberry Pi Box di ventola di raffreddamento con indicatore della temperatura della CPU: 10 passaggi (con immagini)
Raspberry Pi Box di ventola di raffreddamento con indicatore della temperatura della CPU: 10 passaggi (con immagini)

Video: Raspberry Pi Box di ventola di raffreddamento con indicatore della temperatura della CPU: 10 passaggi (con immagini)

Video: Raspberry Pi Box di ventola di raffreddamento con indicatore della temperatura della CPU: 10 passaggi (con immagini)
Video: 🔥The NEW Raspberry Pi 5 - Design, Specs, Official Case & Active Cooler Performance | Full GUIDE 2024, Novembre
Anonim
Raspberry Pi Box di ventola di raffreddamento con indicatore della temperatura della CPU
Raspberry Pi Box di ventola di raffreddamento con indicatore della temperatura della CPU

Avevo introdotto il circuito dell'indicatore della temperatura della CPU raspberry pi (d'ora in avanti come RPI) nel progetto precedente.

Il circuito mostra semplicemente RPI 4 diversi livelli di temperatura della CPU come segue.

- LED verde acceso quando la temperatura della CPU è entro 30~39 gradi

- Il LED giallo indica che la temperatura è aumentata nell'intervallo da 40 a 45 gradi

- Il terzo LED rosso mostra che la CPU si surriscalda un po' raggiungendo i 46 ~ 49 gradi

- Un altro LED rosso lampeggerà quando la temperatura supera i 50 gradi

***

Quando la temperatura supera i 50 ° C, sarà necessario qualsiasi aiuto per non sollecitare troppo l'RPI.

Secondo le informazioni che ho visto in diverse pagine web che parlano del livello massimo di temperatura tollerabile di RPI, le opinioni sono diverse, ad esempio qualcuno afferma che più di 60 ° C è ancora abbastanza OK quando viene utilizzato il dissipatore di calore.

Ma la mia esperienza personale dice qualcosa di diverso che il server di trasmissione (usando RPI con dissipatore di calore) diventa lento e alla fine si comporta come uno zombi quando lo accendo per diverse ore.

Pertanto, questo circuito aggiuntivo e la ventola di raffreddamento vengono aggiunti per regolare la temperatura della CPU sotto i 50 °C per supportare il funzionamento stabile dell'RPI.

***

Anche il circuito dell'indicatore della temperatura della CPU introdotto in precedenza (di seguito come INDICATOR) è integrato insieme per supportare un comodo controllo del livello di temperatura senza eseguire il comando "vcgencmd measure_temp" sul terminale della console.

Passaggio 1: preparazione degli schemi

Preparazione di schemi
Preparazione di schemi

In due progetti precedenti, avevo menzionato l'isolamento completo dell'alimentazione tra RPI e circuiti esterni.

In caso di ventola di raffreddamento, l'alimentazione indipendente è molto importante poiché la ventola DC 5V (motore) è un carico relativamente pesante e piuttosto rumorosa durante il funzionamento.

Pertanto, si sottolineano le seguenti considerazioni per la progettazione di questo circuito.

- Gli accoppiatori ottici vengono utilizzati per interfacciarsi con il pin GPIO RPI per ottenere il segnale di attivazione della ventola di raffreddamento

- Nessuna alimentazione prelevata da RPI e utilizzo di un comune caricatore per telefono a mano per l'alimentazione di questo circuito.

- L'indicatore LED viene utilizzato per informare il funzionamento della VENTOLA di raffreddamento

- Il relè 5V viene utilizzato per attivare la VENTOLA di raffreddamento in modo meccanico

***

Questo circuito interagirà con il circuito dell'indicatore della temperatura della CPU (di seguito INDICATOR) tramite il controllo del programma Python.

Quando l'INDICATORE inizia a lampeggiare (la temperatura supera i 50 °C), questo circuito VENTOLA di raffreddamento inizierà a funzionare.

Passaggio 2: preparazione delle parti

Come altri progetti precedenti, vengono utilizzati componenti molto comuni per realizzare il circuito FAN di raffreddamento come elencato di seguito.

- Fotoaccoppiatore: PC817 (SHARP) x 1

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

- Relè TQ2-5V (Panasonic) 5V

- Diodo 1N4148

- Resistori (1/4 Watt): 220 ohm x 2 (limitazione di corrente), 2,2 K (commutazione transistor) x 2

- LED x 1

- VENTOLA 5V raffreddamento 200mA

- Scheda universale di dimensioni superiori a 20 (L) per 20 (H) fori (puoi tagliare qualsiasi dimensione di scheda universale per adattarla al circuito)

- Filo di stagno (fare riferimento al mio progetto "Indicatore di spegnimento Raspberry Pi" per maggiori dettagli sull'utilizzo del filo di stagno)

- Cavo (cavo unipolare comune rosso e blu)

- Qualsiasi caricatore del telefono a mano Ingresso 220V e uscita 5V (connettore USB tipo B)

- Testa del perno (3 perni) x 2

***

La dimensione fisica della VENTOLA di raffreddamento dovrebbe essere sufficientemente piccola da essere montata sulla parte superiore dell'RPI.

Qualsiasi tipo di relè può essere utilizzato quando può funzionare a 5V e avere più di un contatto meccanico.

Passaggio 3: creazione del disegno PCB

Fare il disegno del PCB
Fare il disegno del PCB

Poiché il numero di componenti è piccolo, la dimensione del PCB universale richiesta non è grande.

Si prega di fare attenzione al layout della polarità dei pin di TQ2-5V come mostrato nell'immagine sopra. (Contrariamente al pensiero convenzionale, l'effettivo layout plus/ground è disposto al contrario)

Personalmente ho un problema imprevisto dopo la saldatura a causa dei pin di polarità posizionati inversamente (quando si confrontano con altri prodotti relè) di TQ2-5V.

Passaggio 4: saldatura

saldatura
saldatura

Poiché il circuito stesso è abbastanza semplice, lo schema di cablaggio non è molto complesso.

Sto avvitando la staffa di montaggio a forma di "L" per fissare il PCB come direzione verticale.

Come puoi vedere in seguito, lo chassis in acrilico che monta tutto è di dimensioni un po' piccole.

Pertanto, è necessario restringere l'ingombro in quanto lo chassis in acrilico è molto affollato di PCB e altre parti secondarie.

Il LED è posizionato sul lato anteriore per riconoscere facilmente il funzionamento della VENTOLA.

Passaggio 5: realizzazione e montaggio del CAPPELLO DELLA VENTOLA di raffreddamento

Realizzazione e montaggio Raffreddamento FAN HAT
Realizzazione e montaggio Raffreddamento FAN HAT

Suppongo che il PCB universale sia una parte molto utile che può essere utilizzata per diversi scopi di utilizzo.

La ventola di raffreddamento è montata su PCB universale e montata e fissata con bulloni e dadi.

Per consentire il flusso d'aria, sto facendo un grosso buco perforando il PCB.

Anche per collegare facilmente i cavi jumper, l'area dei pin GIPO 40 viene aperta tagliando il PCB.

Passaggio 6: assemblare i PCB

Assemblare PCB
Assemblare PCB

Come accennato in precedenza, avevo pianificato di consolidare due circuiti diversi in un'unica unità.

Il circuito dell'indicatore della temperatura della CPU precedentemente realizzato viene unito al nuovo circuito FAN di raffreddamento come mostrato nell'immagine sopra., Tutto è imballato insieme in un telaio acrilico trasparente e di piccole dimensioni (15 cm L x 10 cm P).

Sebbene circa la metà dello spazio del telaio sia vuoto e disponibile, in seguito verrà alloggiato un componente aggiuntivo nello spazio rimasto.

Passaggio 7: cablaggio RPI con circuiti

Cablaggio RPI con circuiti
Cablaggio RPI con circuiti

Due circuiti sono interconnessi con RPI in modo isolato mediante optoaccoppiatori.

Inoltre, non viene prelevata energia dall'RPI poiché il caricatore del telefono portatile esterno fornisce alimentazione ai circuiti.

Più tardi saprai che questo tipo di schema di interfaccia isolato è abbastanza vantaggioso quando i componenti aggiuntivi vengono integrati più tardi nello chassis acrilico in un secondo momento.

Passaggio 8: il programma Python controlla tutti i circuiti

Il programma Python controlla tutti i circuiti
Il programma Python controlla tutti i circuiti

È necessaria solo una piccola aggiunta di codice dal codice sorgente del circuito dell'indicatore della temperatura della CPU.

Quando la temperatura supera i 50°C, iniziano venti (20) iterazioni di accensione della VENTOLA per 10 secondi e spegnimento per 3 secondi.

Poiché il piccolo motore della FAN richiede un massimo di 200 mA di corrente durante il funzionamento, viene utilizzato il metodo di attivazione del motore di tipo PWM (Pulse Width Modulation) per caricare il telefono a mano meno gravoso.

Il codice sorgente modificato è come di seguito.

***

#-*- codifica:utf-8 -*-

##

import subprocess, signal, sys

tempo di importazione, re

importa RPi. GPIO come g

##

A = 12

B = 16

VENTOLA = 25

##

g.setmode(g. BCM)

g.setup(A, g. OUT)

g.setup(B, g. OUT)

g.setup(FAN, g. OUT)

##

def signal_handler(sig, frame):

print('Hai premuto Ctrl+C!')

g.output(A, Falso)

g.output(B, Falso)

g.output(FAN, False)

f.chiudi()

sys.exit(0)

signal.signal(signal. SIGINT, signal_handler)

##

mentre vero:

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(codifica = 'UTF-8', errori = 'rigoroso')

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

# estrazione della temperatura attuale della CPU

##

current_temp = float(CPU_temp[0])

if current_temp > 30 e current_temp < 40:

# temperatura bassa A=0, B=0

g.output(A, Falso)

g.output(B, Falso)

tempo.sonno(5)

elif current_temp >= 40 e current_temp < 45:

# temperatura media A=1, B=0

g.output(A, Vero)

g.output(B, Falso)

tempo.sonno(5)

elif current_temp >= 45 e current_temp < 50:

# temperatura alta A=0, B=1

g.output(A, Falso)

g.output(B, Vero)

tempo.sonno(5)

elif current_temp >= 50:

# È richiesto il raffreddamento della CPU alto A=1, B=1

g.output(A, Vero)

g.output(B, Vero)

per i nell'intervallo (1, 20):

g.output(FAN, Vero)

tempo.sonno(10)

g.output(FAN, False)

tempo.sonno(3)

ora_corrente = ora.ora()

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

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

f.chiudi()

##

Poiché la logica di funzionamento di questo codice Python è quasi simile a quella del circuito dell'indicatore della temperatura della CPU, non ripeterò i dettagli qui.

Passaggio 9: funzionamento del circuito FAN

Funzionamento del circuito VENTOLA
Funzionamento del circuito VENTOLA

Guardando il grafico, la temperatura supera i 50 °C senza circuito FAN.

Sembra che la temperatura media della CPU sia di circa 40 ~ 47 °C mentre l'RPI è in funzione.

Se viene applicato un carico di sistema pesante come la riproduzione di Youtube sul browser Web, di solito la temperatura aumenta rapidamente fino a 60 ° C.

Ma con il circuito FAN, la temperatura verrà ridotta a meno di 50 °C entro 5 secondi dall'operazione di raffreddamento FAN.

Di conseguenza, puoi attivare l'RPI tutto il giorno e fare qualsiasi lavoro tu voglia senza preoccuparti del surriscaldamento.

Passaggio 10: ulteriore sviluppo

Ulteriori sviluppi
Ulteriori sviluppi

Come puoi vedere, metà del telaio in acrilico è rimasta vuota.

Metterò lì componenti aggiuntivi ed estenderò questo blocco di base della scatola RPI in qualcosa di più utile.

Ovviamente più addizione significa anche un po' di complessità in aumento.

Comunque sto integrando due circuiti in una singola scatola in questo progetto.

Grazie per aver letto questa storia.

Consigliato: