Blog geekesque... ou presque

Aller au contenu | Aller au menu | Aller à la recherche

Caméra de surveillance avec Raspberry Pi

Suite à l'excellent billet de François Mocq "Une caméra de surveillance vidéo avec le Raspberry Pi", j'ai essayé de me faire mon propre système.

Ca marche, et c'est fort simple.

Pré-requis

Le matériel

  • un Raspberry Pi 2
  • un module de Caméra Raspberry Pi

Le logiciel

Votre système doit être à jour avec le dernier firmware:

sudo apt-get install rpi-update
sudo rpi-update
sudo apt-get update
sudo apt-get upgrade

Installation

Commencez par brancher votre caméra sur votre RPi, puis démarrez le.

Ajout du bon driver

Le driver bcm2835-v4l2 qui permet à motion de gérer la caméra Pi est normalement présent si vous avez fait les mises à jour.

Vous pouvez l'activer très simplement:

sudo modprobe bcm2835-v4l2

Pour qu'il soit automatiquement chargé au démarrage, éditez le fichier /etc/modules et ajoutez à la fin bcm2835-v4l2

Installation du logiciel de détection

motion est le logiciel gratuit et open-source qui semble le plus efficace.

sudo apt-get install motion

Pour que motion puisse s'exécuter en tant que daemon, il faut modifier les droits d'accès à certains répertoires et fichiers:

# Création du fichier de logs
sudo touch /tmp/motion.log
# Donner les droits en écriture
sudo chmod 666 /tmp/motion.log
 
# rendre accessible la configuration et l'exécutable
sudo chmod 664 /etc/motion/motion.conf
sudo chmod 755 /usr/bin/motion

Configuration de motion

La configuration se fait dans /etc/motion/motion.conf

Voici les paramètres que j'ai changés dans ce fichier

# chemin vers les logs
logfile /tmp/motion.log
 
# chemin vers le répertoire de stockage des vidéos
target_dir /media/usb0/camera
 
# Coupure du serveur de stream
stream_port 0
 
# Coupure du serveur de contrôle
webcontrol_port 0
 
# Lancement d'un script personnel en cas de détection
on_event_start /bin/sh /home/crazycat/alert.sh

La documentation du fichier de configuration est très bien faite, n'hésitez pas à jouer avec les paramètres, essentiellement ceux de tailles d'image et de durée de vidéo pour optimiser votre espace disque

Les tests

Le premier test est de vérifier que motion fonctionne bien. Pour celà, il faut le lancer en mode setup.

sudo motion -s

Normalement, motion se lance (la led de la caméra s'éclaire et un log apparait à l'écran).

Utilisez Ctrl+C pour tuer motion.

Le second test consiste à le lancer comme le ferait le système:

start-stop-daemon --start --oknodo --exec /usr/bin/motion -b --chuid motion

Vous aurez probablement des erreurs, peut-être pour des raisons de chemins ou de droits d'écriture. Tuez le processus si nécessaire, corrigez votre configuration, et relancez le processus.

Pour tuer le processus:

start-stop-daemon --stop --oknodo --exec /usr/bin/motion

Démarrage automatique

Par défaut, motion ne se lance pas automatiquement. Pour corriger cela, il vous suffit d'éditer le fichier /etc/default/motion:

# set to 'yes' to enable the motion daemon
start_motion_daemon=yes

Astuce

Si vous voulez désactiver la led de la caméra, afin que de potentiels intrus n'aient pas l'idée de détruire votre système, ajoutez la ligne suivante au fichier /boot/config.txt:

disable_camera_led=1

Commentaires

1. Le mercredi 9 mars 2016, 11:25 par Hugo

Bonjour,
Je souhaite réaliser une vidéo surveillance ainsi qu'un capteur de mouvement après plusieurs recherche sur le net, motion me semble le plus adapté pour mon projet, j'ai déjà essayer plusieurs fois d'avoir un résultat mais je n'ai rien (je suis pas un pro en info j'ai quelques bases).
J'ai quelques questions :
1. Je pense que je devrais tout effacés Motion et ce que j'ai installé avec, pour cela je n'ai pas la commande, la connaissez-vous ?
2. Est-ce que a la fin de votre tuto, je pourrai visualiser ma vidéo depuis une page internet ou vlc ?
Merci, en attente de votre réponse :)

2. Le mercredi 9 mars 2016, 12:28 par CrazyCat

@Hugo :
Bonjour Hugo,
Si tu veux supprimer tout ce qui a été installé précédemment avec motion, tu as deux commandes à exécuter:

apt-get remove --purge motion
apt-get autoremove

La visualisation de la vidéo en direct, donc indépendante d'une détection, est possible si la section Live Stream Server du fichier /etc/motion/motion.conf est correctement remplie. Je te conseille surtout de changer la valeur de stream_localhost pour off.

Pour les vidéos prises lors d'une détection, elles sont visibles dans VLC si elles sont accessibles (via un partage réseau par exemple), pour les visualiser dans un navigateur il faudra développer une petite page php (par exemple) ou rendre le répertoire d'enregistrement accessible par le web.

3. Le vendredi 1 avril 2016, 08:41 par Hugo

Bonjour,
Pour ma part j'ai fais la vidéo surveillance avec une webcam, ça fonctionne très bien,
et j'aimerai savoir si c'est possible de mettre la caméra "en veille" et quelle ne s'active seulement lorsqu'un mouvement passe devant la camera.
Merci

4. Le vendredi 1 avril 2016, 18:15 par CrazyCat

@Hugo : Qu'appelles-tu "mettre en veille" ?

La caméra doit toujours fonctionner pour pouvoir détecter les mouvements, c'est un pré-requis. Par contre, la configuration de motion permet de choisir d'enregistrer une vidéo lors de la détection de mouvement, avec différentes options telles que la durée, le nombre d'images enregistrées avant et après la détection, la possibilité d'envoyer une alerte, ...

Je ferais une petite aide simplifiée sur la configuration de motion ce week-end.

Ajouter un commentaire

Les commentaires peuvent être formatés en utilisant une syntaxe wiki simplifiée.

La discussion continue ailleurs

URL de rétrolien : https://www.g33k-zone.org/index.php?trackback/101

Fil des commentaires de ce billet