Trinket-Alarme-Les-Bases

De MCHobby - Wiki
Sauter à la navigation Sauter à la recherche


MCHobby investit du temps et de l'argent dans la réalisation de traduction et/ou documentation. C'est un travail long et fastidieux réalisé dans l'esprit Open-Source... donc gratuit et librement accessible.
SI vous aimez nos traductions et documentations ALORS aidez nous à en produire plus en achetant vos produits chez MCHobby.

La théorie

La plupart des systèmes d'alarme utilisent des concepts simples. La centrale de surveillance capture capture une action par l'intermédiaire d'un interrupteur de fermeture (ou d'ouverture) et l'alarme génère une sorte d'annonce. Cette annonce peut être une sirène hurlante, un message téléphonique ou Texto envoyé sur un mobile.

Note:
L'unité de surveillance s'appelle "Central Monitoring Unit" en anglais. Vous pourriez donc rencontrer l'acronyme "CMU" ici et là sur le Net si vous prenez plus de renseignements sur le sujet.

{{{2}}}
Crédit: AdaFruit Industries www.adafruit.com

Les blocs de senseur peuvent contenir plusieurs senseurs sur une branche/ligne de surveillance. Il est possible de concevoir un système pour:

  1. Recevoir une seule indication lorsqu'un des senseurs de la branche/ligne est activé
  2. ou si vous disposez d'un désign plus évolué, recevoir une indication différente pour chaque senseur de la branche (ex: plusieurs senseurs sur un bus I2C, voyez aussi ce hack pour dédoubler le bus I2C)

{{{2}}}
Crédit: AdaFruit Industries www.adafruit.com

Au repos (donc sans action externe), les interrupteurs/switchs peuvent être soit "normalement ouvert", soit "normalement fermé". Ils changent d'état lorsqu'ils sont activés (Un "normalement fermé" s'ouvre, un "normalement ouvert" se ferme). Le système de surveillance note ce changement d'état et s'il rencontre les critères d'alarme alors il annonce l'alarme.

L'annonce de l'alarme peut prendre autant de forme différentes qu'il y a de senseurs différents. Pour répondre à son stéréotype, une alarme doit disposer d'une sirène hurlante capable de rendre l'indésirable totalement sourd! Mais une alarme peut être nettement plus subtile. L'unité centrale peut émettre une "alerte silencieuse": de sorte que l'alerte est connue d'une façon ou d'une autre, localement ou à distance. Exemple: un message envoyé sur votre e-mail ou un SMS/texto envoyé sur votre téléphone mobile mentionnant qu'une alarme est survenue. Les systèmes d'alarmes les plus simples, par leurs conceptions, ne sont généralement pas destinées à effrayer l'intrus - elles produisent uniquement des notifications dans l'environnement proches" ou elles enregistrent des évènements d'alertes pouvant être consultés plus tard.

Plusieurs senseurs, une branche/ligne, une broche

Vous pouvez normalement utiliser un nombre illimité de commutateur sur une branche/ligne. Le système est capable de détecter le changement d'un seul commutateur isolé parmi tous les commutateurs de la branche/ligne.

Avec ce procédé, il est uniquement possible de savoir d'un senseur à changé d'état mais pas quel senseur de la branche/ligne. Pour pouvez réaliser un tel montage à l'aide de:

  1. Plusieurs senseurs/commutateurs normalement ouvert montés en parallèle
  2. ou plusieurs commutateurs normalement fermés montés en série.

Vous pouvez utiliser les deux types de senseurs/commutateurs en montant les commutateurs fermés en série et les commutateurs ouverts en parallèle. La résistance pull-up ramène le potentiel du point de mesure à surveiller au niveau haut (HIGH) si la boucle est ouverte... sinon, si la boucle est fermée, le potentiel du point de mesure à surveiller est au niveau logique bas (LOW).

{{{2}}}
Crédit: AdaFruit Industries www.adafruit.com

Donc, pour résumé le montage ci-dessus, le point de mesure à surveiller de la branche à GAUCHE est au niveau:

  • HIGH s'il n'y a aucune alarme
  • LOW si un commutateur est activé -> ALARME!!!

Pour la branche de DROITE (avec les commutateurs normalement fermés), le point de mesure à surveiller est:

  • LOW s'il n'y a aucune alarme
  • HIGH si un commutateur est activé -> ALARME!!!

Quel commutateur a été activé

Sur un circuit purement digital (le courant passe ou ne passe pas), il n'y a pas moyen de savoir quel commutateur à été activé.

CEPENDANT...

Si vous utilisez une broche analogique, il existe une méthode de circuit qui permet d'identifier le commutateur de la branche/ligne qui a été activé. Cette méthode utilise des résistances pour obtenir une tension différente pour chaque commutateur activé, tension qui sera lue par la broche analogique. La plupart des shields d'affichage utilisent cette méthode avec 4 à 6 boutons... ce qui permet de déterminé celui qui est pressé.

Mais la plupart des lectures sur ces circuits analogiques ont un problème: si vous pressez deux boutons alors il ne sera possible de déterminer lesquels des boutons sont pressés. Cela n'a pas d'importance pour un système d'alarme simple - vous savez seulement dire qu'une alarme est survenue sur une branche/ligne spécifique. Avec une conception de circuit plus avancé, il est possible de déterminer quels sont les senseurs activés sur une branche (même s'ils sont plusieurs à être activés). La méthode la plus souvent reprise dans les bouquins est la méthode des réseaux de résistances Ladder R-2R.

Voici un petit exemple maison simplifié utilisant moins de composant et basé sur une volée de résistances en parallèle. Ce montage dispose d'une bonne précision pour une lecture analogique de type Arduino. La complexité augmentant avec le nombre de senseurs, nous allons nous limité à une branche avec 3 senseurs/commutateurs.

Trinket-Alarme-Base-11.jpg
Crédit: AdaFruit Industries www.adafruit.com

Par défaut, l'entrée analogique (A1) est normalement tirée vers le niveau haut (HIGH) par la résistance R4. Si l'un des commutateurs S1, S2, ou S3 est fermé, alors la résistance change de façon déterminée. En suivant la loi des circuits, chacune des résistances R1, R2, R3 mise en parallèle (par activation du commutateur correspondant) intervient dans le calcul de la résistance équivalent.

Cette résistance équivalente se calcule avec la formule 1/R = 1/R1+1/R2+1/R3. Nous avons donc un pont diviseur de tension R et R4 qui fera varier la tension au borne de l'entrée analogique en fonction du nombre de commutateur S2, S2, S3 enfoncés.

Tout ce que nous avons à faire c'est de lire la valeur analogique avec le Trinket et d'utiliser cette valeur dans notre code. Cette méthode fonctionne aussi bien avec les commutateurs normalement ouvert ou normalement fermé.

Cette méthode utilise seulement 4 résistances là où un pure réseau Ladder R-2R nécessiterait 5 à 6 résistances pour 3 interrupteurs).

Trinket-Alarme-Base-12.png
Crédit: AdaFruit Industries www.adafruit.com

R-2R ladder (source: Wikipedia)

Un petit calcul pour le plaisir

Disons que que les commutateurs S2 et S3 sont enfoncés.

Nous allons calculer la tension sur la broche analogique (juste pour se faire plaisir)

Ce n'est pas bien grave si vous ne comprenez pas les détails, ce n'est pas vraiment important.

Résistance équivalente

Nous pouvons donc calculer la résistance équivalente R pour R2 et R3 en parallèle.

La formule présentée ci-dessus

1/R = 1/R1 + 1/R2 + 1/R3

devient (puisque R1 n'a aucun impact dans notre exemple).

1/R = 1/R2 + 1/R3

1/R = 1/2200 + 1/3300

1/R = 0.00075757575

R = 1/0.00075757575

R = 1320 Ohms

Courant dans le pont diviseur

Le montage est un pont diviseur de tension R4 + R

Soit la formule de la loi d'Ohm U = R x I

5v = (R4 + R) x I

5v = (1500 + 1320) x I

I = 5 / (1500 + 1320)

I = 0.00177 A (1.77 mA est le courant qui passe dans le pont diviseur constitué de R4 + R)

Tension sur la broche analogique

La tension sur la broche analogique est justement celle qui se trouve sur la résistance équivalente (constituée par R2 & R3 et dont la valeur est 1320Ohms).

Vive la loi d'Ohm U = R x I... nous cherchons la tension et connaissons la résistance (1320 Ohms) et le courant qui la traverse (1.77mA).

U = 1320 x 0.00177

U = 2.224 Volts

La tension sur la broche analogique est de 2.224 volts.



Source: Trinket Bluetooth Alarm System

Tutoriel créé par MICHAEL BARELA pour AdaFruit Industries. Tutorial created by MICHAEL BARELA for AdaFruit Industries

Traduit et augmenté par Meurisse.D pour MCHobby.be

Traduit avec l'autorisation d'AdaFruit Industries - Translated with the permission from Adafruit Industries - www.adafruit.com

Toute référence, mention ou extrait de cette traduction doit être explicitement accompagné du texte suivant : «  Traduction par MCHobby (www.MCHobby.be) - Vente de kit et composants » avec un lien vers la source (donc cette page) et ce quelque soit le média utilisé.

L'utilisation commercial de la traduction (texte) et/ou réalisation, même partielle, pourrait être soumis à redevance. Dans tous les cas de figures, vous devez également obtenir l'accord du(des) détenteur initial des droits. Celui de MC Hobby s'arrêtant au travail de traduction proprement dit.