
La disponibilité croissante des téléphones à faible coût, aussi bien neufs que d’occasion, rend l’utilisation des appareils GSM, dans ce domaine, meilleur marché que celle des traditionnelles radiocommandes codées : moins chère et surtout encore plus sûre et d’un emploi plus simple. En effet, l’envoi d’un code d’identification avant coup de téléphone est plus bref et donc moins repérable que celui d’un code standard Motorola MC1450xx ou MM53200/UM86409.
Notre montage
Le système de commande à distance pour ouvre-portail avec un portable GSM Siemens, décrit dans cet article, constitue une alternative des plus valables aux installations traditionnelles : un montage similaire a été présenté il y a quelques mois dans notre Spécial téléphonie et il a rencontré un certain succès. Toutefois vous nous avez adressé des suggestions, dont une fois de plus nous vous remercions, ce qui nous encourage à vous proposer une nouvelle version tenant compte de vos souhaits et mettant en oeuvre, cette fois, le téléphone portable Siemens 45, plus récent que le 35.
Au cours de l’article, nous analyserons, en outre, quelques aspects intéressants concernant l’installation et nous verrons comment coupler ce montage au système d’ouverture de porte traditionnel, sans avoir à effectuer la moindre intervention ou modification sur l’installation existante. La nouvelle version est capable de gérer jusqu’à 300 usagers (si vous avez beaucoup d’amis sûrs… ou une usine !) lesquels, au moyen d’un simple coup de “sans fil” au numéro du système, seront reconnus et autorisés à ouvrir le portail ou la porte. Tout cela sans la moindre dépense car le microcontrôleur, tête pensante du système, reconnaît l’identifiant de l’appelant et refuse l’appel (tout en ouvrant la porte).
L’autre différence avec le montage précédent tient à la confirmation de la mémorisation ou de l’effacement d’un numéro. Quand, par exemple, le gestionnaire du système habilite un nouveau numéro, si ce numéro est réellement mémorisé, le système envoie deux SMS de confirmation, l’un au gestionnaire et l’autre au nouvel usager habilité. En outre, dans le logiciel, ainsi que dans le matériel, il y a quelques différences par rapport à l’ancien montage.
Le circuit est surtout basé sur un microcontrôleur, interfacé avec un téléphone portable et disposant d’un contact (celui d’un relais), déclenchant en mode bistable ou monostable lorsque le portable auquel il est couplé reçoit un appel d’un appareil dont le numéro, autorisé, a été préalablement mémorisé. Les numéros habilités sont introduits au moyen d’une procédure adéquate à partir du portable par messages SMS. La liste des numéros (300 maximum) ne réside pas dans le portable ni dans la carte SIM mais dans une EEPROM bus I2C de 256 kbits. C’est là la première nouveauté matérielle par rapport à notre montage précédent, dans lequel les numéros résidaient dans l’EEPROM du microcontrôleur. Nous avons opté pour une mémoire externe, de manière à permettre au gestionnaire de copier ou modifier avec un programmateur la liste des numéros habilités : par exemple, pour faire des copies de “back-up” capables de remplacer l’EEPROM en cas de dommage, afin d’éviter d’avoir à reprocéder manuellement à l’introduction.
Pensez, en effet, à ce qui arriverait si le circuit était endommagé et s’il fallait réinsérer une centaine, ou plus, de numéros et envoyer autant de SMS de programmation !
Le schéma électrique
Il se trouve à la figure 1. Voyons maintenant le système plus en détail.
Tout d’abord, quand il reçoit un appel, le portable couplé à l’ouvre-porte ne répond pas, refuse l’appel et se contente de lire le numéro de l’appelant et de le passer à l’unité de contrôle.
L’usager doit bien sûr avoir pris ses dispositions pour ne pas masquer son numéro, c’est-à-dire de ne pas activer cette fonction nommée “cacher ID” ou “appel réservé”. Sinon le système, ne reconnaissant pas l’appelant, ne lui donne pas l’accès. Le contrôleur, c’est-à-dire le circuit de base interfacé avec le portable lui permettant de communiquer avec le réseau GSM, est une platine fondée sur un microcontrôleur PIC16F876 remplissant toutes les fonctions, soit communiquer avec le portable, mémoriser et comparer les numéros de téléphone, gérer le fonctionnement du relais de sortie et la charge de la batterie.
Après la mise en route et l’initialisation des lignes d’I/O, le PIC interroge le portable par l’intermédiaire du canal de données TX du port sériel de ce dernier, afin de lui demander son code IMEI, que l’appareil envoie sur canal RX : le microcontrôleur connaît donc l’identifiant du portable et ne répond qu’aux données lui étant destinées. Si l’on remplace le téléphone par un autre, il faut recommencer le couplage, c’est-à-dire éteindre et rallumer le circuit.
Arrêtons-nous à présent sur le contact de sortie du relais pouvant travailler, nous l’avons dit, en impulsion, c’est-à-dire en se fermant, pendant une certaine durée, à la suite de chaque appel provenant d’un des numéros habilités, ou en niveau : dans ce dernier mode le relais de sortie change d’état à chaque commande (appel) reçue. Le mode de fonctionnement de RL1 est à paramétrer au moyen du trimmer R7 : le microcontrôleur lit la constante de temps déterminée par R7/C6 et l’instruction POT du PicBasic, chargeant le condensateur de 100 nF avec des impulsions de niveau logique haut et le déchargeant en contrôlant le temps mis. Le mode bistable s’obtient avec le trimmer entièrement court-circuité, alors qu’avec l’insertion d’un minimum de résistance, c’est-à-dire en tournant le curseur dans le sens horaire, le relais travaille en mode impulsionnel : dans ce cas, la valeur résistive détermine la durée (entre 0,5 et 10 secondes) de fermeture du contact consécutive à chaque commande. Plus de résistance donne une durée plus brève et vice-versa. Le paramétrage du trimmer, c’est-à-dire du mode d’activation choisi, est à pratiquer avant d’alimenter le circuit.
Encore un détail : en mode bistable la fonction de réinitialisation est prévue, aussi chaque commande inscrit en EEPROM l’état que RL1 doit assumer.
A la mise en route, après l’initialisation, le microcontrôleur lit les différentes données en mémoire, de telle manière que, si le dispositif est privé d’alimentation quand le relais est actif, lorsque l’alimentation revient, le relais reprend son état d’origine.
Une importante nouveauté par rapport à la version précédente consiste en la gestion de la charge du portable.
Le relais RL2 sert à fournir au portable le courant de charge de sa batterie, différemment par rapport à l’ancienne version : ici le microcontrôleur interroge cycliquement le portable afin de vérifier l’état de charge de la batterie.
Quand il reçoit le signal de batterie déchargée, il porte au niveau logique haut sa broche 23, ce qui fait conduire T1 et déclencher le relais dont le contact fournit le courant au point +V du connecteur du portable.
La broche 23 retourne au niveau logique bas, ce qui relaxe le relais, quand le PIC reçoit le message sériel de batterie complètement chargée.
Il n’y a pas grand-chose à dire du reste du circuit : le tout est alimenté en 12 V continu au moins (consommation d’un ampère de courant environ) au moyen du bornier + et – POWER. La diode D1 en série dans la ligne positive protège le montage contre toute inversion de polarité.
La résistance R8 permet d’alimenter le circuit en 24 V, la fermeture de DS1 l’exclut. Les condensateurs C1 et C7 filtrent la tension principale, ensuite envoyée aux enroulements des relais, c’est l’unique composant fonctionnant en 12 V. Le régulateur 7805 permet en effet d’alimenter le portable et le microcontrôleur (bien que le portable ne fonctionne pas en 5 V mais en 3,6 V, cette dernière tension étant obtenue grâce à D2 et D3). Ce choix est justifié par le fait que le portable Siemens fonctionne avec une batterie de 3,6 V et par conséquent les signaux transitant le long de sa ligne sérielle ne sont pas TTL (0/5 V) mais oscillent, justement, entre 0/3,6 V.
Bon, eh bien nous pouvons enfin expliquer comment l’ouvre-porte peut être préparé pour l’utilisation et programmé pour modifier la liste des numéros. Le système est paramétré à partir d’un portable car nous avons prévu que les commandes se fassent par messages de texte et donc, en envoyant des SMS au bon format, le gestionnaire de l’installation peut :
a) ajouter un numéro à la liste de ceux habilités à ouvrir la commande de porte,
b) effacer un numéro de cette liste,
c) effacer toute la liste.
Dans tous les cas, on envoie un message de texte selon la syntaxe suivante :
#A0nnnnnnnn*12345# pour habiliter un numéro ;
#C0nnnnnnnn*12345# pour déshabiliter un numéro ;
#Z0*12345# pour effacer tous les numéros habilités présents dans la mémoire ;
#A1nnnnnnnn*12345# pour ajouter un numéro et avoir un message de confirmation ;
#C1nnnnnnnn*12345# pour effacer un numéro et avoir un message de confirmation ;
#Z1*12345# pour effacer toute la liste des numéros habilités et avoir un message de confirmation.
Dans les commandes #A et #C, nnnnnnnn représente le numéro à insérer dans la liste ou à supprimer : il peut être constitué d’un maximum de 16 chiffres et doit toujours comprendre le préfixe local et l’extension internationale (+393334568…).
Dans la syntaxe de chaque commande on voit un nombre compris entre l’astérisque et le dièse (*123445#), cela correspond aux 5 derniers chiffres IMEI du portable connecté à la platine ouvre-porte. Il sert à éviter des oublis : en effet, l’IMEI étant un code propre à chaque appareil, la sécurité est ainsi garantie. En écrivant dans les SMS les 5 derniers chiffres de l’IMEI du portable connecté à l’interface de télécontrôle, le PIC peut comparer le numéro arrivant et le numéro local lu, justement, après l’initialisation. Les messages n’ont d’effet qu’au cas où les deux numéros sont les mêmes, sinon ils sont ignorés. A ce propos, précisons qu’afin d’éviter de remplir la mémoire du portable ou celle de la SIM, après l’extraction, la vérification des données et l’exécution des commandes, chaque message est automatiquement effacé. C’est le logiciel du microcontrôleur qui s’en charge, c’est lui en effet qui donne au portable les instructions dont il a besoin, au moyen de la ligne sérielle.
La plus importante nouveauté de l’ouvre-porte touche au comporte ment du système après la réception des commandes, puisqu’une réponse SMS a été prévue : quand le gestionnaire envoie un message de commande, il peut à volonté réclamer un message de confirmation à l’unité distante ! Le “flag” (0 ou 1) présent dans chaque syntaxe après la commande (#A0, #C1…), indique justement si le système doit répondre (1) ou non (0) au message reçu. Au cas où la réponse est demandée, le circuit répond en envoyant un SMS communiquant l’exécution de la commande.
S’il s’agit d’un ajout ou d’un effacement de numéro, le message de confirmation est envoyé au gestionnaire comme à l’usager dont le numéro a été habilité ou déshabilité pour l’accès au système. Au cas où toute la liste des numéros reconnus est effacée, ou en cas d’erreur de syntaxe, le SMS n’est envoyé qu’au gestionnaire, soit à celui ayant envoyé la commande ! Pour plus de détails sur les procédures de programmation, nous vous renvoyons à la figure 4.


Avant d’utiliser l’ouvre-porte, il est nécessaire de paramétrer le portable qui lui est couplé au moyen du connecteur spécial Siemens (figure 9) à souder sur les points +, –, TX et RX de la platine. Après avoir introduit une carte SIM valide, allumez l’appareil. Notez qu’il est préférable d’utiliser une carte liée à un contrat plutôt qu’une prépayée, puisqu’ainsi il n’est pas besoin de se rappeler de la recharger (souvenez-vous que le système répond à la programmation et à la manutention par des SMS ayant bien sûr un coût). Vous pouvez choisir le fournisseur d’accès que vous voulez : Orange, SFR ou Bouygues, c’est égal. Désactivez le code PIN, car en cas d’absence prolongée de l’alimentation, le téléphone doit redevenir opérationnel sans aucune intervention manuelle. Effacez en outre tous les messages en mémoire.

Nous avons choisi de mémoriser sur une mémoire externe les numéros habilités afin de permettre à l’usager d’élaborer les différentes données ou de les sauvegarder dans une EEPROM copie ou un fichier d’ordinateur : cette précaution nous met à l’abri des conséquences d’un endommagement de l’appareil qui, au cas où il faudrait changer la mémoire, nous obligerait à refaire tous les appels de programmation, un par numéro habilité à (ré)introduire ! Le système adopté permet, en recourant à un programmateur spécial, de copier la liste des numéros et de l’avoir à disposition afin de reprogrammer une nouvelle EEPROM de secours ou, simplement, pour créer un ouvre-porte, à installer dans un autre lieu et auquel auront accès les mêmes personnes (par exemple, le second accès d’un immeuble). Notez que l’organisation des données en mémoire est telle que chaque numéro est inscrit tout de suite après l’autre. En cas d’effacement d’un numéro et d’ajout d’un nouveau, ce dernier est introduit dans la première zone libre ayant suffisamment d’octets pour le contenir et, par conséquent, il ne prendra la place de celui effacé que si les deux ont la même longueur. Chaque chiffre (et même le + du préfixe international) est exprimé par un octet (ASCII).
0000: 002B 0033 0039 0033 0033 0035 0035 0037 +3933555
0008: 0036 0030 0039 0033 0037 002B 0033 0039 60947+39
0010: 0033 0034 0030 0037 0030 0035 0038 0035 34071444
0018: 0031 0034 00FF 00FF 00FF 00FF 00FF 00FF 14ÿÿÿÿÿÿ
0020: 00FF 00FF 00FF 00FF 00FF 00FF 00FF 00FF ÿÿÿÿÿÿÿÿ

Le paramétrage du système est effectué au moyen de brefs messages de texte (SMS) de la part de personnes autorisées. Notre système prévoit trois commandes permettant d’ajouter un numéro à la liste des habilités (#A), effacer un numéro de la liste (#C) ou effacer toute la liste (#Z). La syntaxe des commandes est la suivante :
[Commande][Réponse][Numéro téléphonique]*[mot de passe]#
où [Commande] est une des commandes vues précédemment, [Réponse] est un “flag” (0 ou 1) indiquant si l’on désire que l’unité distante réponde par un SMS de confirmation, [Numéro téléphonique] est le numéro à ajouter ou effacer de la liste (champ nul en cas de commande de remise à zéro de la liste) et [mot de passe] est le code de sécurité représentant les 5 derniers chiffres du code IMEI du portable couplé à l’unité distante. Pour connaître l’IMEI, il suffit de le lire sur l’étiquette interne ou de taper, sur le portable, la séquence *#06#.
Les commandes possibles sous leur forme complète sont donc :
#A0nnnnnnnn*12345# (ajouter un numéro) ;
#C0nnnnnnnn*12345# (effacer un numéro) ;
#Z0*12345# (effacer tous les numéros) ;
#A1nnnnnnnn*12345# (ajouter un numéro) ;
#C1nnnnnnnn*12345# (effacer un numéro) ;
#Z1*12345# (effacer tous les numéros).
Où nnnnnnnn représente le numéro à insérer ou à effacer et 12345 les 5 derniers chiffres de l’IMEI. Dans l’exemple, les trois premières commandes ne prévoient aucune réponse de l’unité distante alors que les autres prévoient que notre dispositif réponde par SMS avec indication d’exécution de la commande. Les messages prévus comme réponses sont les suivants :
MSG1: Le numéro nnnnnnnn a été habilité
MSG2: Le numéro nnnnnnnn a été déshabilité
MSG3: La liste a été effacée
MSG4: ERREUR, commande non reconnue
Les trois premiers messages indiquent que l’opération correspondante a été exécutée avec succès (le premier est associé à la commande #A, le second à #C et le troisième à #Z, alors que le quatrième indique l’échec de l’opération (syntaxe incorrecte, mémoire pleine ou mot de passe erroné). Il est important de préciser que les réponses correspondant aux commandes d’habilitation et de déshabilitation du numéro sont envoyées au gestionnaire (au numéro à partir duquel la commande a été passée) comme à l’usager dont le numéro a été ajouté ou effacé. La réponse à l’effacement complet de la liste, en revanche, n’est envoyée qu’au gestionnaire.
Notez que le système ne répond que pendant la phase de programmation et seulement s’il reconnaît la commande (#A1, #C1 ou #Z1).
Donc une erreur de frappe comprenant la commande (par exemple, #a1) ne provoque aucune réponse et, bien sûr, aucun effet. Notez enfin que le numéro à insérer dans le message de programmation doit être du type +393334458965.



Liste des composants
R1 = 1 kΩ
R2 = 1 kΩ
R3 = 4,7 kΩ
R4 = 33 kΩ
R5 = 33 kΩ
R6 = 2,7 Ω
R7 = 4,7 kΩ trimmer
R8 = 33 Ω 1 W
R9 = 4,7 kΩ
R10 = 4,7 kΩ
R11 = 1 kΩ
C1 = 100 nF multicouche
C2 = 100 nF multicouche
C3 = 470 μF 25 V électrolytique
C4 = 220 μF 25 V électrolytique
C5 = 100 nF multicouche
C6 = 100 nF 63 V polyester
C7 = 1000 μF 35 V électrolytique
D1 = 1N4007
D2 = 1N4007
D3 = 1N4007
D4 = 1N4007
D5 = 1N4007
U1 = PIC16F876-EF422
U2 = 7805
U3 = 24LC256
T1 = BC547
T2 = BC547
Q1 = 20 MHz
RL1 = Relais 12 V 1 contact
RL2 = Relais miniature 12 V
DS1 = Dip-switch 1 microinter.
Divers :
1 Bornier 2 pôles 90° enfichable
1 Bornier 3 pôles 90° enfichable
1 Support 2 x 14
1 Support 2 x 4
1 Dissipateur ML26
1 Boulon 8 mm 3MA
1 Connecteur pour Siemens X35 ou X45
La réalisation pratique
Nous pouvons maintenant passer à la construction de cet ouvre-porte GSM. Si vous gardez les yeux sur les figures 5a et 5b, vous n’avez que peu de chance de vous tromper.
Commencez, bien sûr, par vous procurer ou réaliser vous-même (par la méthode décrite dans l'article : "Comment fabriquer vos circuits imprimés facilement ?") le circuit imprimé dont la figure 5c (sur notre site electronique-magazine.com) donne le dessin à l’échelle 1.
Quand vous avez le circuit imprimé gravé et percé, montez tous les composants en commençant par les supports de circuits intégrés (attention : aucun court-circuit entre pistes ou pastilles ni soudure froide collée).
Vous insérerez les circuits intégrés correspondants après la dernière soudure de tous les autres composants.
Insérez et soudez toutes les résistances et les diodes (respectez bien leur polarité en orientant leur bague repère-détrompeur dans le sens montré par les figures). Poursuivez avec tous les condensateurs (là encore respectez bien la polarité des électrolytiques, la patte la plus longue allant au +).
Montez les transistors, méplat orienté aussi dans le bon sens indiqué par les figures. Puis le régulateur, couché dans son dissipateur ML26 de 16 °C/W et maintenu par un boulon 3MA, le quartz, couché lui aussi contre le circuit imprimé, le potentiomètre, le micro-interrupteur et les relais.
Soudez enfin les deux borniers enfichables à 90° au pas de 5 mm à deux et trois broches et les fils colorés du connecteur spécial Siemens (pour ce dernier, voir figure 9).
Le circuit est à alimenter avec une tension de 12 à 15 V si DS1 est fermé, ou de 16 à 24 V si DS1 est ouvert.

Le prototype de l’ouvre-porte GSM dans la version avec télécommande incorporée.
Cette solution évite d’intervenir sur l’installation électrique de l’ouverture de porte et permet de laisser l’appareillage dans la maison. Bien sûr, la télécommande doit avoir une portée suffisante pour activer le récepteur de l’ouvre-porte.

Il peut arriver que, par manque de familiarité avec les installations électriques ou parce que le syndic de l’immeuble ou des immeubles l’interdit, on n’ait pas la possibilité de modifier l’installation de l’ouverture de porte électrique. La solution à ce problème est simple : elle consiste à utiliser notre ouvre-porte GSM pour commander directement une radiocommande d’ouverture/fermeture de la porte. Il suffit d’ouvrir le boîtier plastique de la radiocommande et de souder deux fils en parallèle avec les contacts du poussoir d’activation.
Ils sont à relier aux contacts normalement ouverts du relais de notre dispositif lequel, par conséquent, activera l’ouverture/fermeture de la porte chaque fois qu’il recevra un appel d’un numéro autorisé. Le schéma ainsi que les photos de la figure 7 montrent comment réaliser un système complet sans déplacer la centrale de l’ouvre-porte.
Ainsi, tout le dispositif peut être placé à l’intérieur de l’appartement (bien sûr, la portée de la radiocommande doit être suffisante pour atteindre le récepteur placé près de la porte ou du portail à commander électriquement), sans aucun problème d’alimentation. Une telle solution permet aussi de protéger tout le système de l’humidité ou du vandalisme (aspects du problème dont il faut toujours tenir compte en cas d’installation externe).
Les liaisons à effectuer sont très simples, comme le montre le dessin : il suffit de souder les deux broches de sortie du relais en parallèle avec le poussoir de la télécommande.

