Appuyez sur Entrée pour voir vos résultats ou Echap pour annuler.

Comment lire un signal infrarouge avec Arduino

Cet article est le deuxième d’une série sur l’Arduino. Si vous avez manqué le premier, je vous invite à le lire avant celui-ci. Aujourd’hui, je vais vous expliquer comment on peut lire un signal infrarouge avec un Arduino.

Build of material (BOM)

Préparation

Avant toute chose, il faut comprendre comment fonctionne l’infrarouge. Ce que je vais démontrer, c’est comment on peut lire les signaux de n’importe quelle télécommande, traiter le signal reçu, puis produire une sortie.

Sur le devant des télécommandes, on retrouve des diodes électroluminescentes à ondes infrarouges (ou IR LED). Lorsque vous appuyez sur un bouton de la télécommande, une série de modules électroniques travaillent de concert pour émettre des bits avec la lumière (infrarouge) produite par la LED.

Avec l’Arduino et un récepteur infrarouge, il est donc possible de lire le signal, le traiter d’une quelconque façon, puis produire une sortie.

Vous voyez sur l’image ci-dessus le récepteur en question. Il en existe plusieurs modèle et je crois (oops) que le mien est celui que j’ai mis dans le BOM au début de l’article. De toute façon, il fonctionne. J’en ai juste grillé un 😅.

Donc, en regardant le récepteur de face comme sur la photo, la patte 1 s’en va dans la pin 7 ou une autre entrée digitale. À l’intérieur du récepteur, il y a un microcontrôleur qui traite le signal infrarouge et produit un signal digital sous forme de bits. Dans ce petit truc!

La patte 2 a été connectée au ground et la troisième à la source de courant de 5v.

Un peu de code

Parce que c’est un blogue de code après tout… Je lance l’EDI d’Arduino. Puis j’installe cette librairie qui permet de traiter le signal binaire du récepteur. En gros, elle simplifie la synchronisation entre la lecture de la pin et la fréquence à laquelle le signal est émis (0 ou 1) par le récepteur infrarouge.

Puis je téléverse ce code :

Si vous avez de la difficulté à comprendre, je vous invite à relire mon introduction à Arduino. Après avoir instancié et initialisé la librairie, dans la boucle du programme, je récupère la valeur lue avec irrecv.decode(), puis dépendant de la valeur, j’écris dans la « console » si le signal reçu correspond à la touche pour monter ou baisser le volume.

Note : J’ai obtenu ces valeurs en téléversant un sketch qui affiche les données reçues dans la « console ».

Note 2 : La « console » est le port série qui permet à Arduino de communiquer avec votre PC.

Conclusion

Aujourd’hui, vous avez appris à lire un signal infrarouge de n’importe quelle télécommande avec un Arduino et d’exécuter un bout de code selon le bouton appuyé. Bon, j’avoue que c’est relativement simple comme projet. Je propose de bâtir sur ça et d’explorer ensemble jusqu’à ce qu’on arrive avec un projet plus complexe.

Si vous avez aimé, partagez avec vos collègues et amis sur les réseaux sociaux. Vous êtes notre gaz!

Suivez-nous par courriel!

Saisissez votre adresse courriel pour vous abonner au blog d'Ezo et recevoir une notification de chaque nouvel article par email.

Rejoignez 21 autres abonnés