Table des matières:
- Étape 1: Pièces nécessaires
- Étape 2: Connexions électriques
- Étape 3: Programme pour contrôler la vitesse du ventilateur
- Étape 4: Exécutez le programme au démarrage
Vidéo: Ventilateur régulé PWM basé sur la température du processeur pour Raspberry Pi : 4 étapes (avec photos)
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:06
De nombreux boîtiers pour Raspberry Pi sont livrés avec un petit ventilateur 5V afin d'aider à refroidir le processeur. Cependant, ces ventilateurs sont généralement assez bruyants et de nombreuses personnes les branchent sur la broche 3V3 pour réduire le bruit. Ces ventilateurs sont généralement évalués à 200 mA, ce qui est assez élevé pour le régulateur 3V3 du RPi. Ce projet vous apprendra comment réguler la vitesse du ventilateur en fonction de la température du processeur. Contrairement à la plupart des tutoriels couvrant ce sujet, nous n'allons pas seulement allumer ou éteindre le ventilateur, mais nous contrôlerons sa vitesse comme cela se fait sur un PC grand public, en utilisant Python.
Étape 1: Pièces nécessaires
Pour ce projet, nous n'utiliserons que quelques composants qui sont généralement inclus dans les kits électroniques pour amateur que vous pouvez trouver sur Amazon, comme celui-ci.
- Raspberry Pi exécutant Raspbian (mais devrait fonctionner avec d'autres distributions).
- Ventilateur 5V (mais un ventilateur 12V peut être utilisé avec un transistor adapté et une alimentation 12V).
- Transistor NPN qui prend en charge au moins 300mA, comme un 2N2222A.
- Résistance 1K.
- 1 diode.
Facultatif, pour mettre les composants à l'intérieur du boîtier (mais pas encore fait):
- Un petit bout de protoboard, pour souder les composants.
- Grand thermorétractable, pour protéger la planche.
Étape 2: Connexions électriques
La résistance peut être branchée dans les deux sens, mais faites attention au sens du transistor et de la diode. La cathode de la diode doit être connectée au fil +5V (rouge) et l'anode doit être connectée au fil GND (noir). Vérifiez votre doc de transistor pour les broches de l'émetteur, de la base et du collecteur. La terre du ventilateur doit être connectée au collecteur et la terre du Rpi doit être connectée à l'émetteur
Afin de contrôler le ventilateur, nous devons utiliser un transistor qui sera utilisé en configuration à collecteur ouvert. En faisant cela, nous avons un interrupteur qui va connecter ou déconnecter le fil de terre du ventilateur à la terre du raspberry pi.
Un transistor NPN BJT conduit en fonction du courant qui circule dans sa grille. Le courant qui pourra circuler du collecteur (C) à l'émetteur (E) est:
Ic = B * Ib
Ic est le courant qui traverse le collecteur l'émetteur, Ib est le courant qui traverse la base jusqu'à l'émetteur, et B (bêta) est une valeur dépendant de chaque transistor. Nous approximons B = 100.
Comme notre ventilateur est évalué à 200 mA, nous avons besoin d'au moins 2 mA à travers la base du transistor. La tension entre la base et l'émetteur (Vbe) est considérée comme constante et Vbe = 0,7V. Cela signifie que lorsque le GPIO est activé, nous avons 3,3 - 0,7 = 2,6 V à la résistance. Pour avoir 2mA à travers cette résistance, nous avons besoin d'une résistance maximale de 2,6 / 0,002 = 1300 ohms. Nous utilisons une résistance de 1000 ohm pour simplifier et garder une marge d'erreur. Nous aurons 2,6 mA via la broche GPIO, ce qui est totalement sûr.
Comme un ventilateur est essentiellement un moteur électrique, il s'agit d'une charge inductive. Cela signifie que lorsque le transistor cesse de conduire, le courant dans le ventilateur continuera à circuler alors qu'une charge inductive essaie de maintenir le courant constant. Cela entraînerait une haute tension sur la broche de masse du ventilateur et pourrait endommager le transistor. C'est pourquoi nous avons besoin d'une diode en parallèle avec le ventilateur qui fera circuler le courant en permanence à travers le moteur. Ce type de configuration de diode s'appelle une diode à volant
Étape 3: Programme pour contrôler la vitesse du ventilateur
Pour contrôler la vitesse du ventilateur, nous utilisons un signal PWM logiciel de la bibliothèque RPi. GPIO. Un signal PWM est bien adapté pour piloter des moteurs électriques, car leur temps de réaction est très élevé par rapport à la fréquence PWM.
Utilisez le programme calib_fan.py pour trouver la valeur FAN_MIN en exécutant dans le terminal:
python calib_fan.py
Vérifiez plusieurs valeurs entre 0 et 100% (devrait être autour de 20%) et voyez quelle est la valeur minimale pour que votre ventilateur s'allume.
Vous pouvez modifier la correspondance entre la température et la vitesse du ventilateur au début du code. Il doit y avoir autant de tempSteps que de valeurs speedSteps. C'est la méthode qui est généralement utilisée dans les cartes mères PC, en déplaçant des points sur un graphique Temp/Vitesse à 2 axes.
Étape 4: Exécutez le programme au démarrage
Pour exécuter le programme automatiquement au démarrage, j'ai fait un script bash où je mets tous les programmes que je veux lancer, puis je lance ce script bash au démarrage avec rc.locale
- Créez un répertoire /home/pi/Scripts/ et placez le fichier fan_ctrl.py dans ce répertoire.
- Dans le même répertoire, créez un fichier nommé launcher.sh et copiez le script ci-dessous.
- Editez le fichier /etc/rc.locale et ajoutez une nouvelle ligne avant le "exit 0": sudo sh '/home/pi/Scripts/launcher.sh'
script launcher.sh:
#!/bin/sh#launcher.sh # accédez au répertoire personnel, puis à ce répertoire, puis exécutez le script python, puis revenez à homelocalecd /cd /home/pi/Scripts/sudo python3./fan_ctrl.py &cd /
Si vous souhaitez l'utiliser avec OSMC par exemple, vous devez le démarrer en tant que service avec systemd.
- Téléchargez le fichier fanctrl.service.
- Vérifiez le chemin d'accès à votre fichier python.
- Placez fanctrl.service dans /lib/systemd/system.
- Enfin, activez le service avec sudo systemctl enable fanctrl.service.
Cette méthode est plus sûre, car le programme sera automatiquement redémarré s'il est tué par l'utilisateur ou le système.
Conseillé:
Raspberry Pi Box of Cooling FAN avec indicateur de température du processeur : 10 étapes (avec photos)
Raspberry Pi Box of Cooling FAN With CPU Temperature Indicator: J'avais introduit le circuit indicateur de température du processeur Raspberry Pi (ci-après RPI) dans le projet précédent. Le circuit affiche simplement le niveau de température du processeur RPI 4 comme suit. La température du processeur est comprise entre 30 et
3 $ Conduit de ventilateur d'admission de processeur d'ordinateur: 7 étapes (avec photos)
3 $ Conduit de ventilateur d'admission de processeur d'ordinateur : Avoir un conduit d'admission directement du côté du boîtier de votre ordinateur dans le ventilateur du processeur peut vous offrir un meilleur refroidissement que toute autre option de refroidissement (à air). Au lieu d'utiliser de l'air aspiré par un port avant, qui a le temps de se réchauffer à partir d'un autre composant
Moniteur météorologique M5Stack M5stick C basé sur ESP32 avec DHT11 - Surveiller la température, l'humidité et l'indice de chaleur sur le M5stick-C avec DHT11 : 6 étapes
Moniteur météorologique M5Stack M5stick C basé sur ESP32 avec DHT11 | Surveiller l'indice d'humidité et de chaleur de la température sur M5stick-C avec DHT11 : Salut les gars, dans ces instructables, nous apprendrons comment interfacer le capteur de température DHT11 avec m5stick-C (une carte de développement par m5stack) et l'afficher sur l'écran de m5stick-C. Donc, dans ce tutoriel, nous allons lire la température, l'humidité & chauffer je
Tapis de refroidissement pour ordinateur portable DIY - Awesome Life Hacks avec ventilateur CPU - Idées créatives - Ventilateur d'ordinateur : 12 étapes (avec photos)
Tapis de refroidissement pour ordinateur portable DIY | Awesome Life Hacks avec ventilateur CPU | Idées créatives | Fan d'ordinateur : vous devez regarder cette vidéo jusqu'à la fin. pour comprendre la vidéo
Ventilateur de refroidissement du processeur AMD sur une carte graphique PowerColor ATI Radeon X1650. : 8 étapes
Ventilateur de refroidissement du processeur AMD sur une carte graphique PowerColor ATI Radeon X1650.: J'ai cette ancienne carte graphique PowerColor ATI Radeon X1650 qui fonctionne toujours. Mais le principal problème est que le ventilateur de refroidissement n'est pas suffisant et qu'il se bloque toujours à peu près. J'ai trouvé un vieux ventilateur de refroidissement pour un processeur AMD Athlon 64 et je l'ai utilisé à la place