Une commande à distance à module GSM Sony Ericsson GM47

Cet appareil est capable d’activer un relais de sortie quand il est appelé à partir d’un téléphone fixe ou mobile préalablement habilité. La gestion des numéros autorisés se fait par l’envoi de SMS validés par mot de passe. Notre article vous propose de réaliser un ouvre-porte à distance mais le montage décrit peut également contrôler n’importe quel système dont la commande nécessite un relais. Il accède aux services GSM en utilisant un module Sony Ericsson GM47.

Dans le numéro 36, puis dans le numéro 43, de la revue, nous vous avons proposé de réaliser un ouvre-porte GSM utilisant le téléphone portable C35 Siemens. Le succès de ces articles et la difficulté croissante pour se procurer ce modèle de portable nous ont poussés à vous proposer un montage similaire mais dont le coeur, cette fois, est un GSM de type industriel qui restera, sans aucun doute, disponible plus longtemps que ses petits frères du marché grand public : le module Sony Ericsson GM47.

Notre réalisation
Le but du dispositif décrit dans ces pages est de commander l’activation ou la désactivation d’un relais au moyen d’appels effectués à partir de téléphones fixes ou portables dont les numéros ont été préalablement mémorisés et, par conséquent, habilités. Si les contacts du relais de sortie du circuit sont mis en parallèle avec les contacts d’activation d’un ouvre-porte, nous aurons réalisé un ouvre-porte commandable à distance par téléphone grâce au réseau GSM.
Comme nous l’avons dit dans notre introduction, ce même système peut être adapté à n’importe quelle commande nécessitant un contact ouverture/fermeture.
L’habilitation d’un numéro se fait par l’envoi vers le dispositif de messages SMS selon des règles bien précises, comme le montre la figure 3. Les numéros habilités sont mémorisés dans une EEPROM 24LC256 dotée d’une mémoire de 32 ko : une telle capacité nous a permis d’habiliter plus de mille usagers, toutefois et essentiellement pour des raisons pratiques, nous avons limité à 200 au maximum le nombre de numéros d’usagers habilités.
Quand un appel arrive, l’ID correspondant est comparé aux numéros présents en mémoire : si cette opération réussit (parce que le numéro a été préalablement mémorisé), le relais est activé et la porte est ouverte. Dans le cas contraire il ne se passe rien.
Une caractéristique nous semble importante à souligner : en dehors de l’envoi des SMS de programmation, l’utilisation du système n’implique pratiquement aucun coût supplémentaire.
En effet, les appels effectués par les téléphones portables servent seulement à identifier leur numéro de téléphone : quand le système a reconnu l’ID de l’appel, la communication est refusée et donc aucun débit n’est imputé au compte de l’appelant. Évidemment, pour être reconnu par le système, il est nécessaire que les téléphones portables soient paramétrés de façon à envoyer leur numéro : par conséquent la fonction “cacher ID” ou “appel réservé” devra avoir été déshabilitée.
En ce qui concerne l’habilitation des numéros des usagers autorisés (ou leur suppression de la liste), nous avons prévu l’emploi de SMS de manière à ne pas être contraints d’accéder physiquement au dispositif. Trois commandes sont disponibles pour ajouter (#A), effacer (#C) un numéro de la liste ou bien vider complètement la liste mémorisée en EEPROM (#Z). Les commandes sont écrites en majuscules, sinon elles ne sont pas reconnues. Par le paramétrage d’un “fl ag”, on a en outre la possibilité de demander à l’appareil un SMS de confirmation : les réponses sont envoyées au numéro GSM ayant demandé l’opération et, pour les deux premières commandes, également au numéro GSM pour lequel l’ajout ou la suppression dans la mémoire a été demandé. Pour des motifs de sécurité aisément compréhensibles, toutes les commandes réclament l’insertion, à la fin du message, d’un mot de passe de cinq chiffres : ce mot de passe correspond à l’IMEI du module GM47, plus précisément aux chiffres du dixième au quatorzième. Comme pour tous les téléphones portables, chaque GM47 est caractérisé par son propre code univoque (indiqué sur l’étiquette), c’est seulement le possesseur ou le gestionnaire du système qui aura connaissance de cet IMEI et qui pourra donc envoyer les commandes. Pour faciliter l’extrapolation des cinq chiffres du mot de passe à partir de l’IMEI, nous avons mis en oeuvre une petite astuce : après avoir allumé l’appareil la première fois et après l’écoulement de deux minutes, dans la première position de mémoire de la carte SIM, sous le mot “PASSWORD”, sont sauvegardés les cinq chiffres constituant le mot de passe du système (précédé du caractère “+”). En ôtant la SIM et en l’insérant à l’intérieur d’un téléphone portable, nous pouvons lire sur l’afficheur les cinq chiffres.
En ce qui concerne l’utilisation pratique, notre dispositif sera protégé par un boîtier étanche dans lequel prendront place la platine de l’ouvre-porte et le récepteur radio : l’alimentation sera prélevée sur les circuits existants et les contacts du relais de sortie seront mis en parallèle avec ceux de sortie du récepteur radio. On peut aussi placer le dispositif dans la maison et relier les contacts de sortie en parallèle avec le poussoir d’une télécommande permettant d’ouvrir la porte. Bien sûr, dans ce cas, la télécommande devra avoir une portée suffisante pour activer le récepteur radio.
Cette solution est certainement la plus intéressante car elle n’implique aucune intervention sur l’installation d’ouvre-porte existante.
En dehors de cette utilisation comme ouvre-porte, notre dispositif pourra être employé aussi pour activer n’importe quelle commande à distance au moyen d’un téléphone portable GSM. Une dernière précision concernant la carte SIM à insérer dans le circuit : le système est compatible avec toutes les cartes se trouvant actuellement dans le commerce.
Comme on peut le deviner, ce sera précisément cette dernière qui déterminera le numéro de téléphone du dispositif (c’est-à-dire auquel envoyer les SMS de programmation et qui devra recevoir les appels de commande).
Les SMS de réponses aux commandes seront débités sur cette carte, c’est pourquoi vous n’utiliserez cette option que si elle est indispensable.

Figure 1 : Nous avons utilisé comme antenne un morceau de fil rigide de 8,5 cm monté sur une prise mâle FME. Si le champ de réception est très faible, il vaut mieux utiliser une antenne extérieure bibande du commerce, car elle aura un gain bien supérieur.

Le schéma électrique
Le circuit, dont le schéma électrique est visible figure 2, requiert une tension d’alimentation continue de +12 V ou +24 V, la sélection se faisant par le cavalier J1 : fermé pour 12 V et ouvert (R16 provoque alors une chute de tension) pour 24 V. Le régulateur U1 7805 fournit le +5 V aux composants TTL, U2 MIC2941A fournit le +3,6 V au GSM1 GM47. Le régulateur MIC2941A peut être désactivé (ce qui a pour effet de couper l’alimentation du GM47) par la broche 2. Cette broche est reliée à une sortie du microcontrôleur U3 PIC16F628 gérant le circuit : nous verrons par la suite que cette possibilité est utilisée, dans certains cas, pour réinitialiser le module GSM. Pour faire face aux pics d’énergie requis pendant l’émission du GM47, on a inséré sur l’alimentation de ce dernier C5 et C6.
D’un côté le GSM1 est relié à la carte SIM1 (déterminant le numéro de téléphone du système), de l’autre il interagit avec le microcontrôleur U3 par la ligne sérielle TD3 (broche 43) et RD3 (broche 44). Pour convertir les niveaux de tension utilisés par le PIC (0 et +5 V) en ceux utilisés par le GSM1 (0 et +3,6 V) et vice versa, on a utilisé D3 et T2. Le GM47 et le microcontrôleur sont reliés aussi par la ligne LED/RB4, la broche 33 du GSM1 est en effet utilisée pour signaler (par LED) que le module est en réseau. Cette information est utilisée par le microcontrôleur pour vérifier que le système est toujours actif : si la broche 33 du GM47 (LED) reste haute ou basse pendant une durée supérieure à environ 50 secondes, cela signifie que le dispositif n’est pas verrouillé au réseau et, dans ce cas, le PIC, par sa broche RA7, réinitialise le GM47 en coupant son alimentation (T3 a été réinséré pour permettre la décharge rapide de C5 et C6).
Ensuite nous notons la présence de l’EEPROM 24LC256 (U4), utilisée par le microcontrôleur pour mémoriser les numéros de téléphones habilités, la LED bicolore LD1 signale l’état du système et T1 pilote le relais de puissance.
Grâce au trimmer R11, il est possible de régler la durée d’activation du relais (la lecture de R11 est effectuée par l’évaluation de la durée de décharge de C8). Comme le montre la figure 6, quand le curseur de R11 est tourné complètement dans le sens anti-horaire une durée d’environ une seconde d’activation est paramétrée, quand le curseur est tourné dans le sens horaire la durée augmente jusqu’à environ dix secondes (curseur aux 3/4 de la longueur totale de la piste), enfin, si le curseur est tourné complètement dans le sens horaire, le fonctionnement devient bistable avec réinitialisation à la mise sous tension (ce qui signifie que l’état courant du relais est mémorisé et, si la tension d’alimentation vient à manquer, à la prochaine remise sous tension, le relais sera réinitialisé).
Un dernier aspect nous reste à analyser : la répartition des tâches entre le PIC et le module GSM. Le GM47 a en effet été programmé en C. Le rôle du GM47 est de recevoir les appels et de relever l’ID de l’appelant, recevoir et extrapoler les données à partir d’un SMS, vérifier si le mot de passe inséré dans les SMS est valide et ensuite transmettre toutes les données au microcontrôleur.
Ce dernier en revanche, une fois reçues les informations, s’occupe de contrôler si le numéro est habilité à l’activation du relais ou bien, en cas de commande reçue par SMS, il ajoute (s’il n’est pas déjà mémorisé) ou efface (s’il est présent) le numéro de la mémoire ou efface complètement l’EEPROM.

Figure 2 : Schéma électrique de l’ouvre-porte.

Liste des composants
R1 = 200 kΩ 1 %
R2 = 100 kΩ 1 %
R3 = 4,7 kΩ
R4 = 1 kΩ
R5 = 4,7 kΩ
R6 = 4,7 kΩ
R7 = 470
R8 = 470
R9 = 4,7 kΩ
R10 = 4,7 kΩ
R11 = 4,7 kΩ trimmer
R12 = 4,7 kΩ
R13 = 4,7 kΩ
R14 = 4,7 kΩ
R15 = 390 Ω
R16 = 33 Ω 2 W
C1 = 100 nF 63 V polyester
C2 = 470 μF 35 V électrolytique
C3 = 100 nF 63 V polyester
C4 = 1000 μF 16 V électrolytique
C5 = 100 nF 63 V polyester
C6 = 2200 μF 16 V électrolytique
C7 = 1 μF 100 V électrolytique
C8 = 100 nF 63 V polyester
C9 = 100 nF 63 V polyester
C10 = 100 nF 63 V polyester
C11 = 1 μF 100 V électrolytique
D1 = 1N4007
D2 = 1N4007
D3 = BAT85
LD1 = LED 3 mm bicolore
U1 = 7805 U2 .....MIC2941A
U3 = PIC16F628-EF503A programmé en usine
U4 = 24LC256 GSM1 SONY ERICSSON GSM1 GM47-EF503B programmé en usine ou à programmer soi-même
T1 = BC547
T2 = BC557
T3 = BC547
RL1 = relais 12V 1 contact

Divers :
1 bornier 2 pôles enfichable
1 bornier 3 pôles enfichable
1 câble adaptateur MMCX/FME
1 antenne stylo sur prise FME
1 support 2 x 9
1 support 2 x 4
1 port SIM
1 connecteur 60 pôles CMS
1 barrette 2 pôles mâle
1 cavalier
4 entretoises 2MA 5 mm
4 boulons 2 MA 10 mm
2 dissipateurs ML26
2 boulons 3 MA 10 mm


Figure 3 : Comment programmer l’ouvre-porte.

Les numéros habilités pour activer le relais sont mémorisés dans une liste écrite dans la mémoire EEPROM 24LC256 et peuvent être entrés par l’envoi de SMS.
Trois commandes sont disponibles pour ajouter (#A), effacer (#C) un numéro de la liste ou bien vider complètement la liste (#Z). La syntaxe générale du texte des commandes à envoyer est la suivante :
<#cmnd><risp><numéro de téléphone>*<pswd>#

où <cmnd> est une des trois commandes qu’on vient de voir, <risp> est un “fl ag” indiquant si l’on désire des SMS de confirmation (0 = aucune réponse, 1 = avec réponse), <numéro de téléphone> est le numéro à ajouter ou éliminer de la liste et il est inséré avec préfixe local et extension internationale (dans la commande #Z ce champ n’est pas inséré), enfin <pswd> est le code de sécurité correspondant aux chiffres de 10 à 14 du code IMEI du module GM47 utilisé par le circuit (dans le cas illustré ici et que nous prendrons comme référence pour les exemples suivants, il correspond à 39020).
Par exemple, pour effacer complètement le mémoire avec SMS de confirmation, le fl ux à envoyer doit être :
#Z1*39020#

Pour ajouter à la liste le numéro 3401234567 avec confirmation par SMS, la commande est :
#A1+393401234567*39020#

Pour effacer ce même numéro de la liste (avec SMS de confirmation), la commande est :
#C1+393401234567*39020#

Il est possible en outre d’ajouter des numéros du réseau fixe, par exemple pour habiliter le 027654321 sans SMS de confirmation, le texte à envoyer est :
#A0+39027654321*39020#

Les réponses aux diverses commandes sont envoyées par SMS au téléphone portable qui a demandé l’opération (administrateur) ou au numéro de l’usager inséré ou éliminé de la liste. Ils sont au format suivant :
- Le numéro <numéro de téléphone> a été habilité
- Le numéro <numéro de téléphone> est déjà présent
- Attention mémoire pleine
- Le numéro <numéro de téléphone> a été déshabilité
- La liste a été effacée.

La réalisation pratique
Nous pouvons maintenant passer à la construction de l’appareil, puis à sa mise en fonctionnement. Le circuit tient sur un circuit imprimé double face à trous métallisés : la figure 4b-1 et 4b-2 donne les dessins des deux faces à l’échelle 1, respectivement le côté composants et le côté soudures. Si vous le réalisez vous-même, par la méthode indiquée dans l'article : "Comment fabriquer vos circuits imprimés facilement ?", n’oubliez pas de pratiquer, à l’aide de petits morceaux de fil de cuivre nu soudés sur les deux faces, les nombreuses interconnexions entre celles-ci (ce que font les trous métallisés des circuits imprimés industriels). Quand, d’une manière ou d’une autre, vous avez devant vous le circuit imprimé, montez-y tous les composants dans un certain ordre (en ayant constamment sous les yeux les figures 4a et 5 et la liste des composants).
Commencez par monter les deux supports des circuits intégrés : soudez-les et vérifiez vos soudures (pas de court-circuit entre pistes et pastilles ni soudure froide collée). Montez, comme support du GM47, le connecteur CMS à 60 pôles. Montez le port SIM1.
Montez ensuite toutes les résistances sans les intervertir (triez-les d’abord par valeurs et tolérances, R1 et R2 sont des 1 %, R16 est une 2 W). Montez les diodes D1 et D2 1N4007 et D3 BAT85 en orientant soigneusement leurs bagues repère-détrompeurs dans le bon sens montré par la figure 4a.
Montez la LED bicolore en respectant bien la polarité de ses trois pattes (le méplat est à orienter vers la gauche) : si vous voulez pouvoir régler l’affleurement sous la face avant du boîtier plastique, ne soudez les pattes qu’après avoir présenté la platine au-dessus du boîtier préalablement percé. Coupez les longueurs excédentaires avant de fixer la platine sous le couvercle du boîtier.
Montez tous les condensateurs (en ayant soin de respecter la polarité des électrolytiques, leur patte la plus longue est le +).
Montez les transistors T1 et T3, puis T2, méplats repère-détrompeurs tournés dans le bon sens, comme le montre la figure 4a. Montez U1, le régulateur 7805, et U2, le régulateur MIC2941A, couchés dans leurs dissipateurs ML26 et fixés par de petits boulons 3MA.
Montez le potentiomètre R11, modèle couché pour circuit imprimé et le relais 12 V à un contact. Il ne vous reste qu’à monter les deux borniers à deux et trois pôles respectivement pour l’entrée d’alimentation et les sorties du relais de commande.
Vérifiez que vous n’avez rien oublié et contrôlez encore une fois toutes vos soudures.
Insérez les deux circuits intégrés dans leurs supports classiques, repère-détrompeurs en U orientés dans le bon sens : vers le haut de la platine pour le PIC U3, vers la gauche pour U4. Insérez le module GM47 dans son support à 60 pôles CMS et fixez-le au moyen de ses quatre petites entretoises.
La liaison entre le module GSM et l’antenne est réalisée avec un câble adaptateur de 20 cm muni d’un côté d’un connecteur μ-miniature coaxial MMCX (relié au GM47) et de l’autre d’un connecteur FME socle (relié à l’antenne).
Si l’on veut insérer le circuit à l’intérieur d’un boîtier plastique, il faut pratiquer un évidement rectangulaire dans le petit côté opposé à l’antenne, comme le montre la figure 7 : il permettra le passage des borniers enfichables. Sur le petit côté en face, percez un trou pour le connecteur FME socle femelle qui reçoit l’antenne (celle-ci peut être constituée d’une prise FME volante mâle et d’un morceau de fil de cuivre de 8,5 cm, comme le montre la figure 1). Sur le fond opposé au couvercle, percez un trou pour l’affleurement de la LED bicolore, comme le montre la figure 7.
Nous l’avons dit plus haut, la platine est fixée sous le couvercle du boîtier plastique.

Figure 4a : Schéma d’implantation des composants de la platine de l’ouvre-porte.

Figure 4b-1 : Dessin, à l’échelle 1, du circuit imprimé double face à trous métallisés de l’ouvre-porte, côté composants.

Figure 4b-2 : Côté soudures. Si vous réalisez vous-même ce circuit imprimé, n’oubliez pas toutes les liaisons indispensables entre les deux faces.

Figure 5 : Photo d’un des prototypes de la platine de l’ouvre-porte une fois le montage des éléments terminé.

Figure 6 : La position, sur le circuit, du cavalier J1 et du trimmer R11.

Le cavalier J1 est utilisé pour sélectionner la valeur de la tension d’alimentation (fermé pour +12 V et ouvert pour +24 V). Le trimmer R11 règle la durée d’activation du relais : curseur dans le sens anti-horaire = une seconde minimum environ d’activation, curseur dans le sens horaire = dix secondes maximum environ d’activation (3/4 de la longueur totale de la piste), toute position intermédiaire étant, bien sûr, viable. Enfin, si le curseur est tourné complètement dans le sens horaire, la fonction bistable avec réinitialisation à la mise sous tension est sélectionnée.

Les essais et la mise au point
Tout d’abord insérez une SIM dans son logement après avoir déshabilité le PIN et éliminé les éventuelles informations présentes dans la rubrique. Sélectionnez ensuite la valeur de la tension d’alimentation utilisée (12 ou 24 V) grâce au cavalier J1. Reliez l’antenne. Si le champ reçu est très faible, la petite antenne de 8,5 cm ne suffira pas : reliez alors à la place une bibande du commerce. Mettez sous tension l’appareil et vérifiez que la LED s’allume en vert pour indiquer que le module cherche le réseau GSM.
Un premier test consiste à provoquer le reset du système en débranchant tout simplement l’antenne : ainsi le GM47 ne peut plus se connecter au réseau.
Comme nous l’avons vu lors de l’analyse du schéma électrique, cette condition est détectée par le microcontrôleur (à travers sa broche RB4) lequel, après une cinquantaine de secondes, effectue un “reset” du GM47 en coupant son alimentation pendant quelques secondes. Ensuite rebranchez l’antenne et attendez quelques instants que le GM47 puisse se connecter au réseau (situation indiquée par quelques éclairs verts).
L’essai suivant consiste à effacer complètement la mémoire : envoyez au dispositif le SMS :
#Z1*39020#

(le mot de passe 39020 se réfère à notre exemple, il doit être remplacé par les chiffres 10 à 14 du code IMEI de votre GM47). Attendez quelques secondes pour que le SMS arrive à l’ouvre-porte (il est possible de le savoir car la LED reste allumée un instant), ensuite l’opération d’effacement de la mémoire commence (situation indiquée par l’allumage en orange de la LED, l’opération demande environ 30 secondes). Le “fl ag” de réponse de la commande étant paramétré à 1, à la fin de l’opération le SMS de confirmation est envoyé. Attendez quelques secondes, nécessaires pour que le SMS arrive à destination.
Ensuite essayez d’habiliter un numéro de téléphone (en réclamant l’envoi de la confirmation), par exemple envoyez au système un SMS :
#A1+393401234567*39020#

(remplacez 3401234567 par le numéro désiré et 39020 par le mot de passe de votre GM47), attendez que le message arrive au circuit et que ce dernier réponde par les deux SMS de confirmation.
Faites alors appeler le dispositif par le numéro habilité et vérifiez que le relais colle, essayez de faire varier le paramétrage de R11 et réglez la durée d’activation de RL1 sur la valeur désirée (nous vous rappelons que le microcontrôleur lit la valeur de R11 chaque fois qu’un appel arrive de la part d’un numéro habilité).
En suivant la même procédure que ci-dessus, vous pouvez essayer de mémoriser d’autres numéros (testez des portables et des fixes) puis, vérifiez que chacun est correctement habilité et reconnu. En ce qui concerne les numéros du réseau fixe, il est nécessaire que l’utilisation soit habilitée pour l’envoi de l’ID : dans le cas contraire le dispositif ne peut pas fonctionner.
Le prochain test concerne l’effacement d’un numéro de téléphone : envoyez au circuit un SMS :
#C1+393401234567*39020#

(là encore remplacez le numéro 3401234567 et le mot de passe 39020 par ceux de votre propre cas) et vérifiez, en appelant à partir du numéro éliminé, que le relais ne colle plus, ce qui confirmerait que l’élimination a bien eu lieu.
Si tous ces tests se sont bien passés, vous pouvez relier le circuit à la centrale d’ouvre-porte : toutes disposent d’un récepteur radio codé et d’un circuit de sécurité reliés aux barrières lumineuses de l’installation. Les détails de la connexion changent selon les cas (chaque appareil ayant son propre type de circuit), cependant, en général, tous ces systèmes sont activés avec une clé ou avec un relais fermant pour un bref instant un contact lançant la séquence d’ouverture ou fermeture de la porte.
Les borniers de sortie C et NO du relais de notre circuit sont donc à relier à ces contacts.
En outre, il est possible de faire une installation plus simple de l’ouvre-porte, sans devoir accéder physiquement à son circuit : il suffit de commander, par le relais de sortie, une radiocommande habilitée. Bien sûr cette dernière devra avoir une portée suffisante pour activer le récepteur situé sur la porte. Pour cela, il faut ouvrir le boîtier de la radiocommande et de souder deux fils aux contacts du poussoir d’activation, l’autre extrémité des fils est à relier aux connecteurs C et NO de votre dispositif GSM.

Figure 7 : Photo montrant la platine de l’ouvre-porte fixée sous le couvercle du boîtier plastique et les trous à pratiquer dans ce fond.
Commentaires



Font Size
+
16
-
lines height
+
2
-