Բովանդակություն:

Smart Office Security: 4 քայլ
Smart Office Security: 4 քայլ

Video: Smart Office Security: 4 քայլ

Video: Smart Office Security: 4 քայլ
Video: Զրույց Ցոլինեի Հետ #6 “Ինչպես փոխել Սովորությունները” Conversations With Tsoline #6 “Change Habits” 2024, Հուլիսի
Anonim
Smart Office Security
Smart Office Security

Այս նախագծում մենք նպատակ ունենք սովորել, թե ինչպես ներդնել AWS և MQTT մեր IoT կարգաբերման մեջ:

Ներքին հարձակման սպառնալիքով, այս ծրագիրը նպատակ ունի վերահսկել բարձր հեղինակություն ունեցող օգտվողների գրասենյակները: Երբ օգտագործողը գրասենյակից հեռու է, այս ծրագիրը կվերահսկի գրասենյակը:

  • Այն հետևում է ինչպես ջերմաստիճանի, այնպես էլ խոնավության արժեքներին և ցուցադրում այն վեբ ծրագրում
  • Այն թույլ է տալիս օգտվողներին միացնել և անջատել LED- ը
  • 2 տեսակի ազդանշանային ռեժիմ

    • Rmարթուցիչը միացված է - Երբ ահազանգը միացված է, ջերմաստիճանի և խոնավության ստուգումը կդադարի, իսկ շարժման տվիչները միացված կլինեն: Եթե գրասենյակում տեղաշարժ կա, ձայնը կհնչի, և լուսանկար կարվի, և օգտվողները կարող են տեսնել, թե ինչ է հայտնաբերվել, երբ նրանք գտնվում են իրենց գրասենյակից հեռու:
    • Rmարթուցիչը անջատված է - Երբ ահազանգն անջատված է, ջերմաստիճանի և խոնավության ստուգում կլինի, իսկ վեբ հավելվածում արժեքները կցուցադրվեն, մինչդեռ շարժման տվիչները և տեսախցիկը անջատված կլինեն:
    • Երկու ռեժիմներում էլ օգտվողները դեռ կարող են վերահսկել LED լույսերը:
  • Օգտվելով AWS DynamoDB- ից ՝ մենք կարող ենք պահպանել պատկերների ուղին, որպեսզի օգտվողները կարողանան տեսնել արված նկարները
  • Բացի այդ, օգտագործելով AWS- ը, մենք կարող ենք նամակ ուղարկել օգտվողներին, երբ շարժում է նկատվում նրանց աշխատավայրից հեռու գտնվելու ընթացքում:

Հիմա եկեք պարզենք, թե ինչպես է մեզ հաջողվում ներդնել նման համակարգ:

Քայլ 1: Քայլ 1: Սարքավորման կարգավորում

Քայլ 1: Սարքավորման կարգավորում
Քայլ 1: Սարքավորման կարգավորում
Քայլ 1: Սարքավորման կարգավորում
Քայլ 1: Սարքավորման կարգավորում

Այն, ինչ ձեզ հարկավոր է.

  1. 2 անգամ Ազնվամորի Պի 3
  2. 2x T-Cobbler Kit
  3. 1x Breadboard
  4. Umատկող մալուխների տեսականի
  5. Դիմադրության տեսականի
  6. 1x LED
  7. 1x DHT11 ջերմաստիճանի և խոնավության տվիչներ
  8. 1x PIR շարժման ցուցիչ
  9. 1x Buzzer

Մեր տեղադրումը պարունակում է GPIO 18 -ին միացված LED, որպեսզի օգտվողը կարողանա վերահսկել իր գրասենյակի լուսավորությունը: Theերմաստիճանի եւ խոնավության մակարդակի գրանցման համար մենք կօգտագործենք DHT սենսոր, որը միացված է GPIO4- ին: Հետևում է GPIO 26 -ին միացված մեր PIR շարժման տվիչը ՝ գրասենյակում ներխուժողներին հայտնաբերելու համար, երբ օգտվողը հեռու է: Ի վերջո, ահազանգը ազդանշան հնչեցնելու դեպքում, երբ ահազանգը միացված է և ինչ -որ բան է հայտնաբերում:

Քայլ 2: Քայլ 2. Նախադրյալների տեղադրում և կատարում

AWS

Նախ մուտք գործեք

1. Մուտք գործելուց հետո կտտացրեք ձախ պատուհանի կատալոգին, այնուհետև կտտացրեք AWS Educate Starter Account 75

2. Ավելի ուշ ազնվամորի pi- ում կազմաձևելու համար պատճենեք Access Key ID- ն և Secret Access Key- ը:

3. Սեղմեք Open Console- ի վրա

Ձեր ազնվամորու պի գրանցելը որպես իր

1. Որոնել AWS IOT

2. Կտտացրեք Կառավարեք ձախ ձեռքի վահանակին, այնուհետև կտտացրեք Բաներ

3. Սեղմեք ստեղծել աջ անկյունում

4. Ընտրեք Գրանցել մեկ AWS IOT բան

5. Անվանեք ձեր բանի անունը և կտտացրեք հաջորդը

6. Կտտացրեք ստեղծել վկայական և պահպանեք առաջացած 4 իրերը

7. Ակտիվացրեք արմատային CA- ն

8. Ստեղծեք քաղաքականություն և կցեք այն իրին

-Անուն տվեք -Գործողություն ՝ iot.* -Ռեսուրս ARN:* -Ստուգեք թույլատրելի Dynamodb

Ամեն ինչից առաջ գործարկեք aws- ի կարգավորումները: Օգտագործեք մուտքի բանալու ID- ն և գաղտնի մուտքի բանալին ավելի վաղ

Հաջորդը, 1. Ստեղծեք iot-role-trust.json անունով ֆայլ հետևյալ բովանդակությամբ

iot-role-trust.json

2. Գործարկեք հետևյալ հրամանը ՝ aws iam create-role-role-name my-iot-role-assume-role-policy-document file: //iot-role-trust.json

3. Ստեղծեք iot-policy.json անունով ֆայլ հետևյալ բովանդակությամբ

iot-policy.jason

4. Գործարկեք հրամանը. Aws iam put-role-policy --role-name my-iot-role --policy-name iot-policy --policy-document file: //iot-policy.json

DynamoDB

1. Ստեղծեք աղյուսակներ Dynamodb- ում շարժման սենսորի և ջերմաստիճանի/խոնավության համար -Շարժման պատկերի համար տվեք առաջնային բանալին սենսորին -temperatureերմաստիճանի և խոնավության համար որպես ժամանակային նշան օգտագործեք որպես առաջնային բանալին

2. Ստեղծեք շարժման հայտնաբերման կանոն

Հատկանիշ ՝* թեմայի զտիչ ՝ տվիչներ/շարժում

3. Գործողություն. Ընտրեք պառակտված հաղորդագրությունը տվյալների բազայի բազմաթիվ սյուների մեջ

Լամբդա

1. Ստեղծեք Lambda գործառույթ ՝ հետևյալ բովանդակությամբ

Լամբդա գործառույթը

2. Ստեղծեք կանոն լամբդայի համար

-Հատկություն:*

-թեմայի զտիչ ՝ տվիչներ/բոլորը

3. Գործողությունները ընտրել կանչել հաղորդագրությունը փոխանցող Lambda գործառույթը

4. Լամբդան մնացածը կանի ձեզ համար

SNS

1. Ստեղծեք SNS թեմա

2. Մուտքագրեք թեման և ցուցադրվող անունը

3. Խմբագրել թեմայի քաղաքականությունը, որպեսզի բոլորը կարողանան հրապարակել և բաժանորդագրվել թեմային

4. Բաժանորդագրվեք թեմային էլ

5. Վերադառնալ շարժման հայտնաբերման կանոնին

6. Ավելացրեք այս կանոնի մեկ այլ գործողություն, որը կոչվում է ուղարկել հաղորդագրություն որպես SNS հրահանգ ծանուցում

7. SNS թիրախը կլինի ձեր ստեղծած թեման RAW ձևաչափը

S3

1. Գնացեք S3 և ստեղծեք պատկերներ վերբեռնելու համար

Կարևոր բաներ, որոնք պետք է տեղադրվեն Pis- ում

Flask - sudo pip տեղադրման շիշ

Boto - sudo pip install boto

Boto3 - sudo pip տեղադրել boto3

AWSIoTPythonSDK - sudo pip տեղադրել AWSIoTPythonSDK

awscli - sudo pip տեղադրել awscli

paho - sudo pip install paho

mqtt - sudo pip տեղադրել mqtt

Քայլ 3. Քայլ 3. Ապահով գրասենյակ - սցենարներ

Օգտվողի pi- ում մենք ունենք 1 սցենար

client.py - Այս սցենարը բաժանորդագրվելու է բազմաթիվ թեմաների, ինչպիսիք են ՝ տվիչները/ջերմաստիճանը և տվիչները/խոնավությունը ՝ ջերմաստիճանի և խոնավության արժեքները ստանալու համար, որոնք կցուցադրվեն վեբ հավելվածում: Այն նաև ուղարկում է LED- ի կարգավիճակը, որպեսզի LED կարգավիճակը փոխվի սերվերի կողմից:

client.py

Pi սերվերում մենք ունենք 1 սցենար

server.py - Այս սցենարը բաժանորդագրվելու է լույսի կարգավիճակի թեմային, որպեսզի LED լույսերը միացվեն և անջատվեն: Միևնույն ժամանակ, այն կստանա ջերմաստիճանի և խոնավության արժեքներ տախտակից և կհրապարակի այն սենսորներ/բոլորը կոչվող թեմայում, իսկ լամբդա գործառույթում արժեքները կհրապարակվեն 2 տարբեր թեմաների ՝ տվիչների/ջերմաստիճանի և տվիչների/խոնավության:

server.py

Քայլ 4: Քայլ 4. Սովորելու փորձ

Քայլ 4: Ուսուցման փորձ
Քայլ 4: Ուսուցման փորձ

Այս առաջադրանքում մենք բախվել ենք բազմաթիվ մարտահրավերների, քանի որ այս մոդուլը դեռ նոր է մեզ համար: Այնուամենայնիվ, այս նախագծի միջոցով մենք շատ բան ենք սովորել: Լինի դա AWS- ի IOT- ը, մենք հպարտ ենք ասել, որ մենք գիտենք, թե ինչպես AWS- ը ինտեգրել մեր հիմնական IoT հավաքածուին և այն դարձնել ավելի առաջադեմ համակարգ:

Խորհուրդ ենք տալիս: