Dans mon salon, j’ai plusieurs éclairages différents. Pour changer d’ambiance, je dois brancher des prises ce qui n’est pas très pratique et pas très joli. Comme je suis en location, je ne peux pas changer les interrupteurs ni le circuit électrique déjà présent. Je dois trouver autre une solution.

Cahier des charges :

  • Il faut au minimum quatre éclairages différant.
  • Je ne veux pas ou très peu modifier le circuit électrique de mon appartement.
  • Le système doit être facile à utiliser.
  • Je veux un système low cost avec le plus possible du matériel de récupération.
  • Le système doit pouvoir être facilement réutilisable si je déménage.

Étude :

Après étude, il me serait possible de poser un boitier électrique de mon crut sur un rebord existant juste en dessus de mon canapé, à la base de la charpente (je suis sous les toits). La plupart des lumières pourraient être alimentée depuis là et tous les câble cachés sur le rebord. Il y a le câble pour la lampe qui était montée d’origine qui me permettra d’avoir mon alimentation 230VAC. Par contre pour que ce soit joli, sans câbles qui se baladent, il me faudra une télécommande.

 

 

Après quelque recherche, plusieurs solutions sont envisageable :

  • Communication Wifi ou Bluetooth : C’est une solution d’actualité mais il faudrait développer une appli mobile ou PC.
  • Communication avec module Xbee : C’est une solution qui pourrait marcher et en plus j’ai déjà le matériel. Il faudra développer un récepteur et une télécommande.
  • Communication Infrarouge : Je ne connais pas mais la télécommande serait déjà faite.

La solution qui paraît la plus simple serait une commande infrarouge qui permanentait d’allumer et d’éteindre les divers lumières à distance. Sur le net j’ai trouvé un kit peu cher avec une télécommande et un module de réception.

Principe retenu:

Voici le principe retenu pour cette bricole :

Matériel:

Pour la télécommande infrarouge, j’ai commandé le kit de Sparkfun pour 12chf chez Distrelec. Le kit est composé d’un télécommande infrarouge avec 9 boutons, une pile pour la télécommande, deux récepteurs infrarouge TSOP382, deux leds infrarouge (pas utiles pour cette bricole) et 20 résistance 330 ohm (je ne sais pas à quoi ça va servir…).  Dans le boitier, il y aura une alimentation, des relais pour les sorties 230VAC et un circuit électronique fait maison avec un PIC qui commandera le tout.

J’ai récupéré une petite alimentation 24Vdc d’une vieille bricole, cinq relais 24VDC récupéré sur un projet pro, quelque borne et un convertisseur 24VDC-> 5VDC. J’ai encore trouvé un peu de câble 3×1.5mm2 pour le câblage externe du boîtier.

Schémas électrique:

Maintenant, nous pouvons avancer sur le schéma électrique de notre boitier :

Schéma électrique

Je devrai acheter un boitier plastique et quelque prises et fiches 230v, sinon c’est de la récup.

Électronique:

Attaquons maintenant le circuit électronique qui permettra de commander les relais et donc les lumières de mon salon.

Là encore, je fais de la récup pour le PIC… Enfin, je prends ce que j’ai en stock car impossible d’en commander en ces temps de pénurie électronique…

Liste du matos :

  • 1 PIC18F25K22, ici la doc
  • 1 Led vert pour le débug ça sert toujours
  • 1 Résistance 1k  (R2) pour le led
  • 1 Condensateur céramique de 100nF (C6) pour le déparasitage
  • 1 Quartz de 8MHz
  • 2 Condensateurs céramique de 22pF (C4 & C5)
  • 8 transistor FET STP40NF03L (Q1 à Q8) pour les sorties
  • Pleins de résistance de 10k
  • 1 Gros connecteur à vis 2 pôles pour l’alimentation (X2) d’un pas de 5.07
  • 1 Gros connecteur à vis 8 pôles (X4) d’un pas de 5.07
  • 1 Petit connecteur à vis 8 pôles (X3) d’un pas de 2.54
  • 1 Connecteur à pin femelle pour l’UART (X5)
  • 1 Connecteur à pin pour la programmation du PIC® (X1)

Je vais partir sur un PIC 18F25K22 totalement surdimensionné pour ce projet. En effet, nous avons seulement besoin de quelque entrée sorties et d’un timer pour décoder le signal du récepteur infrarouge. Mais c’est tout ce que j’ai en stock actuellement.

Voici le schéma de la carte :

Schémas électronique

Pour le débug, j’ai ajouté un connecteur (X5) pour brancher un RS232. Le PIC à un module UART alors pourquoi ne pas en profiter. Je pourrais connecter un module PmodUSBUART que j’utilise souvent sur mes développements. Le connecteur X1 permettra de programmer le PIC. Sur le connecteur X3, j’ai branché en direct quelque patte du PIC. Une pine servira pour la connexion avec le récepteur infrarouge et les autres serviront pour des fonctions pas encore imaginée. Je me suis arrangé d’avoir le port de communication I2C disponible sur X3.7 et X3.8. On ne sait jamais.

Construction:

C’est parti, le circuit électronique je vais le monter sur du Veroboard comme à mon habitude. C’est une solution simple et bon marché pour développer des cartes électronique. Je prens des cartes avec des pistes horizontales et un pas de 2.54mm.

Voici mon plan de montage :

Cette représentation est du côté sans pistes. Les pistes sont dans le sens horizontal et les crois sont les coupures des pistes. Les trais verticaux sont les ponts.

Voici le print terminé:

Passons maintenant au montage du boitier avec l’intégration des éléments:

Le montage du récepteur infrarouge:

Le récepteur TSOP382 est soudé avec les fils sur un petit bout de veroboard. Ensuite, je passe un bout de gaine thermo par-dessus le tout pour isoler et protéger.

Programmation:

Maintenant que tout est monté, il faut programmer le PIC pour qu’il fasse son travail. Pour la programmation, j’utilise MPLabX® de microchip® avec le plugin C18 qui permet de programmer en C.

Le signal du récepteur infrarouge est codé en impulsions. Il suffit de mesurer le durée des impulsions pour déduire un « 1 » ou un « 0 ». Pour connaitre le début du paquet de données, il y a deux impulsions de deux durées déterminées au début du message. Un « 0 » de 9ms puis un « 1 » de 4.5ms. Ensuite, on a les impulsions. Si elles sont supérieur à 570us c’est un  « 1 » sinon c’est un « 0 ». ça c’est le protocole NEC. Dans notre cas avec la télécommande Sparkfun (dans les autres je ne sais pas) on a 8 bytes de données, donc 64 impulsions à mesurer

Pour mon développement je me suis très largement inspiré de ce site qui explique très bien les principes avec même des exemples de code.

Voici mon code complet ainsi que les dépendances pour vous faire une idée.

Conclusions:

Le résultat est top! La commande fonctionne bien et le boitier réagit comme espéré. Voici quelque image du montage final.

Le récepteur est posé simplement sur le rebord et ça marche! Il faut juste trouver le bon angle avec la télécommande pour faire passer le signal.