Indholdsfortegnelse:

IOT CA2 Secure Smart Home/Room: 8 trin
IOT CA2 Secure Smart Home/Room: 8 trin

Video: IOT CA2 Secure Smart Home/Room: 8 trin

Video: IOT CA2 Secure Smart Home/Room: 8 trin
Video: Smart Home with Google Assistant & Alexa using NodeMCU ESP8266 (Manual + Voice) | IoT Projects 2021 2024, Juli
Anonim
IOT CA2 Secure Smart Home/Room
IOT CA2 Secure Smart Home/Room
IOT CA2 Secure Smart Home/Room
IOT CA2 Secure Smart Home/Room

Indholdsfortegnelse

1 Oversigt over Smart Secure Home

2 Hardwarekrav + Opsætning

3 Softwarekrav + Opsætning

4 Registrer raspberrypi som en ting

5 Opret en S3 Bucket

6 DynamoDB opsætning + regler

7 Forventet resultat

8 koder (fra Pastebin)

9 Referencer

Oversigt

Velkommen! Dette Raspberry Pi -projekt er et "smart home" -styringssystem med visse sikkerhedsfunktioner. Projektet er i stand til at måle forskellige værdier som temperatur og lys. Sikkerhedsafsnittet består af en summer, et kortscannersystem (autoriserer kort), et indendørs og udendørs kamera samt et SMS -alarmsystem. Følgende instruktioner dækker opsætningen af hele projektet.

Grundlæggende har vi en lysdiodemodstand og en DHT11 -sensor for at få temperaturen såvel som lysværdier. Værdierne vil derefter blive offentliggjort til ‘smartroom/sensorer/værdier’, og der vil være et abonnement på emnet for at kontrollere, om værdierne udgives. Når værdierne er blevet offentliggjort, sendes værdierne også til vores DynamoDB -tabel. De værdier, der er gemt inde i DynamoDB, kan ekstraheres og plottes ind i en graf, der viser realtidsværdier i vores webgrænseflade. (Lysgraf) Udover at bruge sensorerne til at få værdier til at plotte vores graf til analyseformål, bruges vores dht11 -sensor også som en potentiel "brand" -detektor. Når det rammer en bestemt temperatur, der kan være en brand, har vi et script med navnet publishHeat.py, der vil offentliggøre temperaturen til emnet 'smartroom/sensor/fire', brødbrættet, der symboliserer ydersiden af lejligheden, vil derefter abonnere på det emne og få et LED -lys til at indikere, at der kan være en potentiel brand. Alarmen går også ud, samt en SMS for at advare husejeren, når der kan være en potentiel brand.

For at komme ind i hjemmet/rummet skal brugeren trykke på sit kort i RFID -scanneren. Hvis det tappede kort er forkert, lyder alarmen, indtil der tappes på et kort med de rigtige legitimationsoplysninger. Når der tappes på et forkert kort, vil overvågningskameraet udenfor tage et billede af den bruger, der tappede på kortet og uploade billedet til S3 -spand. Boligejeren vil også modtage en sms om, at nogen forsøgte at komme ind i hans/hendes hjem. Rummet har også en LED -indikator uden for at mærke, om døren er ulåst/låst. Når døren er låst, lyser den gule LED. Når den er låst op, lyser den grønne LED. Når der tappes på et autoriseret kort, låses døren op i 15 sekunder, og med den grønne LED tændt, vender den tilbage til ulåst tilstand med den gule LED tændt.

Brugere kan se de data, der er indsamlet via et Dashboard i Node-Red, der viser de aktuelle måleværdier ud over en grafisk fremstilling af en måler og en historisk graf. Dashboardet indeholder også yderligere funktioner, såsom et ur, der viser de aktuelle data og tid og skifter til fjernbetjening af forskellige elektriske apparater, der er repræsenteret som lysdioder og en summer.

Endelig har vi også en telegram bot -funktion. Telegrambotten er i stand til eksternt at tage billeder af hvad der sker inde i rummet og gemme det i S3 -spanden. Disse billeder vil blive mærket med inde i en mappe med navnet “Hjemsted/Bruger Telegramboten vil også kunne fjernstyre LED -lyset i rummet.

Trin 1: Hardwarekrav + opsætning

