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

טאלוס, שמירה על בטיחותך במהלך הנסיעות שלך: 5 שלבים
טאלוס, שמירה על בטיחותך במהלך הנסיעות שלך: 5 שלבים

וִידֵאוֹ: טאלוס, שמירה על בטיחותך במהלך הנסיעות שלך: 5 שלבים

וִידֵאוֹ: טאלוס, שמירה על בטיחותך במהלך הנסיעות שלך: 5 שלבים
וִידֵאוֹ: הקלטה: מפגש הסברה משרת קציני/ות ביטחון - רויאל קריביאן 2024, נוֹבֶמבֶּר
Anonim
טאלוס, שומר על בטיחותך במהלך הנסיעות שלך
טאלוס, שומר על בטיחותך במהלך הנסיעות שלך

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

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

ישנם שלושה חלקים בפרויקט זה:

- מודול פיזי: השתמשתי במודול Puck-js, המבוסס על המודול nRF52832 וניתן לתכנת אותו באמצעות Javascript הודות ל- Espruino- אפליקציית אנדרואיד: יצרתי אפליקציה פשוטה המתחברת למודול- מכסה מחזיק מפתחות: הכנתי פשוט כיסוי ל- Puck JS שייראה כמו מחזיק מפתחות פשוט

אספקה

- מודול Puck.js (https://www.puck-js.com)

- טלפון אנדרואיד עם גרסה 8.0 לפחות- מחשב עם Android Studio מותקן

- מדפסת תלת מימד (אופציונלי)

שלב 1: סקירה כללית

סקירה כללית
סקירה כללית

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

שלב 2: תכנות הפאק

תכנות הפאק
תכנות הפאק

לאחר שבדקת ב- puck-js.com שהדפדפן והמחשב שלך תומכים ב- Bluetooth באינטרנט, עבור אל www.espruino.com/ide והתחבר ל- Puck שלך על ידי לחיצה על סמל התקע בפינה השמאלית העליונה של הדף.

לאחר מכן תוכל להעתיק ולהדביק את הקוד מהקובץ המצורף לתוך העורך ולשלוח אותו ל- Puck.

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

לאחר הצהרות אלה, על הקוד שיבוצע:

הקוד בשורה 56 מאפשר לך לאחזר את הכתובת הפיזית של הפאק שלך, שתצטרך לבטל את האפליקציה באפליקציית אנדרואיד: בטל את התגובה של שורה זו ותראה את הכתובת ביומנים בצד שמאל של ה- IDE (ראה המצורף צילום מסך). ברגע שיש לך ערך זה, תוכל להגיב על השורה או להשאיר אותה כך.

לאחר מכן, אנו מגדירים שירות BLE מותאם אישית אחד (UUID הם ערכים אקראיים) עם שלושה מאפיינים שונים, שכולם ניתנים לדיווח. לא נשתמש בערכים עצמם להעביר את המסר שלנו אלא רק בעובדה שהם השתנו.

בשורות 78 ו -79, הגדרנו כמה מאזינים שיגרמו לנורית ה- LED המשולבת להבהב בכל פעם שהמכשיר מחובר או מנותק ממכשיר Bluetooth אחר. לבסוף, בקו 81, אנו מצרפים הפרעה לכפתור המשולב כך שלחיצה עליו תקרא לפונקציה updateCharacteristic

שלב 3: יצירת אפליקציית אנדרואיד

יצירת אפליקציית אנדרואיד
יצירת אפליקציית אנדרואיד
יצירת אפליקציית אנדרואיד
יצירת אפליקציית אנדרואיד
יצירת אפליקציית אנדרואיד
יצירת אפליקציית אנדרואיד
יצירת אפליקציית אנדרואיד
יצירת אפליקציית אנדרואיד

מכיוון שכל האפליקציה כוללת כמה ספריות כבדות למדי, כללתי רק את קבצי המקור ואת קובץ ה- gradle לאפליקציה בתוך ה- zip המצורף. כדי לגרום לזה לעבוד, עליך להפעיל את סטודיו אנדרואיד וליצור פרוייקט חדש (בחר פעילות ריקה, ראה צילום מסך). בחר 26 (אנדרואיד 8.0, אוראו) כגרסת המינימום לאפליקציה מכיוון שחלק מהקוד שכתבתי משתמש בממשקי API שלא היו קיימים לפני כן. לאחר הגדרת הפרויקט, יהיה לך קובץ build.gradle לאפליקציה (מסומן build.gradle - מודול: אפליקציה). פתח אותו והעתק את התוכן מקובץ ה- zip: ה- IDE יבקש ממך לבצע סנכרון Gradle שבמהלכו הוא יוריד את הספרייה הנורדית שעליה האפליקציה מסתמכת. לאחר מכן תוכל להפעיל את האפליקציה פעם אחת ולבדוק שהיא פועלת.

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

כעת תוכל לייבא את קבצי המקור מארכיון ה- zip: הדרך הקלה ביותר לעשות זאת היא ליצור שיעורים חדשים (קליק ימני, קובץ/מחלקה חדשים של Kotlin) ולתת להם את אותו שם כמו הארכיון. ברגע שקובץ הכיתה פתוח, אתה רשאי להעתיק ולהדביק את הקוד בתוכם.

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

אם אתה רוצה לדעת יותר על אופן הפעולה של האפליקציה, המשך לקרוא:-)

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

- BTService הוא שירות קדמי, כלומר בכל פעם שהוא מושק, הוא יוצר הודעות מתמשכות המגבילות את דמיון השירות של הורגת אנדרואיד. שירות זה מנסה להתחבר ל- Talos באמצעות תהליך קלאסי של Bluetooth Low Energy - השתמשתי בקוד לדוגמא של נורדי ובמשאבים אחרים שיכולתי למצוא. כרגע הוא מחפש במיוחד את ה- UUID של הפאק: עליך לשנות ערך זה (private val remoteMacAddress = "CF: EB: 2F: 6E: 33: 30") כך שיתאים לכתובת המכשיר שלך שהושגה בשלב הקודם. לאחר שמצא את המכשיר ובדק אם יש לו את השירות אותו אנו מחפשים, הוא מנוי להודעות על המאפיין שיתעדכן בכל פעם שהמשתמש ילחץ על הכפתור.

כאשר שירות ה- BTS אכן יקבל עדכון למאפיין זה, הוא יפעיל אובייקט LocalBroadcast כך שרכיבי האפליקציה האחרים יגיבו. הוא גם יתקשר ל- SMSIntentService כדי שישלח את ה- SMS

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

שלב 4: עיצוב מארז

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

שלב 5: לשים את הכל ביחד

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

הדפס תלת מימד את העיצוב שיצרת זה עתה - השתמשתי בכמה PLA סגול והצמדתי למעלה על הפאק

מוּמלָץ: