Përmbajtje:
Video: Smart Office Security: 4 hapa
2025 Autor: John Day | [email protected]. E modifikuara e fundit: 2025-01-13 06:58
Në këtë projekt, ne synojmë të mësojmë se si të zbatojmë AWS dhe MQTT në konfigurimin tonë të IoT.
Me kërcënimin e një sulmi të brendshëm, ky aplikacion synon të monitorojë zyrat e përdoruesve me autoritet të lartë. Kur përdoruesi është larg nga zyra, ky aplikacion do të monitorojë zyrën.
- Ai ndjek vlerat e temperaturës dhe lagështisë dhe e shfaq atë në aplikacionin në internet
- Kjo i lejon përdoruesit të ndezin dhe fikin LED
-
2 lloje të mënyrës së alarmit
- Alarmi i ndezur - Kur alarmi është ndezur, kontrolli i temperaturës dhe lagështisë do të ndalet, ndërsa sensorët e lëvizjes do të ndizen. Nëse ka lëvizje në zyrë, zilja do të tingëllojë dhe do të merret një fotografi dhe përdoruesit mund të shohin atë që u zbulua kur janë larg zyrës së tyre
- Alarmi i fikur - Kur alarmi është i fikur, do të ketë kontroll të temperaturës dhe lagështisë dhe vlerat do të shfaqen në ueb aplikacionin ndërsa sensorët e lëvizjes dhe kamera do të çaktivizohen
- Në të dyja mënyrat, përdoruesit ende mund të kontrollojnë dritat LED.
- Duke përdorur AWS DynamoDB, ne jemi në gjendje të ruajmë rrugën e imazheve në mënyrë që përdoruesit të jenë në gjendje të shohin fotografitë e marra
- Gjithashtu, duke përdorur AWS, ne jemi në gjendje t'u dërgojmë një email përdoruesve kur zbulohet lëvizje gjatë kohës së tyre kur ata janë larg nga zyra e tyre.
Tani, le të zbulojmë se si arrijmë të zbatojmë një sistem të tillë!
Hapi 1: Hapi 1: Konfigurimi i harduerit
Çfarë ju nevojitet:
- 2x mjedër Pi 3
- Komplet 2x T-Cobbler
- 1x Breadboard
- Kabllo të ndryshme të kërcyesit
- Rezistenca të ndryshme
- 1x LED
- 1x sensorë të temperaturës dhe lagështisë DHT11
- Sensori i lëvizjes 1x PIR
- 1x Zile
Konfigurimi ynë përmban një LED të lidhur me GPIO 18 në mënyrë që përdoruesi të kontrollojë ndriçimin në zyrën e tij. Për regjistrimin e niveleve të temperaturës dhe lagështisë, ne do të përdorim një sensor DHT të lidhur me GPIO4. E ndjekur nga sensori ynë i lëvizjes PIR i lidhur me GPIO 26 për të zbuluar ndërhyrës në zyrë kur përdoruesi është larg. Së fundi, zile për të dhënë një alarm kur alarmi është ndezur dhe zbuluar diçka.
Hapi 2: Hapi 2: Instalimi dhe bërja e parakushteve
AWS
Së pari identifikohuni në
1. Pasi të regjistroheni, klikoni në katalogun në panelin e majtë dhe pastaj klikoni në AWS Educate Starter Account 75
2. Kopjoni ID -në e Çelësit të Aksesit dhe Çelësin e Hyrjes Sekrete për konfigurim në mjedër pi më vonë.
3. Klikoni në Open Console
Regjistrimi pi juaj i mjedrës si një gjë
1. Kërkoni AWS IOT
2. Klikoni mbi Menaxho në panelin e majtë dhe pastaj klikoni në Gjërat
3. Klikoni Krijo në këndin e djathtë
4. Përzgjidhni Regjistro një gjë të vetme AWS IOT
5. Jepini sendit tuaj një emër dhe klikoni tjetër
6. Klikoni në krijimin e certifikatës dhe ruani 4 gjërat e krijuara
7. Aktivizoni CA rrënjë
8. Krijoni një politikë dhe bashkojeni atë me sendin tuaj
-Jepini një emër -Veprimi: iot.* -Burimi ARN:* -Kontrolloni lejimin Dynamodb
Para gjithçkaje, ekzekutoni konfigurimin aws Përdorni ID -në e Çelësit të Aksesit dhe Çelësin e Hyrjes Sekrete nga më parë
Tjetra, 1. Krijoni një skedar të quajtur iot-role-trust.json me përmbajtjen e mëposhtme
iot-role-trust.json
2. Drejtoni komandën e mëposhtme: aws iam krijoj-rolin -role-emrin tim-iot-role-supozo-rolin-politikën-dokumentin e dokumentit: //iot-role-trust.json
3. Krijoni një skedar të quajtur iot-policy.json me përmbajtjen e mëposhtme
iot-policy.jason
4. Drejtoni komandën: aws iam put-role-policy-role-name my-iot-role --policy-name iot-policy --policy-document file: //iot-policy.json
DynamoDB
1. Krijoni tabela në Dynamodb për sensorin e lëvizjes dhe temperaturën/lagështinë -Për imazhin e lëvizjes vendosni çelësin kryesor në sensor -Për temperaturën dhe lagështinë përdorni vulën kohore si çelës kryesor
2. Krijoni një rregull për zbulimin e lëvizjes
Atributi:* filtri i temës: sensorë/lëvizje
3. Veprimi: zgjidhni mesazhin e ndarë në kolona të shumta të një baze të dhënash
Lambda
1. Krijoni një funksion Lambda me përmbajtjen e mëposhtme
Funksioni Lambda
2. Krijoni një rregull për lambda
-Atributi:*
-filtri tematik: sensorë/të gjithë
3. Veprimet zgjidhni thirrni funksionin Lambda duke kaluar mesazhin
4. Lambda do të bëjë pjesën tjetër për ju
SNS
1. Krijoni një temë SNS
2. Futni temën dhe emrin e shfaqur
3. Ndryshoni politikën e temës për të lejuar që të gjithë të publikojnë dhe të regjistrohen në temë
4. Regjistrohuni në temë me email
5. Kthehuni te rregulli i zbulimit të lëvizjes
6. Shtoni një veprim tjetër për këtë rregull të quajtur dërgoni mesazh si një njoftim shtytës SNS
7. Objektivi i SNS do të jetë tema që keni krijuar në formatin e mesazhit RAW
S3
1. Shkoni te S3 dhe krijoni një kovë për ngarkimin e imazheve
Gjëra të rëndësishme për t'u instaluar në Pis
Flask - balonë e instalimit të sudo pip
Boto - sudo pip install boto
Boto3 - sudo pip instaloni boto3
AWSIoTPythonSDK - sudo pip instaloni AWSIoTPythonSDK
awscli - sudo pip instaloni awscli
paho - sudo pip install paho
mqtt - sudo pip install mqtt
Hapi 3: Hapi 3: Zyra e Sigurt - Skriptet
Në pi të përdoruesit, ne kemi 1 skript
client.py - Ky skenar do të regjistrohet në tema të shumta të tilla si sensorët/temperatura dhe sensorët/lagështia për të marrë vlerat e temperaturës dhe lagështisë që do të shfaqen në aplikacionin në internet. Ai gjithashtu dërgon statusin e LED në mënyrë që statusi LED të mund të ndryshohet në anën e serverit
klienti.py
Në serverin pi, ne kemi 1 skript
server.py - Ky skenar do të regjistrohet në temën e statusit të dritës në mënyrë që dritat LED të ndizen dhe fiken. Në të njëjtën kohë, ai do të marrë vlerat e temperaturës dhe lagështisë nga bordi i bukës dhe do ta publikojë atë në temën e quajtur sensorë/të gjithë dhe në funksionin lambda vlerat do të publikohen në 2 tema të ndryshme, sensorë/temperaturë dhe sensorë/lagështi
server.py
Hapi 4: Hapi 4: Përvoja e të mësuarit
Në këtë detyrë, ne jemi përballur me shumë sfida pasi ky modul është ende i ri për ne. Sidoqoftë, përmes këtij projekti, ne kemi mësuar shumë. Qoftë IOT i AWS, ne jemi krenarë të themi se ne dimë të integrojmë AWS në kompletin tonë bazë IoT dhe ta bëjmë atë më shumë një sistem të avancuar.