Ce projet consiste à mettre en place un système de Vidéo Surveillance performant et à bas coût. Le système doit être dimensionné pour accueillir un minimum de quatre caméras. L’image doit être visible depuis toutes les télés de la maison, les ordinateurs et également depuis un iPhone en 3G. Le système doit détecter et enregistrer les mouvements de chacune des caméras.
Schéma de la solution
Description du matériel
Caméras
Caméra Couleur, zoom optique 6mm, 1/4″ Sharp, 420 TV Line, 36 LED Infrarouge, connectique BNC. Acheté sur eBay (vendeur : Surptime) 27€ (frais de ports compris).
Caméra Couleur, zoom optique 16mm, 1/4″ Sharp, 420 TV Line, 36 LED Infrarouge, connectique BNC. Acheté sur eBay (vendeur : Surprime)
Caméra Couleur dome, zoom optique 6mm, 1/4″ Sharp, 420 TV Line, 24 LED Infrarouge, connectique BNC. Acheté sur eBay (vendeur : Surprime) 17€ (frais de ports compris).
Caméra Couleur « bird », 380 TV Line, 6 LED Infrarouge, connectique RCA. Acheté sur eBay (vendeur : kk-tech) 14€ (frais de ports compris).
Switch Balun vidéo
Ce système de balun vidéo permet de faire passer le signal vidéo des caméras et leur alimentation électrique (12V) sur deux paires d’un câble Ethernet. C’est une sorte de POE (Power Over Ethernet). Cela permet de placer les caméras où l’on veut sans avoir de source de courant à proximité. Ce système coûte 40€ (eBay), il est composé de 1 « switch » qui converti 4 entrés BNC en 4 sorties RJ45 ainsi que 4 modules qui convertissent une entrée RJ45 en une sortie BNC et une sortie alimentation. Ces quatre modules sont à brancher au niveau des caméras.
Carte d’aquisiton PCI
Cette carte permettra de numériser les flux vidéo, elle n’est vraiment pas cher (9€ avec frais de port sur eBay) mais en contre parti, elle n’est capable d’afficher que 2 images par seconde par caméra (2fps).
Mise à jour : depuis la rédaction de ce post, j’ai changé de carte d’acquisition pour une de 8 entrées. Chaque entrée dispose de sa propre puce, ce qui permet d’atteindre 25fps par canal.
Quad Vidéo
Le processeur QuadVidéo reçoit l’image des quatre caméras et les assemble sur une seule sortie divisée en quatre. Ce sera pratique pour visionner toutes les caméras en même temps sur une grande télé. (45€ sur eBay)
Modulateur UHF
Ce modulateur permet de convertir un signal composite en fréquence UHF. Il se branche en cascade à l’arrivée de l’antenne TV. Il suffit de lui paramétrer une fréquence d’émission non utilisée, trouver cette fréquence sur chacune des télés de la maison et l’enregistrer comme chaîne. (25€ sur Pearl)
Ecran 7″
Un écran TFT de 7″ qui servira à afficher la caméra du portail. Il consomme peu donc pourra être tout le temps allumé (80€ sur eBay)
ZoneMinder
ZoneMinder est un logiciel open source de vidéo surveillance développé pour Linux. Il est compatible avec les caméras IP, analogique (via une carte d’acquisition) et USB. Il est capable d’enregistrer une vidéo sur détection de mouvement et dispose de nombreuse fonctionnalité.
- Permets de contrôler à distance les mouvements des caméras (PTZ).
- Utilise une base de données MySQL.
- Analyse et capture des images à l’aide de deux programmes indépendants.
- Gestion de zones (parties de l’image).
- Interface web.
- Affichage des vidéos au format MPEG, MJPEG et des images fixes.
- Création de filtres sur les événements.
- Notification des événements par courriel et SMS.
- Envoi des événements à l’aide du protocole FTP.
- Gestion du protocole X10 pour la domotique.
- Gestion des utilisateurs.
- Interface multilingue.
Interface de ZoneMinder
La page d’accueil résume le nombre d’événements pour chaque caméra. La fonction « Modect » permet d’enregistrer à chaque mouvement. La source « /dev/video0 (0) » nous indique qu’il s’agit bien de caméras analogiques connectées à une carte d’acquisition PCI.
Voici un exemple de l’interface d’une caméra. L’image est diffusée en direct (ici à 4 fps), les derniers événements sont listés en dessous.
Streaming sur iPhone
Le grand intérêt de ZoneMinder est sa grande souplesse de paramétrage. Il est assez simple de récupérer le flux vidéo à partir d’une autre application, simplement par requête HTTP. Pour ce faire, j’utilise l’application iPhone CamViewer.
Configuration de CamViewer
Dans l’onglet « Cam Setup », ajoutez une nouvelle caméra. Le type de caméra est « ZoneMinder Methode 1 ». Dans IP Setting, entrez votre adresse IP publique, le port que vous avez forwardé de votre routeur vers le port 80 de votre PC Zoneminder. Laissez les champs Username et Password vides et dans Cam Num, entrez cette URL :
"/cgi-bin/nph-zms?mode=single&monitor=1&user=YourUserName&pass=YourPassword"
Pensez bien sûr à adapter ce lien en fonction de votre configuration. Monitor est le numéro de la caméra dans ZoneMinder, user et pass sont le login et le mot de passe d’accès. Pour plus de sécurité, vous pouvez créer un login dédié à cette utilisation qui aurait uniquement les droits de streaming.
Si après cela, nous n’avez pas d’image, vérifier les réglages de ZoneMinder. Vous devez utiliser l’authentification « builtin » et « hashed » comme ci-dessous.
Conclusion
Ce projet a demandé pas mal de travail, mais il n’est pas encore fini. Dans d’autres posts, vous verrez comment créer un widget Mac pour voir l’image d’une caméra en direct, comment envoyer en temps réel une photo par mail lorsque quelqu’un sonne au portail et d’autres idées que je n’ai pas encore eu…
Ce projet consiste à mettre en place un système de Vidéo Surveillance performant et à bas coût. Le système doit être dimensionné pour accueillir un minimum de quatre caméras. L’image doit être visible depuis toutes les télés de la maison, les ordinateurs et également dans la rue depuis un iPhone Edge ou 3G. Le système doit détecter et enregistrer les mouvements de chacune des caméras.
Pascal
juillet 5th, 2011 à 12:02