Taula de continguts:

Raspberry Pi - Smart Office: 10 passos (amb imatges)
Raspberry Pi - Smart Office: 10 passos (amb imatges)

Vídeo: Raspberry Pi - Smart Office: 10 passos (amb imatges)

Vídeo: Raspberry Pi - Smart Office: 10 passos (amb imatges)
Vídeo: M1 iPad Pro Setup 2024, Juliol
Anonim
Raspberry Pi: Smart Office
Raspberry Pi: Smart Office

De què tracta l'aplicació?

OfficeHelperBOT és una aplicació dirigida a un entorn d’oficina intel·ligent. 2 Raspberry Pi 3 Model B estaria configurat per a això.

Raspberry Pi 1 seria la màquina principal que prendrà tots els valors dels sensors, publicant les dades mitjançant MQTT, emmagatzemant dades a la base de dades al núvol que estem utilitzant DynamoDB i executant el servidor del portal web.

Raspberry Pi 2 s’utilitzaria a la porta. Es requeriria que l’empleat verifiqués la seva identitat abans que se li permeti l’accés a l’oficina. Hi ha dos mètodes per fer-ho mitjançant una seqüència de codis pin i una verificació de codi QR. En el cas que es pugui fer un mal ús de la verificació, faríem una foto de qualsevol persona que hagi fallat en la verificació i desaríem la imatge de la persona a AWS S3 Bucket.

Una pàgina web podrà veure DHT, llum, fotos detectades per moviment i vídeo de l'oficina. La pàgina web també seria capaç de controlar els llums de l’oficina i també veure una transmissió en directe de CCTV de l’oficina.

També hi hauria un bot de Telegram que permetrà controlar les llums LED de l’oficina, comprovar el valor dels valors del sensor, com ara la temperatura i també permetre als empleats obtenir la seva imatge de codi QR si perden la seva imatge de codi QR o s’obliden del seu pin sol·licitant i obtenint la seva imatge de codi QR a AWS S3 Bucket.

Pas 1: Vegem la visió general

Vegem la visió general!
Vegem la visió general!
Vegem la visió general!
Vegem la visió general!
Vegem la visió general!
Vegem la visió general!

Diagrama d’Arquitectura de Sistemes

Com es comunicaran les màquines entre elles

Resultat de maquinari

Mireu com quedarien els dos Raspberry Pi al final

Portal web

Vegeu el portal web que es fa mitjançant Python mitjançant Flask

Telegram Bot

Trobant el bot que hem creat

Reproducció en directe

Utilitzar 1 de la PiCam com a circuit tancat de televisió i emetre imatges en directe

Requisit de maquinari

  • 2x Raspberry Pi
  • 2x Junta GPIO
  • 1x LDR
  • 1x DHT11
  • 1x sensor de moviment
  • 4x LED
  • Botó 7x
  • 2x Buzzer
  • Pantalla LCD 2x
  • 1 càmera web

Pas 2: configureu el Raspberry Pi 1 (Office)

  1. Creeu una carpeta per emmagatzemar les vostres plantilles html
  2. Creeu una carpeta per emmagatzemar els fitxers css / javascript anomenats estàtics
  3. Creeu una carpeta per emmagatzemar els fitxers de la càmera anomenada càmera amb 3 subcarpetes capture_photos, motion_photos, motion_videos

mkdir ~ / ca2

mkdir ~ / ca2 / templates

mkdir ~ / ca2 / static

mkdir ~ / ca2 / static / camera

mkdir ~ / ca2 / static / camera / capture_photos

mkdir ~ / ca2 / static / camera / motion_photos

mkdir ~ / ca2 / static / camera / motion_Videos

Pas 3: configureu el Raspberry Pi 2 (porta)

  1. Creeu una carpeta per emmagatzemar els vostres fitxers anomenada porta
  2. Creeu una carpeta per emmagatzemar les imatges de QR Code anomenades qr_code

mkdir ~ / door

mkdir ~ / door / qr_code

Pas 4: configureu Telegram Bot

Configureu Telegram Bot
Configureu Telegram Bot
Configureu Telegram Bot
Configureu Telegram Bot
Configureu Telegram Bot
Configureu Telegram Bot
Configureu Telegram Bot
Configureu Telegram Bot
  1. Obre Telegram
  2. Cerca "BotFather"
  3. Escriviu "/ start"
  4. Escriviu "/ newbot"
  5. Seguiu les instruccions, nom del bot, nom d'usuari del bot, anoteu el testimoni d'autenticació del bot

Pas 5: configureu DynamoDB

Configureu DynamoDB
Configureu DynamoDB
Configureu DynamoDB
Configureu DynamoDB
Configureu DynamoDB
Configureu DynamoDB
  1. Inscriviu-vos a AWS
  2. Cerqueu DynamoDB al servei AWS
  3. Feu clic a "Crea una taula"
  4. Empleneu el nom de la taula
  5. Estableix la clau de partició com a "id" (cadena) i Afegeix una clau d'ordenació com a "data i hora" (cadena)
  6. Feu-ho per les 4 taules, dht, llums, galeria, empleat

Vista prèvia de les 4 taules

Pas 6: configureu AWS S3 Bucket

Configureu AWS S3 Bucket
Configureu AWS S3 Bucket
Configureu AWS S3 Bucket
Configureu AWS S3 Bucket
Configureu AWS S3 Bucket
Configureu AWS S3 Bucket
  1. Cerqueu AWS S3
  2. Feu clic a "Crea dipòsit"
  3. Seguiu les regles per anomenar la galleda
  4. Seguiu les captures de pantalla
  5. Crea un dipòsit

Com puc fins i tot penjar al dipòsit S3?

No tenim un portal d'administració, de manera que importaríem manualment la imatge del codi QR mitjançant la interfície gràfica d'usuari d'AWS. Seguiu les captures de pantalla per crear el dipòsit. El fragment del codi és la lògica necessària per carregar la imatge a S3 Bucket

Pas 7: configureu AWS SNS

  1. Cerqueu AWS SNS
  2. Segueix l'etiqueta del tema
  3. Crea un tema nou
  4. Definiu el nom del tema i el nom de visualització
  5. Editeu la política per permetre que tothom pugui publicar
  6. Subscriviu-vos al tema que es crea
  7. Definiu el correu electrònic al camp del punt final per rebre missatges de correu electrònic quan el valor assoleixi un valor determinat

Pas 8: creació d'una regla

  1. Feu clic a "Crea una regla"
  2. Escriviu el nom i la breu descripció
  3. Trieu la versió SQL més recent per enviar tot el missatge MQTT
  4. El motor de regles utilitza el filtre de tema per determinar quines regles cal activar quan es rep el missatge MQTT
  5. Feu clic a "Afegeix una acció"
  6. Seleccioneu l'enviament d'un missatge mitjançant la notificació push SNS

Pas 9: Creació d'una interfície web

Creeu aquests fitxers HTML nous anomenats

  • cap
  • iniciar Sessió
  • registres
  • dht
  • lleuger
  • galeria
  • moviment
  • dirigit

Copieu i enganxeu del fitxer de Google Drive a l'html corresponent.

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

Pas 10: Scripts principals

Hi ha 3 guions principals

  • server.py: creeu un portal web
  • working.py - Lògica per a Raspberry Pi 1 (Office)
  • door.py Lògica per a Raspberry Pi 2 (Porta)

Simplement executem els 3 codis per obtenir el resultat que volem

El podem obtenir des de Google Drive a Main.zip

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

Recomanat: