Table des matières:

Contrôler un ventilateur de refroidissement sur un Raspberry Pi 3: 9 étapes
Contrôler un ventilateur de refroidissement sur un Raspberry Pi 3: 9 étapes

Vidéo: Contrôler un ventilateur de refroidissement sur un Raspberry Pi 3: 9 étapes

Vidéo: Contrôler un ventilateur de refroidissement sur un Raspberry Pi 3: 9 étapes
Vidéo: [test] double ventilateur pour raspberry pi 3b / 3b+ geeekpi 2024, Juillet
Anonim
Contrôler un ventilateur de refroidissement sur un Raspberry Pi 3
Contrôler un ventilateur de refroidissement sur un Raspberry Pi 3

Ajoutez un ventilateur à un raspberry pi 3, avec un contrôle pour l'allumer et l'éteindre selon les besoins.

Un moyen simple d'ajouter un ventilateur consiste simplement à connecter les fils du ventilateur à une broche 3,3 V ou 5 V et à la terre. En utilisant cette approche, le ventilateur fonctionnera tout le temps.

Je pense qu'il est beaucoup plus intéressant d'allumer le ventilateur lorsqu'il a atteint ou dépassé un seuil de température élevé, puis de l'éteindre lorsque le CPU a été refroidi en dessous d'un seuil de température bas.

L'instructable suppose que vous avez une configuration Raspberry Pi 3 et que vous souhaitez ajouter un ventilateur. Dans mon cas, j'utilise Kodi sur OSMC.

Étape 1: Performances et température du processeur

Il n'y a aucune action ici. Ce ne sont que des informations générales et vous pouvez passer à l'étape suivante:

Un dissipateur thermique est suffisant pour la plupart des applications Raspberry Pi 3 et un ventilateur n'est pas nécessaire.

Un raspberry pi overclocké devrait utiliser un ventilateur.

Sur kodi, si vous n'avez pas de clé de licence MPEG-2, vous pouvez obtenir une icône de thermomètre, qui indique la nécessité d'une licence ou d'un ventilateur.

Le processeur du Raspberry Pi 3 est conçu pour fonctionner entre -40°C et 85°C. Si la température du processeur dépasse 82°C, la vitesse d'horloge du processeur sera ralentie jusqu'à ce que la température descende en dessous de 82°C.

Une augmentation de la température du processeur ralentira le fonctionnement des semi-conducteurs, car l'augmentation de la température augmente la résistance. Cependant, une augmentation de la température de 50 °C à 82 °C a un impact négligeable sur les performances du processeur d'un Raspberry Pi 3.

Si la température du processeur Raspberry Pi 3' est supérieure à 82°C, alors le processeur est étranglé (la vitesse d'horloge est réduite). Si la même charge est appliquée, le processeur peut avoir du mal à le ralentir suffisamment rapidement, surtout s'il est overclocké. Étant donné que les semi-conducteurs ont un coefficient de température négatif, lorsque la température dépasse les spécifications, la température peut s'emballer et le processeur peut tomber en panne et vous devrez jeter le Raspberry Pi.

L'exécution du CPU à haute température raccourcit la durée de vie du CPU.

Étape 2: Broches et résistances GPIO

Il n'y a aucune action ici. Ce ne sont que des informations générales et vous pouvez passer à l'étape suivante:

Parce que je ne suis pas ingénieur électricien et que j'ai suivi les instructions des projets sur le net, ce faisant, j'ai endommagé un bon nombre de broches GPIO et j'ai finalement dû jeter plus d'un Raspberry Pi. J'ai également essayé l'overclocking et j'ai fini par jeter quelques Raspberry Pis qui ne fonctionnaient plus.

Une application courante consiste à ajouter un bouton poussoir à un Raspberry Pi. L'insertion d'un bouton-poussoir entre une broche 5V ou 3,3V et une broche de masse crée efficacement un court-circuit lorsque le bouton est enfoncé. Parce qu'il n'y a pas de charge entre la source de tension et la terre. La même chose se produit lorsqu'une broche GPIO est utilisée pour une sortie (ou une entrée) de 3,3 V.

Un autre problème est que lorsqu'une broche d'entrée n'est pas connectée, elle « flottera », ce qui signifie que la valeur lue n'est pas définie et si votre code prend des mesures en fonction de la valeur lue, il le sera de manière erratique.

Une résistance est requise entre une broche GPIO et tout ce à quoi elle se connecte.

Les broches GPIO ont des résistances internes pull up et pull down. Ceux-ci peuvent être activés avec la fonction de configuration de la bibliothèque GPIO:

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

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

Ou une résistance physique peut être insérée. Dans ce instructable, j'ai utilisé une résistance physique, mais vous pouvez essayer la résistance interne et l'activer avec la bibliothèque GPIO.

À partir du site Web Arduino Playground dans la référence de l'annexe:

