Un émetteur radio pour contact magnétique d’alarme

Un petit montage idéal pour intégrer à n’importe quel système d’alarme pouvant être associé à des micro-interrupteurs ou contact reed. Il est alimenté par deux piles bouton, dont il contrôle continûment l’état et il émet périodiquement un bip si leur charge est faible.



Les installations d’alarme et d’anti-intrusion utilisent normalement des capteurs conçus pour détecter le mouvement des personnes et des objets ainsi que l’ouverture des portes et des fenêtres devant rester closes ; parmi ceux-ci on trouve les contacts, magnétiques ou électromagnétiques et les barrières lumineuses. On les trouve tous couramment dans le commerce, vendus seuls ou avec les centrales d’alarme, en version sans fil (c’est-à-dire fonctionnant avec une liaison radio). Les normes exigent de travailler, pour cette liaison entre contact et centrale, à la fréquence de 433,92 MHz ; on doit alors coder le signal, afin que l’installation ne soit pas influencée par d’autres voisines.
Comme ces systèmes sans fil sont très répandus, nous ne voulons pas demeurer en reste et nous vous proposons dans cet article de construire un émetteur radio pour contact magnétique : à l’entrée de l’émetteur on pourra connecter des ampoules reed ou des micro-interrupteurs utilisés pour détecter l’ouverture des portes et fenêtres, mais aussi des contacts à dissimuler sous tapis ou autre.
Le dispositif est sensible aux variations d’état et, quand elle se produit, il émet son signal radio UHF à 433,92 MHz ; la transmission est codée de manière à n’affecter que le récepteur concerné sans perturber les récepteurs des systèmes voisins. Le codage choisi est basé sur une puce Motorola MC145026 (décodeur MC145028), un des systèmes les plus communs, riche de 19 683 combinaisons possibles, facilement paramétrable au moyen d’un dip-switch à 9 micro-interrupteurs à 3 positions (haute, basse, ouvert) devant, bien entendu, être paramétrés de la même façon sur l’émetteur et le récepteur. Mais entrons sans plus tarder dans le vif du sujet.