Hardwarekrav + Opsætning
Hardwarekrav + Opsætning
Hardwarekrav + Opsætning
Hardwarekrav + Opsætning

Tilslut følgende komponenter med dine 2 hindbærpis som vist i fritzningsdiagrammerne ovenfor.

2 x Raspberry Pi

3 x brødbræt

1 x MCP3008 ADC

1 x DhT 11 sensor

1 x LDR

1 x RFID/NFC MFRC522 kortlæser

4 x LED

1 x LCD -skærm

3 x 10k modstand

4 x 220/330 modstand

1 x knap

1 x summer

34 x Han til han kabler

11 x Hane til hunkabler

Trin 2: Softwarekrav + Opsætning

Softwarekrav + Opsætning
Softwarekrav + Opsætning
Softwarekrav + Opsætning
Softwarekrav + Opsætning
Softwarekrav + Opsætning
Softwarekrav + Opsætning

Indtast følgende kommandoer i din hindbær pi -terminal for at sikre, at de er installeret.

Hvis nogen af følgende software allerede er downloadet til din pi, vil sudo pip install (Software navn) -opgradering gøre tricket med at opdatere den.

- sudo pip installer gevent

- sudo pip installere kolbe

- sudo pip installer nexmo

-sudo pip install-upgrade-force-reinstall pip == 9.0.3

-sudo pip installer AWSIoTPythonSDK-opgradering --disable-pip-version-check

-sudo pip installation -opgrader pip

-sudo apt-get install python-dev

- sudo pip installer boto3

- sudo pip installer botocore

- sudo pip installer numpy

- cd ~

git-klon

cd ~/SPI-Py

sudo python setup.py installere"

- cd ~

git-klon

cd ~/MFRC522-python

sudo python setup.py installere"

- sudo nano /boot/config.txt, tjek om linjer device_tree_param = spi = on

dtoverlay = spi-bcm2835 er indeni, ellers tilføj i.

Trin 3: Registrering af en ting

Registrering af en ting
Registrering af en ting
Registrering af en ting
Registrering af en ting
Registrering af en ting
Registrering af en ting
Registrering af en ting
Registrering af en ting

a) Først skal du navigere til IoT Core på AWS -webstedet ved at klikke på tjenester og derefter IoT Core.

b) På navigationslinjen under administrer, vælg ting og vælg registrer en ting.

c) Vælg Opret en enkelt ting.

d) Indtast et navn på din ting, f.eks. MyRaspberryPi2. Lad resten af felterne være deres standardværdier. Klik på næste nederst på siden.

e) Klik på Opret certifikat. Download alle fire filer. For root -CA -filen skal du downloade Amazon Root CA 1 og gemme den i en notesblok.

f) Når du er færdig, skal du flytte de fire filer til et bibliotek i hindbær pi.

g) Klik på aktiver.

h) Efter at have klikket på vedhæftningspolitik, vil du blive bragt til den følgende side. Klik på registrer ting, politikken oprettes senere.

i) Naviger til politikkerne under iot -dashboardet under sektionen sikker. Klik på Opret en politik.

j) Indtast et navn på din politik, for dette eksempel vil det være MyRaspberryPiSecurityPolicy og nøgle i det følgende under Tilføj udsagn. Klik derefter på Opret.

k) På iot -dashboardet skal du navigere til certifikater under sikker sektion. Vælg det certifikat, du tidligere har oprettet, og klik på vedhæft politik i rullemenuen Handlinger. Vedhæft den politik, du tidligere har oprettet.

l) Vælg det certifikat, du tidligere har oprettet, og klik på vedhæft ting. Vedhæft den politik, du tidligere har oprettet. Vedhæft det, du tidligere har oprettet.

Trin 4: Oprettelse af en S3 Bucket

Oprettelse af en S3 Bucket
Oprettelse af en S3 Bucket
Oprettelse af en S3 Bucket
Oprettelse af en S3 Bucket
Oprettelse af en S3 Bucket
Oprettelse af en S3 Bucket
Oprettelse af en S3 Bucket
Oprettelse af en S3 Bucket

a) Vi begynder med at bruge søgefunktionen i AWS -administrationskonsollen og søge efter “s3”.

b) Klik på Opret skovl.

c) Indtast et navn på spanden. I dette eksempel bruger vi navnet "sp-p1703263". Vi vælger regionen "US EAST (N. VIRGINIA)", som er us-east-1. Når det er gjort, skal du klikke på Opret.

d) Den nye oprettede spand vises i instrumentbrættet.

Trin 5: Oprettelse af DynamoDB -tabel og sæt regler

Oprettelse af DynamoDB -tabel og sæt regler
Oprettelse af DynamoDB -tabel og sæt regler
Oprettelse af DynamoDB -tabel og sæt regler
Oprettelse af DynamoDB -tabel og sæt regler
Oprettelse af DynamoDB -tabel og sæt regler
Oprettelse af DynamoDB -tabel og sæt regler
Oprettelse af DynamoDB -tabel og sæt regler
Oprettelse af DynamoDB -tabel og sæt regler

a) Først skal du navigere til AWS -servicer ved at klikke på

tjenester, derefter DynamoDB. Klik på Opret tabel.

b) Indtast tabelnavnet "iotdata" og den primære nøgle "deviceid" med en sorteringsnøgle "datetimeid", og klik derefter på Opret nederst på siden.

c) Derefter skal du navigere tilbage til IoT Core -siden. Klik på Act, klik derefter på Opret en ny regel.

d) Opret en regel med navnet "MyDynamoDBRule". Indtast "sensorer/lys" under emnet regelforespørgsel.

e) Under Angiv en eller flere handlinger sektion, klik på tilføj handling, klik på "opdel besked i flere kolonner i en databasetabel". Klik på konfigurer handling. Vælg iotdata under tabelnavn. Under IAM -rollenavn skal du vælge den rolle, du tidligere har oprettet, som er “dynamodb_role”. Klik på tilføj handling, og opret derefter regel.

f) Klik på oprettelsesregel.

Trin 6: Forventet resultat

Forventet resultat
Forventet resultat
Forventet resultat
Forventet resultat

Udendørs

for pi'et, der repræsenterer det udendørs i rummet, køres scripts heatdetector.py og AccessDoor.py. Hvis et forkert kort trykker på RFID -scanneren, går alarmen, mens den gule LED -lampe stadig lyser. Der sendes en sms til boligejerens telefon for at underrette om en mulig indtrængen. Alarmen lyder også. Et billede vil også blive taget og uploadet med det samme til S3 Bucket. Hvis det tappede kort er godkendt, lyser den grønne LED, og brugeren kan gå ind. Døren låses igen efter 15 sekunder (grøn lysdiode slukker og gul lysdiode lyser igen). Hvis temperaturen inde i rummet/hjemmet bliver for høj (Til en temperatur, vi anser for at være et hjem/værelse, der potentielt er i brand), sender vi en SMS -advarsel til boligejeren. Der lyder også alarm med den røde LED udenfor tændt.

Indendørs

for pi'et, der repræsenterer indendørs i rummet, vil scripts publishHeat.py, server.py, pubsub.py, telegrambot.py blive kørt. Pubsub.py gemmer realtidsværdierne i DynamoDB. Når server.py er kørt, skal du indtaste rpi's ip -adresse: 5000 i browseren, bliver du dirigeret til vores webgrænseflade. Vi har en graf, der viser lysværdier i realtid hentet fra vores sensorer i pubsub.py til DynamoDB. Derudover vil historiske lysværdier også blive vist i vores webinterface. publishHeat.py vil offentliggøre temperaturværdier til det udendørs brødbræt til brandsensorformål. telegrambot.py gør det muligt for brugeren at fjernstyre tænd/sluk for LED -lyset i rummet/hjemmet samt tage et billede af, hvad der sker indeni og uploade billedet i S3 -spanden.

For en bedre visualisering af, hvordan det forventede resultat skal se ud:

Trin 7: Kildekoder (Pastebin)

Kildekoder (Pastebin)
Kildekoder (Pastebin)

Klik på linket. Består af alle nødvendige kildekoder:

Trin 8: Referencer

Referencer
Referencer

Iotguider. (2019). Send SMS fra Raspberry Pi ved hjælp af Python. [online] Tilgængelig på: https://iotguider.in/raspberrypi/send-sms-from-raspberry-pi-python/ [Adgang 21. august 2019].

Anbefalede: