Sommario:

Controlla una ventola di raffreddamento su un Raspberry Pi 3: 9 passaggi
Controlla una ventola di raffreddamento su un Raspberry Pi 3: 9 passaggi

Video: Controlla una ventola di raffreddamento su un Raspberry Pi 3: 9 passaggi

Video: Controlla una ventola di raffreddamento su un Raspberry Pi 3: 9 passaggi
Video: Raspberry Pi 5: Piccolo ma... INFIAMMABILE 😂 2024, Luglio
Anonim
Controlla una ventola di raffreddamento su un Raspberry Pi 3
Controlla una ventola di raffreddamento su un Raspberry Pi 3

Aggiungi una ventola a un lampone pi 3, con il controllo per accenderlo e spegnerlo secondo necessità.

Un modo semplice per aggiungere una ventola è semplicemente collegare i cavi della ventola a un pin da 3,3 V o 5 V ea terra. Usando questo approccio, la ventola funzionerà sempre.

Penso che sia molto più interessante accendere la ventola quando ha raggiunto o superato una soglia di alta temperatura, e poi spegnerla quando la CPU si è raffreddata al di sotto di una soglia di bassa temperatura.

L'istruzione presuppone che tu abbia una configurazione e un funzionamento di Raspberry Pi 3 e che tu voglia aggiungere una ventola. Nel mio caso, sto usando Kodi su OSMC.

Passaggio 1: prestazioni e temperatura della CPU

Non ci sono azioni qui. Queste sono solo informazioni di base e puoi passare al passaggio successivo:

Un dissipatore di calore è sufficiente per la maggior parte delle applicazioni Raspberry Pi 3 e non è necessaria una ventola.

Un Raspberry Pi overcloccato dovrebbe usare una ventola.

Su kodi, se non disponi di una chiave di licenza MPEG-2, potresti ottenere l'icona di un termometro, che indica la necessità di una licenza o di un ventilatore.

La CPU del Raspberry Pi 3 è specificata per funzionare tra -40°C e 85°C. Se la temperatura della CPU supera gli 82°C, la velocità di clock della CPU sarà rallentata fino a quando la temperatura non scenderà al di sotto degli 82°C.

Un aumento della temperatura della CPU farà rallentare i semiconduttori perché aumentando la temperatura aumenta la resistenza. Tuttavia, un aumento della temperatura da 50°C a 82°C ha un impatto trascurabile sulle prestazioni della CPU di un Raspberry Pi 3.

Se la temperatura della CPU Raspberry Pi 3' è superiore a 82°C, la CPU viene rallentata (la velocità di clock viene ridotta). Se viene applicato lo stesso carico, la CPU potrebbe avere difficoltà a rallentarla abbastanza velocemente, specialmente se è overcloccata. Poiché i semiconduttori hanno un coefficiente di temperatura negativo, quando la temperatura supera le specifiche, la temperatura potrebbe fuoriuscire e la CPU potrebbe guastarsi e sarà necessario lanciare il Raspberry Pi.

L'esecuzione della CPU a temperature elevate riduce la durata della CPU.

Passaggio 2: pin e resistori GPIO

Non ci sono azioni qui. Queste sono solo informazioni di base e puoi passare al passaggio successivo:

Poiché non sono un ingegnere elettrico e ho seguito le istruzioni dei progetti in rete, così facendo ho danneggiato un discreto numero di pin GPIO e alla fine ho dovuto lanciare più di un Raspberry Pi. Ho anche provato l'overclocking e ho finito per buttare via alcuni Raspberry Pi che non funzionavano più.

Un'applicazione comune consiste nell'aggiungere un pulsante a un Raspberry Pi. L'inserimento di un pulsante tra un pin da 5 V o 3,3 V e un pin di terra, crea effettivamente un cortocircuito quando il pulsante viene premuto. Perché non c'è carico tra la sorgente di tensione e la terra. Lo stesso accade quando viene utilizzato un pin GPIO per l'uscita (o l'ingresso) a 3,3 V.

Un altro problema è che quando un pin di input non è collegato, "fluttuerà", il che significa che il valore letto non è definito e se il tuo codice sta agendo in base al valore letto, sarà irregolare.

È necessario un resistore tra un pin GPIO e qualsiasi cosa a cui si collega.

I pin GPIO hanno resistori interni di pull up e pull down. Questi possono essere abilitati con la funzione di configurazione della libreria GPIO:

GPIO.setup(canale, GPIO. IN, pull_up_down=GPIO. PUD_UP)

GPIO.setup(canale, GPIO. IN, pull_up_down=GPIO. PUD_DOWN)

Oppure si può inserire un resistore fisico. In questo istruibile, ho usato un resistore fisico, ma puoi provare il resistore interno e abilitarlo con la libreria GPIO.

Dal sito web di Arduino Playground nell'appendice di riferimento:

"Un resistore di pull-up "tira" debolmente la tensione del filo a cui è collegato verso il suo livello di sorgente di tensione quando gli altri componenti sulla linea sono inattivi. Quando l'interruttore sulla linea è aperto, è ad alta impedenza e agisce come se fosse scollegato. Poiché gli altri componenti si comportano come se fossero scollegati, il circuito si comporta come se fosse scollegato e la resistenza di pull-up porta il filo al livello logico alto. Quando un altro componente sulla linea si attiva, sovrascriverà il livello logico alto impostato dal resistore di pull-up. Il resistore di pull-up assicura che il filo si trovi a un livello logico definito anche se nessun dispositivo attivo è collegato ad esso."

Passaggio 3: parti

Puoi usare quasi tutto, ma queste sono le parti che ho usato io.

Parti:

  • Transistor NPN S8050

    250 pezzi assortiti $ 8,99, o circa $ 0,04

  • Resistenza da 110 Ohm

    400 resistori per $ 5,70 o circa $ 0,01

  • Micro Fan, requisiti nella descrizione o specifiche:

    • circa $ 6,00
    • senza spazzole
    • silenzioso
    • Amp o Watt più bassi rispetto a un ventilatore simile
    • Nella descrizione, cerca qualcosa come "tensione di lavoro di 2V-5V"
  • ponticelli femmina-femmina e maschio-femmina
  • tagliere
  • Raspberry Pi 3
  • Alimentazione 5.1V 2.4A

Appunti:

Il testo racchiuso tra picche deve essere sostituito dai tuoi dati, tuo-dati♣

Passaggio 4: Schema

Schema
Schema

run-fan richiede un transistor NPN S8050 e un resistore da collegare come segue:

Il lato piatto di S8050 è rivolto in questo modo >

  • S8050 pin c: si collega al filo nero (-) sulla ventola
  • S8050 pin b: si collega al resistore da 110 Ohm e al pin GPIO 25
  • Pin e S8050: si collega al pin GPIO di terra
  • ventola rossa (+): si collega al pin GPIO 3.3v su raspberry pi 3

Viene utilizzato il pin 25 GPIO, ma può essere modificato con qualsiasi pin di ingresso GPIO

Passaggio 5: ottenere lo script

Accedi al tuo Raspberry Pi con uno dei seguenti:

$ ssh osmc@♣indirizzo-ip♣

$ shh osmc@♣osmc-hostname♣.local

E poi puoi scaricare lo script usando:

$ sudo wget "https://raw.githubusercontent.com/dumbo25/rpi-fan/master/run-fan.py"

Sto usando kodi su osmc e l'utente è osmc. Se hai l'utente pi, cambia semplicemente tutte le occorrenze di osmc con pi nello script e nel servizio.

Rendi eseguibile lo script.

$ sudo chmod +x run-fan.py

Accendo la ventola a 60 C. Se la temperatura iniziale è impostata su un valore troppo basso, la ventola si accenderà per raffreddare la CPU e, quando si spegne la ventola, la temperatura è quasi tornata alla temperatura iniziale. Prova 45 C per vedere questo effetto. Non sono sicuro di quale sia la temperatura ottimale.

Passaggio 6: avviare automaticamente lo script

Avvia automaticamente lo script
Avvia automaticamente lo script

Per avviare automaticamente run-fan, usa systemd

Accedi al tuo Raspberry Pi con uno dei seguenti:

$ ssh osmc@♣indirizzo-ip♣

$ shh osmc@♣osmc-hostname♣.local

E poi puoi scaricare il file del servizio systemd usando:

$ sudo wget https://raw.githubusercontent.com/dumbo25/rpi-fan/…

Oppure, puoi creare un file di servizio systemd copiando il contenuto del servizio run-fan da github e quindi eseguendo:

$ sudo nano /lib/systemd/system/run-fan.service

Incolla i contenuti da github nel file

ctrl-o, INVIO, ctrl-x per salvare ed uscire dall'editor nano

Il file deve essere di proprietà di root e deve essere in /lib/systemd/system. I comandi sono:

$ sudo chown root:root run-fan.service

$ sudo mv run-fan.service /lib/systemd/system/.

Dopo ogni modifica a /lib/systemd/system/run-fan.service:

$ sudo systemctl daemon-reload

$ sudo systemctl enable run-fan.service $ sudo reboot

Dopo aver riavviato il tuo Raspberry Pi, la ventola dovrebbe funzionare!

In caso di problemi con l'avvio dello script al riavvio, controllare l'argomento systemd nell'Appendice per la risoluzione dei problemi.

Passaggio 7: Appendice: Riferimenti

Domande frequenti sull'organizzazione di Raspberry Pi per la temperatura

Hackernoon: come controllare un fan

Spiegazione dei computer: video di raffreddamento

Tom's Hardware: effetto della temperatura sulle prestazioni

Sistemi Puget: impatto della temperatura sulle prestazioni della CPU

Resistori Pull Up e Pull Down

Passaggio 8: Appendice: Aggiornamenti

Per fare: unire il circuito del ricevitore RF con il controller della ventola

Passaggio 9: Appendice: risoluzione dei problemi

Controllo del servizio systemd

Per assicurarti che run-fan.service in systemd sia abilitato e in esecuzione, esegui uno o più comandi:

$ systemctl list-unit-files | grep abilitato

$ systemctl | grep in esecuzione | grep fan $ systemctl status run-fan.service -l

In caso di problemi con l'avvio dello script utilizzando systemd, esaminare il journal utilizzando:

$ sudo journalctl -u run-fan.service

Per verificare se run-fan.py è in esecuzione:

$ cat /home/osmc/run-fan.log

Consigliato: