Cuprins:

Raspberry Pi - Smart Office: 10 pași (cu imagini)
Raspberry Pi - Smart Office: 10 pași (cu imagini)

Video: Raspberry Pi - Smart Office: 10 pași (cu imagini)

Video: Raspberry Pi - Smart Office: 10 pași (cu imagini)
Video: Raspberry Pi [2021] curs in limba română 2024, Iulie
Anonim
Raspberry Pi - Smart Office
Raspberry Pi - Smart Office

Despre ce este aplicația?

OfficeHelperBOT este o aplicație orientată spre un birou inteligent. 2 Raspberry Pi 3 Model B ar fi configurat pentru acest lucru.

Raspberry Pi 1 ar fi mașina principală care va lua toate valorile din senzori, publicând datele prin MQTT, stocând date în baza de date cloud pe care o folosim DynamoDB și rulăm serverul portalului web.

Raspberry Pi 2 ar fi folosit la ușă. Ar fi nevoie ca angajatul să își verifice identitatea înainte de a li se permite accesul în birou. Există două metode pentru a face acest lucru, care sunt printr-o secvență de coduri PIN și o verificare a codului QR. În cazurile în care verificarea poate fi utilizată în mod greșit, am face o fotografie cu oricine a cărui verificare a eșuat și am stoca imaginea persoanei pe AWS S3 Bucket.

O pagină web ar putea vizualiza DHT, lumină, fotografii detectate de mișcare și videoclipuri de la birou. Pagina web ar putea, de asemenea, să controleze luminile biroului și să vizualizeze, de asemenea, un flux live de CCTV al biroului.

Ar exista, de asemenea, un bot Telegram care să permită controlul luminilor LED din birou, să verifice valoarea valorilor senzorilor, cum ar fi temperatura și, de asemenea, să permită angajaților să obțină imaginea codului QR dacă se întâmplă să-și piardă imaginea codului QR sau își uită pinul prin solicitarea și obținerea imaginii codului QR de la AWS S3 Bucket.

Pasul 1: Să privim prezentarea generală

Să ne uităm la prezentarea generală!
Să ne uităm la prezentarea generală!
Să ne uităm la prezentarea generală!
Să ne uităm la prezentarea generală!
Să ne uităm la prezentarea generală!
Să ne uităm la prezentarea generală!

Diagrama arhitecturii sistemului

Cum vor comunica mașinile între ele

Rezultat hardware

Uită-te la cum ar arăta cele două Raspberry Pi în final

Portal web

Vizualizați portalul web realizat folosind Python prin Flask

Telegram Bot

Găsirea botului pe care l-am creat

Transmitere live

Folosind 1 din PiCam ca CCTV și streaming de imagini live

Cerințe hardware

  • 2x Raspberry Pi
  • 2x placă GPIO
  • 1x LDR
  • 1x DHT11
  • 1x senzor de mișcare
  • 4x LED
  • Buton 7x
  • 2x buzzer
  • 2x ecran LCD
  • 1x cameră web

Pasul 2: configurați pentru Raspberry Pi 1 (Office)

  1. Creați un folder pentru a stoca html-ul dvs. numit șabloane
  2. Creați un folder pentru a stoca fișierele css / javascript numite static
  3. Creați un folder pentru a stoca fișierele camerei foto numite camera cu 3 subdosare 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

Pasul 3: configurați pentru Raspberry Pi 2 (ușă)

  1. Creați un folder pentru a stoca fișierele numite ușă
  2. Creați un folder pentru a stoca imaginile QR Code numite qr_code

mkdir ~ / door

mkdir ~ / door / qr_code

Pasul 4: Configurați Telegram Bot

Configurați botul Telegram
Configurați botul Telegram
Configurați botul Telegram
Configurați botul Telegram
Configurați botul Telegram
Configurați botul Telegram
Configurați botul Telegram
Configurați botul Telegram
  1. Deschideți Telegram
  2. Găsiți „BotFather”
  3. Tastați „/ start”
  4. Tastați „/ newbot”
  5. Urmați instrucțiunile, numele pentru bot, numele de utilizator pentru bot, notați jetonul de autentificare bot

Pasul 5: Configurați DynamoDB

Configurați DynamoDB
Configurați DynamoDB
Configurați DynamoDB
Configurați DynamoDB
Configurați DynamoDB
Configurați DynamoDB
  1. Înscrieți-vă la AWS
  2. Căutați DynamoDB în AWS Service
  3. Faceți clic pe „Creați tabel”
  4. Completați numele tabelului
  5. Setați cheia de partiție ca „id” (șir) și Adăugați cheia de sortare ca „datetime” (șir)
  6. Fă-o pentru cele 4 mese, dht, lumini, galerie, angajat

Previzualizare a celor 4 tabele

Pasul 6: Configurați AWS S3 Bucket

Configurați cupa AWS S3
Configurați cupa AWS S3
Configurați cupa AWS S3
Configurați cupa AWS S3
Configurați cupa AWS S3
Configurați cupa AWS S3
  1. Căutați AWS S3
  2. Faceți clic pe „Creați cupă”
  3. Urmați regulile pentru a denumi cupa
  4. Urmăriți capturile de ecran
  5. Creați cupă

Cum pot încărca chiar în cupa S3?

Nu avem un portal de administrare, așa că am importa manual imaginea codului QR prin intermediul interfeței grafice AWS. Urmați capturile de ecran pentru a crea cupa. Fragmentul codului este logica necesară pentru a încărca imaginea pe S3 Bucket

Pasul 7: Configurați AWS SNS

  1. Căutați AWS SNS
  2. Urmăriți eticheta subiectului
  3. Creați un subiect nou
  4. Setați numele subiectului și numele afișat
  5. Editați politica pentru a permite tuturor să publice
  6. Abonați-vă la subiectul creat
  7. Setați adresa de e-mail în câmpul punct final pentru a primi e-mail atunci când valoarea atinge o anumită valoare

Pasul 8: Crearea unei reguli

  1. Faceți clic pe „Creați o regulă”
  2. Scrieți numele și descrierea succintă
  3. Alegeți cea mai recentă versiune SQL pentru a trimite întregul mesaj MQTT
  4. Motorul de regulă folosește filtrul de subiecte pentru a determina ce reguli trebuie declanșate atunci când mesajul MQTT este primit
  5. Faceți clic pe „Adăugați acțiune”
  6. Selectați trimiterea unui mesaj prin notificare push SNS

Pasul 9: Crearea interfeței web

Creați aceste noi fișiere html numite

  • cap
  • Autentificare
  • busteni
  • dht
  • ușoară
  • Galerie
  • mişcare
  • LED

Copiați și lipiți din fișierul Google Drive în html-ul respectiv.

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

Pasul 10: Scripturi principale

Există 3 scripturi principale

  • server.py - Creați un portal web
  • working.py - Logică pentru Raspberry Pi 1 (Office)
  • door.py Logică pentru Raspberry Pi 2 (ușă)

Pur și simplu rulăm toate cele 3 coduri pentru a obține rezultatul dorit

Îl putem obține de pe Google Drive sub Main.zip

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

Recomandat: