Boite aux lettres connectée

Auteur avatarMathieu | Dernière modification 9/12/2019 par Clementflipo

Boite aux lettres connectée DSC 01202.jpg
Rien de plus énervant que de devoir aller ouvrir sa boite aux lettre toutes les 5 minutes lorsque l'on attend avec impatience son nouveau PC ou le dernier composant permettant de finir un projet. Voici la solution !! Une boite aux lettres connectée vous avertissant sur Twitter lorsque le facteur passe.
Difficulté
⧼wf-propertyvalue-difficulty-Difficile⧽
Durée
10 ⧼wf-propertyvalue-durationtype-heure(s)⧽
Catégories
⧼wf-propertyvalue-area-Mobilier⧽, ⧼wf-propertyvalue-area-Électronique⧽, ⧼wf-propertyvalue-area-Énergie⧽, ⧼wf-propertyvalue-area-Maison⧽
Coût
40 EUR (€)
Autres langues :
français
Licence : Attribution - Pas d'utilisation commerciale + Partage dans les Mêmes Conditions (CC-BY-NC-SA)

Introduction

Rien de plus énervant que de devoir aller ouvrir sa boite aux lettre toutes les 5 minutes lorsque l'on attend avec impatience son nouveau PC ou le dernier composant permettant de finir un projet ! C'est fasse à cette frustration que j'ai eut l'idée de construire une système m'avertissant quant il y a de courrier dans ma boite aux lettres.

Matériaux

Pour l’électronique:

Pour la structure:

  • une blanche de contreplaqué ( environ 400 * 300 * 40 mm)
  • 4 boulons M4 60mm
  • 4 boulons M4 30mm
  • de la peinture
  • une boite de dérivation 80 * 80 mm
  • de l'adhésif double face
  • une plaque de plexiglas ( environ 350 * 170 * 4 mm)
  • des serres flex

Outils

  • un fer à souder
  • une scie
  • tournevis
  • une perceuse
  • pistolet à colle chaude
  • un multimètre
  • une équerre
  • un réglet
  • matériel de protection
  • convertisseur usb série

Étape 1 - Principe de fonctionnement

Le courrier est détecté grâce à des LEDs et une photorésistance. Lorsque le courrier est déposé il tombe sur les LEDs disposées au fond, ce qui modifie la luminosité à l'intérieur, changement qui est détecté par la photorésistance. L'ESP 8266 détecte ainsi la présence de courrier. Il se connecte alors au réseau wifi puis publie un message sur twitter informant du passage du facteur ou du livreur. Le tous fonctionnant de manière autonome grasse à des panneaux solaire et une batterie




Étape 2 - Fabrication de la structure principale

Commencez par découper la plaque de contreplaqué au dimension de votre boite aux lettres.


{{{1}}}


Puis en son centre découpez un carré de 100*100 mm.

{{{1}}}


D'autre par découpez un carré de même dimension dans du plexiglas et puis insérez le dans la plaque en bois. Pour le maintenir en place utilisez de la colle chaude ou de la colle plexiglas.


Enfin percez dans les coins, 4 trous de diamètre 4 puis montez y un boulons de 60mm. Ces derniers servent de pieds pour maintenir la structure en hauteur.


Étape 3 - Mise en place des leds

