Electronique > Réalisations > Télécommandes > Télécommande 014 - Pro 

Dernière mise à jour : 05/05/2024

Présentation

Cette télécommande sans fil permet de transmettre un maximum de 16 ordres différents avec accusé de réception simple ou 8 ordres différents avec accusé de réception étendu. L'accusé de réception simple informe le point d'émission que le récepteur a bien reçu les ordres transmis par l'émetteur. L'accusé de réception étendu permet de savoir si l'appareil commandé a réellement réagi (il doit pour cela posséder des sorties de télésignalisation).
 
telecommande_014_pcb_3d_front    telecommande_014_syno_001a
 
L'idée de cet appareil a pour origine une demande d'un ami preneur de son qui dans un immeuble souhaitait pouvoir envoyer une information de type "ça tourne" à une équipe technique située à un étage au-dessus, avec la certitude que l'information était bien passée et il lui fallait un accusé de réception silencieux. Contrainte supplémentaire, il ne voulait aucun rayonnement HF de l'appareil au repos.

Le circuit présenté ici est basé sur un microcontrôleur PIC d'entrée de gamme et peu coûteux, le 18F26K22 (un 16F1827 pourrait également convenir, moyennant adaptation du logiciel) associé à un module HF de type nRF24L01. Et je suis allé bien au-delà de la demande initiale.

   

Avertissement

Pour l'heure, cette télécommande ne fonctionne qu'en mode 16 voies avec les accusés de réception simple, le mode "8 voies avec accusé de réception étendu" n'est pas encore implémenté.

Les 16 lignes d'entrées et de sorties sont montrées "nues", directement accessibles. Dans la pratique, ces lignes sont dotées des protections requises pour se prémunir des aléas de l'environnement (parasites, surtensions).

   

Utilisations possibles

Une télécommande de ce type permet de piloter à distance plusieurs appareils différents ou plusieurs fonctions d'un même appareil. L'existence d'un accusé de réception n'est justifiée que pour les cas où on ne voit pas entrer en action l'appareil commandé à distance.
J'ai limité le nombre de voies à 16, mais le système a été conçu pour pouvoir dès maintenant prendre en charge plusieurs milliers de commandes distinctes moyennant l'ajout de quelques circuits intégrés.

    

Schéma

Le coeur du montage est un microcontrôleur PIC, composant indispensable ici pour dialoguer avec le module HF nRF24.

telecommande_014

L'expandeur de port U2/MCP23S17 permet d'ajouter des lignes d'entrée/sortie, le PIC choisi n'en disposant que d'un nombre réduit.

Configuration matérielle
Trois cavaliers (JPx) sont prévus :
   
Signalisations
Quatre voyants sont prévus :
Aucun voyant additionnel de mise sous tension n'a été prévu, puisqu'au moins un des deux voyants ModeTx ou ModeRx est allumé en permanence.
  
Fonctionnement général
Le même circuit peut être configuré en émetteur ou en récepteur, avec accusé de réception simple ou étendu. L'expandeur de ports U2 raccordé au PIC par une liaison SPI permet de disposer de 16 lignes d'E/S qui peuvent être utilisées en entrées ou en sorties. Le nombre de voies de télécommande dépend du mode d'accusé de réception (AR) sélectionné : 16 voies avec accusé de réception simple (AR=0), 8 voies avec accusé de réception étendu (AR=1).

Mode
Tx/Rx
Accusé
réception
JP1
(Mode)
JP2
(AR)
GPIO
A
GPIO
B
Remarques
Tx (émission) Simple 1 0 Entrées Entrées 16 voies de TC
Tx (émission) Etendu 1 1 Entrées Sorties 8 voies de TC
Rx (réception) Simple 0 0 Sorties Sorties 16 voies de TC
Rx (réception) Etendu 0 1 Sorties Entrées 8 voies de TC
 
Remarque : les lignes de l'expandeur de port U2 configurées en entrées sont portées à un potentiel nul au repos, grâce au "résistances de rappel" (pulldown) incluses dans le circuit. De la sorte, les entrées non utilisées peuvent rester "en l'air" (non raccordées).
 
Mode Emetteur avec accusé de réception simple
Dans ce mode :
 
Mode Emetteur avec accusé de réception étendu
Dans ce mode :
Non implémenté pour l'heure.
 
Mode Récepteur avec accusé de réception simple
Dans ce mode :
    
Mode Récepteur avec accusé de réception étendu
Dans ce mode :
Non implémenté pour l'heure.
  
Transmission des données
La transmission des ordres se fait par un petit paquet (une petite trame) de 20 octets.

Octet Fonction Remarque Nota
#00 longueur trame Nombre d'octets (1)
#01 Réservé Non utilisé -
#02 adresse du destinataire Highest (b31..b24) (2)
#03 adresse du destinataire Higher (b23..b16) (2)
#04 adresse du destinataire High (b15..b8) (2)
#05 adresse du destinataire Low (b7..b0) (2)
#06 type de commande - (3)
#07 valeur de commande Higher (b23..b16) (4)
#08 valeur de commande High (b15..b8) (4)
#09 valeur de commande Low (b7..b0) (4)
#10 type du paramètre Highest (b31..b24) (5)
#11 type du paramètre Higher (b23..b16) (5)
#12 type du paramètre High (b15..b8) (5)
#13 type du paramètre Low (b7..b0) (5)
#14 valeur du paramètre Highest (b31..b24) (6)
#15 valeur du paramètre Higher (b23..b16) (6)
#16 valeur du paramètre High (b15..b8) (6)
#17 valeur du paramètre Low (b7..b0) (6)
#18 CRC16 High (7)
#19 CRC16 Low (7)
Nota (1) - Longueur trame complète, actuellement spécifiée en fixe avec la valeur 20.
Nota (2) - Actuellement, seul l'octet #05 est utilisé (256 adresses destinataire possibles).
Nota (3) - Commande initiale ou répétition, maintenue ou momentanée.
Nota (4) - Dans le cas d'une commande momentanée, indique le temps, en ms.
Nota (5) - Actuellement, seul l'octet #13 est utilisé (256 paramètres possibles).
Nota (6) - Actuellement, seul l'octet #17 est utilisé (256 valeurs de paramètre possibles).
Nota (7) - Polynome  x^16 + x^15 + x^2 + 1, incluant les octets #00 à #17.

Comme on peut le constater, le système est largement sous-exploité avec une utilisation de seulement 16 voies. J'ai prévu large ;)

Contrainte sur accusé de réception étendu
En mode réception, l'envoi des accusés de réception est quasi immédiat, ce qui peut poser problème avec un appareil commandé un peu long à la détente. En effet, si ce dernier est doté de relais dont certains contacts servent de confirmation d'activité (boucles sèches de télésignalisation), le temps que mettent les contacts du relais à bouger (quelques ms) peut être supérieur au temps mis pour envoyer l'accusé de réception étendu. C'est la raison d'être du cavalier JP3/Repeat, qui réitère la commande déjà passé 500 ms après la commande initiale.

Important : dans le mode "accusé de réception étendu" , une nouvelle commande ne peut pas être passée dans le laps de temps qui sépare la commande initiale de la commande répétée (temps mort de 500 ms).

   
Fonctions futures (à l'étude)

Possibilité de transmettre des ordres via l'entrée Rx1 (broche RC7/RX1 du PIC) à partir d'une trame de longueur variable et à une vitesse de communication ajustable par l'utilisateur (entre 9600 et 115200 bauds).

   
Alimentation
Le PIC est alimenté sous une tension continue stabilisée de +5V grâce au régulateur de tension U101/LM7805. L'entrée de ce régulateur doit recevoir une tension continue de valeur comprise entre +8V et +12V, par le biais du connecteur J101. La diode D101 assure la protection contre toute inversion accidentelle de polarité, tandis que les condensateurs C101 et C102 assurent le filtrage général et la stabilité du régulateur. Le condensateur C103 est placé au plus près des broches d'alimentation du PIC.

Une tension de +3V3 est requise pour le module HF nRF24L01, cette tension est tirée du rail +5V et stabilisée par le régulateur U102/78M33.
   

Circuit imprimé (PCB)

Circuit double face en cours de conception.

telecommande_014_pcb_3d_components_top

   

Logiciel du PIC

Pro - La version complète n'est pas disponible en libre service.
Free - Une version gratuite limitée à 2 canaux (LE) sera prochainement disponible pour tests.
Télécommande 014 - 18F26K22 - LE - xx/xx/2024
Si vous souhaitez recevoir par la poste un PIC préprogrammé et prêt à utiliser, merci de consulter la page PIC - Sources.

    

Historique

05/05/2024
- Première mise à disposition.