Ce montage, complètement géré par microcontrôleur et doté d’un bloc de batteries rechargeables, maintient le ventilateur de refroidissement de la CPU en fonctionnement afin d’éviter toute montée en température excessive après l’arrêt de l’ordinateur.
Pour tous les passionnés d’ordinateurs, voici un dispositif jusqu’alors réservé aux alimentations les plus “Hi-Tech” et les plus chères : il s’agit d’un gestionnaire de protection thermique de la précieuse CPU ; cette platine surveille et règle, au moyen d’un microcontrôleur, la température du processeur qui constitue le coeur du PC et cette surveillance ne s’arrête pas quand on éteint l’ordinateur !
En effet, quand le PC s’éteint, la carte mère n’est plus en mesure de gérer la vitesse de rotation du ventilateur en fonction de la température de la puce…et cette dernière peut s’élever –parfois jusqu’à une valeur alarmante– sans que rien ne nous en avertisse ni surtout sans que l’ordinateur y remédie (comment le pourrait-il, il est désormais hors tension ?).
Nos voitures ont le même problème : après arrêt du moteur, contact coupé, la température du liquide de refroidissement peut grimper à des valeurs trop élevées ; mais toutes les voitures sont aujourd’hui équipées d’un dispositif qui fait tourner le ventilateur refroidissant le radiateur bien après que le contact ait été coupé –et ce tant que la température ne passe pas au dessous d’un seuil de sécurité. Eh bien, avec les CPU de nos ordinateurs (CPU = moteur) nous devons appliquer une solution analogue.
Pour s’en convaincre, voici une petite expérience (si votre PC est assez récent, il est doté d’un contrôle de vitesse de ventilation de la CPU) : utilisez-le pendant quelque 5 minutes ou davantage, éteignez-le et, après une dizaine de minutes, rallumez-le ; à ce moment-là vous entendrez le ventilateur tourner plus rapidement que d’habitude ; en effet, le contrôleur détecte l’accroissement de température de la CPU dû au précédent arrêt du ventilateur et le compense au moyen d’une brève augmentation de la vitesse de rotation. Ensuite le système retourne au régime de croisière.
Notre réalisation
Le dispositif de contrôle nommé “PC-Fan UPS”, soit “Source d’alimentation retardée pour ventilateur de CPU”, comporte un thermostat interne, un “timer” et un régulateur de charge pour éléments Ni-Mh. Le microcontrôleur utilisé est le PIC16F676 de Microchip. Le PC-Fan UPS est doté d’un capteur de température NTC, d’un trimmer pour régler la température (ou la durée de l’extinction dans le cas où il n’y a pas de sonde NTC), d’un relais à deux contacts en mesure de commuter, lorsqu’on éteint le PC, l’alimentation du ventilateur de la CPU de la carte mère au PC-Fan UPS et, enfin, d’un relais de gestion de la recharge des batteries Ni-Mh.
Le fonctionnement peut être de deux types : thermostaté ou à extinction retardée. La première méthode est automatiquement adoptée dès que la présence de la sonde de température NTC est reconnue : le ventilateur est alors alimenté par les batteries.
Elles entrent en fonction quand le PC s’éteint et le restent tant que la température de la CPU n’est pas retombée en dessous du seuil paramétré. C’est là la méthode la plus complète, même s’il est nécessaire de recourir à un composant spécifique (la sonde de température).
Si cette sonde n’est pas montée, le dispositif s’en aperçoit et adopte la seconde méthode : là encore, le ventilateur entre en fonctionnement (grâce aux batteries) dès que le PC s’éteint, cependant le ventilateur s’arrête, non plus quand une température déterminée est atteinte, mais lorsqu’un certain délai s’est écoulé.
Il s’agit d’une méthode assez sommaire mais qui comporte cependant l’avantage de ne pas exiger l’utilisation d’une sonde.
Dans les deux cas le circuit maintient la charge des huit éléments de la batterie Ni-Mh. L’état de fonctionnement peut être reconnu grâce à la signalisation des deux LED de la platine :
• LED verte allumée : la batterie est chargée.
• LED verte éteinte : la batterie est en charge .
• LED rouge allumée : le ventilateur du CPU est allumé et le PC éteint.
• LED rouge éteinte : le ventilateur du CPU est éteint ainsi que le PC, ou allumé mais contrôlé par la carte mère.
Le schéma électrique
Comme le montre le schéma électrique de la figure 1, le coeur du circuit est un banal PIC16F676 ; son brochage est donné figure 2. Ce micro accomplit toutes les fonctions de contrôle qu’on vient de décrire.
Le choix de ce modèle est un bon compromis coût/disponibilité de périphériques : ce microcontrôleur est un des rares de la famille économique des PIC16 Microchip à incorporer un convertisseur A/N à dix bits.
Grâce à ce convertisseur, quatre mesures de tension sont effectuées : tension de batteries (broche 10, AN4), tension alimentation PC (broche 9, AN5), tension sonde NTC (broche 7, AN7), tension trimmer de réglage (broche 6, AN8).
Toutes les entrées analogiques sont dotées de condensateurs polyesters comme premier niveau de filtrage. En seconde instance, la valeur lue par le convertisseur A/N est ensuite mise en forme par voie logicielle au moyen d’un filtre à amortissement exponentiel. La lecture de la tension d’alimentation du PC est effectuée au moyen du pont de résistances de rapport 1 : 3 (R7 et R8) et la tension du bloc de batteries se fait par un pont de rapport 1 : 3,1 (R14 et R15). Deux sorties numériques sont en revanche utilisées pour commander deux relais : relais ventilateur (broche 6, RC4) et relais batterie (broche 5, RC5).
Chaque sortie numérique est dotée d’une LED de signalisation d’état du relais et d’une diode de recirculation montée en antiparallèle sur l’enroulement (la diode sert à éliminer les surtensions dues à la composante inductive).
Le circuit doit nécessairement fonctionner alimenté par le 12 V du PC ou bien par les batteries seules : ce sont les diodes D6 et D7 qui le permettent en réalisant une fonction OR entre les deux alimentations (on a pris deux diodes d’usage général 1N4007, car aucune vitesse de réponse n’est requise).
Le circuit de charge des batteries met en oeuvre la résistance de puissance R11 pour limiter le courant de charge à quelques dizaines de milliampères, même en cas de décharge profonde des batteries.
D’ailleurs la méthode de recharge des batteries est des plus classiques ; de plus les éléments Ni-Mh sont moins sensibles à l’effet mémoire que les Ni-CD : on en a monté huit de 1,2 V en série, ce qui fait 9,6 V nominaux ; ainsi l’alimentation 12 V peut charger complètement l’accumulateur même avec la chute de tension sur les deux diodes D6 et D5 (cette dernière est une schottky afin de provoquer (justement) une chute de tension minimale en polarisation directe. Le ventilateur de la CPU, typiquement 12 V, tourne même avec une tension plus faible, le 9,6 V des batteries utilisées.
Attention à la tension nominale du ventilateur de la CPU : elle doit être de 12 V, sous peine de l’endommager quand elle sera montée avec notre circuit de contrôle.
La diode D5 évite que le courant ne circule des batteries vers l’alimentation du PC lorsque cette dernière est éteinte. En l’absence de cette diode les batteries risqueraient de se décharger, à cause de la faible impédance de l’étage de sortie de l’alimentation du PC. RL1 permet la recharge des batteries dès que leur tension passe en dessous de 8,4 V et d’interrompre cette recharge quand elle repasse au dessus de 10,6 V. RL2, quant à lui, active et désactive le ventilateur quand l’ordinateur est arrêté.
Afin d’éviter toute incertitude durant l’activation ou la désactivation des relais, outre les filtrages matériel et logiciel des grandeurs acquises (tensions et températures), tous les contrôles sont dotés d’hystérésis.
Avec le trimmer R4 il est possible de régler le retard d’extinction ou la température désirée selon qu’on a monté ou non une sonde NTC : la gamme de températures va de 20°C à 50°C et le retard maximal est de 60 secondes environ. En conditions environnementales moyennes, il est conseillé de régler une température d’environ 30°C ou bien une durée d’environ 20 secondes.
Figure 1 : Schéma électrique du circuit de gestion du ventilateur de refroidissement.
Liste des composants
R1 : trimmer 10 k 10 mm
R2 : 680
R3 : 4,7 k
R4 : 220 k
R5 : 560
R6 : 560
R7 : 5,6 k
R8 : 2,7 k
R9 : 2,7 k
R10 : 2,7 k
R11 : 8,2 3 W
R12 : 10 k
R13 : 10 k
R14 : 100 k
C1 : 10 nF 63 V polyester
C2 : 100 nF multicouche
C3 : 100 nF multicouche
C4 : 100 nF multicouche
C5 : 100 nF multicouche
C6 : 220 μF 25 V électrolytique
C7 : 10 μF 25 V électrolytique
C8 : 1 nF multicouche
D1 : 1N4148
D2 : 1N4148
D3 : LED 3 mm rouge
D4 : LED 3 mm verte
D5 : BYV26C
D6 : 1N4007
D7 : 1N4007
T1 : BC547
T2 : BC547
U1 : PIC16F676-EF657 déjà programmé en usine
U2 : 7805
RL1 : relais 5 V 2 contacts
RL2 : relais 5 V 2 contacts
Divers :
1 support 2 x 7
3 barrettes mâles 3 broches
1 barrette mâle 4 broches
2 barrettes mâles 2 broches
Sauf spécification contraire, toutes les résistances sont des 1/4 W à 5 %.
Figure 2 : Brochage du PIC16F676.
Figure 3a : Schéma d’implantation des composants du circuit de gestion du ventilateur de refroidissement.
Figure 3b-1 : Dessin, à l’échelle 1, du circuit imprimé du circuit de gestion du ventilateur de refroidissement, côté soudures.
Figure 3b-2 : Dessin, à l’échelle 1, du circuit imprimé du circuit de gestion du ventilateur de refroidissement, côté composants.
Figure 4 : Photo d’un des prototypes du circuit de gestion du ventilateur de refroidissement.
Le programme résident du PIC
Le programme résident a été écrit en PicBasic. En face de chaque ligne de code du programme vous trouverez un commentaire (voir figure 5). Les seules particularités notables sont :
• l’utilisation d’un oscillateur interne à 4 MHz pour simplifier le circuit, diminuer le nombre de composants et disposer de deux autres broches d’E/S ;
• Power-Up Timer et Brown-Out Reset sont activés, afin de réduire au minimum le nombre de dysfonctionnements à la mise sous tension et à l’extinction du circuit.
Figure 5 : “Listing” en Basic du programme pour ventilateur d’ordinateur.
‘***************************************************************************************************
Selection PIC16F676:
Oscillator: Internal RC No Clock (4MHz)
Watchdog: Off
Power Up Timer: On
MCLR: External
Brown Out Res.: On
Code Pretect: Off
EE Protect: Off
‘***************************************************************************************************
RELE_VENTOLA var PORTC.5 ‘(LED ROUGE) ROUGE ALLUMÉE -> VENTILO ACCESA
RELE_CARICA var PORTC.4 ‘(LED VERTE) LE RELAIS DE RECHARGE DES
‘BATTERIES EST UTILISE SUR CONTACT NC :
‘VERT ETEINT -> BATTERIES EN CHARGE
‘AN7 var PORTC.3
‘AN6 var PORTC.2 ‘TRIMMER RÉGLAGE TEMPERATURE
‘INTERVENTION VENTILO OU
‘RETARD EXTINCTION VENTILO,
‘EN ABSENCE DE SONDE NTC
‘AN5 var PORTC.1 ‘TENSION ALIMENTATION ORDINATEUR
‘AN4 var PORTC.0 ‘TENSION BATTERIES 9V
SENS_TEMPERATURA var byte ‘SONDE_TEMPERATURE=102 @25°C
‘SONDE_TEMPERATURE=137 @35°C
TRIM var byte
TENSIONE_PC var byte ‘TENSION_PC=137 @8,05V TENSION_PC=189 @11,59V
TENSIONE_BATT var byte ‘TENSION_BATT=137@8,40V TENSION_BATT=174 @10,63V
‘(batteries chargées et reliées à l’alimentation)
CONTA var byte ‘COMPTEUR POUR RETARD EXTINCTION VENTILO
ISTERESI con 2 ‘HYSTERESIS DE TEMPERATURE EN FONCTIONNEMENT
‘THERMOSTATE
ANSEL=%11110000 ‘SEULS AN7..AN4 SONT PORTS NUMÉRIQUES
CONTA=0
low RELE_CARICA
low RELE_VENTOLA
LOOP: adcin 7,SENS_TEMPERATURA ‘MESURE NON LINEAIRE DE TEMPERATURE
‘AVEC SONDE NTC
adcin 6,TRIM ‘TRIMMER RÉGLAGE TEMPERATURE
‘INTERVENTION VENTILO OU
‘RETARD EXTINCTION VENTILO,
‘EN ABSENCE DE SONDE
‘DE TEMPERATURE NTC
adcin 5,TENSIONE_PC ‘MESURE TENSION 12V ENVIRON
‘DE L’ALIMENTATION DE L’ORDINATEUR
adcin 4,TENSIONE_BATT ‘MESURE TENSION DU BLOC DE BATTERIES
‘(8 BATONS NiCd TYPE AA)
if ((TENSIONE_BATT>172) and (TENSIONE_PC>180)) ‘INTERROMPS LA CHARGE
then high RELE_CARICA
if (TENSIONE_BATT<137) then low RELE_CARICA ‘SI PC ALLUME COMMENCE CHARGE
‘DES BATTERIES QUAND
‘TENSION ATTEINT 8,4V
if (TENSIONE_PC<10) then ‘... ALORS C’EST QUE LE PC EST ETEINT
low RELE_CARICA ‘COMMENCE A RECHARGER LES BATTERIES
‘ (CHOSES FOIS QU’ON ALLUME LE PC)
if (SENS_TEMPERATURA>5) then ‘... ALORS C’EST QUE LA SONDE NTC EST PRESENTE ->
‘FONCTIONNEMENT THERMOSTATE
if (SENS_TEMPERATURA>(TRIM+(ISTERESI/2))) then high RELE_VENTOLA
if (SENS_TEMPERATURA<(TRIM+(ISTERESI/2))) then low RELE_VENTOLA
CONTA=0
else ‘...SINON FONCTIONNEMENT A EXTINCTION
‘RETARDEE
if (CONTA<TRIM) then ‘SI LA VARIABLE COMPTE-TOUR EST INFÉRIEURE
‘A LA VALEUR REGLEE
high RELE_VENTOLA ‘ALLUME (OU MAINTIENT ALLUME) LE VENTILO
CONTA=CONTA+1
endif
endif
endif
if (CONTA==TRIM) then low RELE_VENTOLA ‘QUAND LE DELAI REGLE EST ECOULE
‘ETEINS LE VENTILO
if (TENSIONE_PC>10) then ‘...SIGNIFIE QUE LE PC EST ALLUME
CONTA=0
low RELE_VENTOLA ‘ETEINS LE VENTILO, OU MIEUX, RESTITUE SON CONTRÔLE
‘A LA CARTE MERE
endif
pause 235 ‘AVEC CE RETARD ON PEUT AVOIR
‘UN DELAI MAXIMUM
‘D’EXTINCTION DU VENTILO
‘DE 255*0,235=60 SECONDES ENVIRON
goto LOOP ‘CYCLE
La réalisation pratique
Il n’y a aucune difficulté particulière et un débutant s’en sortira très bien. Tout d’abord préparez le circuit imprimé double face à trous métallisés dont la figure 3b-1 et 2 vous donne les dessins à l’échelle 1:1 ou procurez-vous le.
Montez tout d’abord le support du microcontrôleur PIC (DIL 2 x 7 broches) et les six barrettes à deux, trois ou quatre broches, puis vérifiez bien ces premières soudures (ni court-circuit entre pistes ou pastilles ni soudure froide collée).
Ensuite, en suivant scrupuleusement les indications des figures 3a et 4 (ainsi que la liste des composants), montez tous les composants en commençant par ceux ayant le plus bas profil : d’abord les résistances (pour la résistance de puissance R11, prenez la précaution de la maintenir à deux millimètres de la surface du circuit imprimé, afin de faciliter l’évacuation de la chaleur pendant la charge des batteries).
Ensuite montez les diodes, les LED, les condensateurs polyesters et multicouches, les transistors) et terminez par les composants les plus encombrants comme les électrolytiques, le régulateur, le trimmer et enfin les deux relais.
Faites bien attention à l’orientation des composants actifs (diodes et LED, condensateurs électrolytiques, transistors et régulateur et enfin le PIC, repèredétrompeur en U vers l’extérieur de la platine, mais ne l’insérez qu’à la fin).
L’installation à l’intérieur du PC requiert l’utilisation d’entretoises en plastique autocollantes.
Fixez la platine à proximité de la CPU dotée de son ventilateur et réalisez les connexions entre la platine, le bloc de batteries, le ventilateur et vers la carte mère et l’alimentation du PC, au moyen de câbles adéquats, comme le montre la figure 6.
Comme réglage, vous n’avez qu’à régler le trimmer R1 pour le seuil de température désiré ou, en l’absence de sonde, pour la durée de fonctionnement du ventilateur souhaitée.
Figure 6 : Les interconnexions se font à l’aide de câbles informatiques.
Conclusion
Ce montage propose une méthode inventive pour éviter la surchauffe des processeurs après l'arrêt d'un ordinateur en prolongeant le fonctionnement du ventilateur de la CPU. Avec l'intégration d'un microcontrôleur PIC16F676 et d'une batterie Ni-Mh, ce dispositif garantit que le ventilateur reste actif même lorsque l'ordinateur est éteint, jusqu'à ce que la température de la CPU redescende à un niveau sécurisé.
Ce système, inspiré des refroidisseurs utilisés dans les voitures, offre deux modes de fonctionnement : l'un contrôlé par la température, utilisant une sonde NTC, et l'autre avec un retardateur d'extinction si le capteur est absent. Cette option permet à l'utilisateur de choisir une solution simple ou plus avancée selon ses préférences et son installation. Les batteries se rechargent automatiquement lorsque leur niveau est bas, et le système alterne entre l'alimentation de l'ordinateur et celle de la batterie grâce à un relais conçu avec soin.
Le montage du circuit imprimé est accessible aux débutants, et les composants sont faciles à trouver. Le programme intégré au microcontrôleur, écrit en PicBasic, garantit un contrôle précis des températures, des relais et des cycles de charge des batteries. Ce montage offre donc une protection essentielle pour les processeurs modernes, souvent vulnérables à la surchauffe, tout en constituant un projet électronique éducatif et utile.