Notre verrou connecté


1 - Notre problème : avec l'arrivée d'un nouveau membre chez Innowide, Axel, nous n'avions plus suffisamment de clés pour tout le monde. Or pour des raisons administratives, il ne nous était pas possible de demander une clé supplémentaire...


Alors que certains se seraient peut être arrangé au niveau des horaires pour que personne ne soit laissé à la porte, chez Innowide nous avons profité de ce problème pour montrer la force de notre fonctionnement agile-sprint : En moins d'une semaine, nous avions trouvé une idée, et prototypé une solution permettant à tout le monde (même le stagiaire !) d'ouvrir et fermer la porte du lab à leur guise, directement depuis leur téléphone !


Dans cet article, nous allons vous expliquer les différentes étapes de ce projet, les défis que nous avons dû relever, ainsi que la méthodologie Innowide, de l'idéation au prototypage.


2- D'abord, un point sur notre idée : inspirés de la domotique traditionelle (Alexa, Google Home, maisons connectées...), nous avons pensé à réaliser un verrou connecté "fait maison". Finalement, vu de l'intérieur, une serrure n'est rien de plus qu'un axe qui tourne ! Nous avons donc pensé qu'un moteur serait suffisant pour l'ouvrir ! Pour la connexion avec l'exterieur, nous avons tout de suite pensé à utiliser une carte capable de générer un point d'accès WiFi, sur lequel se connecter avec son téléphone.


3 - De l'idée à la conception en 3 jours :

  • La première étape pour réaliser notre verrou connecté était d'avoir un moteur ainsi qu'une ESP 32, une série de microcontrôleurs sur puce économiques intégrant Wi-Fi et Bluetooth double mode. Cette ESP nous permet donc d'intégrer la gestion du wifi. Nous devions ensuite trouver un moyen d'installer le moteur sur la serrure, plusieurs options étaient possibles mais la plus intéressante était de placer le moteur dans l'axe afin de limiter la tension sur l'axe de la serrure et la friction que cela pouvait créer. L'axe du moteur doit être fixé à celui de la serrure via un couplage mécanique, ou coupleur. Il fallait ensuite vérifier si le couple du moteur suffit à actionner la serrure. Pour contrôler notre moteur, nous avons utilisé le microcontrôleur A4988, choisit pour l'extrême simplicité du montage Carte - Microcontroleur - Moteur. Vous trouverez au lien suivant un article très complet détaillant le fonctionnement de ce microcontrôleur, et comment l'utiliser pour piloter un moteur pas à pas : https://how2electronics.com/control-stepper-motor-with-a4988-driver-arduino/ Les test ont, comme on peut s'en douter, été tout à fait concluants (il suffit d'un tour et demi du moteur pour ouvrir/fermer la serrure), et on a donc pû passer à la suite du projet !


  • La seconde étape : Comment aligner notre moteur dans l'axe de manière stable ? Nous nous sommes beaucoup inspiré du design de notre machine CNC pour le fonctionnement de notre verrou. En effet, elle utilise un moteur assez similaire, et celui ci se trouve aussi dans le prolongement de l'axe de rotation... S'en inspirer nous est apparut tout à fait naturellement (c'est aussi ça le prototypage agile ! Il ne sert à rien de réinventer la roue pour chaque projet lors qu'il existe déjà des solutions parfaitement fonctionnelles). Un rapide passage sur Fusion 360 (et quelques erreurs de dimensions plus tard), nous avons donné naissance à un support pour le moteur : Le moteur vient se fixer à l'arrière de ce support (via les 4 vis visibles sur la photo), et une ouverture a été prévue pour pouvoir accéder au couplage mécanique reliant l'axe du moteur à l'axe de la serrure. Cette pièce a été imprimée en 3D, et fixée sur le moteur sans encombres.






  • La troisième étape : fixer le moteur à la serrure de manière stable : L'idée de cette pièce est très simple : des trous circulaires permettant de faire passer poignée, serrure et attaches de la poignée, et de quoi faire passer les vis de fixation du support.



L'ensemble , une fois monté sur la serrure, ressemble à la chose suivante :



On voit les deux pièces imprimées en 3D qui entourent la serrure, ainsi que le couplage mécanique entre les axes du moteur et de la serrure. Ce prototype, extrêmement basique (on voit bien que de nombreuses pièces sont encore maintenues ensemble de manière non-définitive), permet déjà d'ouvrir et de fermer la porte en commandant le moteur.


  • La quatrième étape : configurer l'ESP 32, afin de communiquer avec, via téléphone. Les cartes ESP32 ont la spécificité de pouvoir se comporter en tant que point d'accès WiFi. Nous avons donc configuré notre carte pour générer un réseau masqué, dont nous paramétrons le nom et le mot de passe, ainsi qu'une page web (à une adresse IP spécifique, que nous avons aussi déterminé). Sur cette page, deux boutons tout simples : "Ouvrir la porte" et "Fermer la porte", faisant tourner le moteur d'un tour et demi, soit dans un sens soit dans l'autre !

A ce stade, notre prototype fonctionnait très bien ! Nous étions capables, en nous connectant au bon WiFi et à l'adresse spécifiée, d'ouvrir et fermer la serrure depuis nos téléphones ! Par contre, nous avons rencontré un problème inattendu : lorsque le moteur est allumé, il génère un couple (une force de rotation) résistant sur la serrure, ce qui pose des problèmes pour tourner la clé normalement (cela pourrait générer de la friction dans la serrure, et l'endommager). Il allait donc falloir trouver un moyen de n'allumer le moteur que lorsque celui ci ouvre/ferme la porte. Bonne nouvelle, le contrôleur que nous avons utilisé (a4988) prévoit cette commande, et il nous a suffit de rajouter un câblage pour contrôler l'allumage du moteur, et de fixer son état par défaut à "éteint".


Notre verrou connecté terminé :