Un contrôle bidirectionnel par GSM avec alarme

A la suite du succès remporté par les articles sur la téléphonie GSM, publiés dans le numéro 36 de la revue, voici un système de contrôle à distance bidirectionnel, toujours réalisé avec un téléphone portable SIEMENS de la série 35. Il permet l’activation indépendante des deux sorties ou la vérification de leurs états.
Dans cette configuration, l’appareil distant peut être activé avec un téléphone fixe ou portable. Comme système d’alarme, en revanche, l’appareil envoie un ou plusieurs SMS quand une des deux entrées d’alarme est activée. A chaque entrée peut être associé un message distinct et les SMS peuvent être envoyés jusqu’à 9 numéros différents.


Dans le numéro 36 “Spécial Téléphonie” d’ELM, nous vous présentions une série de montages pour contrôle à distance utilisant le réseau GSM et, comme terminal, un téléphone portable SIEMENS de la série 35. Ces circuits, très simples mais pourtant hautement fonctionnels, ont suscité un intérêt extraordinaire de votre part, à tel point que vous nous avez submergés de demandes de toutes sortes à ce sujet : éclaircissements, suggestions, informations plus approfondies sur le fonctionnement et sur l’utilisation de ces appareils, etc.
Pour ceux qui auraient perdu ce numéro spécial, ou qui, fraîchement débarqués, ne l’auraient pas eu, nous signalons qu’il est toujours disponible à la rédaction : nous y présentons, entre autres, le montage d’un “Transmetteur téléphonique d’alarme par GSM” (EF420, pages 8 à 14), soit un dispositif capable d’envoyer un SMS à tout autre portable quand l’entrée d’alarme est activée. Un système de ce genre est facile à coupler à une installation antivol pour voiture ou pour maison et nous avertit, où que nous nous trouvions, d’une éventuelle tentative d’effraction.
Dans ce même “Spécial Téléphonie”, nous présentons également un “Récepteur GSM de commande à distance” (EF421, pages 16 à 21), circuit couplé à un SIEMENS 35, comportant des relais de commande d’appareils et activable par téléphone fixe ou portable. Enfin, on y trouve (EF422, pages 24 à 30) un “Récepteur haute sécurité de commande de portail”, utilisant encore le SIEMENS 35 en réception et n’importe quel téléphone appelant : le dispositif peut mémoriser les numéros de 200 usagers et son utilisation n’implique aucun débit téléphonique lors de l’appel.
Evidemment, avec cette technologie et sur la lancée de ces montages, il est possible de réaliser de multiples autres dispositifs de contrôle à distance, comme de nombreux lecteurs nous l’ont suggéré.
Parmi les possibilités que vous avez évoquées, se trouvent un contrôle à distance à plusieurs canaux (nous l’avons mis en chantier, un peu de patience !) et un système intégrant à la fois l’alarme et le contrôle (tous deux à distance, bien sûr).

Notre réalisation
Nous avons réalisé ce montage-ci en un temps record et nous pouvons vous en proposer l’étude et la construction dans cet article. Soyez tranquilles, comme nous allons le voir, notre rapidité n’a pas été au détriment de la qualité. En effet, ce circuit intègre des solutions matérielles et logicielles novatrices dont les précédents dispositifs ne bénéficiaient pas. A titre d’exemple, citons le contrôle de la batterie.
Le nouvel appareil vérifie, par le port sériel, le niveau de charge de la batterie (la donnée est disponible dans le “firmware” [programme résident en ROM] du téléphone portable) et active le circuit de recharge quand le niveau descend sous 20 %. Quand la charge est complète (100 %), le circuit se désactive pour se réactiver quand le seuil descend à nouveau au-dessous de 20 %. Avec cette technique, la batterie a bien sûr une durée de vie bien supérieure à ce qu’elle pourrait être avec des charges forcées.
Mais voyons en détail comment fonctionne ce circuit pouvant être utilisé à la fois comme alarme à distance (pour envoyer des SMS à d’autres téléphones portables) et comme télécontrôle pour activer deux charges de puissance. Comme dans les montages précédents (voir le Spécial téléphonie), le système utilise un SIEMENS série 35 dont le modem interne peut être piloté par les broches du connecteur de I/O.



Les organigrammes
Mais procédons par ordre et disons avant tout quelques mots des organigrammes du programme téléalarme, du programme mot de passe puis du programme télécontrôle.
Pour le premier, au contraire de la version précédente, ce circuit dispose de deux entrées de contrôle dont l’activation peut advenir, comme nous le verrons en détail lors de l’étude du schéma électrique, avec des impulsions négatives ou simplement avec les contacts d’un relais ou d’un poussoir.
La présence de deux entrées permet d’envoyer deux informations distinctes, une pour signaler une alarme à proprement parler et l’autre pour signaler la présence d’un dommage ou d’un dysfonctionnement du système. Nous pouvons donc préparer deux messages avec des textes différents (par exemple, “alarme active” et “avarie système”) à associer à neuf numéros différents au maximum, avec cette particularité que le dernier message devra être celui signalant l’avarie. Donc, si nous voulons envoyer le message d’alarme d’abord à nous-même et ensuite aux portables de notre épouse et de notre frère (par exemple), nous devrons mémoriser trois messages d’alarme avec ces trois numéros plus un quatrième message signalant l’avarie associée à notre numéro. Ainsi, en cas d’activation de l’entrée numéro 1 (alarme), le système enverra trois SMS d’alarme à nous-même, à notre femme et à notre frère alors que, si la seconde entrée est activée, le système n’enverra le quatrième SMS signalant l’avarie à notre propre numéro de portable uniquement. Nous avons par conséquent la possibilité d’envoyer le message d’alarme à 8 usagers différents (8 numéros) et le message d’avarie à un seul. Dans le cas où on mémorise un seul message, celui-ci est envoyé en activant la première comme la seconde entrée. Les éventuels messages devant arriver au téléphone portable relié à notre système sont insérés en dixième position de mémoire et immédiatement effacés. Ainsi, tous les messages provenant de nos amis, du gestionnaire, etc., n’influent pas sur la séquence des messages mémorisés.
Figure 6 nous expliquons comment insérer dans la mémoire du portable les divers messages. A ce propos, rappelons que, une fois insérée la séquence des messages, si nous devons effectuer une modification, il est recommandé de modifier le contenu du message au lieu d’effacer le message et d’en écrire un autre. En effet, dans ce cas, le nouveau message serait inséré en dernière position, ce qui altérerait la séquence originale.
L’unique LED de signalisation prévue dans le circuit reste allumée jusqu’à ce qu’on relie le portable au circuit : à ce moment, la LED s’éteint et émet un bref éclair toutes les 10 secondes environ pour signaler que le circuit est actif. La LED reste allumée pendant l’envoi des SMS d’alarme. Pendant cette phase (envoi des SMS), le circuit bloque le clavier du téléphone.
Le programme est tel que, dès la mise en marche, le système lit l’IMEI du téléphone portable et sauvegarde en première position de la rubrique les 5 derniers chiffres de cette donnée.
Ces chiffres représentent le “password” (mot de passe) d’accès dans le cas où le dispositif est utilisé comme télécontrôle.
Si, en effet, nous appelons le portable, il répond automatiquement et envoie un long bip confirmant la liaison.
A ce moment, nous devons envoyer, par le clavier du téléphone, les 5 tons correspondant, justement, au mot de passe d’accès, soit les 5 derniers chiffres de l’IMEI. Si le mot de passe est correct, le système répond par un autre bip long et habilité l’activation des sorties, dans le cas contraire, 5 bips brefs sont émis et l’appel est terminé.
Si nous jetons un coup d’oeil au schéma électrique, nous voyons qu’aucun signal n’est envoyé à l’entrée audio du portable.
En effet, dans ce cas, les tons sont produits par le portable par les commandes AT envoyées sur la ligne sérielle. Les liaisons BF entre le portable et notre circuit sont donc réduites à une seule, celle qui va du haut-parleur à l’entrée du circuit intégré U2 de reconnaissance des tons DTMF. Ainsi, on évite des “retours” de BF pouvant rendre critique le fonctionnement de cette section.
La production des tons DTMF par les commandes sérielles est une autre innovation par rapport à la version précédente du télécontrôle. Poursuivons donc l’analyse des organigrammes par celui du programme de télécontrôle (gestion des relais). Pour modifier l’état des sorties, il suffit de taper au clavier *1 ou *2 : à la suite de cette action, le relais correspondant change d’état et le circuit émet un bip long si le relais s’excite ou trois bips brefs si le relais se relaxe. Il est possible aussi d’interroger le dispositif pour connaître l’état des relais sans en provoquer le changement.
Cette fonction s’obtient en tapant #1 ou #2 et la réponse est similaire à ce qui vient d’être dit ci-dessus : un seul bip long indique l’excitation du relais, trois bips brefs sa relaxation. Le circuit dispose d’un “time-out” (délai) interrompant la liaison si aucune commande n’est effectuée pendant plus de 20 secondes. Dans tous les cas, la liaison s’achève dès que l’appelant raccroche.
Rappelons que pour appeler le dispositif pour modifier l’état des sorties, il est possible d’utiliser un téléphone fixe ou un téléphone portable. En revanche, la réception des messages d’alarme produits par la première section, ne peut être effectuée que par un téléphone portable en mesure de recevoir des SMS.
Une dernière particularité du fonctionnement de la section de télécontrôle concerne le circuit de charge de la batterie.
Pendant cette phase, en effet, même si le niveau de la batterie est suffisant, le relais de recharge est tout de même activé afin d’éviter que la batterie puisse intempestivement nous lâcher !



Le schéma électrique
Puisque nous avons éclairci le fonctionnement global de notre appareil de contrôle à distance avec alarme, analysons maintenant son schéma électrique.
Le coeur du circuit est le microcontrôleur U1 PIC16F876/MF448 programmé en usine, auquel sont confiées toutes les fonctions logiques.
Cette puce communique avec le portable par la ligne sérielle correspondant aux broches 12 et 13 (RC1 et RC2) : c’est à travers ces lignes que sont envoyées au portable les commandes AT correspondant aux diverses fonctions et que sont acquises les informations relatives au nombre de messages en mémoire, à l’IMEI, aux messages entrants, à l’état de la batterie, etc.
Les tons DTMF arrivants sont décodés par U2, un simple 8870. Les données correspondantes sont communiquées au microcontrôleur à travers 5 lignes (Q1, Q2, Q3, Q4 et STD). Le gain du décodeur DTMF dépend de R6, R7 et R21 : avec les valeurs utilisées ici, le signal est décodé pratiquement toujours, même quand le volume de sortie du portable est au minimum. Il est cependant recommandé de régler le volume en position intermédiaire.
L’horloge du 8870 est contrôlée par le quartz de 3,58 MHz.
Le circuit de recharge de la batterie est constitué par T3, contrôlé par la sortie RC3 du microcontrôleur. L’activation de ce circuit, avec pour conséquence la fermeture de RL3, met en charge la batterie du portable à travers R10 (4,7 kilohms), alimentée en 5 V. En utilisant une résistance de valeur plus élevée (10 ou 22 kilohms), la charge est plus lente et la consommation globale du circuit inférieure. En tout cas la charge est toujours contrôlée par le microcontrôleur, désactivant cette section quand la batterie est chargée à 100 %.
L’appareil est alimenté avec une tension de 12 V continus, même si nous aurions pu nous contenter de 5 V : ce choix découle du fait que les relais en 5 V sont moins courants que ceux en 12 V et que pour une utilisation automobile il est plus pratique d’avoir recours au 12 V. Si nous regardons l’étage d’alimentation, nous notons que le 12 V n’alimente que les enroulements des relais. Le régulateur U3 réduit la tension de 12 à 5 V stabilisés, tension avec laquelle est alimenté le circuit de recharge de la batterie et le circuit intégré 8870. Pour alimenter le microcontrôleur, la tension est abaissée à 3,6 V environ grâce aux diodes en série D2 et D3. Le microcontrôleur peut, bien sûr, fonctionner en 5 V, mais en procédant comme nous l’avons fait, le niveau haut de la ligne sérielle de communication avec le portable ne dépasse pas 3,6 V, ce qui est tout à fait compatible avec celle du téléphone portable.
Les deux relais de sortie sont contrôlés par les ports RA3 et RA4 du microcontrôleur et les entrées d’alarme correspondent aux ports RB7 (entrée 1) et RB6 (entrée 2). Les réseaux d’entrée permettent d’activer les alarmes avec des signaux logiques positifs ou négatifs, outre, bien sûr, avec les contacts d’un relais ou d’un poussoir. En fait pour activer le premier canal, il suffit d’appliquer une tension positive à l’entrée IN1+, ou bien relier à la masse l’entrée IN1-, ou encore relier au +12 V l’entrée IN1+ à travers les contacts d’un relais. Même chose pour le second canal.
Nous avons prévu aussi de rendre disponibles à l’extérieur deux broches du microcontrôleur (RA0 et RA1), sorties A et B, très utiles en cas de modifications du programme pour effectuer son déboguage. Si l’on ne veut pas utiliser cette option, on n’a pas besoin de monter les résistances R23 et R24.
L’horloge du microcontrôleur U1 est contrôlée par le quartz Q1 de 8 MHz et l’unique LED de signalisation LD1 est pilotée par le port RC7.

