1. Introduction

1.1 Pourquoi un tel projets ?

Lorsque je suis chez moi, j'ai toujours que se soit un casque audio ou des écouteurs sur la tête afin d'écouter de la musique, jouer de la musique ou alors parler avec quelqu'un sur skype. Et il m'est arrivé plusieurs fois que quelqu'un frappe à la porte de ma chambre sans que je ne puisse l'entendre donc entre et me dérange alors que je suis entrain de travailler, jouer de la guitare ou alors entrain de parler ce qui est assez gênant lorsque je suis avec plusieurs personne sur skype. Mon projet consisterait donc à m'avertir lorsque quelqu'un frappe à la porte de ma chambre et que je puisse lui répondre si elle peut entrer ou pas sans cesser mon activité.

1.2 Quelles sont les limites ?

La seul limite que j'avais dans mon projet était le fait que j'habite dans un appartement , je ne pouvais donc pas donc faire de trous dans les murs ou dans la porte afin d'y installer mon système.

1.3 Quels sont les enjeux d'un tel projet ?

Les enjeux de ce projet ne sont pas que résoudre un problème auquel j'étais confronté mais aussi approfondir mes connaissances en programmation et en électronique. Le fait de pouvoir réaliser un projet du début jusqu'à la fin de mes propres mains et d'avoir quelque quelque chose de concret et qui fonctionne à la fin est aussi une expérience qui m'a permis de m'enrichir et qui me servira sûrement plus tard lorsque j'aurai d'autres projets à réaliser.

2. Matériel et méthodes

2.1 Le matériel

2.1.1 La carte Arduino

La carte Arduino est un circuit imprimé doté d'un microcontôleur qui peut être programmé afin d'envoyer des signaux électriques. Il est aussi doté d'un port USB qui lui permet d'être alimenté par un ordinateur et de communiquer avec celui-ci. Il est aussi possible d'alimenter le circuit avec une alimentation 9V et de stocker le programme sur la mémoire interne du circuit ce qui lui permet de fonctionner sans ordinateur. Arduino est une plateforme libre de droit, tous les plans du circuit sont disponibles gratuitement sur internet sauf ceux du micrcontôleur.

2.1.2 Le capteur de vibration

Le capteur de vibration est un HEX Vibration Sensor, qui fonctionne de 3V à 5.5V. Il doit être branché à l'arduino.

2.1.3 L'écran LCD

L'écran LCD est un écran qui peut afficher 16 caractères sur 2 rangées. Il doit obligatoirement être branché à un potentiomètre afin de régler la luminosité.

2.1.4 La LED

Le bouton

2.2 Méthode

2.2.1 L'écran LCD

L'écran LCD était branché à l'Arduino comme l'image ci-dessous, en changeant les pins 2,3,4 et 5 par les pins 6,7,8 et 9 car les pins 2 et 3 étaient utilisées par le capteur de vibration.

2.2.2 Le bouton

Un bouton était branché à l'Arduino comme sur l'image ci-dessous en remplaçant la pin 2 par la pin 1 car comme dit précédemment les pins 2 et 3 sont utilisés par le capteur de vibrations.

2.2.3 Le capteur de vibrations et la LED

Le capteur de vibrations et la LED étaient branchés comme sur l'image ci dessous, en remplaçant le bouton par le capteur car tous les deux ont la même fonction, c'est à dire fournir une valeur entre 0 et 1 lorsqu'ils seront activés ou pas. Il n'est non plus pas nécessaire de mettre une résistance car le capteur n'en a pas besoin.

2.2.4 Fonctionnement du système

Dans mon système, le capteur de vibrations et l'écran LCD fonctionnement séparément c'est à dire qu'il y aura une partie de code pour l'écran et une partie pour le capteur qui se trouveront toutes les deux sur le même croquis.
Tout d'abord voyons le fonctionnement de l'écran LCD. Le bouton sur lequel il faut appuyer pour afficher le message aura deux états, un lorsque quelqu'un appuie sur le bouton et qui vaudra 1 et un état lorsque l'on réappuie dessus qui vaudra 0. Il suffit ensuite de dire à l'écran LCD que lorsque la pin sur laquelle est connecté le bouton vaut 0 rien n'est affiché et lorsque l'état de la pin sur laquelle est branché le bouton change de 0 à 1, l'écran affiche le message "Entrez" grâce à la commande lcd.print. Venons on ensuite au capteur de vibrations, celui ci fonctionne à peu près de la même manière qu'un bouton mais contrairement à celui-ci il faudra fixer un interrupt car le temps que quelqu'un frappe à la porte est très court, l'état va donc changer pendant très peu de temps et on est pas sûre que l'Arduino pourra le détecter. Pour fixer un interrupt il faut obligatoirement que le capteur soit branché soit sur la pin 2 soit sur la 3. L'interrupt va détecter lorsque l'état va passer soit de 0 à 1 soit de 1 à 0 et va le garder activé pendant un certain temps. Pour fixer un interrupt il suffit d'utiliser cette commande attachInterrupt(pin,ISR,mode), pin étant le nom donné à l'objet connecté à la pin ici le capteur, ISR étant la fonction à "appeler" et mode qui permet de définir quand est-ce que l'interrupt devra être actié, ici le mode étant FALLING car la pin va passer de 1 à 0. Lorsque l'interupt sera activé, il va appeler une fonction que j'ai nommé CHOC_SUR_PORTE et va changer son état en true, pour finir il suffit de dire à la pin sur laquelle est branchée la LED qu'elle s'active lorsque CHOC_SUR_PORTE passe de false à true

3. Résultats

Au final, le résultat que j'ai obtenu est satisfaisant car il permet non seulement de détecter des vibration mais aussi d'afficher un message sur l'écran LCD. Je n'ai malheureusement pas pu installer le système dans ma chambre car je ne possédais pas de câbles assez long afin de relier l'écran LCD sur la porte et la carte Arduino qui se trouve sur mon bureau. Je n'ai pas pu non plus atteindre mon but de départ qui était d'afficher différents messages en fonction du bouton sur lequel j'appuie car je m'y suis pris un peu tard et j'ai manqué de temps sur la fin du projet afin de le finaliser.

4. Discussion

Mon système fonctionne correctement mais il est possible de l'améliorer en lui faisant subir quelques changement.
Premièrement, il est possible de faire communiquer le capteur de vibration et la carte Arduino pas par câbles mais par infrarouge ou wifi, de cette manière il est possible d'installer le système dans n'importe quelle pièce d'un appartememt ou d'une maison sans avoir besoin de percer des trous dans les murs ou les portes.
Ensuite, il est possible d'améliorer le projet en faisant ce que je n'ai pas eu le temps de faire c'est à dire, installer plusieurs boutons qui pourraient afficher différents messages sur l'écran LCD. Pour finir, il est possible d'améliorer le projet en faisant communiquer le capteur de vibrations et l'écran LCD de tel manière à ce que je ne puisse pas afficher des messages si personne ne frappe à la porte, ou alors pouvoir sélectionner des messages qui s'afficheront automatiquement si quelqu'un frappe à la porte.
Comme nous pouvons le voir même si le système fonctionne correctement il est toujours possible de l'améliorer afin d'avoir plus de fonctions ou alors qu'il prenne moins de place et qu'il soit déplaçable. Une dernière chose qui aurait pu améliorer le système esthétiquement aurait été d'installer l'Arduino dans un boîtier en ne faisant ressortir que les bouton et la LED.

5. Conclusion

Pour conclure je dirais que le but de mon projet a été atteint mais pas totalement car il aurait pu être mieux si le temps et les délais avaient été mieux respectés. Un tel projet demande beaucoup de temps ce que j'ignorais au début et j'ai donc mal géré le temps qui m'a été mis à disposition. Une autre chose dont je me suis rendu compte c'est que il y a solutions à tous problèmes, car l'une de mes erreurs au début a été d'attendre que je reçoive le capteur de vibrations, je n'ai donc pas pu avancer sur le projets pendant un certain temps alors qu'il me suffisait de remplacer le capteur pas un bouton car tous les deux fonctionnent de la même manière.
Ce projet m'aura non seulement aidé à approfondir mes connaissances en programmation et en électronique mais aussi à comprendre que je ne sais je ne suis pas assez ordonné et structuré lorsque je travaille, car au lieu de me fixer des délais et travailler petit à petit, j'ai attendus la dernière semaine pour tout faire.

6. Ressources

Images

1.http://upload.wikimedia.org/wikipedia/commons/3/38/Arduino_Uno_-_R3.jpg 2.http://www.play-zone.ch/media/catalog/product/cache/3/thumbnail/9df78eab33525d08d6e5fb8d27136e95/6/2/6270.jpg 3.http://www.gotronic.fr/ori-afficheur-lcd-2x16-i2c-dfr0063-19309.jpg 4.http://arduino.cc/en/uploads/Tutorial/LedOnPin13.jpg 5.http://tiptopboards.com/434-thickbox/lot-de-5-boutons-poussoirs-pour-arduino.jpg 6.http://boutique.semageek.com/img/cms/arduino-afficheur-lcd-2x16.jpg 7.http://www.mon-club-elec.fr/mes_images/exemples/pour_commencer/digital_read_serial/arduino_bpx1_pin2.png 8.http://sdz-upload.s3.amazonaws.com/prod/upload/Montage%20bouton_bb4.png

Texte

1.http://fr.wikipedia.org/wiki/Arduino 2.http://arduino.cc/en/Reference/attachInterrupt 3.http://www.play-zone.ch/de/hex-vibrationssensor.html