Table des matières:
- Étape 1: Fournitures
- Étape 2: Câblage
- Étape 3: Configuration des éléments
- Étape 4: Coder et exécuter
- Étape 5: Tester
- Étape 6: Montage
Vidéo: Notification de porte Raspberry Pi : 6 étapes (avec photos)
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:09
Vous êtes-vous déjà demandé si ou quand les gens accèdent aux portes ? Vous voulez un moyen discret, bon marché et rapide de surveiller le mouvement de la porte… et peut-être un petit projet ? Cherchez pas plus loin! Ce dispositif simpliste suivra les vibrations émises par les portes en mouvement et rendra compte à l'utilisateur avec un e-mail à une adresse e-mail spécifiée.
Ce projet vous donnera un peu de pratique avec Flask, Raspberry Pis, capteurs GPIO et l'API Mandrill ! Non seulement c'est amusant à construire, mais il a beaucoup d'utilité. Attention aux intrus…
Étape 1: Fournitures
Vous envisagez toujours de construire cet engin ? Voici ce dont vous aurez besoin:
- Framboise Pi 3
- Carte Micro SD
- 3 fils femelle-femelle
- 1 capteur de vibrations
- Une banque de puissance
- Bandes de commande
Si vous envisagez de construire ce projet pour plusieurs portes, multipliez chacune des fournitures par le nombre d'appareils dont vous aurez besoin.
Si vous êtes en train de construire/tester cet appareil, il n'est pas nécessaire d'avoir les éléments suivants… cependant, ce serait certainement très utile.
- Un écran d'ordinateur
- Un clavier USB
- Kit de chargement micro USB
Étape 2: Câblage
Bien que le Raspberry Pi soit un appareil astucieux fourni avec de nombreux capteurs et périphériques différents, nous devons ajouter le capteur principal au câblage du Pi afin qu'il puisse effectuer les mesures dont nous avons besoin. Le capteur principal utilisé dans ce projet peut être vu dans l'image ci-dessus - c'est un capteur de vibration à haute sensibilité. Bien que nous puissions utiliser une planche à pain ou un autre dispositif de montage pour placer ce capteur et faire passer nos fils, nous l'avons simplement connecté via des fils femelle à femelle directement aux broches de l'appareil Raspberry Pi.
Un schéma de câblage peut être trouvé ci-dessus (provenant de https://www.piddlerintheroot.com/vibration-sensor/). Connectez simplement tous les fils comme indiqué sur cette image et votre capteur de vibrations devrait être prêt à fonctionner. Notez également que vous aurez éventuellement besoin d'une batterie pour ce projet, mais si vous testez, il est probablement utile de brancher l'appareil sur une prise murale.
Étape 3: Configuration des éléments
Félicitations! Vous êtes arrivé jusqu'ici. Continuons!
Nous allons maintenant commencer à travailler directement avec le Pi. Tout ce qui suit peut être effectué sur l'appareil avec un clavier et un moniteur (ou via SSH si vous êtes à l'aise).
Il y a beaucoup de configuration préliminaire pour faire fonctionner n'importe quel capteur GPIO avec un Pi et un flacon. La patience est une vertue. Il existe de nombreuses bibliothèques Python que vous devrez d'abord installer. Cela peut être fait avec Pip, un gestionnaire de bibliothèque/paquet pour Python. Pour l'utiliser, tapez `pip install` Pour nommer certaines des bibliothèques dont vous aurez besoin:
- demandes
- RPi. GPIO
- ballon
- flask_restful
- fiole_wtf
- wtforms
- mandrill
Vous voudrez peut-être prendre un café pendant que vous attendez leur installation – cela peut prendre un peu de temps.
Maintenant que toutes vos bibliothèques sont installées, vous êtes prêt à démarrer votre projet Flask. Flask est un framework léger qui sert des pages à partir de l'appareil sur lequel il s'exécute. Dans ce cas, le Raspberry Pi devient un serveur. Plutôt chouette, hein ? Vous pouvez apprendre à configurer une application Flask très simple ici. Veuillez le faire avant d'essayer l'une des instructions suivantes.
Étape 4: Coder et exécuter
Une fois que vous avez terminé, vous êtes prêt à commencer à créer les fichiers du projet. J'ai inclus tous les fichiers dont vous aurez besoin ci-dessous – vous devriez probablement réécrire le code, cependant, et pas simplement copier les fichiers (VOUS EN APPRENDREZ PLUS !).
Voici à quoi devraient ressembler les organisations d'annuaire:
+-- iotapp | +-- dossier d'application | +-- modèles | +-- index.html | +-- _init_.py | +-- form.py | +-- mcemail.py | +-- routes.py | +-- iotapp.py | +-- vibes.py
Placez tous ces fichiers dans le bon ordre et vous devriez pouvoir lancer votre projet en un rien de temps. Afin d'exécuter ensuite votre serveur Flask, vous devez accéder au répertoire racine. Vous devez alors taper:
$ export FLASK_APP=iotapp.py
$ python -m flask run --host 0.0.0.0
Avec cela, vous devriez recevoir un message indiquant que votre serveur est en cours d'exécution et que vous devriez pouvoir servir la page de l'appareil à un autre appareil sur le réseau.
Ce serait maintenant le bon moment pour parcourir vos fichiers et vraiment essayer d'avoir un aperçu de ce que fait le code. Bien sûr, aucun code n'est gravé dans le marbre… tout peut être mis à jour/modifié pour répondre aux besoins spécifiques du projet. Par exemple, dès maintenant, lorsque l'appareil effectue un POST à la réception d'une entrée du capteur de vibration, il envoie l'horodatage du moment où l'entrée s'est produite. Cependant, le serveur n'enregistre pas ces données. Cela pourrait être fait si l'utilisateur préférait conserver les informations historiques et voulait les montrer quelque part.
Une chose que vous remarquerez probablement est que LE CODE N'EST PAS COMPLET. Ce projet utilise une API externe pour envoyer des e-mails de notification en cas de vibration (ouverture de porte). Pour configurer cela, vous devrez créer un compte Mandrill et créer une clé API.
Une fois que vous avez vérifié votre domaine d'envoi et que vous avez une clé API, vous pouvez placer votre clé dans le fichier `mcemail.py` (où est présent) et ajuster les informations d'envoi (soit en changeant le paramètre par défaut dans le même fichier, soit en passant dans un autre e-mail dans le fichier `routes.py`. Si vous souhaitez plus de documentation sur Mandrill et comment l'utiliser, vous pouvez la trouver ici.
Étape 5: Tester
Avant de monter l'appareil dans son emplacement permanent, c'est probablement une bonne idée de tester tout ce qu'il fait. Voici comment vous exécutez les choses.
L'appareil exécute en fait deux programmes: `vibes.py` et le serveur Flask. Le premier doit être exécuté d'abord en arrière-plan, puis le serveur Flask peut être exécuté. `vibes.py` est simplement en train de poster sur le serveur et le serveur interprète la requête POST.
$ python vibes.py &
$ python -m flask run --host 0.0.0.0
Vous devriez alors pouvoir accéder à l'URI/IP correct et définir l'adresse e-mail à laquelle vous souhaitez envoyer toutes vos notifications. Vous devez appuyer sur le capteur de vibration pour essayer d'envoyer des e-mails de test et vous assurer que le projet fonctionne.
Tout a l'air bien? D'accord, nous sommes prêts pour les affaires !
Étape 6: Montage
Le montage de l'appareil est assez explicite. En gros, il suffit de s'assurer que l'appareil est connecté au pack batterie et d'utiliser des barrettes de commande pour fixer l'appareil à la porte.
Remarque: l'appareil doit être positionné avec le capteur de vibration perpendiculaire à la porte pour que le capteur capte le mouvement de la porte
Une fois cette opération terminée, vous devriez pouvoir vous connecter en SSH à l'appareil, exécuter les programmes mentionnés à l'étape précédente et attendre les intrus !
Pour des points supplémentaires, essayez de cacher les fils/l'appareil afin que les intrus ne se méfient pas de votre appareil intelligent !… ou ne le placez tout simplement pas sur une porte vitrée. \_(ツ)_/¯
Conseillé:
Sonnette de porte déclenchée par tapis de porte personnalisé. : 6 étapes
Sonnette de porte déclenchée par tapis de porte personnalisé. : Bonjour ! Je m'appelle Justin, je suis un junior au lycée, et ce Instructable vous montrera comment faire une sonnette qui se déclenche lorsque quelqu'un marche sur votre paillasson et peut être n'importe quel air ou chanson que vous voulez ! Puisque le paillasson déclenche la porte
Serrure de porte électrique avec lecteur d'empreintes digitales et lecteur RFID : 11 étapes (avec photos)
Serrure de porte électrique avec lecteur d'empreintes digitales et lecteur RFID : le projet a été conçu pour éviter la nécessité d'utiliser des clés. Pour atteindre notre objectif, nous avons utilisé un capteur optique d'empreintes digitales et un Arduino. Cependant, il y a des individus qui ont une empreinte digitale illisible et le capteur ne la reconnaîtra pas. Puis penser à un
Traqueur de voiture GPS avec notification SMS et téléchargement de données Thingspeak, basé sur Arduino, domotique : 5 étapes (avec photos)
Traqueur de voiture GPS avec notification SMS et téléchargement de données Thingspeak, basé sur Arduino, domotique : j'ai créé ce traqueur GPS l'année dernière et comme il fonctionne bien, je le publie maintenant sur Instructable. Il est connecté à la prise accessoires dans mon coffre. Le traceur GPS télécharge la position de la voiture, la vitesse, la direction et la température mesurée via un mobile de données
Notification de boîte aux lettres et de porte de garage : 5 étapes (avec photos)
Boîte aux lettres et notificateur de porte de garage : ce Instructables est basé sur Johan Moberg Mailbox Notifier. Par rapport à ce projet, j'ai fait quelques changements : loin de chez moi se trouve non seulement la boîte aux lettres, mais aussi le garage. Ils sont dans un endroit proche de la route et la maison est située à environ 5
Alerte laveuse-sécheuse Arduino - Notification push au téléphone avec Blynk : 5 étapes (avec photos)
Alerte laveuse-sécheuse Arduino - Notification push au téléphone avec Blynk : Notre machine à laver est dans le garage et nous n'entendons pas les bips pour indiquer que le lavage est terminé. Je voulais trouver un moyen d'être averti, où que nous soyons dans la maison, lorsque le cycle était terminé. J'ai bricolé avec Arduino, ESP8266 WiFi