תוכן עניינים:

בית/חדר מאובטח IOT CA2: 8 שלבים
בית/חדר מאובטח IOT CA2: 8 שלבים

וִידֵאוֹ: בית/חדר מאובטח IOT CA2: 8 שלבים

וִידֵאוֹ: בית/חדר מאובטח IOT CA2: 8 שלבים
וִידֵאוֹ: סיימנו לעצב את חדר השינה!!! | עיצוב בית - חלק 5 | BOHO ROOM 2024, נוֹבֶמבֶּר
Anonim
IOT CA2 בית חכם/חדר מאובטח
IOT CA2 בית חכם/חדר מאובטח
IOT CA2 בית חכם/חדר מאובטח
IOT CA2 בית חכם/חדר מאובטח

תוכן העניינים

1 סקירה כללית של Smart Secure Home

2 דרישות חומרה + התקנה

3 דרישות תוכנה + התקנה

4 רשום את raspberrypi כדבר

5 צור דלי S3

6 הגדרת DynamoDB + כללים

7 תוצאה צפויה

8 קודים (מתוך פסטבין)

9 הפניות

סקירה כללית

ברוך הבא! פרויקט Raspberry Pi זה מערכת ניהול "בית חכם", עם תכונות אבטחה מסוימות. הפרויקט מסוגל למדוד ערכים שונים כגון טמפרטורה ואור. מדור האבטחה כולל באזר, מערכת סורק כרטיסים (כרטיס מורשה), מצלמה פנימית וחיצונית וכן מערכת התראת SMS. ההנחיות הבאות יכסו את הקמת הפרויקט כולו.

ביסודו של דבר, יש לנו נגד דיודה אור וחיישן DHT11 כדי לקבל את הטמפרטורה ואת ערכי האור. הערכים יפורסמו לאחר מכן ל'חדר חכם/חיישנים/ערכים 'ויהיה מנוי לנושא לבדוק אם הערכים מתפרסמים. לאחר פרסום ערכים, הערכים יישלחו גם לטבלת DynamoDB שלנו. ניתן לחלץ את הערכים המאוחסנים בתוך DynamoDB ולשרטט אותם בגרף המציג ערכים בזמן אמת בממשק האינטרנט שלנו. (גרף אור) מלבד השימוש בחיישנים בכדי לגרום לערכים להתוות את התרשים שלנו למטרות ניתוח, חיישן ה- dht11 שלנו משמש גם כגלאי "אש" פוטנציאלי. כאשר הוא פוגע בטמפרטורה מסוימת שעלולה להיות שריפה, יש לנו תסריט בשם publishHeat.py שיפרסם את הטמפרטורה לנושא 'חדר חכם/חיישן/אש', לוח הלחם המסמל את החלק החיצוני של הדירה ירשם לאחר מכן ולהדליק נורת LED כדי להצביע על כך שאולי יש שריפה. האזעקה תידלק גם הודעת SMS שתתריע בפני בעל הבית כאשר עלולה להיווצר שריפה.

כדי להיכנס לבית/לחדר, המשתמש יצטרך להקיש על הכרטיס שלו בסורק ה- RFID. אם הכרטיס שנלחץ שגוי, האזעקה תישמע עד לחיצה על כרטיס בעל האישורים הנכונים. בנוסף, כאשר מקישים על כרטיס שגוי, מצלמת המעקב בחוץ תצלם את המשתמש שהקיש על הכרטיס ותעלה את התמונה לדלי S3. בעל הבית יקבל גם הודעת SMS המציינת שמישהו ניסה להיכנס לביתו. החדר כולל גם מחוון LED מבחוץ המסמן אם הדלת אינה נעולה/נעולה. כאשר הדלת נעולה, הנורית הצהובה דולקת. כאשר הנעילה לא תהיה, הנורית הירוקה תדלק. כאשר מקישים על כרטיס מורשה, הדלת תהיה נעולה למשך 15 שניות וכשהנורית הירוקה דולקת ואז תחזור למצב נעול כשהנורית הצהובה תדלק.

משתמשים יכולים לצפות בנתונים שנאספו באמצעות לוח מחוונים בצומת אדום המציג את ערכי המדידה הנוכחיים בנוסף לייצוג גרפי של מד וגרף היסטורי. לוח המחוונים כולל גם תכונות נוספות כגון שעון המציג את הנתונים והזמן הנוכחיים ומתג לשלוט מרחוק במכשירי חשמל שונים, המיוצגים כנורות LED וזמזם.

לבסוף, יש לנו גם תכונת בוט טלגרם. בוט הטלגרם מסוגל לצלם מרחוק את כל מה שקורה בתוך החדר ולאחסן אותו בדלי S3. תמונות אלה יסומנו בתוך תיקיה בשם Homed/User בוט הטלגרם יוכל לשלוט מרחוק גם בנורית ה- LED בחדר.

שלב 1: דרישות חומרה + התקנה

דרישות חומרה + התקנה
דרישות חומרה + התקנה
דרישות חומרה + התקנה
דרישות חומרה + התקנה

חבר את הרכיבים הבאים עם 2 פיס הפטל שלך כפי שמוצג בתרשימי הטיגון לעיל.

2 x פטל פטל

3 x לוח לחם

1 x MCP3008 ADC

1 x חיישן DhT 11

1 x LDR

1 x קורא כרטיסים RFID/NFC MFRC522

4 x LED

1 x מסך LCD

3 x 10k נגד

4 x 220/330 נגד

1 x כפתור

1 x זמזם

34 x כבלים זכר לזכר

11 x כבלים זכר לנקבה

שלב 2: דרישות תוכנה + התקנה

דרישות תוכנה + התקנה
דרישות תוכנה + התקנה
דרישות תוכנה + התקנה
דרישות תוכנה + התקנה
דרישות תוכנה + התקנה
דרישות תוכנה + התקנה

הקלד את הפקודות הבאות במסוף הפטל שלך כדי לוודא שהן מותקנות.

אם אחת מהתוכנות הבאות כבר הורדה ל- pi שלך, sudo pip install (שם התוכנה) -שדרוג יעשה את העבודה כדי לעדכן אותו.

- sudo pip להתקין gevent

- בקבוק התקנת sudo pip

- sudo pip התקן את nexmo

-התקנת sudo pip-שדרוג-כפתור התקנה מחדש == 9.0.3

-sudo pip להתקין AWSIoTPythonSDK-שדרוג-check-version-check-check

-התקנת sudo pip -שדרוג pip

-sudo apt-get install python-dev

- sudo pip להתקין boto3

- sudo pip להתקין botocore

- sudo pip להתקין numpy

- cd ~

שיבוט git

cd ~/SPI-Py

sudo python setup.py להתקין"

- cd ~

שיבוט git

cd ~/MFRC522-python

sudo python setup.py להתקין"

- sudo nano /boot/config.txt, בדוק אם שורות device_tree_param = spi = on

dtoverlay = spi-bcm2835 נמצאים בפנים, אחרת הוסף.

שלב 3: רישום דבר

רישום דבר
רישום דבר
רישום דבר
רישום דבר
רישום דבר
רישום דבר
רישום דבר
רישום דבר

א) ראשית, נווט אל IoT Core בתוך אתר AWS על ידי לחיצה על שירותים ולאחר מכן על IoT Core.

ב) בסרגל הניווט תחת ניהול, בחר דברים ובחר לרשום דבר.

ג) בחר צור דבר אחד.

ד) הזן שם לדבר שלך, למשל MyRaspberryPi2. השאר את שאר השדות לפי ערכי ברירת המחדל שלהם. לחץ על הבא בתחתית הדף.

ה) לחץ על צור אישור. הורד את כל ארבעת הקבצים. עבור קובץ ה- root של CA, הורד את Amazon Root CA 1 ושמור אותו בפנקס רשימות.

ו) לאחר סיום, העבר את ארבעת הקבצים לספרייה ב- raspberry pi.

g) לחץ על הפעל.

ח) לאחר לחיצה על מדיניות הצירוף, תובא לדף הבא. לחץ על דבר הרשמה, המדיניות תיווצר מאוחר יותר.

i) בלוח המחוונים של iot, נווט אל מדיניות בקטע המאובטח. לחץ על צור מדיניות.

j) הזן שם למדיניות שלך, לדוגמא זו תהיה MyRaspberryPiSecurityPolicy ותקשיב להלן תחת הוספת הצהרות. לאחר מכן לחץ על צור.

k) בלוח המחוונים של iot, נווט אל אישורים תחת סעיף מאובטח. בחר את האישור שיצרת בעבר ולחץ על צירוף מדיניות מהתפריט הנפתח לפעולות. צרף את המדיניות שיצרת בעבר.

l) בחר שוב את התעודה שיצרת בעבר ולחץ על צרף דבר. צרף את המדיניות שיצרת בעבר. צרף את הדבר שיצרת בעבר.

שלב 4: יצירת דלי S3

יצירת דלי S3
יצירת דלי S3
יצירת דלי S3
יצירת דלי S3
יצירת דלי S3
יצירת דלי S3
יצירת דלי S3
יצירת דלי S3

א) נתחיל בשימוש בפונקציית החיפוש במסוף הניהול של AWS ונחפש "s3".

ב) לחץ על צור דלי.

ג) הקלד שם לדלי. בדוגמה זו, נשתמש בשם "sp-p1703263". אנו בוחרים את האזור "מזרח ארה"ב (נ 'וירג'יניה)" שהוא us-east-1. לאחר סיום הפעולה, לחץ על צור.

ד) הדלי החדש שנוצר יופיע בלוח המחוונים.

שלב 5: יצירת טבלת DynamoDB והגדרת כללים

יצירת טבלת DynamoDB והגדרת כללים
יצירת טבלת DynamoDB והגדרת כללים
יצירת טבלת DynamoDB והגדרת כללים
יצירת טבלת DynamoDB והגדרת כללים
יצירת טבלת DynamoDB והגדרת כללים
יצירת טבלת DynamoDB והגדרת כללים
יצירת טבלת DynamoDB והגדרת כללים
יצירת טבלת DynamoDB והגדרת כללים

א) ראשית, נווט אל שירותי AWS על ידי לחיצה על

שירותים ולאחר מכן DynamoDB. לחץ על צור טבלה.

ב) הזן את שם הטבלה "iotdata" ואת המפתח הראשי "deviceid" עם מקש מיון "dateetimeid", ולאחר מכן לחץ על צור בתחתית הדף.

ג) לאחר מכן, נווט חזרה לדף ה- IoT Core. לחץ על Act ולאחר מכן לחץ על צור חוק חדש.

ד) צור כלל בשם "MyDynamoDBRule". תחת נושא הצהרת שאילתת הכלל, הזן "חיישנים/אור".

ה) תחת הגדר קטע פעולה אחד או יותר, לחץ על הוסף פעולה, לחץ על "פיצול הודעה למספר עמודות בטבלת מסד נתונים". לחץ על הגדרת הפעולה. תחת שם הטבלה, בחר את הנתונים iotdata. תחת שם התפקיד IAM, בחר את התפקיד שיצרת בעבר שהוא "dynamodb_role". לחץ על הוסף פעולה ולאחר מכן צור כלל.

ו) לחץ על יצירת כלל.

שלב 6: התוצאה הצפויה

תוצאה צפויה
תוצאה צפויה
תוצאה צפויה
תוצאה צפויה

בָּחוּץ

עבור pi המייצג את החוץ של החדר, סקריפטים heatdetector.py ו- AccessDoor.py יופעלו. אם כרטיס שגוי לוחץ על סורק ה- RFID, האזעקה תידלק, כאשר נורית הלד הצהובה עדיין דולקת. הודעת SMS תישלח לטלפון של בעל הבית כדי להודיע על חדירה אפשרית. אזעקה תהיה גם קולית. כמו כן תצלם ותעלה מיידית לדלי S3. אם הכרטיס שנלחץ מאושר, הנורית הירוקה תדלק והמשתמש יכול להיכנס. הדלת תינעל שוב לאחר 15 שניות (נורית ירוק תכבה ונורית צהובה נדלקת). אם הטמפרטורה בחדר/הבית תהיה גבוהה מדי (לטמפרטורה שנראית לנו כבית/חדר שעלולה להישרף), נשלח התראת SMS לבעל הבית. אזעקה תהיה גם קולית כאשר הנורית האדומה מבחוץ מוארת.

מקורה

עבור pi המייצג את פנים החדר, התסריטים publishHeat.py, server.py, pubsub.py, telegrambot.py יופעלו. Pubsub.py יאחסן את ערכי הזמן האמיתי ב- DynamoDB. כאשר server.py מופעל, הקלד את כתובת ה- ip של rpi: 5000 בדפדפן, תועבר לממשק האינטרנט שלנו. יש לנו גרף המציג ערכי אור בזמן אמת המתקבלים מהחיישנים שלנו ב- pubsub.py ל- DynamoDB. בנוסף, ערכי אור היסטוריים יוצגו גם בממשק האינטרנט שלנו. publishHeat.py יפרסם ערכי טמפרטורה ללוח החיצוני החיצוני למטרות חיישן אש. telegrambot.py יאפשר למשתמש לשלוט מרחוק על הדלקה/כיבוי של נורת הלד בחדר/הבית, כמו גם לצלם תמונה של מה שקורה בפנים ולהעלות את התמונה לדלי S3.

להדמיה טובה יותר של האופן בו התוצאה הצפויה אמורה להיראות:

שלב 7: קודי מקור (Pastebin)

קודי מקור (Pastebin)
קודי מקור (Pastebin)

לחץ על הקישור. מורכב מכל קודי המקור הדרושים:

שלב 8: הפניות

הפניות
הפניות

Iotguider. (2019). שלח SMS מ- Raspberry Pi באמצעות Python. [מקוון] זמין בכתובת: https://iotguider.in/raspberrypi/send-sms-from-raspberry-pi-python/ [גישה ל- 21 באוגוסט 2019].

מוּמלָץ: