Télécommande IR

Bonjour,

Pour mon horloge VFD qui est en cours de réalisation, j’ai fabriqué une télécommande infrarouge.

Un récepteur infrarouge TSOP138 a été prévu pour le réglage de l’horloge à distance.

Fabrication

J’ai commencé par choisir le boîtier de la télécommande, j’ai sélectionné la référence 2955-40GNL du fabricant CAMDENBOSS car il ne coûte pas cher (moins de 5€).

camdenboss 2955-40r-4 Details du boitier

Il est équipé de 4 touches et d’un conducteur de lumière pour une LED, le seul inconvénient est que le circuit va avoir une forme complexe à dessiner sur un logiciel de CAO électronique.

Grâce à la documentation du boîtier, j’ai réalisé le PCB avec un logiciel de CAO mécanique. J’ai ainsi pu importer un fichier DXF dans le logiciel de CAO électronique et avoir le contour de la carte.

PCB boitier 3D Boitier dxf

Pour le découpage de la carte, j’ai utilisé une dremel et une lime.

Telecommande IR Telecommande IR

Fonctionnement

La télécommande est principalement constituée d’un PIC16LF1906, d’un LMC555 et d’un circuit de portes logiques SN74AUP1G57.

schéma_principe

  • Le PIC permet de faire la détection des touches, de gérer les alimentations des autres circuits, d’envoyer la trame de données et d’allumer la LED de visualisation.
  • Le CI LMC555 permet de générer un signal de 38kHz avec un rapport cyclique de 3/4.
  • Le CI SN74AUP1G57 permet d’inverser le signal du LMC555 et d’envoyer les trames de données commandées par le PIC.
  • Le transistor MOSFET permet de couper l’alimentation du CI LMC555 et CI SN74AUP1G57 lors de la veille de la télécommande.

Code RC5

J’utilise le protocole RC5 qui est très utilisé pour les télécommandes infrarouges.

Le récepteur que j’utilise fonctionne avec une porteuse de 38kHz.

tsop1838

Le code RC5 se compose d’une suite de 14 bits envoyés en code biphase. La trame est composée d’une porteuse à 38kHz qui a un rapport cyclique de 1/4.

sous porteuse

code-biphase

La composition de la trame est la suivante :

  • 2 bits toujours à « 1 » qui servent à la synchronisation.
  • 1 bit de répétition. Il change d’état à chaque nouvel envoi de code.
  • 5 bits d’adresse. Ils permettent la sélection de l’appareil à commander.
  • 6 bits de code qui permettent de choisir la commande désirée.

trame rc5

Exemple de trame RC5 :

exemple rc5

La trame dure 24.892ms (14×1778µs). La trame suivante ne sera émise que 88.886ms après la fin de la précédente.

trames_rc5

Voici quelques relevés faits sur la télécommande :
lmc555
code_pic
trame_555
Ce dernier relevé est le mixage des deux autres signaux (forme de la trame et porteuse de 38kHz).

Voici le signal émis par la télécommande et celui reçu par le capteur infrarouge.
trame_emt_rect

Gestion de l’autonomie de la pile

Pour que la pile de la télécommande dure le plus longtemps possible, il faut faire attention à la consommation en courant.

Lorsqu’il n’y a pas d’appui sur une touche de la télécommande pendant au moins 5 secondes, les alimentations des CI LMC555 et SN74AUP1G57 sont coupées par le transistor MOSFET et le PIC passe en veille.

Ce système fonctionne assez bien puisque la consommation est de 1.1µA en veille.

consommations

Il me reste à faire la détection d’une tension trop faible sur la pile (Brown out reset) et le décodage de la trame par l’horloge.

Pour marque-pages : Permaliens.

4 réponses à Télécommande IR

  1. jC_Omega dit :

    Salut Étienne,

    Vraiment super bien expliquer ta présentation, on comprend tout, c’est vraiment une bonne idée de mixer composants traditionnelle et pic.
    2 petite question :
    – fabrique tu toujours les cartes toi même ?
    – comment le pic sort de veille ? Interruption par le bouton?

    Bonne continuation.

    • Thienou dit :

      Salut JC,

      Oui c’est toujours moi qui fabrique mes cartes avec la méthode plastifieuse.

      Le PIC sort de veille par interruption de changement d’état (IOC) sur les entrées des boutons poussoirs.

  2. Vraiment pas mal cette télécommande.
    Et la méthode de modulation est une bonne idée.
    La modulation avec le PIC n’était pas envisageable?
    Je suppose que le temps de 88mS permet au PIC de détecter lorsque l’envoie est terminer et de pouvoir traiter l’information?
    Je ne vois pas bien à quoi sert le brown out reset ce serait possible d’avoir plus d’infos?

    • Thienou dit :

      Effectivement ont peux faire la modulation avec le PIC mais voulant diminuer la consommation, j’ai préféré faire cadencer le PIC à une fréquence faible.

      Oui on peux utiliser les 88ms pour le traitement c’est aussi pour diminuer la consommation car pendant ce temps la LED IR n’est pas allumée.

      Le « brown out reset » permet de faire un reset du PIC lorsque la tension est trop basse, donc la télécommande ne fonctionnera pas si la tension de la pile est trop faible. Cette tension est réglable avec la configuration du PIC.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *