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

פוסטינו: האם הדוור סיפק משהו ?: 6 שלבים (עם תמונות)
פוסטינו: האם הדוור סיפק משהו ?: 6 שלבים (עם תמונות)

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

וִידֵאוֹ: פוסטינו: האם הדוור סיפק משהו ?: 6 שלבים (עם תמונות)
וִידֵאוֹ: 500歲新郎橡樹,提供約會服務128年,曾收到中國的求愛信,德國漢堡新郎橡樹,Bridegroom's Oak,Germany,500 year old groom Oak 2024, נוֹבֶמבֶּר
Anonim
פוסטינו: האם הדוור מסר משהו?
פוסטינו: האם הדוור מסר משהו?

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

האילוצים היו:

  • מופעל באמצעות סוללה עם חיים סבירים בין החלפות סוללות;
  • תקשורת WiFi;
  • בדוק רק פעם ביום אם יש דואר או לא;

השאלה העיקרית הייתה: איזה סוג של חיישן יכול להתאים לדרישות שלי? חיישן קרבה לא יכול היה לעבוד, שכן הבדיקה הייתה צריכה להיעשות רק פעם ביום ולא בזמן אמת; גם חיישן משקל, מכיוון שזה היה מוסיף בעיות מורכבות ורגישות (דף נייר יכול להיות קל מאוד). הבחירה שלי נחתה על חיישן זמן טיסה (מיקרו לייזר). לאחר שמכויל אותו לגודל תיבת הדואר, כל דבר שנמצא באמצע היה מפעיל את החיישן! בהתחשב ב -3 האילוצים, החלטתי להשתמש ב- ESP8266 (הפעלת התוכנה וקישור ל- WiFi), חיישן VL6180 Time-of-Flight למדידה ושעון בזמן אמת DS3231 כדי להפעיל את כל המעגלים פעם ביום: כך היה פוסטינו נולד!

שלב 1: חלקים ורכיבים

  • ESP8266-01 (או ESP-12E NodeMCU)
  • חיישן VL6108 זמן טיסה
  • שעון בזמן אמת DS3231
  • IRLZ44 ערוץ N MosFET
  • טרנזיסטור BC547
  • נגדים
  • סוללה CR123

שלב 2: החיישן

החיישן
החיישן

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

המודול מיועד להפעלה בהספק נמוך. השתמשתי בלוח הפריצה של Pololu שבו יש ווסת מתח המאפשר לו לעבוד על טווח מתח כניסה של 2.7 V עד 5.5 V.

החיישן מאפשר 3 גורמי קנה מידה תקפים שקובעים את הטווח המרבי של המדידה בין 20 ל -60 ס"מ, עם רגישויות שונות. על ידי הגדרת גורם קנה מידה של טווח, ניתן להגדיל את הטווח המרבי הפוטנציאלי של החיישן במחיר של רזולוציה נמוכה יותר. הגדרת גורם הגודל ל -2 מספקת טווח של עד 40 ס"מ ברזולוציה של 2 מ"מ, ואילו גורם קנה מידה של 3 מספק טווח של עד 60 ס"מ ברזולוציה של 3 מ"מ. עליך לבדוק את שלוש הסולמות עם מידות תיבת הדואר שלך. מכיוון ששלי היה 25 ס"מ (H) השתמשתי במקדם סולם = 1.

שלב 3: התאמה אישית של שעון בזמן אמת

עבור ה- RTC השתמשתי בלוח פריצה DS3231 הכולל EEPROM (חסר תועלת למטרה שלי) וסוללה בגודל מטבע. כשהחלטתי להפעיל את ה- RTC באמצעות סוללת המכשיר הראשי (3v CR123), הסרתי את סוללת המטבע; כדי לחסוך בחשמל הסרתי גם את ה- EEPROM (על ידי חיתוך זהיר של הסיכות שלו) והנייד המשולב.

סוללת המטבע לא הייתה שימושית עבורי מכיוון שלא הייתי צריך לשמור תאריך/שעה/דקה/שנייה בזמן אמת, אך ה- RTC היה צריך רק לספור במשך 24 שעות ולאחר מכן להפעיל את האזעקה להפעלת המכשיר.

שלב 4: שונות אחרות על הסיפון

שונות שונות על הסיפון
שונות שונות על הסיפון
שונות שונות על הסיפון
שונות שונות על הסיפון

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

בנוסף, הוספתי מגשר "test-1M". מטרתו של מתג זה היא - אם היא מופעלת - לשנות את המחזור מפעם ביום לדקה אחת, על מנת להריץ בדיקות פריסה. על מנת לשנות את המרווח מיום אחד לדקה, תחילה עליך לסגור את מגשר "Test-C" למשך כ -15 שניות, לעקוף את תקופת הפעלת השעון המעורר ולהפעיל את המכשיר. בסיום הבדיקות, פתח את המגשרים ואפס את המכשיר (כוח מחזור).

שלב 5: סכמטי

סכמטי
סכמטי

שלב 6: תוכנה והיגיון

במהלך הבדיקות השתמשתי (מסיבות מעשיות) בבקר NodeMCU, כך שהתוכנה מטפלת בכך על ידי הגדרת ה- CHIP variale ל- "NodeMCU" או "esp8266".

הסקיצה מיישמת את ספריית WiFiManager כדי לאפשר למכשיר להתחבר ל- WiFi AP תקף במהלך הריצה הראשונה. במקרה כזה, המכשיר נכנס למצב AP, ומאפשר לך להתחבר אליו ולבחור את רשת ה- WiFi המתאימה להצטרף אליו. לאחר מכן, תצורת הרשת נשמרת ב- EPROM למחזורים הבאים.

המשתנה REST_MSG מכיל את הודעת ה- http שיש לשלוח כאשר החיישן מוצא אובייקט בתיבת הדואר. במקרה שלי, הוא שולח הודעה לשרת REST דומטי, אך תוכל לשנות אותה כרצונך: הודעת BOT של טלגרם, אירוע IFTTT WebHook וכו '.

שאר המערכון כולו בפונקציית ההתקנה (), מכיוון שלעולם לא מגיעים ללולאה. לאחר התצורות הדרושות למספר הספריות, התוכנה מגדירה את זמן השעון ל -00: 00:01 ואת האזעקה לפעם ביום (או פעם בדקה אם מגשר "test-1M" מופעל). ואז הוא מבצע את המידה, שולח את ההודעה (אם אובייקט כלשהו נמצא בתיבת הדואר) ומאפס את סיכת האזעקה, מכבה את המכשיר. בסוף המחזור, רק ה- RTC מופעל, וסופר במשך 24 שעות. מגשר Test-1M מחובר לסיכת RX של ה- ESP8266, המשמשת כ- GPIO-3 באמצעות ההגדרה: setMode (PIN, FUNCTION_3). בשל כך, אינך יכול להשתמש בצג הטורי בעת הפעלת ESP8266: השורה "#define DEBUG" (המאפשרת את כל ההדפסים הסדריים בסקיצה) משמשת רק כאשר מותקן NodeMCU במקום ESP8266.

ה- ESP8266 מטפל בתקשורת I2C עם ה- RTC והחיישן באמצעות סיכותיו GPIO-0 ו- GPIO-2, המאתחלות בספריית Wire.

ניתן להוריד את הקוד המלא מקישור זה.

תחרות טק מסייעת
תחרות טק מסייעת
תחרות טק מסייעת
תחרות טק מסייעת

סגנית בתחרות הטכנולוגיה המסייעת

מוּמלָץ: