Table des matières:
- Étape 1: Préparation des schémas
- Étape 2: Préparation des pièces
- Étape 3: Faire un dessin de PCB
- Étape 4: Souder
- Étape 5: fabrication et montage du chapeau de ventilateur de refroidissement
- Étape 6: Assembler les PCB
- Étape 7: Câblage du RPI avec des circuits
- Étape 8: le programme Python contrôle tous les circuits
- Étape 9: Fonctionnement du circuit du VENTILATEUR
- Étape 10: Développement ultérieur
Vidéo: Raspberry Pi Box of Cooling FAN avec indicateur de température du processeur : 10 étapes (avec photos)
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:05
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 différent comme suit.
- LED verte allumée lorsque la température du processeur est comprise entre 30 et 39 degrés
- La LED jaune indique que la température est augmentée dans une plage de 40 à 45 degrés
- La 3ème LED rouge indique que le processeur devient un peu chaud en atteignant 46 ~ 49 degrés
- Une autre LED rouge clignote lorsque la température dépasse plus de 50 degrés
***
Lorsque la température dépasse plus de 50C, toute aide sera nécessaire pour que peu de RPI ne soit pas trop stressé.
Selon les informations que j'ai vues sur plusieurs pages Web qui parlent du niveau de température maximum tolérable du RPI, les opinions sont diverses, comme quelqu'un mentionne que plus de 60 ° C est toujours tout à fait correct lorsque le dissipateur thermique est utilisé.
Mais mon expérience personnelle dit quelque chose de différent que le serveur de transmission (utilisant RPI avec dissipateur de chaleur) devient lent et finalement agit comme un zombie lorsque je l'allume pendant plusieurs heures.
Par conséquent, ce circuit supplémentaire et ce ventilateur de refroidissement sont ajoutés pour réguler la température du processeur en dessous de 50 °C afin de prendre en charge un fonctionnement stable du RPI.
***
Le circuit indicateur de température du processeur précédemment introduit (ci-après INDICATEUR) est également intégré pour prendre en charge une vérification pratique du niveau de température sans exécuter la commande "vcgencmd measure_temp" sur le terminal de la console.
Étape 1: Préparation des schémas
Dans deux projets précédents, j'avais mentionné l'isolation complète de l'alimentation entre le RPI et les circuits externes.
En cas de refroidissement par VENTILATEUR, l'alimentation indépendante est assez importante car le VENTILATEUR DC 5V (moteur) est une charge relativement lourde et assez bruyante pendant le fonctionnement.
Par conséquent, les considérations suivantes sont soulignées pour la conception de ce circuit.
- Les opto-coupleurs sont utilisés pour s'interfacer avec la broche RPI GPIO pour obtenir le signal d'activation du ventilateur de refroidissement
- Aucune puissance tirée du RPI et utilisation d'un chargeur de téléphone portable commun pour la source d'alimentation de ce circuit.
- L'indicateur LED est utilisé pour informer le fonctionnement du ventilateur de refroidissement
- Le relais 5V est utilisé pour activer le ventilateur de refroidissement de manière mécanique
***
Ce circuit interopérera avec le circuit indicateur de température du processeur (ci-après INDICATEUR) au moyen du contrôle du programme python.
Lorsque l'INDICATEUR commence à clignoter (la température dépasse 50C), ce circuit de VENTILATEUR de refroidissement doit commencer à fonctionner.
Étape 2: Préparation des pièces
Comme d'autres projets précédents, des composants très courants sont utilisés pour fabriquer un circuit de ventilateur de refroidissement, comme indiqué ci-dessous.
- Opto-coupleur: PC817 (SHARP) x 1
- 2N3904 (NPN) x 1, BD139 (NPN) x 1
- Relais 5V TQ2-5V (Panasonic)
- Diode 1N4148
- Résistances (1/4Watt): 220ohm x 2 (limitation de courant), 2.2K (commutation de transistor) x 2
- LED x 1
- VENTILATEUR de refroidissement 5V 200mA
- Carte universelle de plus de 20 (W) par 20 (H) tailles de trous (vous pouvez couper n'importe quelle taille de carte universelle pour s'adapter au circuit)
- Fil d'étain (Veuillez vous référer à ma publication de projet "Indicateur d'arrêt Raspberry Pi" pour plus de détails sur l'utilisation du fil d'étain)
- Câble (câble unipolaire commun rouge et bleu)
- Tout chargeur de téléphone portable entrée 220V et sortie 5V (connecteur USB type B)
- Tête de broche (3 broches) x 2
***
La dimension physique du ventilateur de refroidissement doit être suffisamment petite pour être montée sur le dessus du RPI.
Tout type de relais peut être utilisé lorsqu'il peut fonctionner à 5V et avoir plus d'un contact mécanique.
Étape 3: Faire un dessin de PCB
Comme le nombre de composants est petit, la taille de PCB universelle requise n'est pas grande.
Veuillez prendre soin de la disposition de la polarité des broches du TQ2-5V comme indiqué dans l'image ci-dessus. (Contrairement à la pensée conventionnelle, la disposition réelle plus/sol est inversée)
Personnellement, j'ai un problème inattendu après la soudure en raison des broches de polarité situées à l'envers (par rapport à d'autres produits de relais) de TQ2-5V.
Étape 4: Souder
Comme le circuit lui-même est assez simple, le schéma de câblage n'est pas très complexe.
Je boulonne le support de montage en forme de "L" pour fixer le PCB dans le sens vertical.
Comme vous pouvez le voir plus tard, le châssis en acrylique sur lequel tout est monté est de taille un peu petit.
Par conséquent, un rétrécissement de l'empreinte est nécessaire car le châssis en acrylique est très encombré de PCB et d'autres sous-pièces.
La LED est située à l'avant pour reconnaître facilement le fonctionnement du VENTILATEUR.
Étape 5: fabrication et montage du chapeau de ventilateur de refroidissement
Je suppose que le PCB universel est une partie très utile qui peut être utilisée à diverses fins.
Le ventilateur de refroidissement est monté sur un PCB universel et monté et fixé avec des boulons et des écrous.
Pour permettre la circulation de l'air, je fais un gros trou en perçant le PCB.
Également pour faciliter le branchement des câbles de démarrage, la zone GIPO 40 broches est ouverte en coupant le PCB.
Étape 6: Assembler les PCB
Comme mentionné ci-dessus, j'ai prévu de regrouper deux circuits différents en une seule unité.
Le circuit indicateur de température du processeur précédemment fabriqué est fusionné avec le nouveau circuit de ventilateur de refroidissement, comme indiqué dans l'image ci-dessus., Tout est emballé dans un châssis acrylique transparent et de petite taille (15 cm de large x 10 cm de profondeur).
Bien qu'environ la moitié de l'espace du châssis soit vide et disponible, des composants supplémentaires seront logés dans l'espace restant plus tard.
Étape 7: Câblage du RPI avec des circuits
Deux circuits sont interconnectés avec RPI de manière isolée à l'aide d'opto-coupleurs.
De plus, aucune alimentation n'est tirée du RPI car le chargeur externe du téléphone portable alimente les circuits.
Plus tard, vous saurez que ce type de schéma d'interface isolé est assez rentable lorsque des composants supplémentaires sont intégrés plus tard au châssis acrylique.
Étape 8: le programme Python contrôle tous les circuits
Seul un ajout mineur de code est requis à partir du code source du circuit indicateur de température du processeur.
Lorsque la température dépasse 50 °C, vingt (20) itérations d'allumage du VENTILATEUR pendant 10 secondes et d'extinction de 3 secondes commencent.
Comme le petit moteur du ventilateur nécessite un courant maximal de 200 mA pendant le fonctionnement, la méthode d'activation du moteur de type PWM (modulation de largeur d'impulsion) est utilisée pour réduire la charge du chargeur de téléphone portable.
Le code source modifié est comme ci-dessous.
***
#-*- codage:utf-8 -*-
##
sous-processus d'importation, signal, sys
temps d'importation, re
importer RPi. GPIO en tant que g
##
A = 12
B = 16
VENTILATEUR = 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('Vous avez appuyé sur Ctrl+C !')
g.sortie (A, Faux)
g.sortie (B, Faux)
g.sortie (FAN, False)
f.fermer()
sys.exit(0)
signal.signal(signal. SIGINT, signal_handler)
##
tant que vrai:
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(encodage = 'UTF-8', erreurs = 'strict')
CPU_temp = re.findall("\d+\.\d+", temp_str)
# extraction de la température actuelle du processeur
##
current_temp = float(CPU_temp[0])
si current_temp > 30 et current_temp < 40:
# température basse A=0, B=0
g.sortie (A, Faux)
g.sortie (B, Faux)
heure.sommeil(5)
elif current_temp >= 40 et current_temp < 45:
# température milieu A=1, B=0
g.sortie(A, vrai)
g.sortie (B, Faux)
heure.sommeil(5)
elif current_temp >= 45 et current_temp < 50:
# température élevée A=0, B=1
g.sortie (A, Faux)
g.sortie(B, Vrai)
heure.sommeil(5)
elif current_temp >= 50:
# Le refroidissement du processeur est requis élevé A=1, B=1
g.output(A, True)
g.sortie(B, Vrai)
pour i dans la plage (1, 20):
g.output(FAN, True)
heure.sommeil(10)
g.sortie (FAN, False)
heure.sommeil(3)
heure_actuelle = heure.heure()
formated_time = time.strftime("%H:%M:%S", time.gmtime(current_time))
f.write(str(formated_time)+'\t'+str(current_temp)+'\n')
f.fermer()
##
Comme la logique de fonctionnement de ce code python est presque similaire à celle du circuit indicateur de température du processeur, je ne répéterai pas les détails ici.
Étape 9: Fonctionnement du circuit du VENTILATEUR
En regardant le graphique, la température dépasse 50C sans circuit FAN.
Il semble que la température moyenne du processeur soit d'environ 40 à 47 °C pendant le fonctionnement du RPI.
Si une charge système importante, telle que la lecture de Youtube sur un navigateur Web, est appliquée, la température augmente généralement rapidement jusqu'à 60 ° C.
Mais avec le circuit FAN, la température sera diminuée de moins de 50C dans les 5 secondes par le fonctionnement du FAN de refroidissement.
En conséquence, vous pouvez activer le RPI toute la journée et effectuer tous les travaux que vous aimez sans vous soucier de la surchauffe.
Étape 10: Développement ultérieur
Comme vous pouvez le voir, la moitié du châssis acrylique est restée vide.
Je vais y mettre des composants supplémentaires et étendre ce bloc de base de la boîte RPI en quelque chose de plus utile.
Bien sûr, plus d'addition signifie également une complexité croissante.
Quoi qu'il en soit, j'intègre deux circuits dans une seule boîte dans ce projet.
Merci d'avoir lu cette histoire.
Conseillé:
Indicateur de température du processeur Raspberry Pi : 11 étapes (avec photos)
Indicateur de température du processeur Raspberry Pi : Auparavant, j'avais introduit un simple circuit indicateur d'état opérationnel Raspberry Pi (ci-après RPI). Cette fois, je vais expliquer un circuit indicateur plus utile pour le fonctionnement de RPI sans tête (sans moniteur). Élément CPU
Processeur Raspberry PI Vision (SpartaCam) : 8 étapes (avec photos)
Processeur de vision Raspberry PI (SpartaCam): Un système de processeur de vision Raspberry PI pour votre robot FIRST Robotics Competition. À propos de FIRSTDe Wikipedia, l'encyclopédie gratuite https://en.wikipedia.org/wiki/FIRST_Robotics_Compe…La compétition de robotique FIRST (FRC) est une compétition internationale de haut niveau
Ventilateur régulé PWM basé sur la température du processeur pour Raspberry Pi : 4 étapes (avec photos)
Ventilateur régulé PWM basé sur la température du processeur pour Raspberry Pi : De nombreux boîtiers pour Raspberry Pi sont livrés avec un petit ventilateur de 5 V 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 h
Indicateur de température et d'humidité par Arduino : 7 étapes (avec photos)
Indicateur de température et d'humidité par Arduino : cette instruction montrera comment faire une boîte qui peut indiquer la température et l'humidité avec Arduino. Vous pouvez mettre cette boîte sur une table pour mesurer la température et l'humidité dans votre pièce. compacté f
Indicateur de température RVB (avec XinaBox) : 5 étapes (avec photos)
Indicateur de température RVB (avec XinaBox) : C'est officiellement mon premier article sur Instructables, donc je vais admettre que j'utilise cette opportunité en ce moment pour l'essayer. Ayez une idée du fonctionnement de la plate-forme, de l'ensemble de l'expérience utilisateur. Mais pendant que je fais ça, je me suis dit que je pouvais