Ce montage a base d'un microcontroleur PIC16F84 est capable de faire les choses suivantes avec la quasi totalité des telecommandes infra rouges:
~ Allumer le P.C..
~ Commander tous les logiciels pouvant se lancer en ligne de commande.
Il est alimenté par le P.C..
Avec la carte optionnelle qui est présentée plus loin, vous pourrez egalement:
~ Selectionner une paire d'enceinte parmis 4
~ Selectionner une source audio parmis 3
Le montage est tres petit, puisqu'il ne mesure que 4 * 5 cm. Il peut se brancher directement derriere le P.C. sur le port serie.
Prix de revient: ordre d'idée: à partir de 80F environ (10Euros).
Schéma:
Voici le schema relativement simple de la telecommande:
Description du schema:
~ Alimentation:
L'alimentation se fait soit par le port série quand le logciel est lancé, soit par des batteries (rechargeables: 4 * 1.25V). L'alimentation par batterie n'est necessaire que si vous voulez pouvoir alumer votre P.C. à distance.
La tension est stabilisée à 5.1V grace aux condensateurs C3 et C4, à une diode zener DZ1, et une resistance R3. la valeur de la resistance peut etre de 0 Ohm, car le port série (qui est entierement protegé) est juste suffisant pour alimenter le montage.
Remarque: le port série à l'origine n'avait pas ete prévu pour alimenter quelque chose. Puis avec l'arrivée des souris, on s'est servis des signaux de controle pour les alimenter. C'est ce que je fais ici: je me sert des signaux de controle pour alimenter le montage. La broche 7 cree le +Vcc, et la broche 4 cree le -Vcc.
~ Interrupteurs I1 et I2:
R1 et R2 sont les resistances de rappel, les entrees RA2 et RA3 du PIC sont par defaut à 1. j'ai egalement ajoute C1 et C2 qui servent d'anti rebond, meme si j'en ai deja mis un dans le programme du PIC.
~ QUARTZ + condensateurs C5 et C6:
Ils servent pour l'horloge du PIC.
~ Transistor T:
Le transitor est utilisé en commutation: il sert a demarrer le P.C.
Encore quelques explications sur le port série: le port série fonctionne avec des tensions comprises entre -3V et -25V pour le niveau 1, et +3 et +25V pour le niveau 0. La tension 0V qui sert habituellement de niveau 0 logique est ici interdite (en pratique sur la plupart des nouveaux ports série, la tension 0V correspond à un niveau logique 1).
Donc pour respecter les normes du port série, j'ai mis un transistor branché entre le +Vcc et le -Vcc, ainsi:
Lorsque la sortie RA1 est à 0V, le transistor est saturé, donc la tension presente sur la patte 9 (Ring Indicator) du port série est +Vcc = +5V environ.
Lorsque la sortie RA1 est au niveau haut (elle l'est par défaut), le transistor est bloqué, et la tension presente sur la patte 9 du port série est environ -12V.
Pour démarer le P.C., on utilise donc la patte Ring Indicator du port série, cette patte permet normalement d'allumer votre P.C. lorsque le modem sonne. Il faut pour cela que votre alimentation soit de type ATX (cas de tous les P.C. modernes, il suffit de verifier que votre P.C. s'eteint tout seul sans que vous appuyez sur un bouton lorsque vous quittez Linux ou windows), et il faut activer cette fonction dans le bios ("Wake-up on ring" ou equivalent).
~ Le filtre selectif:
Ce sera surement le composant le plus difficile à trouver. On peut en récuperer facilement dans des televisions ou des magnetoscopes. Voici une photo:
Il est generalement encapsulé dans une boite comme celle ci:
Le role de ce filtre est de detecter lorqu'une lumiere infra rouge avec une frequence de 40kHz est présente au niveau de la diode. Il cree alors un niveau 1 en sortie. Sinon le filtre sort un niveau 0.
Je rappelle (voir mon montage sur la telecommande universelle pour plus de détails) que la telecommande emmet un signal numérique sur lequel se supperpose une porteuse à une frequence d'environ 40kHz, et ce pour eviter toutes les perturbations des lumières ambiantes.
~ Connnecteur CON2
Ce connecteur permet de brancher une carte additionnelle décrite plus bas: cette carte permet de sélectionner des hauts parleurs, et des sources audio.
~ Alimentation:
L'alimentation se fait soit par le port série quand le logciel est lancé, soit par des batteries (rechargeables: 4 * 1.25V). L'alimentation par batterie n'est necessaire que si vous voulez pouvoir alumer votre P.C. à distance.
La tension est stabilisée à 5.1V grace aux condensateurs C3 et C4, à une diode zener DZ1, et une resistance R3. la valeur de la resistance peut etre de 0 Ohm, car le port série (qui est entierement protegé) est juste suffisant pour alimenter le montage.
Remarque: le port série à l'origine n'avait pas ete prévu pour alimenter quelque chose. Puis avec l'arrivée des souris, on s'est servis des signaux de controle pour les alimenter. C'est ce que je fais ici: je me sert des signaux de controle pour alimenter le montage. La broche 7 cree le +Vcc, et la broche 4 cree le -Vcc.
~ Interrupteurs I1 et I2:
R1 et R2 sont les resistances de rappel, les entrees RA2 et RA3 du PIC sont par defaut à 1. j'ai egalement ajoute C1 et C2 qui servent d'anti rebond, meme si j'en ai deja mis un dans le programme du PIC.
~ QUARTZ + condensateurs C5 et C6:
Ils servent pour l'horloge du PIC.
~ Transistor T:
Le transitor est utilisé en commutation: il sert a demarrer le P.C.
Encore quelques explications sur le port série: le port série fonctionne avec des tensions comprises entre -3V et -25V pour le niveau 1, et +3 et +25V pour le niveau 0. La tension 0V qui sert habituellement de niveau 0 logique est ici interdite (en pratique sur la plupart des nouveaux ports série, la tension 0V correspond à un niveau logique 1).
Donc pour respecter les normes du port série, j'ai mis un transistor branché entre le +Vcc et le -Vcc, ainsi:
Lorsque la sortie RA1 est à 0V, le transistor est saturé, donc la tension presente sur la patte 9 (Ring Indicator) du port série est +Vcc = +5V environ.
Lorsque la sortie RA1 est au niveau haut (elle l'est par défaut), le transistor est bloqué, et la tension presente sur la patte 9 du port série est environ -12V.
Pour démarer le P.C., on utilise donc la patte Ring Indicator du port série, cette patte permet normalement d'allumer votre P.C. lorsque le modem sonne. Il faut pour cela que votre alimentation soit de type ATX (cas de tous les P.C. modernes, il suffit de verifier que votre P.C. s'eteint tout seul sans que vous appuyez sur un bouton lorsque vous quittez Linux ou windows), et il faut activer cette fonction dans le bios ("Wake-up on ring" ou equivalent).
~ Le filtre selectif:
Ce sera surement le composant le plus difficile à trouver. On peut en récuperer facilement dans des televisions ou des magnetoscopes. Voici une photo:
Il est generalement encapsulé dans une boite comme celle ci:
Le role de ce filtre est de detecter lorqu'une lumiere infra rouge avec une frequence de 40kHz est présente au niveau de la diode. Il cree alors un niveau 1 en sortie. Sinon le filtre sort un niveau 0.
Je rappelle (voir mon montage sur la telecommande universelle pour plus de détails) que la telecommande emmet un signal numérique sur lequel se supperpose une porteuse à une frequence d'environ 40kHz, et ce pour eviter toutes les perturbations des lumières ambiantes.
~ Connnecteur CON2
Ce connecteur permet de brancher une carte additionnelle décrite plus bas: cette carte permet de sélectionner des hauts parleurs, et des sources audio.
Principe de fonctionnement:
Un code composé de 0 et de 1 est tout d'abord envoyé par la telecommande. Pour éviter les perturbations des néons, ..., le signal est agrémenté d'une porteuse à 40kHz.
Le filtre se charge alors de détecter cette porteuse. Lorsqu'il recoit la porteuse, il cree un niveau 1 en sortie, sinon il cree un niveau 0. Ainsi on recree les 0 et les 1 de la telecommande.
Ce signal est alors envoyé sur le recepteur. Il est mémorisé dans la RAM du PIC, puis il est envoyé au P.C. par l'intermédiaire du port série (port COM2). Pour cela, on transmet le code octet par octet tout en ajoutant les bits de start et de stop pour chaque octet. Attention, le port série implique qu'on transmette le code en commencant par le bit de poids le plus faible!
Enfin, le code est comparé avec les 4 codes enregistrés dans l'EEPROM du PIC. S'il y a correspondance, l'une de ces 4 action est effectuée: Allumage du P.C., Sélection d'une paire d'enceinte, Sélection d'une source audio, Mute.
Enfin, le code est comparé avec les 4 codes enregistrés dans l'EEPROM du PIC. S'il y a correspondance, l'une de ces 4 action est effectuée: Allumage du P.C., Sélection d'une paire d'enceinte, Sélection d'une source audio, Mute.
Matériel nécessaire:
Un fer a souder, de la soudure, du matériel pour graver les plaques, et de préférence une insoleuse et une bonne imprimante.
Composants:
Composant | caracteristique |
PIC | PIC16F84-04 (environ 40F soit 6.1Euros) |
R1,R2 | 47 kOhm |
R3 | 0 Ohm (100 Ohm si vous n'avez pas confiance... Voir texte) |
R4 | 820 Ohm |
R5 | 4.7 kOhm |
R6 | 1 kOhm |
C1,C2 | 220 pF (Il n'est pas obligatoire de mettre ces condensateurs, ils servent pour l'anti rebond déja inclus dans le programme) |
C3 | 100 nF |
C4 | 220 µF 6.3V minimum |
C5,C6 | 15 pF à 39 pF |
D1,D2 | 1N4148, 1N4151, ... |
DZ1 | Diode zener 5.1V 0.4W |
LED | LED 5mm quelconque |
T | BC327-25 ou BC557B ou BC558B ou BC559B |
I1,I2 | Interrupteurs 1T (voir typon et photo) |
QUARTZ | Quartz 4MHz (bien respecter cette fréquence) |
CON1 | Socle pour circuit imprimé SUBD 9 broches Femelle. (le montage peut ainsi se brancher directement derriere le port série |
CON2 | Connecteur à 10 broches (voir photo). Ce connecteur est nécéssaire uniquement si vous utilisez la carte additionnelle à relais. |
Filtre selectif | On peut le récupérer dans les télé, magnétoscopes, ... (voir photo). Cependant il y a de trés fortes chances (non testé) qu'on puisse également mettre l'un de ces composants récent qui remplace tout ce filtre: TSOP1738 de chez Temic TSOP1838 de chez Temic IS471F de chez Sharp (moins facile à mettre en oeuvre). On trouve maintenant ces composants presque partout. |
BATTERIE | Utilisez 4 piles rechargeables (car leur tension est de 1.25V) mises en série. Si vous tenez à utiliser des piles normales, dans ce cas ne mettez surtout pas 0 pour la valeur de R3. 100 Ohm peuvent convenir. Mais dans ce cas le P.C. ne servira plus à alimenter le montage, et les piles vont vite se vider. Notez que ces piles ne sont nécessaires que pour démarer le P.C. à distance. |
S | Noubliez pas les quelques straps. |
Description:
Je rappelle qu'il faut telecharger le logiciel ARES Lite qui est gratuit. Il est disponible sur le site suivant: http://www.multipower-fr.com
Réalisation:
Commencez par souder les 6 straps pour ne pas les oublier.Comme d'habitude, soudez ensuite les résistances, condensateurs, le quartz, le support pour C.I., et les interrupteurs. Terminez par les connecteurs.
Aidez vous de la photo pour le choix et le placement des composants.
Certaines pastilles ou pistes sont très proches l'un de l'autre, il faut faire très attention aux courts circuits.
Essais et mode d'emploi:
Le programme pour le PIC: Cliquez pour le telecharger: comIR_16.asm. Vous pouvez egalement telecharger la version deja compilée: comIR_16.hexLe programme pour le P.C.: Je l'ai concu pour tourner sous Linux uniquement. Ne comptez pas sur moi pour faire une version windows, je ne développe des programmes que pour des systems d'exploitation dignes de ce nom! (cependant si quelqu'un en fait une, je la mettrai).
Telechargement de la version en ligne de commandes réalisée par moi: recepteur_IR_06.tar.gz
Telechargement de la version graphique réalisée par un copain: carrouet@enib.fr: gIR-02.tar.gz
Il est bien entendu que ces logiciels sont des logiciels libres, et en version complète. Pour les décompresser, tapez tar zxvf nom_fichier.tar.gz
Pour l'installation vous devez etre en root (à cause de l'acces au port série). Si vous voulez utiliser le montage sans etre en root, il faudra mettre le bit SUID de l'executable à 1 (prenez l'explorateur graphique, et cochez la case).
Voici un exemple d'installation:
Cette installation montre un exemple de branchement avec la carte à relais additionnelle qui je le rapelle permet de sélectionner les sources et les enceintes. Sans cette carte, vous pouvez supprimer toute la partie du bas, et garder juste l'ampli et une paire d'enceintes.
Procédure de test:
~ Echantillonage:
Ne branchez pour le moment pas le montage et ne mettez pas les piles, et lancez le logiciel en ajoutant un code par exemple: ./recepteur_IR -a debug "xmms -p &" (le but est d'alimenter le montage). Il faut que le logiciel soit en attente, sinon le montage n'est plus alimenté. (dans ce cas relancez le logiciel).
Appuyez sur les deux touches du montage en meme temps, et tout en les maintenant enfoncées, branchez le montage au P.C.
Appuyez alors un peu sur toutes les touches de votre telecommande; le but est de faire détecter au PIC la vitesse à laquelle emmet votre telecommande. A chaque fois que vous appuyez, la LED doit clignoter assez rapidement. Répetez cette opération jusqu'a ce que la LED ne s'allume plus.
~ Apprentissage des codes:
Maintenant que l'echantillonage est terminé, le PIC attend les quatre codes suivants:
Appuyez sur la touche I1, puis appuyez sur la touche de votre télécommande que vous voulez utiliser pour alumer le P.C.
Recommencez de meme pour la touche servant respectivement à selectionner les sources, selectionner les hauts parleurs, puis la touche mute.
Remarque: il faut obligatoirement faire ces opérations, meme si vous n'utilisez pas la carte additionnelle.
Si vous souhaitez refaire un échantillonage parce que vous changez de télécommande, ou parce que le premier à mal fonctionné (dans ce cas en général toutes les touches de la telecommande lancent le meme logiciel), il suffit de débrancher le montage du P.C., d'enlever éventuellement les piles, de lancer le logiciel, et de reprendre à partir de "~ Echantillonage".
Utilisation du logiciel:
~ Commencez par effacer le fichier liste_codes.data en faisant "rm liste_codes.data". Ce fichier contient la liste des codes que vous avez enregistrés.
~ Lancez le logiciel pour ajouter une action, par exemple lancer la lecture dans xmms (player MP3): ./recepteur_IR -a debug "xmms -p &"
Le logiciel se met alors en attente. Appuyez sur la touche que vous voulez utiliser pour lire les MP3 sur votre telecommande; vous devez voir 32 octets s'afficher à votre ecran.
~ Procedez de meme pour augmenter le volume par exemple: ./recepteur_IR -a debug "aumix -v+5"
~ Lancez ensuite le logiciel en mode test: ./repecteur_IR -t. Appuyez sur l'une des deux touches enregistrée de votre telecommande. Vous pouvez verifier le bon fonctionnement en regardant ce qui s'affiche. (remarque: il faut relancer systématiquement le logiciel pour chaque essai).
~ Si ca n'a pas l'air de fonctionner, vous pouvez tenter de reprendre à l'etape d'echantillonage, en changeant eventuellement de telecommande.
~ Si tout semble fonctionner correctement, vous pouvez enresitrer toutes les autres touches.
Voici un extrait de la liste des commandes que j'utilise:
"xmms -p &": xmms en lecture
"xmms -f &": chanson suivante dans xmms
"xmms -r &": chanson precedente dans xmms
"xmms -s &": arret de xmms
"killall xmms": fermeture de xmms
"aumix -v-5": diminution du volume
"aumix -v+5": augmentation du volume
~ Si vous enregistrez les chiffres (par exemple ./recepteur_IR -a "1"), vous pourrez ensuite lancer tous les logiciels qui acceptent un nombre comme parametre: par exemple ./recepteur_IR -a "xmms -p -e /root/MP3/%d.m3u &" permet de charger une playliste dont le nom sera par exemple 1.m3u, et qui se situera dans le repertoire /root/MP3/
Au niveau de la telecommande, il suffit de rentrer le numero, par exemple "1", puis "5" pour 15, et ensuite d'appuyer sur la touche pour charger une playliste.
Ceci vous permet egalement d'arreter votre P.C. au bout d'un certain temps.
Pour finir, vous pouvez lancer le logiciel en tache de fond, en utilisant la commande ./recepteur_IR -b ou ./recepteur_IR -b debug.
Notez qu'avec la version graphique, il suffit de cliquer.
Derniere chose: pour supprimer des codes, il suffit de lancer ./recepteur_IR -d, et d'appuyer sur la touche à supprimer sur la telecommande, ou ./recepteur_IR -d "
Utilisation du montage:
~ Les touches, une fois le PIC configuré, permettent de selectionner les enceintes et le sources si la carte additionnelle est présente. Cette fonction n'est utile que pour faire des tests, ou si vous avez perdu la telecommande!!!
~ La LED s'allume à chaque code recu de la telecommande.
Carte à relais additionnelle:
La présentation va etre très succinte, comme je l'ai déja dit, cette carte est optionelle, et permet de selectionner les sources et les hauts parleurs.
Voici le typon de la carte:
La carte n'est pas prévue pour un ampli de 300W, mais pour un petit ampli de 50W grand maximum.
Elle a besoin d'une alimentation externe delivrant entre +4.8V et +5.6V, 150mA environ. Lorsque rien n'est alimenté, j'ai prévu pour qu'il y ait un chemin par défaut, c'est à dire que le signal audio passera par EAG1 et EAD1, et les enceintes seront celles branchées sur SHG1 et SHD1.
Le montage est tres simple, veillez à ce que les pistes audio ne se touchent pas (testez au multimetre), sinon vous risquez de griller votre ampli ou votre carte son.
La piste de masse est surtout là pour réduire les parasites (blindage), Vu le diametre des fils audio, je vous conseil de relier les masses directement ensemble sans passer par ma carte (manque de place). Reliez simplement la masse pour faire blindage.
Vous devez telecharger le typonJe rappelle qu'il faut telecharger le logiciel ARES Lite qui est gratuit. Il est disponible sur le site suivant: http://www.multipower-fr.com
Aucun commentaire:
Enregistrer un commentaire