Categories: Raspberry Pi

Installer un détecteur de mouvement et une caméra sur votre Raspberry Pi

Avant toute chose, il faut savoir qu’avec les dernières versions de Raspbian, l’installation, la configuration et l’utilisation du capteur de présence s’est nettement amélioré. Désormais, il y a un package officiel et la configuration est plus rapide.

Etape 0 – Matériel

Vous devez vous procurez tout le matériel nécessaire… Je pense notamment au minimum suivant : Raspberry Pi, câble d’alimentation, câble Ethernet (et/ou dongle WiFi compatible), boîtier éventuel.

Précisons que si vous souhaitez utiliser votre Raspberry Pi comme une véritable caméra de sécurité, vous devrez nécessairement investir dans un boîtier. Vous pouvez prendre un boîtier « standard » comme ceux que j’ai présenté dans mes précédents articles mais dans ce cas là, il faut savoir que la nappe et la caméra se trouveront à l’extérieur du boîtier sans réelle protection.

Ou bien, vous pouvez utiliser ce type de boîtier que j’ai trouvé sur eBay pour un peu moins de 20 euros (frais de ports non inclus).

L’avantage de ce type de boîtier et de protéger votre Raspberry Pi tout en mettant à disposition 2 emplacement sur la partie supérieure pour la caméra et le capteur de mouvements (emplacements qui peuvent en plus pivoter). Attention toutefois, il faut bien noter que ce boîtier vous sera livré en « kit » et qu’il vous appartiendra d’assembler les morceaux (je le précise car moi… ayant lu un peu (trop) rapidement je pensais qu’il allait arriver tout monté) ! :p

Mais en vrai, vous recevrez plutôt ceci :

Et en vrai, c’est un peu comme du Ikea, ça se monte une fois et ça ne se démonte plus sous risque de casser certaines plaques. Bref, pour ma part, j’en suis satisfait et ça fait parfaitement le job pour le prix ; vous savez maintenant à quoi vous attendre ! 😉

Et pour terminer sur la matériel, pour la caméra vous n’aurez aucune difficulté à brancher la nappe… En revanche, pour le capteur, je vous propose le lien suivant et le schéma dessous qui vaut mieux que de longs discours :

De cette façon, vous voyez exactement quels sont les pins à utiliser pour connecter votre capteur ! 🙂

Etape 1 – Configuration du motion capteur

A partir de là, on va supposer que vous avez correctement monté votre Raspberry Pi (avec ou sans boîtier) et que vous avez correctement installé Raspbian sur le carte Micro SD de ce dernier. Vous avez également configuré votre Raspbian en définissant votre mot passe, hostname, activé la caméra et avez également procédé aux dernières mise à jour (là encore, je vous renvoi vers mes anciens articles) :

sudo apt-get update && sudo apt-get upgrade -y

Nous allons maintenant installer le package motion disponible qui va nous permettre d’utiliser notre motion sensor.

Pour ce faire :

sudo apt-get install motion

Acceptez l’installation de toutes les dépendances bien entendu.

Globalement, vous avez 2 fichiers de config à connaître par la suite :

  • /etc/motion/motion.conf
  • /etc/default/motion

Pour vérifier le statut de fonctionnement du détecteur, comme pour tout paquet debian, vous pouvez exécutez la commande suivante :

sudo /etc/init.d/motion status

Vous voyez que nous avons un warning message,et que nous devons modifier un paramètre (le seul) qui se trouve dans le fichier /etc/default/motion. Editez le avec votre outil préféré et modifiez le paramètre start_motion_daemon à yes.

Effectuez ensuite un redémarrage du processus avec la commande suivante :

sudo /etc/init.d/motion restart

Globalement, pour notre test, on va laisser la plupart des paramètres avec leurs options par défaut. Il vous appartiendra de les découvrir en fonction de vos tests (j’aborde quelques options intéressantes à la fin de l’article).

Modifiez tout de même les paramètres suivants :

  • stream_localhost off : autoriser le flux vidéo à être accessible depuis Internet et non uniquement sur votre réseau local) – NB : vous devrez tout de même faire vos ouvertures de flux au niveau de votre box Internet !
  • stream_authentication : pour définir un login et mot de passe et protéger ainsi vote flux vidéo
  • webcontrol_localhost off

Normalement, si vous avez tout bien fait, il vous suffit d’effectuer un nouveau restart du processus motion et vous devriez pouvoir vous connecter à l’URL suivante sur votre Raspberry Pi : http://192.168.1.48:8081/ (remplacez 192.168.1.48 par l’IP interne sur votre réseau du Raspberry Pi).

Et là… c’es le drame ! Pour ma part, j’ai d’abord eu quelques soucis avec le flux vidéo puisque tout était gris. Alors que pourtant lorsque j’exécutais des scripts basiques pour tester la caméra cette dernière était fonctionnelle (mais pas avec couplée motion).

J’ai trouvé la réponse à l’adresse suivante : http://raspberrypi.stackexchange.com/questions/10480/raspi-camera-board-and-motion en exécutant la commande suivant :

sudo modprobe bcm2835-v4l2

A noter que cette commande doit être exécutée à chaque redémarrage donc insérez-là au besoin dans le crontab du compte root. Pour ce faire :

sudo crontab -e

Puis ajoutez la ligne suivante :

@reboot sudo modprobe bcm2835-v4l2

Relancez maintenant le motion sensor en tapant simplement motion et agitez quelque-chose devant ce dernier, plusieurs fichiers images devraient désormais s’être créés dans votre dossier utilisateur (/home/pi) par défaut.

Vous avez même du voir la petite lumière rouge de votre caméra s’allumer… 🙂

Relancez maintenant la commande motion pour démarrer le processus et observez :

Une fois le processus relancé (et la bla-bla passé), j’ai attendu quelques instants et lorsque j’ai passé ma main devant le capteur, celui s’est déclenché et a pris immédiatement une photo (on le voit dans les logs au niveau des 2-3 dernières lignes).

Etape 2 – Démarrer motion via Screen (en tâche de fond)

Pour faire fonctionner le capteur motion en permanence (et non pas uniquement dans votre session utilisateurs lorsque vous êtes connecté), je vous recommande d’utiliser la commande screen (à installer).

sudo apt-get install screen

Cette dernière vous permettra de lancer un processus en tâche de fond (même si vous n’êtes plus connecté en SSH).

Pour ce faire, tapez screen et exécutez la commande motion. Une fois le processus démarré, détachez la console avec le raccourcie clavier CTRL + A + D. Déconnectez-vous. Une fois reconnecté, pour retourner dans cette console tapez screen -r. Pour terminer un screen, tapez simplement Exit.

Etape 3 – Pour aller plus loin

Nous sommes parvenus à utiliser notre caméra couplée à notre détecteur de mouvement et nous avons pu automatiquement générer des photos lorsqu’un événement était détecté.

Il vous appartient maintenant de pousser un peu plus loin les tests notamment en regardant les différents paramètres qui sont à votre disposition avec le package motion (voir le fichier configuration).

Je pense notamment aux paramètres suivants qui pourraient vous intéresser :

  • widthheight : pour définir la hauteur et la largeur de l’image / vidéo qui sera générée
  • pre_capture & post_capture : pour configurer la prise automatique de fichiers images/vidéos avant et après une détection
  • quality : pour configurer le niveau de compression de vos fichier jpeg
  • location_motion_mode & locate_motion_style : pour dessiner un carré autour de ce qui a été détecté
  • text_right & text_left : pour personnaliser les messages qui sont automatiquement ajoutés à vos fichiers
  • on_event_starton_event_endon_picture_save : pour configurer l’exécution d’actions ou de scripts lorsqu’un événement est détecté – c’est là que vous allez pouvoir automatiquement demander l’exécution de vos scripts batch ou python lorsque quelque-chose est détecté ! 😉

Encore un peu de lecture :

Share
Published by
thibault

Recent Posts

FT Group et OpenAI signent un accord pour améliorer ChatGPT avec les contenus journalistiques

Le journal Financial Times ouvre son contenu à OpenAI Le Financial Times (FT) et OpenAI,…

2 jours ago

Microsoft nommé Leader dans le Cloud lié au développement d’IA générative selon Gartner

Microsoft est fier d'annoncer qu'il a été nommé Leader pour la cinquième année consécutive dans…

3 jours ago

Dropbox Sign victime d’un piratage : des données compromises

Dropbox Sign piraté Le 24 avril 2024, Dropbox a annoncé avoir été victime d'une intrusion…

5 jours ago

Microsoft adopte les passkeys pour simplifier et sécuriser la connexion

Vers la fin des mots de passe ? Depuis le 2 mai 2024, Microsoft a…

6 jours ago

Proton Mail s’attaque aux fuites d’identifiants sur le Dark Web pour mieux protéger ses utilisateurs

Proton Mail, le service de messagerie électronique chiffrée, a récemment annoncé le lancement d'une nouvelle…

1 semaine ago

Ubuntu 24.04 LTS : une nouvelle ère pour l’innovation et la sécurité

25 avril 2024 - La communauté Ubuntu a récemment annoncé la sortie officielle d'Ubuntu 24.04…

2 semaines ago