Figure 1 : Schéma électrique du contrôle GSM bidirectionnel avec alarme.

Figure 2a : Schéma d’implantation des composants du contrôle GSM bidirectionnel avec alarme.

Figure 2b : Photo d’un des prototypes.

Au centre de la carte, le microcontrôleur PIC16F876/MF448 s’occupant de toutes les fonctions logiques. Les sorties de puissance utilisent deux relais avec contacts de 5 A et le circuit de recharge est contrôlé par un relais miniature avec contacts de 1 A.

Figure 2c :Dessins, à l’échelle 1, du circuit imprimé.

Liste des composants
R1 = 4,7 kΩ
R2 = 4,7 kΩ
R3 = 33 kΩ
R4 = 33 kΩ
R5 = 330 kΩ
R6 = 100 kΩ
R7 = 10 kΩ
R8 = 4,7 kΩ
R9 = 4,7 kΩ
R10 = 4,7 Ω
R11 = 10 kΩ
R12 = 10 kΩ
R13 = 1 kΩ
R14 = 1 kΩ
R15 = 4,7 kΩ
R16 = 4,7 kΩ
R17 = 4,7 kΩ
R18 = 4,7 kΩ
R19 = 4,7 kΩ
R20 = 4,7 kΩ
R21 = 47 Ω
R22 = 470 Ω
R23 = 10 kΩ
R24 = 10 kΩ
C1 = 100 nF multicouche
C2 = 100 nF multicouche
C3 = 100 nF multicouche
C4 = 470 μF 25 V électrolytique
C5 = 220 μF 25 V électrolytique
C6 = 100 μF 25 V électrolytique
C7 = 100 nF multicouche
C8 = 470 nF 63 V polyester
C9 = 100 nF multicouche
LD1 = LED 3 mm rouge
D1 = 1N4007
D2 = 1N4007
D3 = 1N4007
D4 = 1N4148
D5 = 1N4148
D6 = 1N4148
D7 = 1N4148
D8 = 1N4007
D9 = 1N4007
D10 = 1N4007
DZ1 = Zener 5,1 V
DZ1 = Zener 5,1 V
Q1 = Quartz 8 MHz
Q2 = Quartz 3,58 MHz
U1 = PIC 16F876/MF448 programmé
U2 = Intégré MT8870
U3 = Régulateur 7805
T1 = NPN BC547
T2 = NPN BC547
T3 = NPN BC547
T4 = PNP BC557
T5 = PNP BC557
RL1 = Relais 12 V 1 RT
RL2 = Relais 12 V 1 RT
RL3 = Relais 12 V 1 RT miniature

Divers :
1 Bornier déconnectable
2 pôles
2 Borniers déconnectables
3 pôles
1 Connecteur 8 pôles RJ45
1 Câble pour Siemens S35
1 Support 2 x 9
1 Support 2 x 14
1 Dissipateur ML26
1 Boulon 8 mm 3MA
1 Boîtier plastique Teko Coffer2


Figure 3 : Le contrôle GSM bidirectionnel avec alarme dans son boîtier.

Figure 4 : Les câbles de connexion.

Le dessin montre comment sont effectuées les connexions entre le connecteur du portable et les pastilles correspondantes du circuit imprimé. En ce qui concerne les entrées d’alarme, chaque couleur de la nappe utilisée correspond à une fonction spécifique, comme le dessin l’indique.

Figure 5 : Les prises d’entrées/sorties du contrôle GSM bidirectionnel.

Pour le montage de notre système de contrôle à distance, nous avons utilisé un boîtier plastique Teko Coffer2. Sur un des côtés, nous avons prévu le trou pour le câble de liaison au portable, la LED de signalisation et la prise RJ45 à 8 pôles. Côté opposé, nous avons réalisé un orifice rectangulaire d’où sortent le bornier à 2 pôles pour l’alimentation et les deux borniers à 3 pôles pour les commandes des utilisateurs de puissance (sorties des relais). La LED, initialement allumée, s’éteint quand le portable est relié à la platine. Ensuite la LED émet un bref éclair toutes les dix secondes environ et reste allumée pendant l’envoi des SMS d’alarme. Pour alimenter l’appareil, il faut utiliser une alimentation secteur 230 V capable de fournir une tension de 12 V continus et un courant de 500 mA au moins. Si l’on utilise l’appareil en automobile, il suffit de connecter l’entrée d’alimentation aux bornes de la batterie.

Figure 6 : Le paramétrage du téléphone portable SIEMENS.

Avant d’utiliser l’appareil, il est nécessaire de paramétrer correctement le téléphone et de le relier avec le connecteur spécial. Tout d’abord, il faut insérer une carte SIM valide.
Allumez le téléphone, si l’on vous demande d’insérer le code PIN, la fonction de sécurité doit être déshabilitée.
Vous devez maintenant effacer tous les messages présents dans le portable. Souvenez-vous qu’il existe deux types de messages reconnus par les portables SIEMENS : Messages Entrants et Messages Sortants (ou Messages Propres) : ils doivent être tous effacés. Vous devez alors rentrer les paramètres par défaut pour l’envoi des SMS : le Centre Service (il faut insérer le numéro du gestionnaire correspondant à la carte insérée dans le portable), le Type Message (il doit être “Texte Standard”), Durée Validité (régler sur “Maximum”), Confirmation de Livraison (Déshabilité) et Réponse (Déshabilité).
C’est seulement après avoir paramétré correctement ces données qu’il est possible d’insérer les messages devant être envoyés en cas d’alarme. Il est possible d’insérer un maximum de 9 messages. Le dernier, devant succéder aux messages insérés, est toujours associé à l’entrée 2 et tous les autres sont associés à l’entrée 1. Chaque message peut être personnalisé à volonté et envoyé à tout numéro de portable. Pour mémoriser un message, après avoir tapé le texte, pressez sur “OK”, choisissez “Envoi Texte” et insérez le numéro auquel doit être envoyé le message, sélectionnez “OK” puis “Sauvegarder”. Il n’est pas nécessaire d’envoyer le message même s’il est conseillé de le faire pour contrôler que tout a bien été paramétré correctement. Les messages peuvent être modifiés à tout moment mais il n’est pas possible d’effacer un ou plusieurs messages pour éviter de laisser des “trous” dans la séquence.
Si l’on doit éliminer un message, il est nécessaire de vider la mémoire et de répéter la procédure de programmation depuis le début.
En ce qui concerne l’emploi de l’appareil comme télécontrôle, contrairement à la version précédente, il n’est pas nécessaire d’effectuer des paramétrages relatifs à la fonction d’auto-réponse.

La réalisation pratique
Puisque l’analyse du circuit est terminée, il ne nous reste qu’à nous occuper de la réalisation pratique. Pour le montage nous avons prévu d’utiliser une carte dont les dimensions s’adaptent parfaitement à celle du boîtier plastique Teko Coffer2.
Tout d’abord, on se procurera le circuit imprimé ou on le réalisera par la méthode préconisée et décrite dans le numéro 26 d’ELM : la figure 2c en donne le dessin à l’échelle 1.
Quand la carte est gravée et percée, insérez et soudez tous les composants précédemment triés et classés, dans un certain ordre. Par exemple, d’abord les supports des circuits intégrés U1 et U2, ensuite les résistances puis les diodes (en prenant soin d’orienter leurs bague-repères dans le sens montré par la figure 2a et b), puis les condensateurs multicouches, les polyesters et les électrolytiques (en respectant bien leur polarité : la patte la plus longue est le +).
Continuez avec les transistors (méplats orientés dans la direction montrée par la figure 2a et b) et la LED (attention, ce composant est polarisé : la patte la plus longue est l’anode +, regardez aussi le schéma électrique figure 1).
Poursuivez avec les deux quartz (couchés, une goutte de tinol immobilisant leur boîtier à la masse du circuit imprimé). Puis les trois relais, dont un (RL3) miniature et le régulateur 7805, à maintenir couché dans son dissipateur avec un petit boulon 3MA, avant de souder ses trois pattes repliées à 90°. Enfin les trois borniers, le connecteur téléphone RJ45 et les 5 picots de droite (à enfoncer et souder).
Vérifiez que vous n’avez rien oublié et que les soudures sont bonnes (ni court-circuit ni soudure froide collée) et, si c’est le cas, enfoncez délicatement les deux circuits intégrés dans leurs supports en vous assurant que leurs repère-détrompeurs en U sont bien orientés comme la figure 2ab le montre (U1 vers le haut et U2 vers le bas).
Côté gauche de la carte, les borniers à 3 pôles servent aux connexions de puissance et celui à 2 pôles à l’entrée de l’alimentation. Côté droit, la prise RJ45 correspond aux entrées d’alarme. Les 5 picots servent, par l’intermédiaire d’un câble spécial pour SIEMENS 35 (figure 4), à relier la platine au téléphone portable.

La mise sous boîtier
Le boîtier plastique Teko Coffer2 sera percé pour permettre le passage des prises sus indiquées, de la LED rouge et du connecteur SIEMENS (figures 2b et 5). La platine se trouvera de ce fait immobilisée. Il ne restera plus qu’à refermer le boîtier (figure 3).

Les essais et les paramétrages
Il ne reste alors qu’à vérifier le fonctionnement correct du circuit. Alimentez-le avec une alimentation de 12 V : vérifiez qu’en aval de U3 il y a bien une tension de 5 V et que sur la broche 2 du microcontrôleur on trouve une tension de 3,5 à 4 V. La LED doit rester allumée jusqu’à ce que le téléphone portable soit relié à la platine. Il ne reste alors qu’à mémoriser les divers messages et à vérifier que toutes les fonctions correspondent à celles décrites dans l’article que vous venez de lire et dans la figure 6.
Commentaires



Font Size
+
16
-
lines height
+
2
-