community italiana di domotica personale
 
Raspberry Pi sempre al fresco con l’accensione dinamica della ventola

Raspberry Pi sempre al fresco con l’accensione dinamica della ventola

SCOPI DEL PROGETTO:
  • Dotare il proprio Raspberry Pi di una ventola “intelligente” la quale, sulla base di una soglia termica, provveda dinamicamente alla sua accensione
  • Livello di difficoltà: elementare
  • Costo: basso (circa 10 euro)
CONCETTI AFFRONTATI:
  • Montaggio mini-ventola
  • Configurazione software
COMPONENTI SOFTWARE UTILIZZATE:
  • Sistema operativo Raspberry Pi OS (Raspbian) su Raspberry Pi
  • fanshim-python
Prerequisiti:
  • Raspberry Pi configurato e funzionante con sistema operativo Raspberry Pi OS (Raspbian)
COMPONENTI FISICI UTILIZZATI:
PROGETTO MAGGIORMENTE INDICATO PER:

Raspbian Logo

NOTE E DISCLAIMER
  • qualsiasi eventuale modifica agli impianti domestici dev'essere progettata e realizzata SOLO da personale qualificato;
  • qualsiasi modifica non prevista attuata in proprio è a propria responsabilità personale nonché a proprio rischio e pericolo (i contenuti della presenta pagina hanno infatti puro scopo didattico) e fa decadere garanzia, omologazioni e certificazioni di qualità; dei dispositivi interessati;
  • tutte le tecniche descritte si intendono applicate a software e firmware aggiornati alle ultime versioni disponibili;
  • questa pagina è materialmente scritta e manutenuta da più individui: non ci si aspetti né si pretenda un supporto personale. In presenza di difficoltà, chiedere supporto alla community sul nostro forum o sulla nostra chat.
Revisione progetto: 1.2
ATTENZIONE: Agli utenti che utilizzino, su Raspberry Pi, l’HUB domotico Home Assistant è consigliata, al posto della presente, una guida alternativa.

Abstract

Non è certo una novità che la dissipazione del calore dalle apparecchiature elettroniche sia, spesso, un grosso problema. Raspberry Pi, il mini computer più diffuso al mondo (comodo per tante diverse funzioni) non fa certo differenza, sebbene sia costruito talmente bene da riuscire, di per sé, a una discreta dissipazione passiva.

Fan SHIM
la ventola Fan-SHIM.

Il problema si pone quando si presentano dei picchi computazionali importanti (specialmente con il modello 4B), oppure quando, a prescindere, l’aria della stanza in cui è installato è calda, come per esempio capita d’estate. Per risolvere il problema è solitamente sufficiente collocare una piccola ventola di raffreddamento, la quale però solitamente presenta due problemi:

  • è perennemente accesa
  • talvolta (spesso) è rumorosa.

Abbiamo avuto modo di testare una ventola specifica, la nota Fan SHIM la quale, dotata di una micro board di controllo, consente – in abbinamento con un piccolo software da installare sul sistema operativo del Raspberry – di accendersi solo al raggiungimento di determinate temperature critiche, e spegnersi al di sotto di altre. Si tratta inoltre di una ventola particolarmente silenziosa.

Fan SHIM presenta anche un LED multicolore che indica l’operatività della ventola: ROSSO quando in rotazione, VERDE quando non operativa. Il pulsante, invece, serve per passare dalla modalità automatica (che vedremo come configurare a seguire) oppure manuale: una pressione lunga fa entrare in modalità manuale, una breve scambia da acceso a spento. Una nuova pressione lunga reimposta la ventola in modalità automatica.

N.b. Il produttore della ventola mette a disposizione delle librerie che consentono di gestire liberamente ventola, accensione e colore del LED, pulsante (vedi esempi).
Ma la ventola serve davvero?

Si tratta di un tema molto dibattuto. Quello che si è capito è che a prescindere il Raspberry Pi, quando si surriscalda, riduce la sua frequenza di clock: diventa quindi più lento. Per esempio, il Raspberry Pi 3 B+ gira normalmente a 1.4 GHz. Quando raggiungere i 60 gradi centigradi riduce la sua velocità a 1,2 GHz, mentre quando raggiunge gli 80 scende a 1,1 GHz. Questo effetto è ancora più percepibile su Raspberry Pi 4 B che, come noto, scalda di più.