Le schéma électrique
Comme le montre le schéma électrique de la figure 1, l’appareil est essentiellement constitué d’un microcontrôleur en boîtier DIL 2 x 4 broches, d’un codeur MC145026 et d’un module hybride.
Commençons par le microcontrôleur, un PIC12C675-EN584 déjà programmé en usine (voir figure 4 le “listing” du programme résident), à l’intérieur duquel se trouve un convertisseur A / N et une “flash” EPROM. Le logiciel qui tourne en son sein lit les variations d’état du contact relié entre les points REED puis émet son code en modulant avec ses données la porteuse HF. Par variation d’état on entend que, à la mise sous tension, le programme du PIC acquiert la condition logique de la ligne GP2 (reliée au contact) et la mémorise ; quand elle change (si elle change !) la routine d’alarme est lancée et l’émission radio a lieu. Plus exactement, le micro met au niveau logique haut GP5, T1 est saturé (ce dernier est monté en interrupteur statique) et, par son collecteur, il alimente le codeur U2 et le module émetteur U3. U3 est un module hybride contenant un oscillateur à quartz sur 433,92 MHz, à PLL, modulable en amplitude avec des signaux TTL appliqués entre la broche 2 et la masse de référence ; plus précisément, l’état haut (3 à 5 V) provoque l’émission de la porteuse radio et l’état logique bas inhibe l’oscillateur.
Le module hybride émetteur est un Aurel TX4MSIL très compact, ce qui permet de réduire les dimensions de l’ensemble tout en assurant une portée plus que suffisante pour l’utilisation envisagée : en effet, dans un appartement, une villa ou même un bâtiment industriel ou commercial, les 2 dBm de puissance permettent, à l’aide d’un simple morceau de fil de 17 cm (relié à la broche 1), une liaison d’une cinquantaine de mètres en espace libre (la portée effective dépend bien sûr beaucoup des éventuels obstacles s’interposant entre le contact-émetteur et la centralerécepteur, ainsi que de la sensibilité de ce dernier).
Revenons au microcontrôleur : quand il envoie T1 en saturation, il provoque aussi l’allumage de LD1, laquelle a pour rôle de signaler l’émission. A peu près une seconde après, le logiciel met GP5 au niveau logique bas et laisse T1 bloqué (l’émetteur et le codeur, privés d’alimentation, sont au repos).
Cette condition se maintient jusqu’à ce qu’un nouveau changement d’état logique ait lieu sur GP2. Notez que le mode variation permet d’adapter le capteur aux conditions de fonctionnement et d’éviter qu’une émission ne se poursuive indéfiniment si la porte ou la fenêtre reste ouverte.
Le programme résident du PIC12C675 ne se limite pas à détecter les changements d’état du contact sur GP2, mais en plus il s’occupe d’une fonction de grande importance : il vérifie cycliquement l’état des piles alimentant le circuit et signale (acoustiquement avec un buzzer) quand il faut les remplacer.
Pour le contrôle, le micro lance périodiquement (toutes les 3 600 secondes, soit toutes les heures) une routine de mesure, laquelle met au niveau logique haut GP4 et lit GP0 à travers le pont R3/R4 ; on a pris des résistances à 1% car la lecture de la tension doit se faire avec précision.
Cette lecture est faite par le convertisseur A / N interne : il prend comme référence de fond d’échelle (255 binaire) la différence de potentiel (environ 3,3 V) fournie par DZ1. Le logiciel procède pour cela par analogie : le potentiel sur GP4 quand elle est au niveau logique haut est peu inférieur à celui de la broche 1 (Vcc) du micro et elle est réduite d’un tiers par le pont R3/R4 (respectivement 20 k et 10 k) ; la comparaison se fait donc sur environ un tiers de la tension d’alimentation du circuit. Le programme considère comme valeur binaire maximale (255) les 3,3 V de la zener et considère les piles comme déchargées quand la lecture résultant du convertisseur A / N est inférieure à 110, ce qui correspond à 4,27 V sur GP4 et environ 4,4 V entre les broches 1 et 8 de U1. Donc la routine de contrôle de l’alimentation signale l’anomalie quand les piles donnent moins de 4,4 V. La signalisation a lieu ainsi : toutes les dix minutes un sousprogramme démarre et génére une note durant 400 ms ; ensuite, le micro attend encore dix minutes et refait la mesure de la tension d’alimentation (s’il la trouve inférieure à la tension minimale, il renvoie la note au buzzer, sinon il retourne au mode normal, n’émet aucun signal acoustique et répète le test au bout d’une heure. Notez que l’éventualité qu’après une mesure en dessous de la moyenne une mesure normale ait lieu un peu plus tard n’est pas invraisemblable : il peut en effet arriver qu’un pic de consommation ou une perturbation quelconque faussent une mesure et donnent au micro “l’impression” (erronée) que la tension est trop basse.
Penchons-nous maintenant sur la section de mesure, que nous avons préféré ne pas relier de manière permanente à la ligne d’alimentation car cela abrègerait la durée de vie des piles. Même chose pour la tension de référence 3,3 V. En outre, lors de l’initialisation effectuée par le logiciel le BOD est désactivé car sans cela le micro serait automatiquement réinitialisé lorsque la tension d’alimentation tomberait au dessous de 4,5 V et il ne pourrait plus continuer à travailler, comme nous l’avons prévu.
Le cavalier JP1 a été placé pour insérer R12 quand on veut réinitialiser le microcontrôleur ; en effet, même si on enlève les piles, étant donné que le circuit est en “stand-by” (attente), il ne consomme pratiquement rien (environ 20 μA) et, si on ne décharge pas manuellement les condensateurs, le PIC ne peut être réinitialisé dans la mesure où le BOD est désactivé par le logiciel à l’initialisation du système.
Le dernier “détail” concerne BZ1 : on a pris un buzzer sans électronique (sans oscillateur : une capsule piézoélectrique en boîtier plastique) car, afin d’épargner des lignes d’E / S, nous le pilotons en nous servant de GP4 (déjà mise à contribution par le circuit mesureur de la tension d’alimentation) ; si nous avions utilisé un buzzer avec électronique, nous l’aurions entendu sonner chaque fois que le micro aurait effectué un contrôle des piles ! Avec cette simple pastille piézo, donc, l’application du niveau logique haut à GP4 durant la mesure ne produit qu’un léger “toc” ; en outre, BZ1 étant de nature capacitive, il ne consomme aucun courant et n’influence pas la détection de la tension.

Figure 1 : Schéma électrique de l’émetteur radio pour contact magnétique d’alarme.

Figure 2a : Schéma d’implantation des composants de l’émetteur radio pour contact magnétique d’alarme.

Figure 2b-1 : Dessin, à l’échelle 1, du circuit imprimé double face à trous métallisés de l’émetteur radio pour contact magnétique d’alarme, côté soudures où sont montés les deux porte-pile bouton.

Figure 2b-2 : Dessin, à l’échelle 1, du circuit imprimé double face à trous métallisés de l’émetteur radio pour contact magnétique d’alarme, côté composants.

Figure 3a : Photo d’un des prototypes de l’émetteur radio pour contact magnétique d’alarme, face composants.

Figure 3b : Photo d’un des prototypes de l’émetteur radio pour contact magnétique d’alarme, face soudures où sont montés les deux porte-pile bouton.

Figure 4 : “Listing” en PIC-BASIC PRO.

‘***************************************************
‘* EF584
‘* Émetteur pour contact reed
‘* Basé sur un PIC12F675
‘* Dernière mise à jour 04/01/2006

DEFINE OSC 4
DEFINE ADC_BITS 8 ‘ Set number of bits in result
DEFINE ADC_CLOCK 3 ‘ Set clock source
DEFINE ADC_SAMPLEUS 5000 ‘ Set sampling time in microseconds
DEFINE OSCCAL_1K 1

@ DEVICE BOD_OFF
@ DEVICE MCLR_OFF
SYMBOL BUZZ =GPIO.0 ‘BUZZER
SYMBOL IN =GPIO.2 ‘ENTRÉE REED
SYMBOL TENS =GPIO.4 ‘ENTRÉE ANALOGIQUE ET BUZZER
SYMBOL TX =GPIO.5 ‘TRANSMISSION SI HAUT TRANSMET

TMP VAR BYTE
TIME VAR word
RIPETI VAR BYTE
STATO VAR BYTE

OPTION_REG=%10000000
CMCON =000111
ADCON0=%01000000 ‘TENSION DE RÉFÉRENCE SUR AN1
ANSEL=000001
WPU=000000
IOCB=000000
INTCON=000000

pause 2000

FOR tmp=0 TO 200
low buzz
PAUSE 1
high buzz
PAUSE 1
NEXT tmp

INPUT BUZZ
STATO=IN
ripeti=0

MAIN:
LOW TENS
FOR TIME=0 TO 3600 ‘TOUTES LES 3600 SEC (60 MIN) VERIFIE LA BATTERIE)

IF IN<>STATO THEN
HIGH TX
PAUSE 2000
LOW TX
STATO=IN
TMP=0
ENDIF
sleep 1
IF RIPETI=1 AND (TIME//6)=0 THEN
GOSUB TENSIONE
ENDIF


NEXT TIME

GOSUB TENSIONE
GOTO MAIN
TENSIONE:

CMCON =000111
ADCON0=%01000000 ‘TENSION DE RÉFÉRENCE SUR AN1
ANSEL=000001
ADCIN 0,TMP
pause 1000
ADCIN 0,TMP

HIGH TENS
PAUSE 2000
ADCIN 0,TMP
IF TMP<110 THEN ‘vérifier cette valeur
RIPETI=1
FOR tmp=0 TO 200
low buzz
PAUSE 1
high buzz
PAUSE 1
NEXT tmp
ELSE
RIPETI=0
ENDIF
LOW TENS
INPUT BUZZER
RETURN


Figure 5 : Exemples de contacts reed externes que l’on peut coupler au circuit émetteur radio d’alarme.

Liste des composants
R1 ....... 1 k
R2 ....... 1 M
R3 ....... 20 k 1 %
R4 ....... 10 k 1 %
R5 ....... 1,5 k
R6 ....... 4,7 k
R7 ....... 10 k
R8 ....... 470
R9 ....... 100 k
R10 ...... 47 k
R11 ...... 100
R12 ...... 4,7 k
C1 ....... 100 nF multicouche
C2 ....... 100 μF 16 V électrolytique bas profil
C3 ....... 100 nF multicouche
C4 ....... 100 μF 16 V électrolytique bas profil
C5 ....... 100 μF 16 V électrolytique bas profil
C6 ....... 4,7 nF céramique
DZ1 ...... zener 3,3 V 400 mW
LD1 ...... LED 3 mm verte
U1 ....... PIC12F675-EF584 déjà programmé en usine
U2 ....... MIC145026
U3 ....... TX4MSIL
T1 ....... BC547
DS1 ...... dip-switch à 9 microinterrupteurs 3 positions
BZ1 ...... buzzer sans électronique
CTC ...... contact reed
J1 ....... cavalier 2 broches

Divers :
2 porte-pile bouton CR2032 pour ci
1 support 2 x 4
1 support 2 x 8
2 boulons 3MA 12 mm
Sauf spécification contraire, toutes les résistances sont des 1/4 W à 5 %.


La réalisation pratique
La réalisation pratique de cet émetteur pour contact magnétique d’alarme est des plus simples et des plus rapides.
La platine est constituée d’un petit circuit imprimé double face à trous métallisés, dont la figure 2b-1 et 2 donne les dessins à l’échelle 1. Commencez par insérer les deux supports de circuits intégrés et les picots du cavalier J1 au pas de 2,54 mm.
Vérifiez attentivement vos soudures (ni court-circuit entre pistes ou pastilles ni soudure froide collée).
Insérez et soudez ensuite tous les composants (comme le montrent les figures 2a et 3), en poursuivant par les résistances, condensateurs, zener, LED, transistor et en terminant par les “périphériques” : le dip-switch à 9 micro-interrupteurs, le module hybride émetteur (debout) et enfin l’ampoule reed. Attention à l’orientation des quelques composants polarisés : circuits intégrés (repère-détrompeurs en U bien orientés, mais insérez-les à la toute fin), zener, LED, transistor et électrolytiques. Vérifiez bien toutes les polarités et (encore une fois) la qualité des soudures. Voilà pour la face “composants” (voir figure 3a).
Retournez la platine (voir figure 3b) et soudez très minutieusement les deux porte-piles. Soudez pour finir le brin d’antenne qui représente 1/4 d’onde (un morceau de fil gainé de 17 cm) dans le trou marqué ANT. Insérez les circuits intégrés. Vérifiez tout encore une fois et insérez les piles dans leurs supports (attention à la polarité : voir figure 3b).
Vous pouvez maintenant installer la platine dans un boîtier plastique de dimensions appropriées, comme le montre la photo de début d’article : le couvercle sera percé d’un trou pour le passage de la LED.
Rappelons que le contact reed est un interrupteur sensible aux champs magnétiques : en principe il est vendu avec un aimant (les deux parties sont déjà insérées dans deux montures à trous pour vis, comme le montre la figure 5). Posez le boîtier contre le dormant de la porte ou le montant de la fenêtre (ou autre) : à l’intérieur du boîtier, le reed est situé contre la paroi plastique ; montez à proximité la partie “aimant” du contact d’ouverture (sur la porte ou la fenêtre), comme le montre la photo de début d’article.
Si vous devez utiliser notre émetteur pour remplacer un émetteur existant défaillant, vous pouvez conserver la partie aimant et la laisser montée sur la porte ou la fenêtre : montez alors directement sur le circuit imprimé une ampoule reed à simple interrupteur (ou contenant un inverseur, dont vous utiliserez le contact commun et le normalement ouvert) en la soudant entre les deux pastilles indiquées REED et en la plaquant bien contre la paroi plastique du boîtier afin qu’elle soit sensible au champ magnétique de l’aimant.
Si vous n’avez pas oublié les piles, le circuit émettra (ce que l’allumage de le LED signalera) chaque fois que vous rapprocherez ou éloignerez le capteur reed de l’aimant. Le changement d’état logique sur GP2 déclenchera une émission à destination du récepteur placé dans la centrale d’alarme.
Pendant l’installation et les essais, désactivez la centrale (ou du moins l’entrée que vous êtes en train d’organiser), vous éviterez d’inutiles déclenchements de celle-ci.

1 commentaires:

  1. Bonjour,

    Comment peut-on obtenir un pic 12C675 - EN584
    programmé ?

    Merci pour votre réponse

    jacques.campy@cegetel.net

    RépondreSupprimer

Related Posts Plugin for WordPress, Blogger...