Table des matières:

Raspberry Pi - Smart Office : 10 étapes (avec photos)
Raspberry Pi - Smart Office : 10 étapes (avec photos)

Vidéo: Raspberry Pi - Smart Office : 10 étapes (avec photos)

Vidéo: Raspberry Pi - Smart Office : 10 étapes (avec photos)
Vidéo: HOW TO - Create a Raspberry Pi Smart Home Kiosk (Home Assistant) 2024, Novembre
Anonim
Raspberry Pi - Bureau intelligent
Raspberry Pi - Bureau intelligent

De quoi parle la candidature ?

OfficeHelperBOT est une application ciblée vers un environnement de bureau intelligent. 2 Raspberry Pi 3 modèle B serait configuré pour cela.

Raspberry Pi 1 serait la machine principale qui recueillera toutes les valeurs des capteurs, publiera les données via MQTT, stockera les données dans la base de données cloud que nous utilisons DynamoDB et exécutera le serveur de portail Web.

Raspberry Pi 2 serait utilisé à la porte. Cela obligerait l'employé à vérifier son identité avant d'être autorisé à entrer dans le bureau. Il existe deux méthodes pour le faire, via une séquence de code PIN et une vérification par code QR. Dans les cas où la vérification pourrait être utilisée à mauvais escient, nous prendrions une photo de la personne ayant échoué à la vérification et stockerions l'image de la personne sur AWS S3 Bucket.

Une page Web serait en mesure de visualiser les photos DHT, la lumière, les mouvements détectés et la vidéo du bureau. La page Web pourrait également contrôler les lumières du bureau et également afficher un flux en direct de vidéosurveillance du bureau.

Il y aurait également un bot Telegram qui permettrait de contrôler les lumières LED dans le bureau, de vérifier la valeur des valeurs des capteurs telles que la température et permettant également à l'employé d'obtenir son image de code QR s'il perd son image de code QR ou a oublié son code PIN. en demandant et en obtenant leur image de code QR depuis AWS S3 Bucket.

Étape 1: Regardons la vue d'ensemble

Regardons l'aperçu !
Regardons l'aperçu !
Regardons l'aperçu !
Regardons l'aperçu !
Regardons l'aperçu !
Regardons l'aperçu !

Schéma de l'architecture du système

Comment les machines communiqueront entre elles

Résultat matériel

Regardez à quoi ressembleraient les deux Raspberry Pi à la fin

Portail Web

Afficher le portail Web créé à l'aide de Python via Flask

Bot de télégramme

Trouver le Bot que nous avons créé

Direct

Utilisation de l'une des PiCam comme vidéosurveillance et diffusion de séquences en direct

Configuration matérielle requise

  • 2x Framboise Pi
  • 2x carte GPIO
  • 1x LDR
  • 1x DHT11
  • 1x capteur de mouvement
  • 4x DEL
  • 7x bouton
  • 2x sonnerie
  • 2x écran LCD
  • 1x webcam

Étape 2: Configuration pour Raspberry Pi 1 (Office)

  1. Créez un dossier pour stocker votre html appelé modèles
  2. Créez un dossier pour stocker vos fichiers css/javascript appelé statique
  3. Créez un dossier pour stocker les fichiers de votre appareil photo appelé appareil photo avec 3 sous-dossiers capture_photos, motion_photos, motion_videos

mkdir ~/ca2

mkdir ~/ca2/modèles

mkdir ~/ca2/statique

mkdir ~/ca2/statique/caméra

mkdir ~/ca2/static/camera/capture_photos

mkdir ~/ca2/static/camera/motion_photos

mkdir ~/ca2/static/camera/motion_Videos

Étape 3: configuration pour Raspberry Pi 2 (porte)

  1. Créez un dossier pour stocker vos fichiers appelé porte
  2. Créez un dossier pour stocker vos images de code QR appelé qr_code

mkdir ~/porte

mkdir ~/door/qr_code

Étape 4: Configurer Telegram Bot

Configurer Telegram Bot
Configurer Telegram Bot
Configurer Telegram Bot
Configurer Telegram Bot
Configurer Telegram Bot
Configurer Telegram Bot
Configurer Telegram Bot
Configurer Telegram Bot
  1. Télégramme ouvert
  2. Trouver "BotFather"
  3. Tapez "/début"
  4. Tapez "/nouveaubot"
  5. Suivez les instructions, nom du bot, nom d'utilisateur du bot, notez le jeton d'authentification du bot

Étape 5: Configurer DynamoDB

Configurer DynamoDB
Configurer DynamoDB
Configurer DynamoDB
Configurer DynamoDB
Configurer DynamoDB
Configurer DynamoDB
  1. Inscrivez-vous à AWS
  2. Rechercher DynamoDB dans AWS Service
  3. Cliquez sur "Créer un tableau"
  4. Remplir le nom du tableau
  5. Définissez la clé de partition comme 'id' (String) et ajoutez la clé de tri comme 'datetime' (String)
  6. Faites-le pour les 4 tables, dht, lumières, galerie, employé

Aperçu des 4 Tables

Étape 6: configurer le compartiment AWS S3

Configurer le compartiment AWS S3
Configurer le compartiment AWS S3
Configurer le compartiment AWS S3
Configurer le compartiment AWS S3
Configurer le compartiment AWS S3
Configurer le compartiment AWS S3
  1. Rechercher AWS S3
  2. Cliquez sur "Créer un bucket"
  3. Suivez les règles pour nommer le bucket
  4. Suivez les captures d'écran
  5. Créer un compartiment

Comment puis-je même télécharger dans le compartiment S3 ?

Nous n'avons pas de portail d'administration, nous importerions donc manuellement l'image du code QR via l'interface utilisateur graphique AWS. Suivez les captures d'écran pour créer le bucket. L'extrait de code est la logique requise pour télécharger l'image sur S3 Bucket

Étape 7: configurer AWS SNS

  1. Rechercher AWS SNS
  2. Suivre la balise de sujet
  3. Créer un nouveau sujet
  4. Définir le nom du sujet et le nom d'affichage
  5. Modifier la politique pour permettre à tout le monde de publier
  6. Abonnez-vous au sujet créé
  7. Définissez un e-mail dans le champ du point de terminaison pour recevoir un e-mail lorsque la valeur atteint une certaine valeur

Étape 8: Création d'une règle

  1. Cliquez sur "Créer une règle"
  2. Écrivez le nom et une brève description
  3. Choisissez la dernière version de SQL pour envoyer l'intégralité du message MQTT
  4. Le moteur de règles utilise le filtre de rubrique pour déterminer les règles à déclencher lorsque le message MQTT est reçu
  5. Cliquez sur "Ajouter une action"
  6. Sélectionnez l'envoi d'un message via la notification push SNS

Étape 9: Création de l'interface Web

Créez ces nouveaux fichiers html appelés

  • diriger
  • connexion
  • journaux
  • dht
  • léger
  • Galerie
  • mouvement
  • LED

Copiez et collez le fichier Google Drive dans le code HTML respectif.

drive.google.com/file/d/1zd-x21G7P5JeZyPGZp1mdUJsfjoclYJ_/view?usp=sharing

Étape 10: Scripts principaux

Il y a 3 scripts principaux

  • server.py - Créer un portail Web
  • working.py - Logique pour Raspberry Pi 1 (Office)
  • door.py Logic pour Raspberry Pi 2 (Porte)

Nous exécutons simplement les 3 codes pour obtenir le résultat que nous voulons

Nous pouvons l'obtenir à partir de Google Drive sous le Main.zip

drive.google.com/open?id=1xZRjqvFi7Ntna9_KzLzhroyEs8Wryp7g

Conseillé: