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

הודעת דלת פטל פטל: 6 שלבים (עם תמונות)
הודעת דלת פטל פטל: 6 שלבים (עם תמונות)

וִידֵאוֹ: הודעת דלת פטל פטל: 6 שלבים (עם תמונות)

וִידֵאוֹ: הודעת דלת פטל פטל: 6 שלבים (עם תמונות)
וִידֵאוֹ: כשמפתיעים אותך בקניון🕺 2024, סֶפּטֶמבֶּר
Anonim
הודעה על דלת פטל פטל
הודעה על דלת פטל פטל

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

פרויקט זה ייתן לך קצת תרגול עם בקבוק, פטל פיס, חיישני GPIO וממשק ה- API של מנדריל! לא רק שזה כיף לבנות, אבל יש לזה הרבה תועלת. פולשים היזהרו…

שלב 1: חומרים מתכלים

אספקה
אספקה

עדיין מתכננים לבנות את המתקן הזה? הנה מה שאתה צריך:

  • פטל פי 3
  • כרטיס מיקרו אס די
  • 3 חוטים נקבה לנקבה
  • חיישן רטט אחד
  • בנק כוח
  • רצועות פיקוד

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

אם אתה בתהליך בנייה/בדיקה של מכשיר זה, אין צורך שיהיה לך את הדברים הבאים … עם זאת, זה בהחלט יעזור מאוד.

  • צג מחשב
  • מקלדת USB
  • ערכת טעינה מיקרו USB

שלב 2: חיווט

תִיוּל
תִיוּל
תִיוּל
תִיוּל

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

ניתן למצוא סכמטי חיווט למעלה (שמקורם ב https://www.piddlerintheroot.com/vibration-sensor/). כל שעליך לעשות הוא לחבר את כל החוטים כפי שמוצג בתמונה זו וחיישן הרטט שלך אמור להיות טוב. שים לב שבסופו של דבר תצטרך מארז סוללות לפרויקט זה, אך אם אתה בודק כנראה שזה מועיל לחבר את המכשיר לשקע בקיר.

שלב 3: הגדרת דברים

מזל טוב! הגעת עד לכאן. בואו נמשיך!

כעת נתחיל לעבוד ישירות עם ה- Pi. ניתן לבצע את כל הפעולות הבאות במכשיר באמצעות מקלדת וצג (או באמצעות SSH אם נוח לך).

יש הרבה הגדרות מקדימות בכדי לגרום לכל חיישן GPIO לעבוד עם Pi ו- Flask. סבלנות היא מעלה. יש לא מעט ספריות פייתון שתצטרך להתקין תחילה. ניתן לעשות זאת עם Pip, מנהל ספרייה/חבילות עבור Python. כדי להשתמש, הקלד 'pip install' כדי לתת שם למספר הספריות שתזדקק להן:

  • בקשות
  • RPi. GPIO
  • בקבוק
  • flask_restful
  • flask_wtf
  • wtforms
  • אימייל
  • מנדריל

אולי תרצה לשתות קפה בזמן שאתה מחכה להתקנת אלה - זה יכול לקחת קצת זמן.

כעת, לאחר שכל הספריות מותקנות אתה מוכן להתחיל בפרוייקט הבקבוק שלך. Flask היא מסגרת קלה המשרתת דפים מהמכשיר שבו הוא פועל. במקרה זה, ה- Raspberry Pi הופך לשרת. די מגניב, אה? אתה יכול ללמוד כיצד להגדיר יישום בקבוק פשוט מאוד כאן. אנא עשה זאת לפני שתנסה אחת מההוראות לאחר מכן.

שלב 4: קוד והרצה

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

כך צריכים להיראות ארגוני הספרייה:

+- iotapp | +- appFolder | +- תבניות | +- index.html | +- _init_.py | +- forms.py | +- mcemail.py | +- routes.py | +- iotapp.py | +- vibes.py

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

$ ייצוא FLASK_APP = iotapp.py

הפעלת בקבוק $ python -m -מארח 0.0.0.0

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

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

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

לאחר שתאמת את דומיין השליחה שלך ויש לך מפתח API תוכל למקם את המפתח שלך בקובץ 'mcemail.py' (היכן שהוא קיים) ולהתאים את פרטי השליחה (על ידי שינוי פרמטר ברירת המחדל באותו קובץ או על ידי העברת בדוא ל אחר בקובץ 'routes.py'. אם תרצה עוד תיעוד על מנדריל וכיצד להשתמש בו, תוכל למצוא זאת כאן.

שלב 5: בדיקה

בדיקה
בדיקה

לפני שתתקין את המכשיר במיקום הקבוע שלו, כנראה שכדאי לבדוק כל מה שהוא עושה. הנה איך אתה מפעיל את הדברים.

המכשיר למעשה מפעיל שתי תוכניות: `vibes.py` ושרת הבקבוק. הראשון צריך להיות מופעל ברקע ולאחר מכן ניתן להריץ את שרת הבקבוק. `vibes.py` הוא פשוט POSTing לשרת והשרת מפרש את בקשת ה- POST.

$ python vibes.py &

הפעלת בקבוק $ python -m -מארח 0.0.0.0

לאחר מכן תוכל לנווט אל ה- URI/IP הנכון ולהגדיר את כתובת הדוא"ל שאליה ברצונך לשלוח את כל ההודעות שלך. עליך להקיש על חיישן הרטט כדי לנסות לשלוח כמה הודעות דוא"ל לבדיקה ולוודא שהפרויקט פועל.

הכל נראה טוב? אוקיי, אנחנו מוכנים לעסקים!

שלב 6: הרכבה

הַרכָּבָה
הַרכָּבָה

התקנת המכשיר די מסבירה את עצמה. בעיקרון, עליך רק לוודא שהמכשיר מחובר לחבילת הסוללות ולהשתמש ברצועות פקודה כדי להצמיד את המכשיר לדלת.

הערה: המכשיר חייב להיות ממוקם עם חיישן הרטט בניצב לדלת כדי שהחיישן יתפוס את תנועת הדלת

לאחר סיום זה, אתה אמור להיות מסוגל SSH לתוך המכשיר ולהריץ את התוכניות כאמור בשלב הקודם ולחכות לפולשים!

לקבלת נקודות נוספות, נסה להסתיר את החוטים/המכשיר כדי שהפולשים לא יחשדו במכשיר החכם שלך! … או פשוט אל תניח אותו על דלת זכוכית. ¯ / _ (ツ) _/¯

מוּמלָץ: