1. Introduction

Durant mon enfance, j'ai toujours eu l'impression que des gens entraient dans ma chambre durant la journée, et la fouillait (ne me demander pas pourquoi je pensais ça, je ne sais pas…). Du coup, je désirais installer une caméra pour pouvoir vérifier ce qu’il se passait dans ma chambre durant mon absence. Aujourd’hui, je sais qu’il ne se passe rien dans ma chambre quand je ne suis pas là (ou bien...?) Surtout qu'il n'y a généralement personne à la maison durant la journée mais je repense à cette idée/naïveté que j'avais quand j'étais plus jeune et cela m'a donné envie de satisfaire mon moi petit. C'est pour cela que l'idée de mon projet est d'installer une caméra de surveillance dans ma chambre qui s'active et prend une vidéo ainsi qu'une photo lorsque quelqu'un rentre dans ma chambre. La photo prise est directement envoyée à mon adresse mail personnel avec un message qui dit qu'il y a un intrus dans ma chambre.

2. Matériel et méthodes

2.1 Matériel

Liste de matériel:

  • 1x Raspberry Pi 3 (Model B)
  • 1x Raspberry Pi Camera Module - Pi NoIR
  • 1x HEX Vibration Sensor
  • 1x Pi Wedge 40 pin
  • 1x Breadboard
  • 1x Cable HDMI
  • 1x Carte SD
  • 3x Male to Female jumper wire

2.1.1 Raspberry Pi

Le Raspberry Pi est un nano-ordinateur de la taille d'une carte de crédit qui est destiné principalement à l'apprentissage de la programmation informatque. Il est doté de plusieurs entrées et sorties tel que 4 ports USB, une sortie HDMI, une prise Ethernet, 40 pin GPIO. Le système d'exploitation est GNU/Linux est s'utilise grâce à une carte SD que l'on introduit dans le Raspberry. Pour mon projet j'ai principalement utiliser le Pi wedge que j'ai connecté au 40 pin du raspberry ainsi que au breadboard.

2.2 Méthode

2.2.1 Les débuts

Tout d'abord, il m'a fallu apprendre a utiliser le raspberry, la caméra ainsi que bien comprendre l'électronique avec le pi wedge. Comme nous avons à peine eu un cours en classe sur le fonctionnement du raspberry, j'ai passé du temps à essayer de m'y connecté chez moi. Heureusement que google est la pour répondre à la plus part des questions que nous avons. En premier, j'ai connecté mon raspberry par HDMI à ma télévision pour pouvoir utiliser l'interface graphique. Ensuite, j'ai connecté mon Raspberry au wi-fi et grâce à la commande ifconfig j'ai trouvé l'adresse ip de mon Raspberry et finalement j'ai pu me connecter en ssh depuis mon propre ordinateur. Par la suite, j'ai commencé à connecté des leds sur le Pi Wedge et écrire quelques petits scripts python pour pouvoir activé la led. Tout ce que j'ai fait jusqu'à maintenant n'a l'air de rien mais il m'a fallu du temps pout tout comprendre comment me connecté au raspberry en ssh et comment écrire les scripts en python et executer les programmes grâce au raspberry.

2.2.2 Connecter la caméra et le détecteur de vibration

Après quelques réussites ainsi que quelques faillites, je me suis enfin lancé dans mon projet. J'ai dont trouver le site internet avec les références de la caméra et les explications sur comment la connecter au Raspberry et comment l'utiliser. Ce fut la parti la plus simple de mon projet. On connecte la caméra au raspberry grâce à une entrée fait pour cela. On peut le voir sur cette image: . Puis, quelques commandes que j'ai écrit dans un scripts python me permettent d'enregistrer des vidéos:

camera.start_preview()
camera.start_recording("emplacement du fichier où on souhaite garder la vidéo")

Ces deux commandes me permettent de visualiser ce que la caméra filme (pour cela il faut que le raspberry soit connecté à la télévion pour voir sur l'interface graphique car cela ne fonctionne pas sur un simple terminal connecté en ssh) et d'enregistrer.

sleep(10)
camera.stop_recording()
camera.stop_preview()

Ces trois commande disent à la caméra de s'arrêter de filmer après 10 secondes.

Fort de mec succès avec la caméra, j'ai connecté le détecteur de vibration au Raspberry. Comme on peut le voir sur l'image j'ai utilisé 3 female to male cable que j'ai connecté de ground to ground, Digital Out au G17 (ce qui me permettra de recevoir l'information du détecteur) et de UCC au 5V. Avec tout cela, j'était bien lancé pour mon projet.

2.2.3 Software

Le début du script python commence ainsi:

#!/usr/bin/python
# -*- coding: utf-8 -*-

Ces deux lignes indiquent au raspberry que le programme est en python et que l'on écrit en utf-8. Ensuite j'ai importé les librairies nécessaire au programme:

from picamera import PiCamera
import RPi.GPIO as GPIO
import time
from threading import Timer
import smtplib
from os.path import basename
from email.mime.application import MIMEApplication
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.utils import COMMASPACE, formatdate

Les deux premières lignes sont les librairies qui me permettent d'utiliser les codes pour controler la caméra et le détecteur de vibration par l'intermediaire du Pi Wedge et le breadboard. Les deux lignes suivantes sont les librairies pour importer le temps et un minuteur. Les six dernières librairies me vont être utile pour m'envoyer un mail depuis le Raspberry.

3. Résultats

Images du résultat final:

Le résultat est que le code fonctionne. Cela me réjouit car après les quelques difficultés auxquelles j'ai fait face j'avait des doutes sur le résultat de mon projet. Après je ne suis pas entièrement satisfait non plus. Car même si cela fonctionne et que dès que le montage détecte une vibration la caméra s'allume, prend une vidéo et envoie une photo sur mon adresse mail, le détecteur de vibration n'est pas l'outil le plus performant que j'avais sous la mains et que je souhaitais utiliser car même si ça détecte bien les vibrations ce n'est pas assez sensible pour l'utiliser et le placer sur le meuble en face de la porte de ma chambre comme je pensais faire à l'origine. C'est pour cela que je l'ai mit sur mon bureau à côté de la porte car quand on ouvre la porte de ma chambre, elle frappe mon bureau (si on ne fait pas trop attention) et c'est grâce à cela que j'obtiens les vibrations.

Mais mon idée principal était que je voulais utiliser le détecteur de vibration pour me familiariser avec le matériel et le script d'activation de la caméra que j'ai du écrire. Puis, après avoir réussi dans cette voie, j'aurais utilisé un pointeur laser et un photorecepteur que j'aurai connecé au Raspberry et laisser en face de la porte de ma chambre. J'aurais aussi mis un miroir sur la porte de ma chambre et comme ça j'aurais pointé le laser sur le miroir pour que cela ce reflète sur le photorecepteur. Ainsi, dès que quelqu'un serait rentré dans ma chambre, le reflet aurait dévié et le photorecepteur n'aurait plus reçu la lumière du laser ce qui aurait activé la caméra. Mais bien que ce but n'ai pas été atteint, je suis tout de même bien content d'avoir quand même réussi mon montage ainsi que le programme même si le détecteur n'est pas l'outil le plus performant.

4. Discussion

5. Conclusion

Références