"Une résistance de pull-up" tire "faiblement la tension du fil auquel elle est connectée vers son niveau de source de tension lorsque les autres composants de la ligne sont inactifs. Lorsque l'interrupteur de la ligne est ouvert, il est à haute impédance et agit comme s'il était déconnecté. Étant donné que les autres composants agissent comme s'ils étaient déconnectés, le circuit agit comme s'il était déconnecté et la résistance de rappel amène le fil au niveau logique haut. Lorsqu'un autre composant de la ligne devient actif, il annulera le niveau logique élevé défini par la résistance de rappel. La résistance de rappel garantit que le fil est à un niveau logique défini même si aucun périphérique actif n'y est connecté."

Étape 3: Pièces

Vous pouvez utiliser presque tout, mais ce sont les pièces que j'ai utilisées.

Les pièces:

  • Transistor NPN S8050

    250 pièces assorties 8,99 $, soit environ 0,04 $

  • Résistance 110 Ohms

    400 résistances pour 5,70 $, soit environ 0,01 $

  • Micro Fan, exigences dans la description ou les spécifications:

    • environ 6,00 $
    • sans balais
    • silencieux
    • Ampère ou Watts le plus bas par rapport à un ventilateur similaire
    • Dans la description, recherchez quelque chose comme "tension de travail de 2V-5V"
  • fils de liaison femelle-femelle et mâle-femelle
  • planche à pain
  • Framboise Pi 3
  • Alimentation 5.1V 2.4A

Remarques:

Le texte entre les piques est destiné à être remplacé par vos données, « vos-données »

Étape 4: Schéma

Schématique
Schématique

run-fan nécessite un transistor S8050 NPN et une résistance à connecter comme suit:

Le côté plat du S8050 est orienté de cette façon >

  • S8050 broche c: se connecte au fil noir (-) du ventilateur
  • S8050 broche b: se connecte à la résistance 110 Ohm et à la broche GPIO 25
  • Broche S8050 e: se connecte à la broche GPIO de masse
  • ventilateur rouge (+): se connecte à la broche GPIO 3.3v sur raspberry pi 3

La broche GPIO 25 est utilisée, mais elle peut être remplacée par n'importe quelle broche d'entrée GPIO

Étape 5: Obtenez le script

Connectez-vous à votre raspberry pi avec l'un des éléments suivants:

$ ssh osmc@♣adresse-ip♣

$ chut osmc@♣osmc-hostname♣.local

Et puis vous pouvez télécharger le script en utilisant:

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

J'utilise kodi sur osmc et l'utilisateur est osmc. Si vous avez l'utilisateur pi, modifiez simplement toutes les occurrences d'osmc avec pi dans le script et dans le service.

Rendez le script exécutable.

$ sudo chmod +x run-fan.py

J'allume le ventilateur à 60 °C. Si la température de démarrage est trop basse, le ventilateur s'allumera pour refroidir le processeur et au moment où le ventilateur est éteint, la température est presque revenue à la température de démarrage. Essayez 45 C pour voir cet effet. Je ne sais pas quelle est la température optimale.

Étape 6: démarrer automatiquement le script

Démarrer automatiquement le script
Démarrer automatiquement le script

Pour que run-fan démarre automatiquement, utilisez systemd

Connectez-vous à votre raspberry pi avec l'un des éléments suivants:

$ ssh osmc@♣adresse-ip♣

$ chut osmc@♣osmc-hostname♣.local

Et puis vous pouvez télécharger le fichier de service systemd en utilisant:

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

Ou, vous pouvez créer un fichier de service systemd en copiant le contenu du service run-fan à partir de github, puis en exécutant:

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

Collez le contenu de github dans le fichier

ctrl-o, ENTER, ctrl-x pour enregistrer et quitter l'éditeur nano

Le fichier doit appartenir à root et doit se trouver dans /lib/systemd/system. Les commandes sont:

$ sudo chown root:root run-fan.service

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

Après toute modification apportée à /lib/systemd/system/run-fan.service:

$ sudo systemctl démon-recharger

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

Après avoir redémarré votre Raspberry Pi, le ventilateur devrait fonctionner !

Si vous rencontrez des problèmes avec le démarrage du script au redémarrage, consultez la rubrique systemd dans l'annexe de dépannage.

Étape 7: Annexe: Références

Faq sur la température Raspberry Pi Org

Hackernoon: Comment contrôler un ventilateur

Expliquer les ordinateurs: vidéos de refroidissement

Tom's Hardware: Effet de la température sur les performances

Systèmes Puget: impact de la température sur les performances du processeur

Résistances Pull Up et Pull Down

Étape 8: Annexe: Mises à jour

À faire: fusionner la carte de circuit imprimé du récepteur RF avec le contrôleur de ventilateur

Étape 9: Annexe: Dépannage

Vérification du service systemd

Pour vous assurer que run-fan.service dans systemd est activé et en cours d'exécution, exécutez une ou plusieurs des commandes:

$ systemctl list-unit-files | grep activé

$ systemctl | grep en cours d'exécution | grep fan $ systemctl status run-fan.service -l

S'il y a des problèmes avec le démarrage du script à l'aide de systemd, examinez le journal à l'aide de:

$ sudo journalctl -u run-fan.service

Pour vérifier si run-fan.py est en cours d'exécution:

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

Conseillé: