Dans la série des périphériques, suite à la dongle wifi et la clé Bluetooth, penchons-nous maintenant sur l’installation d’une caméra avec la Raspberry Pi. Notre but ici et de vous proposer un guide pour sa mise en place, avec un budget raisonnable (c’est-à-dire cohérent avec le prix du micro-ordinateur) et avec une retransmission sur smartphone ou PC.

Prérequis matériel

La valeur totale de ces appareils et accessoires devrait être d’une centaine d’euros.

Préparation

Si cela n’est pas déjà fait, commencez par l’installation de Raspbian. Pour cela, jetez un œil sur notre tutoriel. Il nous est nécessaire puisqu’il gère la communication entre le matériel physique et les applications. De plus, ce dérivé de Debian est parfait pour ce type d’utilisation : stable et régulièrement mis à jour, sur lequel vous trouverez une multitude d’articles et d’aides sur le web.

Assurez-vous par ailleurs d’avoir bien activé la connexion SSH, dont nous avons détaillé la méthode dans ce guide. Activez en outre le module caméra de la même manière, via le menu Raspi Config.

Ecran Raspi Config

Nous allons, en dernière étape de ce préambule, vérifier que tout est bien à jour :

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

Met à jour le firmware.

sudo apt-get update
sudo apt-get upgrade

Met à jour les fichiers.

Communication SSH

Nous allons maintenant connecter notre ordinateur hôte au micro-ordinateur. Cela nous permettra de mettre à jour ou paramétrer la caméra sur laquelle ce dernier sera connecté, à distance. Vous l’aurez compris : nous n’allons pas dans ce tutoriel simplement installer une caméra, mais un appareil puissant, sur lequel les possibilités seront variées puisqu’il accueille un système d’exploitation de la famille Linux. Que vous soyez sur Mac ou sur Windows, la connexion est relativement simple et détaillée ici.

Protocole de connexion SSH

Paramétrage du wifi

Si vous n’avez pas encore installé de dongle wifi sur votre Raspberry Pi, nous vous conseillons d’aller jeter un œil sur cet article. En voici un bref résumé : entrez la commande ci-dessous dans votre terminal de commande (PuTTY si vous êtes sous Windows).

sudo nano /etc/network/interfaces

Allez à la fin du fichier, puis ajoutez les lignes suivantes (ou modifiez-les si elles existent déjà), en adaptant le SSID et le mot de passe avec vos paramètres :

allow-hotplug wlan0
iface wlan0
inet dhcp
wpa-ssid "SSID"
wpa-psk "MOT_DE_PASSE"

Redémarrez pour appliquer les modifications :

sudo reboot

Wifi

Assemblage de la caméra

Passons maintenant à l’assemblage matériel de la caméra. Nous ne pouvons vous guider ici précisément puisque les instructions dépendent du boitier que vous avez choisi.

Rasberry Pi avec caméra branchée

Nous pouvons cependant vous conseiller de trouver un moyen de fixer la Raspberry Pi, pour éviter qu’elle ne se balade ; et de vous assurer qu’aucun métal ne touche un circuit imprimé. Vous pouvez aussi choisir de couvrir ou non la LED de la caméra par un papier noir, pour rendre  le dispositif plus discret. Celle-ci indique la détection d’un mouvement ou le commencement d’un enregistrement, ce qui peut avoir un effet dissuasif, selon l’utilisation que vous en faites. Cette ligne de commande vous permet de la désactiver :

disable_camera_led=1

Changez-le « 1 » en « 0 » si vous souhaitez la réactiver par la suite.



Mise en place de la détection de mouvement

Détection de mouvement

Nous allons ici nous aider du logiciel motion, qui va vous permettre de personnaliser la surveillance et la détection de mouvement grâce à ses nombreux paramètres. De plus, il s’agit d’un logiciel open-source gratuit, ce qui va vous permettre d’y greffer les fonctionnalités que vous souhaitez. Pour l’installer :

sudo apt-get install motion

Assurez-vous d’avoir les pleins pouvoir en effectuant ces opérations via l’utilisateur « pi ».

Patientez pendant l’installation des paquets, et validez par « y ». Cette version n’a pas encore été bien adaptée pour notre Raspberry Pi. Nous allons y ajouter un programme pour que cela fonctionne de manière plus stable :

cd /tmp
sudo apt-get install -y libjpeg62 libjpeg62-dev libavformat53 libavformat-dev libavcodec53 libavcodec-dev libavutil51 libavutil-dev libc6-dev zlib1g-dev libmysqlclient18 libmysqlclient-dev libpq5 libpq-dev
wget https://www.dropbox.com/s/xdfcxm5hu71s97d/motion-mmal.tar.gz

Décompressons le dossier :

tar zxvf motion-mmal.tar.gz

Puis, mettons à jour le logiciel motion pour qu’il communique bien avec l’addon que nous venons de télécharger :

sudo mv motion /usr/bin/motion
sudo mv motion-mmalcam.conf /etc/motion.conf

Mettons maintenant à jour les programmes qui agissent en arrière-plan de motion, appelés daemons :

sudo nano /etc/default/motion

Modifions-en la ligne suivante :

start_motion_daemon=yes

Notez par ailleurs la commande suivante pour accéder et adapter le fichier de configuration de motion :

sudo nano /etc/motion.conf

(La version spéciale de motion-mmal voit son fichier de configuration se trouver sur /etc/ et non /etc/motion/).

Assurons-nous de bien de donner les privilèges nécessaires à l’utilisateur « motion » lorsque l’on installe le programme du même nom en SSH, via l’utilisateur « pi » connecté. Nous allons utiliser ces privilèges pour exécuter « motion » au démarrage :

sudo chmod 664 /etc/motion.conf
sudo chmod 755 /usr/bin/motion
sudo touch /tmp/motion.log
sudo chmod 775 /tmp/motion.log

Nous allons maintenant utiliser une version modifiée de motion.conf, plus adaptée à nos besoins, que vous pouvez trouver ici. Téléchargez-la puis décompressez-la sous : /etc/motion.conf. Voici les principales modifications apportées :

daemon on

Exécute motion, de manière systématique, en arrière-plan.

logfile /tmp/motion.log

Enregistre le journal dans le dossier « /tmp »  pour que l’utilisateur puisse y accéder, à l’inverse de « /home/pi ».

width 1280
height 720

Résolution de la vidéosurveillance fixée à 1280 x 720 pixels.

framerate 2

Cadence d’enregistrement : 2 image/seconde. Le flux vidéo continu consommerait inutilement beaucoup de mémoire.

pre_capture 2
post_capture 2

Option pour enregistrer des images avant et après qu’un mouvement ait été surpris par la caméra.

max_mpeg_time 600

Limite la séquence vidéo à 10 minutes : le chiffre étant renseigné en secondes (60 secondes X 10 minutes). Notez que si vous utilisez la version « motion » et non « motion-mmal », vous pourriez obtenir l’erreur suivante :

Unknown config option  « max_mpeg_time »

Remplacez alors « max_mpeg_time » par « max_movie_time ».

Le rendu vidéo peut être impossible à lire par certains lecteurs, tels que VLC. Le code-ci-dessous permet d’y remédier en le convertissant en MPEG-4 :

ffmpeg_video_codec msmpeg4

Rendons maintenant possible l’accès au flux vidéo direct autre qu’en « localhost » :

stream_localhost off

Vous pouvez par ailleurs protéger l’accès à ce flux avec un login et un mot de passe. Adaptez-les en conséquence dans les commandes ci-dessous :

stream_auth_method 2
stream_authentication LOGIN:MOT_DE_PASSE

Retrouvez toutes ces options et bien plus encore dans la documentation en ligne de motion.

Redémarrons maintenant la Rapsberry Pi pour que les modifications soient prises en compte :

sudo reboot

La LED indiquant l’enregistrement ou la détection de mouvement de votre caméra par motion devrait être allumée.

Enregistrer les vidéos de la caméra sur un serveur Windows

Les vidéos peuvent prendre pas mal de place et la carte SD de la Raspberry Pi a ses limites. Nous vous proposons donc ici de les enregistrer sur un serveur Windows. Commencez par partager un dossier. Ouvrez ensuite fstab avec PuTTY ou entrez directement ceci sur le terminal de commande de la Raspberry Pi :

sudo nano /etc/fstab

Nous devons y faire prendre en compte le partage Windows :

//NOM_DU_SERVEUR/NOM_DU_PARTAGE /mnt/camshare cifs username=NOM_D_UTILISATEUR_POUR_LE_PARTAGE,password=MOT_DE_PASSE_POUR_LE_PARTAGE,iocharset=utf8,file_mode=0777,dir_mode=0777 0 0

Vérifiez que l’utilisateur dispose des privilèges nécessaires en lecture, écriture et modification pour ce dossier partagé. Redémarrez votre mini-ordinateur, vous  devriez y voir un nouveau dossier « /mnt/camshare ». Pour que motion y enregistre toutes les vidéos, ajoutez ceci dans le fichier motion.conf :

target_dir /mnt/camshare

Lancement automatique de motion au démarrage

Si vous avez suivi nos instructions jusqu’ici, vous pourriez avoir des problèmes dans le lancement automatique de motion après un redémarrage du micro-ordinateur. Cela vient du fait que le dossier partagé n’est pas correctement paramétré au moment où le programme tente d’y accéder. Éditons donc le fichier de configuration :

sudo nano /etc/init.d/motion

Pour y ajouter :

sleep 30

Vous trouverez le fichier tout fait, avec les bons paramètres ici.



Mise en place de la caméra

Il est maintenant temps d’installer la caméra à l’endroit souhaité ! Gardez deux choses à l’esprit avant de l’y fixer :

  • Mettez-la dans un endroit sec, à l’abris de la pluie et de l’humidité ;
  • Placez-la à portée du signal wifi de votre routeur.

Mise en place de la caméra

Accéder en direct au flux vidéo

Il vous est désormais possible de lire le flux vidéo en direct de votre caméra depuis n’importe quel navigateur internet. Pour cela, entrez l’URL suivante :

http://ADRESSE_IP_DE_LA_RASPBERRY_PI:8080

Le nombre 8080 en fin d’URL correspond au port de communication paramétré par le fichier motion.conf. Il vous est possible de le modifier en y changeant « stream_port ».

Sachez cependant que le navigateur Google Chrome n’est pas capable de lire directement les données du flux vidéo. Pour y remédier, créez un fichier HTML avec une grande image incluant l’adresse de la caméra.

Sur les autres navigateurs et VLC, vous ne devriez pas rencontrer de problème, sauf Internet Explorer. Une solution existe, elle est détaillée juste ici.

Accéder de n’importe où au flux vidéo

Enfin, sachez qu’il vous est aussi possible d’accéder à la caméra de n’importe quel endroit. La principale difficulté ici est que certains fournisseurs d’accès à internet renouvellent votre adresse IP à intervalle régulier. Il vous faut donc activer ce que l’on appelle un service de nom de domaine dynamique, de manière à toujours accéder à l’adresse IP locale de votre Raspberry Pi, de n’importe où. Pour cela, nous vous invitons à vous rendre sur dyn.com, qui propose divers services gratuits sur divers routeurs. Une fois paramétré, vous accéderez aux flux vidéo via cette URL, depuis votre PC, votre tablette ou même de votre smartphone :

http://mondomaine.com:8080

Surveillance vidéo sur smartphone

Pour aller plus loin

Ce tutoriel peut vous servir de base pour installer une caméra de surveillance, mais ne s’y limite pas. En effet, une fois mise en place, nombreuses sont les possibilités qui s’offrent à vous. Vous pouvez par exemple utiliser ceci pour recevoir des notifications sur votre mobile lorsque votre caméra détecte un mouvement. Aussi, un capteur supplémentaire vous renseignerait sur les conditions météorologiques extérieures.

Vous avez peut-être de votre côté réussi à mettre en place votre propre caméra. Dites-nous comment vous l’utilisez, le matériel choisi ou encore ce que vous y avez ajouté comme fonctionnalité supplémentaire. Faites-nous part de votre expérience en commentaires !



Notez cet article

78%
78%
Vos votes
  • Note des lecteurs (13 Votes)
    5.7
Partager

A propos de l'auteur

Raspberry Pi France

3 commentaires

  1. parce que tout le monde n’a pas envie de consacrer sa carte SD pour un system uniquement dédié à la webcam.
    Avec Motion, tu peux installer ta cam tranquillou, et continuer à profiter du reste de ton raspberry et de Raspbian 🙂
    Et puis réinventer la roue… Je pense que motion est amplement plus vieux et éprouvé que motionpie.
    Merci pour ce tuto !

Laissez-nous un commentaire !