Pour avoir un système de LEDs suffisamment puissant pour que les variations de luminosité soient détectés je me suis inspiré des panneaux à led DIY utilisé en vidéo (Cf vidéos d'Experimentboy ou DIY Perks)

Pour faire, commencez par découpez une plaque de contreplaqué de 140*140mm. Puis collez 8/10 bandes de leds. Ensuite reliez d'un coté tous les pôles "+" et de l'autre tous les pôles "-". Et ensuite placez un bornier de l'autre coté de la plaque pour l'alimentation.

Pour finir assemblez les LEDs à la structure principale à l'aide de 4 boulons M4 30mm

Étape 4 - Câblage electronique

Comme dis précédemment le système repose sur un ESP8266 qui sera programmer à l'aide de l'IDE arduino. Pour alimenter ce dernier il sera nécessaire d'utiliser un LM1117 couplé à deux condensateurs de 10 μF pour réguler la tension à 3,3V.

On trouve ensuite la photorésistance chargée de détecter les variations de luminosité reliée par l'intermédiaire d'une résistance de 330Ohmes à la broche ADC de l'ESP.

Les LEDs nécessitant un courant supérieur à ce qu'est capable de fournir l'ESP elles sont contrôlées par un l’intermédiaire Mosfet (IRF520 / 530 /540) reliée par l'intermédiaire d'une résistance de 1KOhmes à la broche 7 (GPIO13) de l'ESP.. De plus comme ces dernières doivent être alimentées en 12V et que la batterie utilisée ne fournie que 6V, il est nécessaire d'ajouter un élévateur de tension (boost converter).

Et pour finir on retrouve une RTC DS3231 qui permettre au système d'être toujours à l'heure après un reboot. Cette dernière est reliée à l'ESP par l’intermédiaire d'une liaison i2C disponible sur les broches 13 (GPIO 5) et 14 (GPIO 4)

Une fois tous les composants soudés sur une plaque d'essai installez le tous dans une boite de dérivation et fixez la à la structure principale.

{{{1}}}

Étape 5 - Gestion de l’alimentation

Pour alimenter le système j'ai choisi d'utiliser une batterie au plomb 6V de 4A couplé à deux panneau solaire de 250 mA (valeur théorique loin de la réalité...) branché en parallèle le tous géré par un régulateur de charge.


{{{1}}}


Laisser les LEDs allumées en permanence entraîne une consommation bien trop importante (autours des 250mA) ce qui empêche d’alimenter le circuit sur batterie. La solution est donc de calibrer une fois le système sans courrier puis de faire des mesure à intervalles réguliers pour détecter la présence de courrier.

Ainsi le circuit consomme environ 75mA (non connecté à un réseau wifi), ce qui donne avec la batterie une autonomie d'environ deux jours. D'après mes mesures les panneaux solaires fournissent au maximum 300 mA en plein soleil mais cela chute au alentours de 100 mA avec un ciel nuageux. Ce qui sur une basse de 10h de soleil par jour étend l'autonomie à environ 5 jours...

La solution pour ne pas avoir a recharger le système est donc d'utiliser une RTC et la fonction sleep mode de l'ESP. Cette fonction s’active en reliant la broche 4 (GPIO 16) à la broche 1 (reset) et au niveau du code avec:

ESP.deepSleep(temps en micro seconde);

Elle a pour effet de mettre en "sommeil" l'ESP8266 réduisant sa consommation au alentours de 1mA mais entraîne un reboot de ce dernier à son réveil. C'est ici qu’intervient la RTC, qui permet au systeme de se "repérerer" dans le temps.

Connaissant à peut près les horaire de passage de mon facteur, j'ai décidé que l'ESP resterait allumé entre 10h et 14h et vérifierais sur cette plage horaire la présence de courrier toutes les 5 minutes. Le reste du temps (de 14h à 10h) l'ESP est en sommeil, et le circuit consomme environ 10 mA (consommation du à la RTC). Ce qui permet en théorie au système de fonctionner indéfiniment !!

{{{1}}}

Étape 6 - Utiliser Twitter avec un ESP8266

{{{1}}}


Pour permettre à l'ESP8266 nous allons utiliser la Tweet Library:

https://arduino-tweet.appspot.com/

Ensuite pour pouvoir Tweeter vous allez devoir accorer l’accès au compte Twitter via une clef. Pour l'optenir rendez vous sur cette page:

https://api.twitter.com/oauth/authorize?oauth_nonce=16792561151739267919&oauth_timestamp=1500727564&oauth_consumer_key=oQA2jr32rWowM4SpGB64yQ&oauth_signature_method=HMAC-SHA1&oauth_version=1.0&oauth_token=icTHmQAAAAAAAViGAAABXWpVWAs&oauth_signature=fPFyltGzk5c4Qf5F7sKI3WQ2IkI%3D  


{{{1}}}


Malheureusement la Tweet Library n'est pas nativement compatible avec les ESP car normalement développer pour être utilisée avec un Arduino et un shield ethernet. Pour la rendre compatible il vas vous falloir modifer le header ( Twitter.h)

Pour cela rajoutez ligne 15

#include <ESP8266Wifi.h> 

passez en commentaire les lignes 21 et 23

et remplacez EthernetClient client; ligne 35 par

WifiClient client; 



Étape 7 - Programmation de l'ESP8266

Pour programmer l'ESP82266 on va uiliser l'IDE Arduino. Pour cela, il vous faut tout d’abord ajouter le support de ce type de carte dans l'IDE en ajoutant l'URL suivante dans Fichier>Préférences>URL de gestionnaire de cartes supplémentaires :

http://arduino.esp8266.com/package_esp8266com_index.json,http://arduino.esp8266.com/stable/package_esp8266com_index.json

Puis choisir "Generic ESP8266 Module " dans Outils>types de carte.

Et enfin relier l'ESP au convertisseur USB/série comme indiquer sur le schéma.

Téléchargez et installez ensuite la librairie RTC développée par Makuna pour gérer la DS3231:

https://github.com/Makuna/Rtc 

Puis exécuter le programme DS3231_Simple pour mette à l’heure la RTC.

Et enfin vous pouvez envoyer sur l'ESP8266 le programme suivant pour gérer votre boite aux lettre connectées (Cf algorigramme pour les détails sur sont fonctionnement):

https://drive.google.com/open?id=0B8tCTkPLfNNraHhlbnNaTmx3VlU
{{{1}}}


Étape 8 - Conclusion

Ce tutoriel arrive à son terme, j'espère avoir été clair dans mes explications.  Cependant, si jamais vous ne comprenez pas un point n'hésitez pas à engager la conversation  😉 En tous cas si vous reproduisez ce système ou que vous avez des idées d'amélioration partagées les !!!

{{Idea|Text=J'ai choisi d'utiliser Twitter comme moyen de notification mais il est tout a fait envisageable de charger ce point. Je pense par exemple à une lumière allumé sans fil, ou un système de requête http ou même un couplage avec un projet domotique comme gladys. 😋}}



Notes et références

Hackable magazine numéro 2 et 7

ESP8266:

Tweet Library:

Choix de la batterie:

Commentaires