Un intrus dans ma résidence? – vidéo surveillance (ESP32cam) #1

Cette préintroduction est pour vous chers lecteurs. Cet article est très différent de ce que vous avez pu lire sur mon blog précédemment. Celui-ci retrace une expérience que j’ai vécue. Une expérience intrigante qui a soulevé en moi des questions auxquelles j’ai tenté de répondre ici notamment grâce à la carte ESP32cam. Si vous êtes nouveau sur ce blog et que vous êtes plus intéressé par l’aspect technique d’un projet, alors je ne saurais que vous conseiller les quelques projets que j’ai déjà réalisés et qui suivent plus une trame technique que celui-ci.

Projet d’un distributeur d’eau grâce à un écran tactile Nextion

Projet de contrôleur de LED WIFI avec l’ESP8266

Bien qu’il traite d’un projet technique autour de l’ESP32cam, j’ai tenu à introduire un contexte plus poussé. Chose que je n’ai pas l’habitude de faire. De ce fait, je vous prie d’être indulgent sur le style d’écriture et vous invite à lire celui-ci comme une histoire plutôt qu’un tutoriel. Cet article, du fait de sa longueur, sera scindé en 2 parties distinctes.

Dans cette première partie, nous nous concentrerons sur le problème soulevé pour ensuite dégager un cahier des charges et ainsi préparer la seconde partie plus classique, qui traitera du développement de la solution technique. C’est dans cette partie que nous tenterons de répondre à la problématique précédemment soulevée notamment grâce à l’ESP32cam.

Mon histoire

Je suis actuellement étudiant et je réside dans un studio au coeur d’une résidence habituellement calme et peuplé de personnes dont la moyenne d’âge avoisine les 50 ans. J’écris « habituellement calme » puisqu’il y a quelques semaines, j’ai été réveillé en sursaut en plein milieu de la nuit par des coups qui frappaient près de la porte d’entrée de mon appartement.

Quand je dis « coups », je ne parle pas de petits coups qui auraient pu réveiller quelqu’un à moitié endormi ou cherchant le sommeil. Je parle de coups d’une puissance tels qu’ils m’ont sorti d’un profond sommeil en sursaut, me demandant si quelqu’un ne tentait pas de casser ma porte ou mon mur ! Après une brève analyse, j’ai su qu’ils n’étaient pas dans ma porte ou mon mur, mais à mon étage seulement. Peut-être des personnes revenant de soirée peu discrète me suis-je dit. Il semblait cependant difficile de produire un tel bruit sans le vouloir.

Le matin suivant, j’ai cru à un rêve tellement l’évènement était peu commun. Quelle ne fut pas ma surprise 2 semaines plus tard quand je fus à nouveau réveillé par ces mêmes bruits. 3 coups, comme la dernière fois, puis plus rien… Cet événement à cette fois-ci réveillé une bonne partie de la résidence. J’ai d’ailleurs entendu plusieurs personnes se diriger vers le couloir pour tenter de découvrir de quoi il s’agissait. Leur recherche n’a apparemment pas été très convaincante puisque personne n’a trouvé l’entité ayant commis cet acte.

Spoiler: Ce n’est pas mon lit!

ANAlyse

Qu’est-ce qui peut faire ces coups ? Un humain ? Un animal ? Un fantôme ?

J’ai tourné la situation dans tous les sens et je n’ai toujours aucune réponse. Pour résoudre ce mystère, il n’y a pas 30 000 solutions ! Il faut tenter de capturer un audio ou une vidéo « la chose »… Il me faut un truc pas cher et qui répond exactement à mon besoin. Vu que je suis un peu bricoleur sur les bords, j’ai tout de suite imaginé des solutions DIY. Pour exprimer ces idées, j’ai décidé de réaliser un plan au préalable qui me permettra peut-être de résoudre ce mystère articulé autour de la problématique suivante : Découvrir les bruits dans ma résidence?

la plan

Pour structurer ma réflexion autour de cette problématique, j’ai réalisé une sorte de mind map. Celle-ci est construite au fil de mes idées pour répondre à la problématique qui est placée au centre. Beaucoup d’idées que j’ai eues ne peuvent pas aboutir à cause de manque de matériel. J’ai en effet décidé de ne pas faire d’achats en plus pour réaliser ce projet annexe… C’est à la fois le challenge et l’économie faite qui m’ont poussé à prendre cette décision!

Vous trouverez ci-dessous le plan complet que j’ai réalisé, mais nous allons détailler chaque branche:

image ou audio ?

Dans cette section, nous allons donc partir du problème pour en dégager une sorte de cahier des charges.

Pour découvrir qui ou quoi fait ces bruits, nous devons au choix prendre des sons ou capturer des images. Il est également primordial de les enregistrer d’une manière ou d’une autre pour pouvoir les consulter ensuite.

La branche « enregistrement audio » se termine assez vite puisque je n’ai aucun matériel capable de faire une telle chose. Nous devons donc nous concentrer sur la capture d’images vidéos/photos qui se fera grâce à un ESP32cam.

J’ai récemment acheté ce module et j’attendais une bonne raison pour l’utiliser. Nous reviendrons au début de la partie suivante sur l’ESP32cam plus particulièrement sur sa spécificité par rapport à un ESP32 classique.

L'alimentation

La question suivante est : Faut-il que le projet soit sur batterie ?

L’un des éléments clés pour répondre à cette question est: doit-on enregistrer en continue ou non ? Selon moi, il n’est pas nécessaire de stocker plusieurs heures d’images. Nous voulons au contraire capturer un évènement en particulier. Dans ce projet, l’autonomie ne devrait pas être une contrainte, bien au contraire. C’est pourquoi j’ai décidé de ne pas faire fonctionner le projet sur batterie.

Pour revenir à l’enregistrement en continue, nous aurions également dû trouver une plateforme de diffusion (serveur local, serveur de gestion sur raspberry) et mettre en place un système d’alerte. Ce système d’alerte, avec le matériel que j’ai (très limité), aurait obligatoirement été de la détection vidéo, ce qui est difficile à mettre en place et donc très chronophage… L’enregistrement non continue quant à lui reposera sur des capteurs qui, selon ce qu’ils détectent, déclencherons un enregistrement.

Détection de présence

 

Pour détecter une présence, j’ai décidé de m’appuyer sur 3 actionneurs physiques:

  • L’heure
  • La présence de lumière (dans le couloir)
  • La détection de mouvement

Je souhaite enregistrer les mouvements suspects dans la résidence seulement pendant la nuit. Entre 22h30 et 5h30 du matin.

Je compte également sur les détecteurs de mouvement qui allument les lumières du couloir pour éclairer le sujet. Ils permettront également d’indiquer à l’ESP32cam qu’une personne circule dans le couloir.

Un détecteur de mouvement confirmera qu’une personne se déplace bien devant l’objectif de la caméra. Celui-ci déclenchera la prise d’une image qui sera immédiatement enregistrée.

Nous n’aurons ensuite plus qu’à prendre une photo pour capturer le sujet et espérer identifier le fauteur de trouble.

Ces conditions m’ont permises de distinguer 4 mode de fonctionnement. Le premier mode est le mode « sommeil », qui prendra effet durant la journée ou il n’est pas nécessaire de surveiller le couloir.

Pendant la nuit, le l’ESP32 passera en mode « éveil ». Comme son nom l’indique, tous ses sens seront en éveil, il se préparera à détecter une présence dans le couloir.

Si les lumières du couloir s’allument, une potentielle présence est détectée, le module passera en mode « alerte ». Il va ainsi se préparer à capturer l’image d’un individus en mouvement circulant dans le couloir.

Enfin, si son détecteur de mouvement, en plus de la lumière du couloir détecte que quelque chose se déplace devant l’objectif, alors il passera en mode « Action ». En mode « Action », l’ESP32cam prendra une photo qu’il enregistrera dans sa mémoire.

Consultation des images

Il est maintenant temps de définir la manière dont l’utilisateur pourra consulter les photos prises. J’ai précédemment écrit qu’un certain nombre d’entre elles seront enregistrés dans la mémoire interne de l’ESP32. Dans l’idéal, il faudrait pouvoir les consulter par ordre chronologique, comme une galerie d’image.

L’ESP32 embarque deux technologies de communication sans fil, le Bluetooth et le Wifi. Utiliser le Bluetooth comme moyen de diffusion pour les images me semble personnellement compliqué. En effet, cela implique la création d’une application pour communiquer avec l’appareil et la maîtrise des librairies arduino relatives au Bluetooth (choses que je ne sais pas faire). J’ai donc opté pour le Wifi.

Bien qu’il soit possible de passer par l’intermédiaire d’un serveur d’IOT type HomeAssistant (sur une raspberry par exemple), j’ai préféré une démarche plus simple. Il faut créer un serveur web embarqué qui sera accessible depuis l’adresse IP de l’ESP32, si tant est que celui-ci soit connecté au réseau local. Ce serveur web pourra accéder à la mémoire interne de l’ESP32 et diffusera ainsi les photos qu’il aura enregistrées. Cela ne me semble pas très compliqué au vu des nombreuses librairies arduino qu’il existe et des nombreux tutos traitant de sujets similaires.

conslucion

Dans cette première partie, nous avons posé le problème et réalisé un plan d’attaque. Dans la seconde, nous allons nous concentrer sur la partie technique et réaliser le dispositif de vidéo surveillance. Comme d’habitude, nous nous intéresserons aussi bien au câblage qu’à la programmation. Nous verrons qu’il est simple aujourd’hui de réaliser des projets avec l’ESP32cam notamment grâce aux nombreux autres créateurs qui partagent les leurs sur internet.

Nous tenterons enfin de capturer des images qui, je l’espère, permettront de résoudre le problème. Il n’y a aucune garantie de succès, mais j’ai confiance!

NEwsletter

  • Des conseils DIY
  • Des présentations de projet inédit
  • Garantie no spam!