Ligne 30 : |
Ligne 30 : |
| Vous pouvez trouver tout [http://www.mchobby.be ce matériel sur notre WebShop]. | | Vous pouvez trouver tout [http://www.mchobby.be ce matériel sur notre WebShop]. |
| | | |
− | [[Fichier:ReedSwitch-schema.jpg|300px]] | + | [[Fichier:ReedSwitch-schema.jpg|400px]] |
| | | |
| === Quelques notes de fonctionnement === | | === Quelques notes de fonctionnement === |
Ligne 47 : |
Ligne 47 : |
| === Montage en image === | | === Montage en image === |
| [[Fichier:ReedSwitch-montage.jpg|450px]] | | [[Fichier:ReedSwitch-montage.jpg|450px]] |
| + | |
| + | === Programme === |
| + | Il s'agit bien entendu d'un programme de démonstration qui vise à mettre en oeuvre l'utilisation d'un contact magnétique. |
| + | |
| + | Vous pouvez bien entendu modifier ce programme pour qu'il réponde à vos besoin. |
| + | |
| + | En guise d'exemple, vous pourriez vous envoyer un SMS (à l'aide du [[GeekOnFire_GSM/GPRS_Shield|GPRS shield]]). Vous seriez ainsi quand quelqu'un rentre chez vous :-) |
| + | |
| + | <nowiki>/* |
| + | * Utilisation d'un contact magnétique (reed switch) |
| + | * avec déparasitage logiciel. |
| + | * |
| + | * La LED s'allume quand le contact est ouvert |
| + | * (équivalent de la porte ouverte) |
| + | * |
| + | * Source: www.mchobby.be |
| + | * Licence: Creative Common CC-BY-SA |
| + | */ |
| + | |
| + | int switchPin = 2; // Bouton connecté à la pin 2 (pull-down) |
| + | // HIGH=contact fermé=porte fermée (aimant proche) |
| + | // LOW =contact ouvert=porte ouverte (aimant éloigné) |
| + | int ledPin = 8; // LED qui indique quand la porte est ouverte |
| + | |
| + | int switchState; // état du switch magnétique |
| + | |
| + | void setup(){ |
| + | pinMode( switchPin, INPUT ); |
| + | pinMode( ledPin, OUTPUT ); |
| + | |
| + | // Lecture etat Switch |
| + | switchState = digitalRead( switchPin ); |
| + | // éteindre/allumer la LED si porte fermée/ouverte |
| + | digitalWrite( ledPin, !(switchState) ); |
| + | } |
| + | |
| + | void loop(){ |
| + | |
| + | // Lecture de l'état du switch avec déparasitage logiciel |
| + | int val = digitalRead( switchPin ); |
| + | delay( 10 ); |
| + | int val2 = digitalRead( switchPin ); |
| + | |
| + | // Changement d'état ? |
| + | if( (val == val2) && (val != switchState ) ) { |
| + | if( val == LOW ) { |
| + | // PORTE OUVERTE -> Allumer LED |
| + | digitalWrite( ledPin, HIGH ); |
| + | } |
| + | else { |
| + | // PORTE FERMEE - éteindre LED |
| + | digitalWrite( ledPin, LOW ); |
| + | } |
| + | switchState = val; |
| + | } |
| + | } |
| + | </nowiki> |
| + | |
| + | == Résultat en image == |
| + | Puisque rien ne vaut une bonne petite vidéo... |
| + | |
| + | {{#Widget:Iframe |
| + | |url=http://www.youtube.com/embed/qMGOZbKvnNM |
| + | |width=420 |
| + | |height=315 |
| + | |border=0 |
| + | }} |
| + | |
| + | La vidéo est disponible [http://youtu.be/qMGOZbKvnNM ici] |
| | | |
| == Ou achetez == | | == Ou achetez == |
− | Le [http://mchobby.be/PrestaShop/product.php?id_product=60 contact magnétique est disponible sur le WebShop de MCHobby]. | + | Le {{pl|60|contact magnétique et autres composants sont disponibles sur le WebShop de MCHobby}}. |
| | | |
| {{MCH-Accord}} | | {{MCH-Accord}} |