Inoltre è noto come il calore, a prescindere, tenda a rovinare l’elettronica, arrivando fino a guastarla. Un Raspberry Pi che rallenta e si rovina nel tempo? Ognun per sé: noi però preferiamo adottare la ventola.

Montaggio della ventola

In primis è necessario montare fisicamente la ventola sul Raspberry. Per farlo è necessario spegnerlo – ovviamente previo shutdown controllato tramite il comanda via terminale (da CLI, via SSH oppure con control-alt-t da interfaccia desktop):

sudo shutdown now

Terminato lo spegnimento software (LED del Raspberry Pi non più lampeggianti), disalimentare elettricamente il Raspberry.


Il contenuto della confezione della Fan SHIM è il seguente:

  • Fan SHIM PCB (la micro-board bianco/nera);
  • mini-ventola da 30mm;
  • viti e bulloni in naylon.

Montare la ventola come da sequenza:

Fan Shim installazione - 2
foto pimoroni.com
Fan Shim installazione - 1
foto pimoroni.com
Fan Shim installazione - 3
foto pimoroni.com

Collegare il connettore femmina della ventola al connettore maschio presente sulla mini-board:

Fan Shim installazione - 4
foto pimoroni.com
Fan Shim installazione - 5
foto pimoroni.com

Rimuovere eventuali dissipatori passivi incollati sul processore del Raspberry e pulire eventuali residui.
Posizionare, incastrandola sui pin del Raspberry (si sostiene per frizione), la miniboard della Fan Shim come da immagine:

Fan Shim installazione - 6
foto pimoroni.com

Il montaggio è così completato.

Installazione software

Riaccendere il Raspberry e accedere nuovamente al terminale per installare il software fanshim-python tramite i comandi:

git clone https://github.com/pimoroni/fanshim-python
cd fanshim-python
sudo ./install.sh

Terminata la procedura le librerie necessarie per il funzionamento saranno state installate.

Configurazione

Dopo aver installato il software sarà necessario eseguire un altro comando per creare e impostare un servizio ad esecuzione automatica, fornendogli inoltre quali siano siano le temperature di soglia (sia quella sopra la quale la ventola debba attivarsi, sia quella sotto la quale debba spegnersi).

Per far ciò, i comandi da eseguire sono (sempre da terminale, e sempre da dentro la cartella “fanshim-python” nella quale già ci troviamo):

cd examples
sudo ./install-service.sh --on-threshold 50 --off-threshold 40 --delay 2

I due valori indicati (50 e 40) sono i due valori centigradi sopra il quale (il primo) la ventola parte, al di sotto del quale (il secondo) la ventola si ferma. Il terzo valore (2) indica ogni quanti secondi verificare la temperatura. Ovviamente questi parametri possono essere cambiati a piacimento.

Dopo l’esecuzione del secondo comando, la modalità automatica sarà operativa e la ventola partirà o si fermerà a momento debito.

Servizio

Per modificare in un secondo momento le impostazioni, utilizzare il seguenti comandi:

sudo systemctl stop pimoroni-fanshim.service
sudo ./install-service.sh --on-threshold XX --off-threshold YY --delay Z

avendo ovviamente cura di personalizzare i valori XX, YY e ZZ.

Per fermare il servizio automatico eseguire i seguenti comandi:

sudo systemctl stop pimoroni-fanshim.service
sudo systemctl disable pimoroni-fanshim.service

mentre, per avviarlo nuovamente, usare i seguenti:

sudo systemctl enable pimoroni-fanshim.service
sudo systemctl start pimoroni-fanshim.service

Domotica (e non solo): conviene “farsi” un Raspberry Pi?

Questa pagina è redatta, manutenuta e aggiornata dallo staff di inDomus, un gruppo di persone molto diverse tra loro che trovi, per domande e supporto, sul forum e sulla chat del sito. Se ti sei perso, a tua disposizione c'è la mappa.