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

Smart B.A.L (תיבת דואר מחוברת): 4 שלבים
Smart B.A.L (תיבת דואר מחוברת): 4 שלבים

וִידֵאוֹ: Smart B.A.L (תיבת דואר מחוברת): 4 שלבים

וִידֵאוֹ: Smart B.A.L (תיבת דואר מחוברת): 4 שלבים
וִידֵאוֹ: Электрика в квартире своими руками. Финал. Переделка хрущевки от А до Я. #11 2024, יולי
Anonim
Smart B. A. L (תיבת דואר מחוברת)
Smart B. A. L (תיבת דואר מחוברת)

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

שלב 1: ציוד

ציוד
ציוד

שפות בשימוש: C/C ++

ידע בסיסי באלקטרוניקה דיגיטלית.

דרישות חומרה:

גרוב-ג'ירו דיגיטלי בעל 3 צירים:

ערכת מודול sigfox עם אנטנה:

כפתור לחיצה אקראי (בחר מה שאתה רוצה).

Nucleo F030R8:

דרישות תוכנה:

מחשב עם דפדפן טוב לעבודה עם מהדר Mbed.

שלב 2: הכינו את המכשיר שלכם

הכינו את המכשיר שלכם
הכינו את המכשיר שלכם

ראשית, עלינו לחבר את כל המודולים לשבב.

הפעל את מודול הסיגפוקס והג'ירוסקופ במתח של 3.3! ואז חבר את חוטי UART למודול Sigfox (PA_9, PA_10) ואת חוטי I2C לג'ירוסקופ (PB_10; PB_11). חבר את הכפתור בעזרת סיכות PB_3. בסיום, ריכז את הקוד למטה.

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

#כלול "mbed.h" #כולל "ITG3200.h" // ---------------------------------- -// תצורה היפר-סופנית // 9600 שידורים, נתונים של 8 סיביות, ללא זוגיות // ------------------------------ ------ מחשב סידורי (SERIAL_TX, SERIAL_RX); סיגפוקס סידורי (PA_9, PA_10, NULL, 9600); InterruptIn bouton (PB_3); גירוס ITG3200 (PB_11, PB_10); אפליקציית int נדיפה; int facteur = 0; טיימר t; סוללת AnalogIn (A3); AnalogIn ref_batt (ADC_VREF); void lol () {pc.printf ("appui / r / n"); אפליקציה = 1; } /* void batt () {pc.printf ("batterie faible! / r / n"); }*/ int main () {int x, y, z; // הגדר את רוחב הפס הגבוה ביותר. gyro.setLpBandwidth (LPFBW_42HZ); חיץ חרוך [20]; bouton.fall (& lol); bouton.mode (PullDown); //batterie_faible.rise(&batt); //batterie_faible.mode(PullDown); pc.printf ("התחלה / r / n"); בעוד (1) {app = 0; x = gyro.getGyroX (); y = gyro.getGyroY (); z = gyro.getGyroZ (); אם (x> 5000) {t.start (); pc.printf ("דקה בכורה / r / n"); while (t.read () <10); pc.printf ("זמני סנפירים / r / n"); //pc.printf("app= %d / r / n ", אפליקציה); if (app == 0) {sigfox.printf ("AT $ SF = 636f757272696572 / r / n"); // colis: 636f6c69732e202020 sigfox.scanf ("%s", חיץ); pc.printf ("%s / r / n", חיץ); } pc.printf ("fin אם / r / n"); t.stop (); t.reset (); } /* if (batterie.read () <= (2.8* ref_batt.read () /1.23)) pc.printf ("batterie faible / r / n"); sigfox.printf ("AT $ SF = 636f757272696572 / r / n"); // colis: 636f6c69732e202020 המתנה (10); sigfox.printf ("AT $ P = 1"); המתן (10); sigfox.printf ("AT $ P = 0 / r / n");*/}}

שלב 3: הרכבה PCB

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

שלב 4: אתר גב

אתר גב
אתר גב
אתר גב
אתר גב

ביססנו את ארכיטקטורת ה- backend שלנו על IBM Cloud (IBM IoT Watson Platform ו- NodeRED) ועל בקשות API REST. הענן של IBM שימש לניהול התקשורת בין חלקים שונים במערכת שלנו. כפי שאתה יכול לראות בזרימת NodeRED שלנו, אנו שולטים בכל הבקשות המתקבלות מ- API של Sigfox (ששולח את ההודעות מהמכשיר שלנו) ומאתר Wix שלנו (לרישום מכשיר חדש). כמו כן, הענן אחראי לשליחת הודעת הדוא ל ללקוח ולרישום לקוח חדש שמידעו יישמר במסד הנתונים המבוסס על הענן שלנו (MongoDB). לפיכך, NodeRED בעצם מנהל את בקשות ה- API REST ושאילתות מסדי הנתונים (INSERT ו- SELECT) כדי להבטיח שההודעה הנכונה תישלח ללקוח הנכון בזמן.

מוּמלָץ: