Cuprins:

Securitate Smart Office: 4 pași
Securitate Smart Office: 4 pași

Video: Securitate Smart Office: 4 pași

Video: Securitate Smart Office: 4 pași
Video: 32 de combinații secrete pe tastatura ta 2024, Iulie
Anonim
Securitate Smart Office
Securitate Smart Office

În acest proiect, ne propunem să învățăm cum să implementăm AWS și MQTT în configurația noastră IoT.

Cu amenințarea unui atac din interior, această aplicație își propune să monitorizeze birourile utilizatorilor de înaltă autoritate. Când utilizatorul este departe de birou, această aplicație va monitoriza biroul.

  • Urmărește atât valorile temperaturii, cât și umiditatea și le afișează pe aplicația web
  • Permite utilizatorilor să aprindă și să oprească LED-ul
  • 2 tipuri de mod de alarmă

    • Alarmă activată - Când alarma este activată, verificarea temperaturii și umidității se va opri, în timp ce senzorii de mișcare vor fi aprinși. Dacă există mișcare în birou, sunetul va suna și se va face o fotografie, iar utilizatorii pot vedea ce a fost detectat atunci când sunt departe de biroul lor
    • Alarm Off - Când alarma este dezactivată, va fi verificată temperatura și umiditatea, iar valorile vor fi afișate în aplicația web, în timp ce senzorii de mișcare și camera vor fi dezactivate
    • În ambele moduri, utilizatorii pot controla în continuare luminile LED.
  • Folosind AWS DynamoDB, putem stoca calea imaginilor, astfel încât utilizatorii să poată vedea fotografiile făcute
  • De asemenea, folosind AWS, putem trimite un e-mail utilizatorilor atunci când este detectată mișcare în timpul lor, când sunt departe de biroul lor.

Acum, să aflăm cum reușim să implementăm un astfel de sistem!

Pasul 1: Pasul 1: Configurare hardware

Pasul 1: Configurare hardware
Pasul 1: Configurare hardware
Pasul 1: Configurare hardware
Pasul 1: Configurare hardware

De ce ai nevoie:

  1. 2x Raspberry Pi 3
  2. 2x T-Cobbler Kit
  3. 1x placă de pâine
  4. Cabluri asortate
  5. Rezistoare asortate
  6. 1x LED
  7. 1x senzori de temperatură și umiditate DHT11
  8. 1x senzor de mișcare PIR
  9. 1x buzzer

Setarea noastră conține un LED conectat la GPIO 18, astfel încât utilizatorul să poată controla iluminatul din biroul său. Pentru înregistrarea nivelurilor de temperatură și umiditate, vom folosi un senzor DHT conectat la GPIO4. Urmat de senzorul nostru de mișcare PIR conectat la GPIO 26 pentru a detecta intrușii în birou atunci când utilizatorul este plecat. În cele din urmă, buzzer-ul să sune o alarmă atunci când alarma este pornită și detectează ceva.

Pasul 2: Pasul 2: Instalarea și realizarea premiselor

AWS

În primul rând conectați-vă la

1. După conectare, faceți clic pe catalog în panoul din stânga, apoi faceți clic pe AWS Educate Starter Account 75

2. Copiați ID-ul cheii de acces și cheia de acces secret pentru configurare în raspberry pi mai târziu.

3. Faceți clic pe Open Console

Înregistrarea pi de zmeură ca un lucru

1. Căutați AWS IOT

2. Faceți clic pe Gestionare din panoul din stânga și apoi faceți clic pe Lucruri

3. Faceți clic pe creați în colțul din dreapta

4. Selectați Înregistrați un singur lucru AWS IOT

5. Dă-i lucrului tău un nume și dă clic pe următor

6. Faceți clic pe creați certificat și salvați cele 4 lucruri generate

7. Activați CA rădăcină

8. Creați o politică și atașați-o la lucrurile dvs.

-Dă-i un nume -Action: iot. * -Resursă ARN: * -Bifează permisiunea Dynamodb

Înainte de toate, rulați aws configure Utilizați ID-ul cheii de acces și cheia de acces secret de mai devreme

Următorul, 1. Creați un fișier numit iot-role-trust.json cu următorul conținut

iot-role-trust.json

2. Rulați următoarea comandă: aws iam create-role --role-name my-iot-role --assume-role-policy-document file: //iot-role-trust.json

3. Creați un fișier numit iot-policy.json cu următorul conținut

iot-policy.jason

4. Rulați comanda: aws iam put-role-policy --role-name my-iot-role --policy-name iot-policy --policy-document file: //iot-policy.json

DynamoDB

1. Creați tabele în Dynamodb pentru senzorul de mișcare și temperatură / umiditate -Pentru imaginea de mișcare setați cheia primară la senzor -Pentru temperatură și umiditate utilizați timestamp ca cheie primară

2. Creați o regulă pentru detectarea mișcării

Atribut: * filtru subiect: senzori / mișcare

3. Acțiune: selectați divizarea mesajului în mai multe coloane ale unei baze de date

Lambda

1. Creați o funcție Lambda cu următorul conținut

Funcția Lambda

2. Creați o regulă pentru lambda

-Atribut:*

-filtru topic: senzori / tot

3. Acțiunile selectate invocă funcția Lambda trecând mesajul

4. Lambda va face restul pentru tine

SNS

1. Creați un subiect SNS

2. Introduceți subiectul și numele afișat

3. Editați politica subiectului pentru a permite tuturor să publice și să se aboneze la subiect

4. Abonați-vă la subiect cu e-mail

5. Reveniți la regula de detectare a mișcării

6. Adăugați o altă acțiune pentru această regulă numită send amessage ca o notificare push SNS

7. Ținta SNS va fi subiectul pe care l-ați creat în format RAW

S3

1. Accesați S3 și creați o bucket pentru încărcarea imaginilor

Lucruri importante de instalat pe Pis

Flask - sudo pip instalare flask

Boto - sudo pip instala boto

Boto3 - sudo pip instala boto3

AWSIoTPythonSDK - sudo pip instala AWSIoTPythonSDK

awscli - sudo pip instalează awscli

paho - sudo pip instala paho

mqtt - sudo pip instala mqtt

Pasul 3: Pasul 3: Secure Office - Scripturi

În pi-ul utilizatorului, avem 1 script

client.py - Acest script va abona la mai multe subiecte, cum ar fi senzorii / temperatura și senzorii / umiditatea, pentru a obține valorile de temperatură și umiditate care vor fi afișate în aplicația web. De asemenea, trimite starea LED-ului, astfel încât starea LED-ului să poată fi modificată pe partea serverului

client.py

În serverul pi, avem 1 script

server.py - Acest script se va abona la subiectul stării luminii, astfel încât luminile LED să poată fi aprinse și oprite. În același timp, va primi valori de temperatură și umiditate de pe panoul de testare și le va publica subiectului numit senzori / toate, iar în funcția lambda valorile vor fi publicate la 2 subiecte diferite, senzori / temperatură și senzori / umiditate

server.py

Pasul 4: Pasul 4: Experiența de învățare

Pasul 4: Experiență de învățare
Pasul 4: Experiență de învățare

În această misiune, ne-am confruntat cu multe provocări, deoarece acest modul este încă nou pentru noi. Cu toate acestea, prin acest proiect, am învățat multe. Fie că este IOT al AWS, suntem mândri să spunem că știm cum să integrăm AWS în kitul nostru IoT de bază și să-l facem mai mult un sistem avansat.

Recomandat: