Taula de continguts:

Smart Office Security: 4 passos
Smart Office Security: 4 passos

Vídeo: Smart Office Security: 4 passos

Vídeo: Smart Office Security: 4 passos
Vídeo: 5 Steps to Fix Any Problem at Work | Anne Morriss | TED 2024, Desembre
Anonim
Smart Office Security
Smart Office Security

En aquest projecte, pretenem aprendre a implementar AWS i MQTT a la nostra configuració d’IoT.

Amb l'amenaça d'un atac privilegiat, aquesta aplicació té com a objectiu controlar les oficines dels usuaris d'alta autoritat. Quan l'usuari es troba fora de l'oficina, aquesta aplicació supervisarà l'oficina.

  • Realitza un seguiment dels valors de temperatura i humitat i es mostra a l’aplicació web
  • Permet als usuaris encendre i apagar el LED
  • 2 tipus de mode d'alarma
    • Alarma activada: quan l’alarma està activada, s’aturarà la comprovació de la temperatura i la humitat, mentre que els sensors de moviment s’encenen. Si hi ha moviment a l'oficina, sonarà el brunzidor i es farà una foto i els usuaris podran veure què s'ha detectat quan estan fora de la seva oficina
    • Alarma desactivada: quan l'alarma està desactivada, es comprovarà la temperatura i la humitat i es mostraran els valors a l'aplicació web mentre es desactivaran els sensors de moviment i la càmera.
    • En ambdós modes, els usuaris encara poden controlar els llums LED.
  • Utilitzant AWS DynamoDB, podem emmagatzemar el camí de les imatges perquè els usuaris puguin veure les fotos preses
  • A més, mitjançant AWS, podem enviar un correu electrònic als usuaris quan es detecta moviment durant el seu temps quan estan fora de la seva oficina.

Ara, esbrinem com aconseguim implementar aquest sistema.

Pas 1: Pas 1: Configuració del maquinari

Pas 1: Configuració del maquinari
Pas 1: Configuració del maquinari
Pas 1: Configuració del maquinari
Pas 1: Configuració del maquinari

Què necessites:

  1. 2x Raspberry Pi 3
  2. 2x T-Cobbler Kit
  3. 1x tauler de pa
  4. Cables de pont variats
  5. Assortiment de resistències
  6. 1x LED
  7. 1 sensors de temperatura i humitat DHT11
  8. 1x sensor de moviment PIR
  9. 1x Buzzer

La nostra configuració conté un LED connectat a GPIO 18 perquè l'usuari pugui controlar la il·luminació de la seva oficina. Per enregistrar els nivells de temperatura i humitat, utilitzarem un sensor DHT connectat a GPIO4. Seguit del nostre sensor de moviment PIR connectat a GPIO 26 per detectar intrusos a l’oficina quan l’usuari no hi és. Finalment, el brunzidor farà sonar una alarma quan s’activa l’alarma i detecta alguna cosa.

Pas 2: Pas 2: Instal·lació i realització dels requisits previs

AWS

En primer lloc, inicieu la sessió a

1. Després d’iniciar la sessió, feu clic al catàleg al tauler esquerre i, a continuació, feu clic a AWS Educate Starter Account 75

2. Copieu l'identificador de clau d'accés i la clau d'accés secreta per configurar-les al raspberry pi més endavant.

3. Feu clic a Open Console

Registrar el vostre raspberry pi com a cosa

1. Cerqueu AWS IOT

2. Feu clic a Gestiona al tauler esquerre i feu clic a Coses

3. Feu clic a crear a la cantonada dreta

4. Seleccioneu Registra una sola cosa AWS IOT

5. Doneu un nom a la vostra cosa i feu clic a Següent

6. Feu clic a crear certificat i deseu les 4 coses generades

7. Activeu la CA arrel

8. Creeu una política i afegiu-la a les vostres coses

-Doneu-li un nom -Acció: iot. * -RN de recursos: * -Comproveu el permís Dynamodb

Abans de tot, executeu aws configure Utilitzeu l'identificador de clau d'accés i la clau d'accés secreta de les anteriors

Pròxim, 1. Creeu un fitxer anomenat iot-role-trust.json amb el contingut següent

iot-role-trust.json

2. Executeu l'ordre següent: aws iam create-role --role-name my-iot-role --assume-role-policy-document file: //iot-role-trust.json

3. Creeu un fitxer anomenat iot-policy.json amb el contingut següent

iot-policy.jason

4. Executeu l'ordre: aws iam put-role-policy --role-name my-iot-role --policy-name iot-policy --policy-document file: //iot-policy.json

DynamoDB

1. Creeu taules a Dynamodb per al sensor de moviment i la temperatura / humitat -Per a la imatge de moviment, configureu la clau primària al sensor -Per a la temperatura i la humitat, utilitzeu la marca de temps com a clau principal

2. Creeu una regla per a la detecció de moviment

Atribut: * filtre de tema: sensors / moviment

3. Acció: seleccioneu el missatge dividit en diverses columnes d'una base de dades

Lambda

1. Creeu una funció Lambda amb el contingut següent

Funció Lambda

2. Creeu una regla per a lambda

-Atribut: *

-filtre tema: sensors / tot

3. Les accions seleccionades invocar la funció Lambda passant el missatge

4. Lambda farà la resta per vosaltres

SNS

1. Creeu un tema SNS

2. Introduïu el tema i el nom de visualització

3. Editeu la política del tema per permetre que tothom pugui publicar-hi i subscriure-s'hi

4. Subscriviu-vos al tema amb el correu electrònic

5. Torneu a la regla de detecció de moviment

6. Afegiu una altra acció per a aquesta regla anomenada enviar missatges com a notificació push SNS

7. La destinació SNS serà el tema que heu creat en format RAW

S3

1. Aneu a S3 i creeu un dipòsit per penjar imatges

Coses importants per instal·lar al Pis

Flask: flascó sudo pip d'instal·lació

Boto: sudo pip install boto

Boto3: sudo pip instal·la boto3

AWSIoTPythonSDK: sudo pip instal·lar AWSIoTPythonSDK

awscli: sudo pip instal·la awscli

paho - sudo instal·la paho

mqtt - sudo instal·lar mqtt

Pas 3: Pas 3: Office segur: scripts

Al pi de l'usuari, tenim 1 script

client.py: aquest script subscriurà diversos temes, com ara els sensors / temperatura i sensors / humitat, per obtenir els valors de temperatura i humitat que es mostraran a l'aplicació web. També envia l'estat del LED perquè es pugui canviar l'estat del LED al costat del servidor

client.py

Al servidor pi, tenim 1 script

server.py: aquest script subscriurà el tema de l'estat de la llum perquè els llums LED es puguin encendre i apagar. Al mateix temps, rebrà els valors de temperatura i humitat de la taula de treball i el publicarà al tema anomenat sensors / all i, a la funció lambda, els valors es publicaran a 2 temes diferents: sensors / temperatura i sensors / humitat

server.py

Pas 4: Pas 4: Experiència d'aprenentatge

Pas 4: experiència d'aprenentatge
Pas 4: experiència d'aprenentatge

En aquesta tasca, hem afrontat molts reptes, ja que aquest mòdul encara és nou per a nosaltres. Tot i això, a través d’aquest projecte hem après moltes coses. Sigui IOT d'AWS, estem orgullosos de dir que sabem integrar AWS al nostre kit IoT bàsic i convertir-lo en un sistema avançat.

Recomanat: