Schema pemettant de controler l'acces au PC a distance via alimentation ATX


Vous voulez protéger votre PC ? Voici un récepteur UHF pour le commander à distance. Il est associé à un émetteur codé par un Motorola MC145026 pouvant mémoriser les codes automatiquement. Grâce au relais de sortie, il est possible d’assurer la mise en fonctionnement ou l’arrêt à distance d’un ordinateur moderne pourvu d’une alimentation ATX.



La nécessité de protéger son PC, d’en interdire l’utilisation aux étrangers, est désormais impérieuse sur le lieu de travail, surtout si ce dernier est accessible à de nombreuses personnes.
Les solutions pour y parvenir sont multiples : cela va des plus simples systèmes mécaniques (vous vous souvenez des premiers ordinateurs avec leur petite clé permettant d’inhiber le clavier ?) aux mots de passe, en passant par les clés codées (au moyen du clavier, d’une carte de crédit, d’un transpondeur, etc.) qui interdisent l’utilisation du PC en agissant sur le signal de reset ou directement sur l’alimentation de l’ordinateur.

Notre solution
Dans cet article nous vous proposons un récepteur de télécommandes qui puisse allumer ou éteindre n’importe quel ordinateur avec alimentation ATX : en débranchant le poussoir ON/OFF et en connectant correctement le récepteur (l’article vous expliquera en détail comment faire) la mise en marche ou l’extinction de votre PC ne pourront être effectuées qu’au moyen de la télécommande.
Voilà qui constitue une commodité et une sécurité supplémentaires, en ce que l’absence d’accès matériel (jack, connecteur, lecteur) et l’apparence conservée d’un ordinateur normal, avec son poussoir de mise en marche intact, rendent difficile le viol de la protection.
Nous bénéficions, en outre, de l’avantage de pouvoir commander le PC à distance avant d’entrer dans le bureau, de manière à trouver l’ordinateur prêt à fonctionner lorsque nous nous assiérons devant l’écran. Et pourquoi pas codifier aussi plusieurs PC afin de pouvoir les allumer avec une seule télécommande ?
On pourrait donner d’autres exemples encore de l’utilité d’une télécommande pour PC mais ce serait inutile, le concept étant désormais suffisamment clair.



Un minimum de théorie
Voyons plutôt comment est conçu et comment fonctionne le système composé, bien sûr, de deux unités.
La première, au format de poche (voir photo), est l’émetteur radio que le propriétaire de l’ordinateur porte sur lui et qu’il peut utiliser pour activer ou désactiver le PC.
La seconde, “cachée” dans la “tour” ATX (voir photos), reçoit le signal radio et, grâce à un petit relais, connecte ou déconnecte l’alimentation ATX de l’ordinateur.
Patience ! Vous comprendrez bientôt pourquoi l’alimentation doit être de type ATX.
Le récepteur Analysons la section réceptrice qui, en substance, est auto-alimentée (par une batterie, composée de 4 accus 1,5 V, rechargée par l’alimentation du PC). Le récepteur est accordé sur 433,92 MHz.
Il est doté d’un relais de sortie fonctionnant en monostable et il sera associé à l’émetteur de télécommandes codifié par le Motorola MC145026.
Comme vous le voyez à la figure 1, ce dernier permet l’auto-apprentissage des 2 canaux différents qui serviront, le premier pour la mise en “marche” et le second pour “l’arrêt” de l’ordinateur.
Jetons un coup d’oeil au schéma électrique qui nous apparaît, figure 2, dans son extrême simplicité : le récepteur se compose essentiellement d’un microcontrôleur et d’un module hybride.
L’étage d’entrée, c’est-à-dire la section haute fréquence, est constitué par le module AUREL RX4M30RR : il s’agit d’un récepteur intégré à super-réaction et de ce fait très sensible (3 microvolts, –96 dBm), en mesure de garantir, associé à l’un des traditionnels émetteurs de poche format porte-clés, une portée de 60 mètres environ en espace libre. Il va cependant de soi que, le récepteur étant placé à l’intérieur de la tour ATX, dont le boîtier métallique constitue un blindage, on ne peut guère espérer une portée supérieure à 20 mètres, ce qui est tout à fait suffisant pour un usage courant.
La sélectivité est bonne (±300 kHz à –3 dB) et les harmoniques indésirables sont particulièrement atténuées (le module hybride respecte les normes les plus sévères).
En outre la consommation du module vous paraîtra tout à fait remarquable : seulement 0,4 milliampère sous une tension de 3,3 volts, ce qui nous arrange vraiment puisque nous devons maintenir la batterie du récepteur chargée par l’alimentation ATX du PC, ce dernier étant arrêté alors que le récepteur devra être maintenu en veille.
Le module RX4M30RR est monté en configuration classique, broches 2, 7, 11 à la masse, 10 et 15 au + alimentation. L’antenne est reliée à la broche 3 par laquelle entre le signal HF provenant de l’émetteur de télécommandes. Le module hybride AUREL restitue, broche 14, les impulsions de sortie du comparateur/générateur de signaux carrés placé en aval du démodulateur AM pour les acheminer au coeur de l’unité, le microcontrôleur PIC12CE674-MF372.
Celui-ci est programmé pour identifier les signaux reçus et commander en mode monostable le relais. Il comporte deux modalités de fonctionnement : apprentissage des codes et utilisation normale.
En d’autres termes le programme de travail change selon l’état de GP2 (broche 5) ou selon la position du poussoir P1 appuyé ou au repos : dans le premier cas le système “sait” que le code reçu est gardé en mémoire, alors que dans le second cas il doit le comparer avec celui déjà acquis pour activer, éventuellement, le relais de sortie.
Donc la première fonction est celle d’auto-apprentissage, c’est-à-dire la phase pendant laquelle le microcontrôleur “apprend” les 2 codes qu’il doit reconnaître. La seconde est l’utilisation normale pendant laquelle le programme de gestion “lit” le train d’impulsions reçu, contrôle la correspondance avec l’un de ceux précédemment mémorisés et ensuite agit : s’il reçoit le signal de mise en marche du PC, il active le relais pour 3 secondes, alors que s’il reçoit le signal d’arrêt il l’active pour environ 10 secondes.
Commençons par décrire la phase d’auto-apprentissage qui débute lorsqu’on presse le poussoir P1. Remarquez que la fermeture de P1 provoque non seulement l’activation de la fonction d’auto-apprentissage mais aussi l’effacement immédiat du contenu de l’EEPROM consacrée à la mémorisation des codes précédemment appris.
En effet, la procédure d’apprentissage supprime toujours les 2 codes admis et mémorisés, même s’ils sont identiques l’un à l’autre.
Si l’on presse le poussoir P1, le microcontrôleur répond par un éclair de la LED LD1 : à ce moment, si l’on émet avec un TX codifié avec un Motorola MC145026 et à 2 canaux (ON/OFF), le microcontrôleur U2 reçoit le code de la sortie du module hybride U1 et le mémorise dans l’EEPROM, provoquant un bref éclair de LD1.
A ce stade, il convient d’envoyer un second code, grâce au même TX codé : là encore, dès la mémorisation faite, le microcontrôleur répond par un autre éclair de LD1.
La procédure d’apprentissage est alors terminée : le premier code reçu et mémorisé devient celui qui allume l’ordinateur, tandis que le second devient celui qui l’éteint. Bref, si l’on émet le premier, l’ordinateur s’allume et avec le second il s’éteint, bien entendu à distance.
On comprend bien qu’il serait possible de faire apprendre 2 fois le même code même si, dans ce cas, nous perdions la différence entre la durée d’activation, 2 secondes, et celle de désactivation, 10 secondes.
A chaque pression sur la touche du TX codé nous obtiendrions une activation du relais de sortie du récepteur pour 2 secondes. Vous comprendrez par la suite l’importance de cette différence perdue.
On se rend compte, qu’une fois commencée la programmation, il faut introduire (par l’émission du TX codé) toujours les 2 codes, lesquels sont mémorisés (dans l’EEPROM du microcontrôleur PIC) à la place de ceux précédemment mémorisés.
Il n’est pas possible de sortir de l’apprentissage manuellement, c’est pourquoi on ne peut utiliser un seul et unique code, celui de marche ou celui d’arrêt.
Si l’on coupe l’alimentation du circuit pendant l’auto-apprentissage, on doit tout recommencer depuis le début, ceci parce qu’il faut réintroduire les codes, la pression de P1 et le démarrage de la procédure effaçant la mémoire.
Après être sorti (automatiquement) de la mémorisation, le microcontrôleur “fait tourner” son programme et le récepteur travaille en mode normal : à ce moment est reconnue toute émission codifiée Motorola et cela se concrétise par l’activation du relais du récepteur pour 2 ou 10 secondes en fonction de la touche du TX codé pressée (ON ou OFF).
Ici, il faut ouvrir une parenthèse à propos du fonctionnement de l’alimentation des PC travaillant sous WINDOWS : notre montage est destiné aux ordinateurs pourvus d’une alimentation ATX, laquelle, entre autres caractéristiques, a la possibilité d’être allumée par un poussoir et éteinte, soit par un logiciel, soit par le même poussoir.
Le fait de pouvoir commander l’allumage et l’extinction de l’alimentation principale par un poussoir a poussé (si j’ose dire !) les magnats du logiciel (Microsoft en tête) à étudier des systèmes de mise en route et d’arrêt par logiciel et c’est pour cela que WINDOWS dispose de la commande “fermeture de session”, capable d’arrêter le système sans qu’il soit nécessaire d’agir sur l’interrupteur du PC.
De même c’est ainsi que, par la gestion de “l’épargne d’énergie”, il est possible d’éviter la pression du poussoir et de décider si l’on doit éteindre l’ordinateur (sans produire d’erreur due à une extinction anormale) ou mettre le système en veille.
D’autre part les fabricants de PC sont parvenus à installer dans le BIOS les mêmes caractéristiques que celles prévues par WINDOWS : il existe une possibilité de faire décider par l’utilisateur si le poussoir ON/OFF doit éteindre le PC ou bien seulement le mettre en veille. Cela empêche l’extinction accidentelle du système, avec ses conséquences préjudiciables au travail en cours, et évite la fermeture erronée d’une session avec peut-être la perte de données utiles.
Dans de nombreux cas, la carte-mère prévoit des commandes différenciées pour l’allumage et l’extinction et offre la possibilité de déterminer une temporisation précise pour distinguer la veille de l’extinction pure et simple : en pressant le poussoir de mise en route un bref instant (pas plus d’une seconde), si l’ordinateur est éteint, il s’allume, si, au contraire, il est allumé, il se met en veille ou bien au repos.
Pour l’éteindre, on doit presser le poussoir ON/OFF plus de 5 secondes, temps considéré comme suffisant pour éviter qu’une pression accidentelle ne puisse provoquer l’arrêt involontaire.
En vertu de telles possibilités et mettant à profit les innovations de WINDOWS, des alimentations ATX et des cartesmères modernes, notre récepteur de télécommandes ferme les contacts du relais de sortie pour des durées différentes : reconnaissant le premier code (ON), elle ferme RL1 pour 2 secondes, alors qu’identifiant le second code (OFF), elle actionne le relais pour 10 secondes.
Dernière information : si l’on paramétrait WINDOWS de façon qu’en pressant le poussoir ON/OFF le système s’arrête (voir figure 8), il ne serait pas nécessaire de différencier le temps d’activation du relais puisque WINDOWS intervient immédiatement au signal d’arrêt (cela explique pourquoi notre commande à distance pour PC fonctionne même avec un seul canal du TX, un seul code) en arrêtant le système.
Cette fonction n’est cependant pas toujours activable et elle peut être dangereuse.
De ce fait, le maintien du relais contacts fermés pendant 10 secondes représente une sécurité supplémentaire : cela permet de paramétrer le BIOS de façon à interrompre la pression sur le poussoir ON/OFF après seulement 5 secondes (paramétrage à effectuer dans le SETUP du PC, voir figure 7).
En outre, dans le cas où vous planteriez votre ordinateur (mais c’est très rare, n’est-ce pas ?), WINDOWS ne serait pas en mesure d’éteindre le système (bloqué !), alors que, après 5 secondes de fermeture du contact ON/OFF, le BIOS interviendrait et éteindrait directement l’alimentation ATX.

L’alimentation
Ceci étant dit, nous avons éclairci la question du fonctionnement et de l’utilisation de la télécommande.
Reste à voir l’étage alimentation, un peu particulier en ce que, nous l’avons dit, le récepteur comporte un bloc de batterie qui lui permet d’être opérationnel (et en attente) lorsque l’ordinateur est arrêté.
Normalement les points + et –Val sont reliés à la sortie 12 V de l’alimentation du PC et ils lui prennent le courant nécessaire au fonctionnement du montage et à la charge de l’accumulateur BATT formé de 4 éléments NiCd ou NiMH en série.
En aval de la résistance R1, on mesure une tension entre 4,8 et 5,2 V, en fonction de la charge de la batterie. Cette tension alimente directement le microcontrôleur et la LED LD1.
Quand le PC est éteint, c’est à la batterie de fournir l’énergie nécessaire au fonctionnement de la carte récepteur dont la consommation continue est d’environ 1 milliampère.
Cela signifie qu’en utilisant, par exemple, 4 bâtons de 800 milliampères/heure, l’autonomie de notre circuit est de 800 heures, et que donc nous pouvons laisser notre PC arrêté et le réinstaller avec la télécommande après un maximum de 30 jours environ.
La diode D1 sert de protection contre l’inversion de polarité et pour éviter que, lorsque l’alimentation du PC est éteinte, l’accumulateur ne se décharge sur la piste +12 V de celle-ci. R1 limite le courant de charge du bloc de batterie.
Notez que les 4 bâtons font office de régulateur de tension : ils maintiennent une tension à peu près constante, même en dépit de la variation du courant de charge.

Figure 1 : Organigramme du microcontrôleur.

Le premier contrôle effectué par le microcontrôleur dépend de la pression sur le poussoir P1 : en cas d’issue positive (OUI), il entre dans la phase d’auto-apprentissage dont il sort seulement après avoir acquis les 2 codes Motorola (un pour la mise en marche et un pour l’arrêt). Notez que, à la fin de l’auto-apprentissage, le circuit travaille de nouveau en mode standard sans aucun besoin d’un quelconque reset.

Figure 2 : Schéma électrique du récepteur de télécommandes.
U1 : RX4M30RR
U2 : PIC12CE674


Figure 3 : Photos de l’un des prototypes, accompagné de son émetteur de télécommandes.

Figure 4 : Schéma d’implantation des composants du récepteur.

Figure 5 : Photo d’un des prototypes du récepteur.

Figure 6 : Dessin, à l’échelle 1, du circuit imprimé vu côté cuivre.

Liste des composants
R1 = 390 Ω
R2 = 1 kΩ
R3 = 4,7 kΩ
D1 = Diode 1N4007
DZ1 = Zener 5,1 V
LD1 = LED rouge 5 mm
U1 = Module AUREL RX4M30RR04
U2 = μcontrôleur PIC12CE674-MF372
Q1 = Quartz 4 MHz
P1 = Poussoir NO (normalement ouvert)
RL1 = Relais reed 5 V

Divers :
1 Support 2 x 4 broches
2 Borniers 2 pôles
1 Porte-piles pour accus 4 AA (LR6)
4 Accus AA
1 Support 2 broches (sécable)
1 Cavalier
1 Circuit imprimé réf. S372


Figure 7 : Paramétrage du BIOS et de WINDOWS





Figure 7a.





Figure 7b.


Pour profiter au mieux de notre récepteur de télécommandes pour PC, il est nécessaire d’utiliser un émetteur à 2 canaux, de paramétrer le SETUP du BIOS en réglant la fonctionnalité “Soft-On by PWRBTN” non sur “Instant-Off” mais sur “Delay 5 sec.” et configurer WINDOWS de telle manière que le poussoir d’alimentation fonctionne comme poussoir d’arrêt. En ce qui concerne les autres paramétrages du BIOS nous vous renvoyons au manuel de votre carte-mère, dans la mesure où la fonction “Soft-Off” pourrait être indiquée sous une autre présentation que celle visible figure 8.
Le paramétrage de WINDOWS, en revanche, est accessible au moyen du panneau de contrôle, en cliquant sur l’icône de l’option “économie d’énergie” et en sélectionnant le bouton “Avancé”.

Les alimentations ATX

Figure 8 : Les alimentations ATX.

L’évolution des PC a poussé les fabricants de matériel à étudier et à réaliser de nouveaux composants toujours plus performants.
Processeurs, disques durs, CD-ROM, et tous les périphériques pour PC demandent toujours plus d’énergie : un ordinateur complet aujourd’hui consomme plus de 150 à 200 watts (sans le moniteur !), alors qu’autrefois il se contentait de 50 à 100 watts !
Les alimentations ont donc, par la force des choses, suivi l’évolution des ordinateurs et, du standard AT (utilisé jusqu’au Pentium), sont passées au standard ATX qui, à la différence des premières, sont capables de délivrer une puissance plus importante et permettent une mise en route à distance.
Il existe des alimentations ATX de 300 à 350 watts qui fournissent des tensions positives de 5, 12 et 13,3 volts et des tensions négatives de –5 et –12 volts. Elles peuvent aussi échanger des signaux avec la carte-mère pour le fonctionnement du système.
Le standard ATX prévoit une alimentation composée de 2 sections, l’une, toujours en fonction, alimente la logique ON/OFF de la carte-mère par le fil 14 (fil VERT).

Figure 9.

Figure 9 : Elle montre le câblage du connecteur ATX volant (celui de l’alimentation) vu du côté de l’insertion.
Les signaux de contrôle présents dans les alimentations de dernière génération prévoient, soit l’activation de la carte-mère de la section de puissance, soit un signal de “POWERGOOD” (contact 8, fil GRIS) qui indique à la carte-mère que l’alimentation a mis à sa disposition toutes les tensions requises.
Ainsi, la mise en route du PC n’est pas activée tant que toutes les tensions nécessaires ne sont pas présentes aux bornes de l’alimentation.
Il faut préciser que le tableau des couleurs représenté ici correspond à ce que conseille le standard ATX.
Vous pourrez trouver des alimentations ATX avec des codes différents car il n’existe guère de directives précises et obligatoires pour le standard ATX. Le brochage, en revanche, doit être nécessairement identique à celui que vous voyez ici.

Figure 10 : Les connecteurs d’alimentation des périphériques internes (CD-ROM, disque dur, drive, etc.), sur lesquels on trouve du +12 V, +5 V et la masse, sont identiques à ceux du standard AT.

La réalisation pratique
Et maintenant comment construire et faire fonctionner le récepteur ? Vous allez, bien entendu, réaliser tout d’abord le circuit imprimé par photogravure en effectuant une bonne photocopie sur transparent ou mylar du dessin “côté cuivre” à l’échelle 1, visible figure 6.
Une fois gravé et percé le circuit, vous pourrez y enfiler les rares composants, en commençant par les résistances et les diodes au silicium (D1 et DZ2), qui seront orientées comme on le voit figure 4.
Parmi les queues de composants coupées après soudure, récupérez-en une pour constituer l’unique “strap” entre U2 et le quartz Q1.
Nous vous conseillons ensuite de placer le support du PIC, en prenant soin de bien respecter le sens indiqué afin qu’il n’y ait aucun doute au moment d’insérer le circuit intégré.
Placer le poussoir, le module hybride et le quartz.
Le relais utilisé est de type “reed”, il ressemble donc à un circuit intégré à 7+7 broches : disposez-le de façon que son repère-détrompeur soit tourné du côté de la résistance R1, puis soudez ses broches.
Pour faciliter les connexions d’alimentation et de la batterie prévoyez deux borniers bipolaires, pour circuit imprimé, au pas de 5 mm, à insérer et souder à la place prévue (4 trous).

La batterie
Vous la réaliserez en installant 4 éléments rechargeables au nickel-cadmium ou au nickel-métal-hydrure, d’une capacité de 800 mA/h (attention à la polarité : le + de chaque bâton doit être relié au – du suivant), dans un porte-piles à 4 compartiments pourvu de fils de connexions : le positif va à la borne +Val du circuit imprimé, et le négatif à –Val.

Le microcontrôleur
Pour finir, insérez le PIC (qui doit être déjà programmé à l’aide du logiciel correspondant) à sa place, en prenant bien soin de faire coïncider son repère-détrompeur avec celui du support.
Insérer et soudez un morceau de fil de cuivre rigide d’une longueur de 17 cm dans le trou du circuit marqué “ANT”.
Bloquez enfin le porte-piles avec du mastic silicone ou avec des petits colliers de serrage en plastique. Le circuit est maintenant prêt : pour l’utiliser, rien d’autre à faire que de le disposer dans le boîtier de l’ordinateur (la “tour”) et d’exécuter la procédure de couplage avec l’émetteur.
Pour installer le récepteur, ouvrez l’ordinateur et cherchez la meilleure place pour le fixer : nous vous conseillons de placer le circuit sur le fond du boîtier, loin de la carte-mère et des autres cartes.
La fixation pourra avantageusement mettre à profit les entretoises à base adhésive, à fixer au fond du PC, après en avoir ôté la poussière éventuelle.

L’alimentation
Vous pourrez opter pour deux solutions : la première consiste à ôter un bout d’isolant des fils jaune et noir d’une prise pour disque dur ou CDROM (connecteur femelle, volant, à 4 pôles) et soudez sur chacun un fil.
Celui qui part du jaune (le +12 V de l’alimentation) doit être relié à la borne +Val, tandis que l’autre (qui vient du fil noir) ira à la borne –Val.
L’autre, un peu plus courante, consiste à se procurer un de ces dédoubleurs d’alimentation qui servent à dédoubler les prises des HD, des lecteurs CD, etc.
Une fois trouvé ce dédoubleur, on enlève un des connecteurs femelles (sorties) d’un côté du câble prolongateur et on connecte le fil jaune (+12 V) à la borne +Val du récepteur, et le noir (masse) au –Val.
Puis il suffit d’enfoncer le connecteur mâle volant du dédoubleur dans un connecteur femelle à 4 pôles provenant de l’alimentation, et l’installation est terminée.

La codification
Avant de procéder à l’apprentissage des codes, il est nécessaire de charger correctement la batterie : cela peut être fait simplement en allumant manuellement l’ordinateur et en le laissant fonctionner (récepteur installé) 2 heures.
Notez, qu’à la mise en route, la LED effectue une série de 10 éclairs rapides puis s’éteint.
Pour l’apprentissage, procurez-vous un TX standard (par exemple un de ceux utilisés comme ouvre-porte), travaillant sur 433,92 MHz, et codé par un MC145026.
Appuyez sur le poussoir P1 du récepteur, attendez le premier éclair de la LED puis, à 1 m de distance, au moins, de l’ordinateur, envoyez le code du canal 1 en appuyant sur la touche correspondante.
Quand vous verrez la LED clignoter de nouveau, appuyez sur la touche du canal 2. Un autre éclair de la LED signale la fin de l’auto-apprentissage : maintenant le récepteur est prêt à l’usage.
Arrêtez le PC et déconnectez les fils du poussoir ON/OFF de la carte-mère et reliez-les, sans avoir à respecter aucune polarité, aux points “OUT” du récepteur de télécommandes.
Appuyez à présent sur la touche du premier canal du TX et vérifiez que le relais colle pour 2 secondes environ et allume l’ordinateur. La mise en marche obtenue, vous pourrez vérifier l’extinction en appuyant sur la touche du second canal.
Nous vous rappelons que la consommation totale de notre circuit (microcontrôleur + module hybride AUREL) avec son relais reed au repos est d’environ 1 mA.

Aucun commentaire:

Enregistrer un commentaire