Un récepteur de télécommande à 4 canaux a auto apprentissage, simple et fiable


Nous avons plaisir à vous proposer dans cet article, un récepteur de télécommande à 4 canaux, très simple et très fiable, fonctionnant par auto-apprentissage. Dans cette application, les codes sont sauvegardés dans la mémoire Flash du microcontrôleur utilisé au lieu de l’être dans une mémoire externe. D’un fonctionnement bistable ou par impulsion, ce récepteur reconnaît les codes standards sur 12 bits du MM53200 ou UM86409.



Les projets proposés ces derniers temps, montrent clairement la tendance à réaliser des commandes à distance à l’aide de récepteurs intelligents, toujours plus performants et capables de s’adapter aux codes transmis par les émetteurs avec lesquels ils doivent fonctionner.
Cette catégorie de récepteurs est dénommée “à autoapprentissage”, car ils peuvent apprendre (seul ou durant une procédure exécutée par l’utilisateur) les codes des transmetteurs et se synchroniser avec eux, sans l’aide d’aucun micro-interrupteur pour la sélection du code.
La grande commodité de ces récepteurs et la faveur qu’ils trouvent auprès des utilisateurs, nous ont poussé à développer de nombreux projets de ce genre. Voici donc la dernière version d’une télécommande à 4 canaux.

De quoi s’agit-t-il ?
Il s’agit d’un récepteur fonctionnant sur 433,92 MHz, simple à construire et, par dessus tout, facile à utiliser.
A la différence des versions classiques, dans cette nouvelle mouture, les codes d’activation sont sauvegardés dans la mémoire Flash de l’unique microcontrôleur utilisé, un PIC16F84 portant le programme MF205N, qui comme nous le savons, dispose d’une zone mémoire réinscriptible électriquement (EEPROM), utilisable même pour les données.
Notre récepteur est compatible avec les transmetteurs (dits vulgairement “télécommandes”) qui utilisent des codeurs à 12 bits comme le MM53200, le UM3750 ou le UM86409.
Les sorties sont, évidemment, au nombre de 4, chacune d’elles disposant d’un relais 1 RT avec la possibilité d’un fonctionnement bistable ou astable.
Le paramétrage du mode de fonctionnement des sorties est effectué à l’aide de micro-interrupteurs, mais avec une particularité : il est possible de paramétrer les canaux par couple, dans le sens qu’avec les micro-interrupteurs, on peut décider du mode de fonctionnement des deux premiers relais et des deux derniers.
En d’autres terme, le paramétrage effectué pour CH1 est valable pour CH2 et celui choisi pour CH3 est inévitablement le même pour CH4.

Les caractéristiques globales
Voici les caractéristiques globales du système, qu’il convient d’examiner de manière plus approfondie, en mettant en évidence les détails les plus déterminants.
Pour la suite, nous faisons référence au schéma électrique, dont le coeur est représenté par le microcontrôleur U3, un PIC16F84, qui supervise toutes les fonctions du récepteur et maintient en mémoire les codes reçus durant la phase d’auto-apprentissage.
Nous avons ensuite un module hybride (U2), qui est un récepteur RF complet, le buffer U4 et l’incontournable régulateur de tension U1.
Le microcontrôleur est indubitablement l’élément le plus important, car il gère la totalité du récepteur de télécommande et agit en fonction de la façon dont l’utilisateur a paramétré les microinterrupteurs S1, S2 et S3.
Le programme de fonctionnement s’articule en deux parties principales, appelées en fonction de l’état de la patte 13 du microcontrôleur, donc, de la position du micro-interrupteur S3.
Si celui-ci est ouvert, c’est la routine de fonctionnement normal qui est activée, s’il est fermé, c’est la routine d’auto-apprentissage qui est mise en fonction.
Après la mise en service et le reset du microcontrôleur (géré par la cellule constituée par T1), le PIC16F84-MF205N initialise ses entrées/sorties en entrées ou en sorties.

Le rôle du microcontrôleur
En ce qui concerne le fonctionnement du microcontrôleur, commençons par examiner la phase d’auto-apprentissage, qui comme nous l’avons dit plus haut, est activée en fermant le microinterrupteur S3.

L’auto-apprentissage
A ce point, le microcontrôleur attend l’arrivée d’un train d’impulsions sur la patte 6.
Lorsque celles-ci arrivent, il en analyse la structure, dans le sens que le programme contrôle si ce sont ou non des codes au format prévu en 12 bits. Si c’est le cas, le contenu est transféré dans la zone EEPROM prévue pour la mémorisation des données. Il y demeurera jusqu’à la prochaine opération d’apprentissage conclue par l’ouverture de S3 (désactivation de l’autoapprentissage).
Si un autre code au format valide arrive avant la fermeture de S3, il se substituerait à celui déjà écrit (par écrasement).
La réception d’un signal radio valide est accompagnée de l’allumage clignotant de la LED LD1.
Au terme de la mémorisation, la LD1 demeure allumée de façon fixe durant un instant, puis s’éteint.
Un nouveau signal ne peut être envoyé qu’après l’extinction de la LED, car sinon, il ne serait pas pris en compte.
De la phase d’auto-apprentissage, il faut noter une particularité : si, comme c’est le cas, le circuit dispose de 4 canaux et est activé par autant d’émetteurs ou tout au moins par les codes des 4 différents boutons d’un même émetteur, il convient d’apprendre quatre codes.
Mais, comment fait-on pour assigner un code à un canal déterminé ? La réponse est simple, lorsqu’on active la phase d’auto-apprentissage et que le circuit reçoit un signal codé, la trame concernée est écrite dans la position de la mémoire correspondant au positionnement des deux premiers micro-interrupteurs, comme cela est illustré dans le tableau de la figure 6.
Rappelez-vous toutefois, qu’après la mémorisation de chaque code, le circuit répond par un clignotement rapide de LD1, puis, par l’allumage fixe et l’extinction de cette même LED. Par contre, rien ne se produit à l’abandon de la procédure d’auto-apprentissage, qui se termine à tout instant en ouvrant le micro-interrupteur S3.

Le fonctionnement normal
Voyons à présent ce qu’il advient en utilisation normale, en fait, lorsque le dispositif fonctionne effectivement en tant que récepteur de télécommande.
Anticipons, (nous pensons que vous l’aurez déjà compris) en disant que le fonctionnement normal est activé lorsque le micro-interrupteur S3 est ouvert.
Le programme interne tourne toujours en boucle et comme première opération, il teste l’état des micro-interrupteurs S1 et S2, puis s’assure de savoir si S3 est fermé. Dans ce cas, il saute à la phase d’auto-apprentissage.
Ayant la certitude que le troisième micro-interrupteur est fermé, le microcontrôleur attend l’arrivée du signal radio et de sa trame de données sur la ligne RB0.
Dès l’arrivée du premier bit, le programme met en mémoire toute la trame, puis contrôle immédiatement qu’elle soit effectivement au format MM53200 (UM3750 ou UM86409) alors, il peut y avoir deux possibilités.
Si le code est d’un format inconnu (différent de celui accepté ou affecté de trop de parasites), le microcontrôleur abandonne l’opération et retourne au début de la procédure, donc, à la lecture des micro-interrupteurs et à l’attente d’une nouvelle trame. Il efface de la mémoire les données venant d’être reçues et suspend la comparaison.
Si, par contre, la trame est au format MM53200 (UM3750 ou UM86409), le programme avance, lit les 12 bits et les compare avec les quatre codes mémorisés.
Si le code reçu est identique à l’un des codes des quatre canaux, il active la sortie correspondante, la plaçant au niveau logique haut, suivant la modalité déterminée par la position de S1 et S2.
N’oubliez pas que le micro-interrupteur 1 détermine le mode de fonctionnement des canaux 3 et 4 et que le micro-interrupteur 2 contrôle celui des canaux CH1 et CH2.
En outre, rappelez-vous que le microinterrupteur ouvert correspond à la commande bistable et le micro-interrupteur fermé équivaut au mode astable (impulsion).

Figure 1 : Schéma électrique du récepteur de télécommande 4 canaux à auto-apprentissage.

Figure 2 : Schéma d’implantation des composants du récepteur de télécommande 4 canaux à autoapprentissage.

Figure 3 : Photo d’un des prototypes du récepteur de télécommande 4 canaux à auto-apprentissage.

Figure 4 : Dessin, à l’échelle 1, du circuit imprimé du récepteur de télécommande 4 canaux à auto-apprentissage.

Liste des composants EF.205N
R1 = 10 kΩ
R2 = 10 kΩ
R3 = 10 kΩ
R4 = 10 kΩ
R5 = 470 kΩ
R6 = 2,2 MΩ
R7 = 2,2 MΩ
R8 = 1 kΩ
C1 = 470 μF 16 V électrolytique
C2 = 100 nF multicouche
C3 = 470 μF 16 V électrolytique
C4 = 22 pF céramique
C5 = 22 pF céramique
D1 = Diode 1N4007
D2 = Diode 1N4148
U1 = Régulateur 7805
U2 = Module Aurel RF290 433 MHz
U3 = μC PIC 16F84A-MF205N
U4 = Intégré ULN2803
LD1 = LED rouge 5 mm
T1 = PNP BC557B
Q1 = Quartz 4 MHz
RL1 à RL4 = Relais min. pour ci 12 V 1 RT

Divers :
2 Supports 2 x 9 broches
1 Dip-switchs 4 micro-inter.
1 Coupe fil émaillé 12/10 17 cm
4 Borniers 3 pôles
1 Circuit imprimé réf. S205 REV1

Figure 5 : Organigramme du programme de gestion du récepteur de télécommande montrant le fonctionnement du programme implémenté dans le microcontrôleur et, en dernière analyse, le fonctionnement global du récepteur.

Figure 6 : Tableau de positionnement des micro-interrupteurs de programmation S1, S2 et S3.

Figure 7 : Un des multiples boîtiers de télécommande au standard MOTOROLA MM53200 (ou UMC UM3750/UM86409) utilisables avec ce récepteur 4 canaux à autoapprentissage.

Les composants périphériques
Avant de passer au notes concernant la construction, voyons brièvement le reste du schéma électrique, à savoir les périphériques qui entourent le microcontrôleur et qui permettent de gérer au mieux la télécommande.
Le premier bloc, dans l’ordre logique, est le récepteur radio U2, un module hybride Aurel (RF290A/433) dont l’étage à super-réaction est syntonisé sur 433,92 MHz. Dans ce module UHF est inclus un démodulateur AM, qui sert à extraire la composante de modulation (à savoir les impulsions transmises par le codeur du transmetteur - la télécommande -) et un comparateur de tension, avec lequel les impulsions démodulées sont parfaitement remises en forme, afin de pouvoir être facilement lues par n’importe quel décodeur, donc, également par notre PIC16F84-MF205N.
Les trames de données obtenues à la réception d’une transmission sont restituées par la patte 14, de laquelle elles passent à la patte 6 (RB0), du microcontrôleur.
En ce qui concerne les sorties, celles-ci devant piloter des relais, nous avons opté pour un amplificateur de ligne ULN2803, un buffer contenant 8 étages darlington connectés en collecteurs ouverts.
Avec ses sorties, il peut commuter des charges électriques à la même tension que celle qui alimente la patte 10 (+V) et consommant jusqu’à 500 mA chacune.
Comme vous le voyez sur le schéma électrique et dans le but d’utiliser de façon adéquate la protection offerte par les diodes internes au driver, l’alimentation des relais est la même que celle de la patte 10 du ULN2803.
Quant à l’alimentation, l’ensemble du récepteur fonctionne grâce aux 12 volts fournis entre les points +V et – (masse).
Avec la tension d’entrée, sont également alimentés la patte 15 du module hybride et la section des relais (U4, RL1, RL2, RL3, RL4). Par contre, pour le reste, c’est un classique régulateur 7805 (U1) qui fournit les 5 volts bien stabilisés.
La consommation totale avec les quatre relais activés, frôle les 200 milliampères.

La réalisation pratique
Voyons à présent comment se construit le récepteur à 4 canaux, partant évidemment du circuit imprimé donné à l’échelle 1 en figure 4.
Une fois que vous vous êtes procuré ou que vous avez gravé et percé le circuit, insérez, en premier, les résistances puis les diodes au silicium, en veillant à leur orientation (la bague désigne la cathode).
Installez les supports pour le ULN2803 et pour le microcontrôleur (tous les deux comportant 2 fois 9 broches) en les disposant comme le montre le schéma d’implantation des composants de la figure 2.
Passez ensuite aux condensateurs, en faisant attention à la polarité des électrolytiques.
Toujours en ce qui concerne le sens de placement, ne vous trompez pas sur celui du dip-switch à 4 micro-interrupteurs, dont le premier élément (1) doit être placé vers les points de connexions de l’alimentation (il est relié à la patte 11 du support du microcontrôleur).
Portez également une grande attention au régulateur 7805, dont la partie métallique doit être placée vers le support du driver U4.
Aucun problème, en revanche, pour le quartz, qui peut être placé dans un sens ou dans l’autre et pour le module hybride RF290A/433, étant donné que ses pattes sont placées de manière à servir de détrompeur.
Pour effectuer les liaisons avec les éléments extérieurs, prévoyez des borniers à vis au pas de 5 mm, à souder sur circuit imprimé.
L’opération se termine par la soudure d’un morceau de fil de cuivre émaillé rigide (12/10 au moins) d’une longueur de 17 cm, au point du circuit imprimé marqué “ANT”, réalisant ainsi l’indispensable antenne réceptrice.
Avant de mettre le récepteur en service, vous devez insérer les circuits intégrés dans leur support respectif, en prenant soin que le repère-détrompeur en forme de U coïncide avec celui du support. Rappelez vous que le microcontrôleur PIC16F84-MF205N doit être installé dans le support situé près du quartz et évidemment, le ULN2803 sera placé dans l’autre.
Pour la programmation, fermez le micro-interrupteur S3 du récepteur et transmettez en appuyant sur un poussoir de votre émetteur (télécommande).
La LED doit clignoter, indiquant ainsi l’acquisition et la mémorisation du code, dans la position décrite par l’actuelle position de S1 et S2. Pour le positionnement de ces derniers, reportez-vous au tableau de la figure 6.
Lorsque vous avez mémorisé le nombre de codes souhaités (vous pouvez mémoriser seulement ceux qui vous intéressent ou également assigner le même code à l’ensemble des quatre canaux), ouvrez le micro-interrupteur S3 mais n’attendez aucune signalisation, car la sortie de la procédure d’auto-apprentissage n’est confirmé par aucun signal visible.
Positionnez à présent S1 et S2 pour le mode d’activation choisi des groupes de sortie, puis essayez de transmettre, en vérifiant les signalisations données par la LED et par l’activation des relais concernés.
En utilisation normale, rappelez-vous que si un code ne produit aucun effet, c’est qu’il est probablement émis par un émetteur différent de ceux mémorisés ou bien que vous avez effacé ou remplacé les données, au cours d’une fausse manoeuvre (erreur de positionnement de S3).

Aucun commentaire:

Enregistrer un commentaire