תוכן עניינים:
- אספקה
- שלב 1: הורד, שנה קבצים והדפס קבצים תלת -ממדיים
- שלב 2: רכיבי הלחמה/הרכבה - חלק א (לוח מקשים ומספר צד)
- שלב 3: רכיבי הלחמה/הרכבה - חלק ב '(כנפי נוצות וחיישנים)
- שלב 4: רכיבי הלחמה/הרכבה - חלק ג '(לוח מקשים לחיישן קיבולי ומעטה במארז)
- שלב 5: אופציונלי - הלחמה/הרכיב רכיבים - חלק ד '(נוצה INA219)
- שלב 6: הברג את המכסה האחורי וחבר USB
- שלב 7: הכנת סביבת AWS
- שלב 8: הורד מפתחות תוכנה והגדר שירותי צד שלישי
- שלב 9: שנה והעלה קוד AWS
- שלב 10: הכן את Arduino IDE והורד ספריות
- שלב 11: עדכן והתקן את קוד Arduino והפעל
וִידֵאוֹ: עשה זאת כך! מחשב מיני הנדסי מסע בין כוכבים TNG: 11 שלבים (עם תמונות)
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:13
סקירה כללית
גדלתי כשצפיתי במסע בין כוכבים: הדור הבא. תמיד רציתי לבנות מכשיר בנושא מסע בין כוכבים, אז סוף סוף יצא לי לערבב מחדש את אחד הפרויקטים הישנים שלי כדי ליצור מסוף תצוגה של מסע בין כוכבים.
הטרמינל מספק את המידע הבא:
- מזג אוויר - באמצעות שירות מזג האוויר הלאומי
- טמפרטורה פנימית, לחות ועוצמה אורגנית נדיפה (VOC)
- כתבות חדשות - מאת News.org
- לוח זמנים (עם פונקציית אזעקה) - מ- Microsoft Outlook
- מידע על כושר (צעדים, דקות הזזה, נקודות לב, משקל, קלוריות שנשרפות) - מ- Google Fitness
- תרשים קוד צבע של הנגד
- מחשבון הנגד נגד LED (לקביעת ערך הנגד על סמך הזרם והספק המקור)
- כלי מדידת כוח וזרם
מידע זה זמין באמצעות שילוב של ממשקי API וחיישני חומרה. אני ממנף ESP32 עבור המיקרו -בקר וממנף את ענן AWS לכל איסוף הנתונים והצבירה שלהם.
כללתי גם כמה "ביצי פסחא":
-
מחווה של רון מקנאייר - ד ר מקנאייר היא הסיבה שהפכתי למהנדס; הוא גדל 45 דקות מעיר הולדתי. הוא מת בפיצוץ צ'לנג'ר.
- שמה של ספינת הכוכבים שלי הוא "USS Ronald E McNair"
- מספר הרישום הוא מתאריך לידתו של מר מקנאייר; קוד הקידומת הוא היום בו איבד את חייו.
- השימוש ב"קוד קידומת "מהווה קריצה להנאת מסע בין כוכבים: זעם של חאן (הסרט הגדול ביותר של מסע בין כוכבים; אל @ לי).
- מספרי הזכות של התיק הסופי מתייחסים לאחווה שלי (1906 - Alpha Phi Alpha) ולאלמא מאטר ותחום הלימוד שלי - (אוניברסיטת אוקלהומה, המכללה להנדסה)
יש לך אפשרות להתאים אישית את המספור, האותיות ושם הספינה, הרישום וכו 'ל"ביצי הפסחא "שלך.
רקע כללי
בשנה שעברה, הייתי צריך דרך בעלות נמוכה למדידת חשמל וריקון הסוללות לפרויקט לביש. רכשתי Adafruit INA219 Featherwing והשתמשתי בכמה חלקי חילוף לבניית מכשיר מדידת כוח פשוט (תוכל לקרוא עוד על זה כאן).
השנה החלטתי לשדרג את המכשיר… כדי להפוך אותו ליותר "טכנולוגי". תכננתי במקור לבנות מסלול של מסע בין כוכבים (גרסת Mark IV TR-590 Mark IX, למי שאכפת לו) … אבל מהר מאוד הבנתי שזה יותר הגיוני ליצור משהו שישב על השולחן שלי (כלומר, למה תעשה כל צרה כדי ליצור מכשיר מגניב, רק כדי לסגור אותו ולשים אותו במגירה כשאינו בשימוש).
אז פניתי ליצור גרסה של מסכי המחשב שאתה רואה במסע בין כוכבים TNG או וויאג'ר (או הסרטים השונים). השתעשעתי בעיצובים שונים, ואז נתקלתי בגרסה שיצרו האחים רואיז של אדאפרוט. Adafruit עושה עבודה מצוינת בקבצי מקור המסופקים לפרויקטים המודפסים בתלת -ממד שלהם, כך שהצלחתי לקחת את הגרסה המקורית שלהם ולערוך אותה מחדש עבור החומרה, הכפתורים וציוד היקפי אחר.
דברים שכדאי לדעת לפני שתמשיך
- אני מספק הוראות שלב אחר שלב להכנת הגרסה שלי לפרויקט; עם זאת, אינני נכנס לפרטים על שלבים מסוימים (אני אקשר להוראות תומכות או לתיעוד)
-
זהו פרויקט מורכב. זהו "יצור רב-ממושמע", הדורש את הכישורים הבאים
- Arduino IDE
- AWS - תזדקק לחשבון ותצטרך להבין את S3, Lambda ו- Node JS
- הַלחָמָה
- הדפסה תלת מימדית
- ישנן "תוספות" אופציונאליות לשיפור הפרויקט על מנת לקבל מידע על לוח השנה והכושר. הפונקציונליות כלולה בבסיס הקוד; עם זאת, יהיה עליך ליצור "אפליקציות" בענני Azure ו- Google כדי לתמוך בתכונות.
- זה בסופו של דבר ניתן להתאמה אישית … אתה יכול להחליף את חיישן הזרם עם כנף נוספת אתה יכול להשתמש בשילוב נוצה/wifi אחר.
אספקה
רכיבים אלקטרוניים
- נוצת חוזה Adafruit ESP32
- ערכת מיני משולשת Adafruit Featherwing
- Adafruit חיישן מגע קיבולי בעל 12 מפתחות
- Adafruit TFT FeatherWing - מסך מגע בגודל 3.5 אינץ '480x320
- Adafruit BME680 - חיישן טמפרטורה, לחות, לחץ וגז
- לוח DC DC 2.1 חבית (2)
- סוללת ליתיום יון פולימר - 3.7 V 500mAh
- זמזום פיזו
- כבל USB מירקו ומטען 5V (מטען טלפון USB טיפוסי יעבוד)
- סרט נייר נייר עם דבק
- אופציונלי - Adafruit INA219 Featherwing
- אופציונלי - 2.1 תקעים זכריים - (לשימוש עם חיישן הזרם INA219)
קישור לכל הרכיבים האלקטרוניים למעט 2.1 תקעים:
רכיבי נימה תלת -ממדיים ורכיבי צבע/שיוף אופציונליים
- פרוטו פסטה מוליכה PLA
- נימי תלת מימד נוספים - השתמשתי ב -4 צבעים - אפור, שחור, אקווה (תכלת) ולבן
- חרירי.25 ו- 0.4 מ"מ (השתמשתי ב- 0.25 לפרטי האותיות).
רכיבי וכלים להרכבת חומרה
- ברגים M2x5 ו- M3x5
- סיכות כותרת ישרות וזווית ישרה (ראה קישור לרשימת המשאלות של Adafruit)
- מגהץ (וסליל הלחמה, פחית קצה, פראייר הלחמה וכו ')
- ערכת מברג ראש פיליפס
- עטיפה מתכווצת
- חוט תקוע 22AWG - חמישה או שישה צבעים
- חוט מוצק 22AWG - חמישה או שישה צבעים
- PCB Vise וידיים עוזרות (אופציונלי, אך מקל על הלחמה)
- חותכי חוטים אלכסוניים
- חשפניות חוטים
- סכין Xacto (להסרת תומכים מחלקי מדפסת תלת מימד)
- מדפסת תלת מימד (אם בכוונתך להדפיס בעצמך)
- מרק או סרט (כדי להצמיד את הסוללה לחלק הפנימי של המארז המודפס)
- קליפרים דיגיטליים
- דבק קראזי
- אופציונלי - כפפות חד פעמיות של ניטריל
- אופציונלי - שטיח הלחמה (אופציונלי, אך מגן על משטחים)
הערה: אם אין לך את הכלים האלה, אני מציע לך לבדוק באתר של בקי שטרן לקבלת המלצות לאפשרויות טובות.
תוֹכנָה
שלב 1: הורד, שנה קבצים והדפס קבצים תלת -ממדיים
תוכל לשלוח את הקבצים לשירות הדפסה תלת ממדית (כמו 3D Hubs) או להדפיס משלך. קבצים זמינים באתר PrusaPrinters.org.
מקרה זה הוא רמיקס לשעון מעורר Py Portal המופיע באתר Adafruit. הפרויקט שלי משתמש ב- TFT דומה, כך שהצלחתי למזער את כמות עבודת העיצוב הדרושה בכדי לגרום למארז לעבוד עם האביזרים שלי.
השתמשתי בהגדרות הבאות להדפסה:
- מלפנים ומאחור- מודפס בגובה שכבה 0.2 מ"מ עם זרבובית 0.4 מ"מ, ללא תומכים
- מספר צד - מודפס בגובה שכבה 0.10 מ"מ עם זרבובית 0.25 מ"מ, ללא תומכים
- מפתחות - מודפסים בגובה שכבה 0.2 מ"מ עם זרבובית 0.4 מ"מ. יהיה עליך להדפיס 7 ותצטרך להדפיס בעזרת נימה מוליכה Proto-Pasta.
-
מארז - מודפס בגובה שכבה 0.2 מ מ.
יש צורך בתמיכות, אך אין צורך בכל מקום (רק בצדדים ובאמצע שבו לוח המקשים יושב
כמה דברים שכדאי לדעת:
- ה- Prusa MK3 מאפשר לך לשנות צבעים בגבהים שונים של שכבות. השתמשתי בתכונה זו עבור החלק המספר צדדי.
-
כמו כן, ביחס ליצירת מספר הצד:
- צוות הייצור של מסע בין כוכבים TNG היה מפזר ביצי פסחא באביזרים. אם תסתכל מקרוב על לוחות ופאנלים שונים, תראה שמות של אנשים, מילות שיר וכו '. רציתי ליצור "ביצת פסחא" משלי למספר הצדדי, אז אני משתמש ב" 06 " - המתייחס לאחווה שלי (נוצר בשנת 1906), ו- "OUCOE" - המתייחס לעלמא מאטר שלי (אוניברסיטת אוקלהומה, המכללה להנדסה).
- יצרתי פיסת צד_מספר "ריקה" שתוכל לשנות כדי ליצור מספר וטקסט מותאם אישית משלך.
שלב 2: רכיבי הלחמה/הרכבה - חלק א (לוח מקשים ומספר צד)
ראשית, נחבר את מספר הצד. השתמש בטיפת דבק קטנה כדי לשים את מספר הצד במקום.
לאחר מכן נרכיב את לוח המקשים
-
יהיה עליך לחתוך 7 חתיכות חוט תקוע - כל אחת באורך של 10-12 אינץ '. אלה יחוברו לסיכות 0-6 של חיישן המגע הקיבולי. אני מציע לך להשתמש בצבעים שונים (ולכתוב את הצבעים/מיפוי סיכות, מכיוון שתזדקק למידע זה מאוחר יותר). השתמשתי בשילוב הצבעים הבא:
- צהוב - סיכה 0/לחצן 1
- אפור - סיכה 1/לחצן 2
- אדום - סיכה 2 /לחצן 3
- כחול - סיכה 3 // לחצן 4
- ירוק - סיכה 4 // לחצן 5
- לבן - סיכה 5 // לחצן 6
- שחור - סיכה 6 // לחצן 7
- רצועה 1/2 פנימה מקצה כל חוט.
- חותכים 7 פיסות סרט מוליך (כל אחת ברוחב 1/2 אינץ ') ומלחמים את החוטים לצד הנחושת של הקלטת.
- הסר את גיבוי הדבק והדבק אותם לתחתית המפתחות. ייתכן שיהיה עליך לקצץ חלק מסרט הנחושת.
הערה: ניתן להדביק את המפתחות מלמטה (כך שהם יישרפו מהחלק העליון) או להדביק מלמעלה (כך שהם "צפים" כמה מ"מ מלמעלה). בחרתי להדביק את שלי מלמעלה.
לאחר שסיימת את כל 7, השתמש בטיפת דבק קטנה והדביקי את המפתחות ללוח המקשים. נראה לי שקל יותר:
- ראשית "נחש" את החוט דרך חור המפתח.
- לאחר מכן הניחו טיפת דבק קטנה על הרכס/שפת המפתח
- שים במהירות את המפתח במקומו.
הערה: Krazy Glue פועל כאן בצורה הטובה ביותר; ייתכן שתרצה להשתמש בכפפות כדי להגביל תאונות וסיכוי לגירוי בעור.
שלב 3: רכיבי הלחמה/הרכבה - חלק ב '(כנפי נוצות וחיישנים)
השלב הבא הוא הכנה והרכבה של רכיבי החומרה. בסופו של דבר, פירוש הדבר הלחמת סיכות וחוטים לכותרת לשימוש מאוחר יותר. מדריך זה מניח שאתה מרגיש בנוח עם הלחמה; אם לא, עיין במדריך זה להלחמה מצוינת של Adafruit.
ראשית נכין חומרים. לשלב זה תצטרך:
- TFT 3.5 נוצות
- נוצה ESP32
- INA219 Featherwing
- משולש נוצות משולש
- חיישן מגע קיבולי MPR121
- חיישן BME680
- סיכות כותרת ישרות וזווית ישרה
- חוט מוצק ומתוח
- כלי הלחמה וידיים עוזרות
- חותכי חוטים אלכסוניים ומפשיטי תיל
- מְחוּגָה
הערה: אני מציע שתקרא קודם כל את השלב הזה ותחתוך את כל החוטים והכותרות שלך לפני שתתחיל להלחם. בדרך זו, לא תצטרך לעצור כדי למדוד/לחתוך.
הכן את TFT 3.5 Featherwing
ה- TFT מוכן לשימוש מחוץ לקופסה עם ההתאמה היחידה. יהיה עליך להלחם חוט בין כרית "לייט" לבין כרית הלחמה. הקוד שלנו משתמש ב- ESP32 Pin 21 לשליטה ב- TFT lite. מסדרים את ה- TFT בדרך ה"ארוכה ", כפתור האיפוס בתחתית. סיכה 21 תהיה הסיכה השמאלית התחתונה.
חותכים חתיכת 40 מ מ חוט תקוע. רצו את הקצוות כך שיופיעו כמה מילימטרים של חוט בכל קצה. בעזרת הלחמה שלך, הלחם בזהירות לשני הסיכות.
הערה: אתה צריך רק בערך 35 מ מ אורך … כך שתוכל לקצץ את החוט שלך לפי הצורך. כמו כן, אני מוצא שהוספת הלחמה לרפידה, ואז לחוט, ואז הלחמת החוט לרפידה היא הגישה הקלה ביותר. לבסוף - רפידות אלה קטנות … אם אינך מרגיש בנוח, תוכל תמיד לדלג על שלב זה: הוא נועד רק לכיבוי ה- TFT בעזרת לוח המקשים.
הכן את נוצת ESP32
יהיה עליך להלחים סיכות כותרת סטנדרטיות לגבר ל- ESP32. ה- ESP32 שלך אמור להגיע עם הכותרות, אם כי ייתכן שיהיה עליך לחתוך אותן כדי להגיע לאורך הנכון (16 סיכות בצד הארוך; 12 סיכות בצד הקצר). סיכות כותרת מיוצרות כדי "להיסלק", כך שתוכל להשתמש בחותכי האלכסון שלך כדי לסגור את הכותרות לאורך הנכון. שוב, ל- Adafruit יש הוראות נהדרות כיצד לעשות זאת, לכן בדוק זאת אם אתה זקוק להדרכה.
אופציונלי - הכינו את INA219 Featherwing
ראשית, כותרות זכריות הלחמה אל נוצת הנוצות (באמצעות אותן הוראות ששימשו ל- ESP32). לאחר מכן חותכים ארבעה חוטים תקועים באורך 20 מ מ. הייתי עושה 2 BLACK והאחרים בצבע אחר. השתמשתי באפור ובכחול לבחירת הצבעים שלי.
הפשיטו את קצות החוט כך ש- 3-4 מ מ של חוט נחושת נחשף בכל קצה. תוכלו להלחים אחד מכל חוט כמפורט להלן:
- אפור -> V+ (פלוס)
- כחול -> V- (מינוס)
- שחור -> GND (טחון)
- שחור -> GND (טחון)
השאר את הקצוות האחרים של החוטים בשלב זה; בסופו של דבר נלחם אותם לתקעי DC 2.1.
צרף את זמזם הפיזו
ה- INA Featherwing מגיע עם אזור טיפוס קטן; נשתמש בזה כדי לצרף את הפיצו שלנו. הפייזו יעניק לפרויקט שלנו את היכולת לצפצף ולהתריע על התראות, אזעקות וכו '.
הפייזו מתחבר ל- ESP32 PIN 13; זה מתאם לסיכה שלצד סיכת ה- USB שבנוף הנוצה (ראה תמונה לחצים). סיכת הפיצו השנייה מתחברת לקרקע. סיכות הפיז ארוכות מספיק כדי להלחם אותן ישירות אל נוצת הנוצות … פשוט יהיה עליך לכופף את הסיכות לצורת "איש רגל קשת" (ראה תמונה). לאחר שהסיכות במקום, השתמש בידיים עוזרות (או סרט) בכדי להחזיק את הפיצו במקומו והלחם מהחלק התחתון של כנף הנוצות.
הערה - אם אינך משתמש ב- INA219, יהיה עליך להלחם את הפיצו ישירות ללוח הנוצות.
הכן את טריפלר נוצה
כנף הנוצות חוסכת לנו הרבה הלחמות; הוא יכול להכיל 3 נוצות/כנפי נוצות … אז נשתמש בו ליצירת חיבורים חשמליים בין ה- TFT, ESP32, INA219 (כמו גם הפייזו וסיכת ה- TFT Lite).
כדי ליצור את החיבורים כראוי, נצטרך להלחים שני זוגות כותרות ערמה וזוג כותרות זכר סטנדרטיות.
- הכותרות הגבריות הרגילות ימשיכו במקום ה"חלק העליון ", אך ימולחלו לצד התחתון של הטריפלר.
- שתי כותרות הערימה ימולחלו בנקודות 2 ו -3, בצד העליון של הטריפלר.
זה קצת מבלבל, לכן הקפד להסתכל על התמונות כדי להבין היכן כל כותרת ממוקמת. כמו כן, שילוב של PCB Vise ו- Helping Hands יכול לסייע רבות בהלחמת הרכיבים.
הכינו את חיישן BME 680 ואת חיישן המגע הקיבולי MPR121
שני החיישנים האחרונים הם הצירוף הקשה ביותר. עלינו לחבר סיכות כותרת ללוחות הפריצה לפני סיום ההרכבה.
חיישן BME מחובר בזווית של 90, כך שאוכל ליישר את החיישן לחור במארז (כך שהחיישן יוכל ללכוד טמפרטורה, גז, לחות). יהיה עליך להלחים סיכות בזווית ישרה לחורים. עיין בתמונות כדי לוודא שאתה מיישר אותן כהלכה.
חיישן המגע הקיבולי הוא פשוט - רק הלחמה סיכות מחברים זכרים ישרים, כפי שמתואר כאן. הערה: אסור להלחם סיכות לסיכות המגע הקיבוליות (0 - 11).
חבר את חיישני BME 680 ו- MPR121 ללוח המשולש
שני החיישנים מתקשרים באמצעות I2C … מה שאומר שאנחנו צריכים רק ליצור 4 חיבורים בין לוחות הפריצה לבין Featherwing. לשם הפשטות, אני מלחם את כל החיבורים בין הלוחות.
BME 680
עבור חיישן זה, אני משתמש בידי Helping Hands ו- PCB Vise כדי להחזיק את שני הרכיבים במקומם (ראו תמונה למעלה). חייבים למקם את חיישן BME680 בסוף כנף הנוצות. עיין בתמונות למעלה כדי לאשר את המיקום.
תהליך הלחמת החיבורים מייגע, אז סע לאט. אני משתמש בחוט ליבה מוצקה לחיבורים:
- שחור - GND
- אדום - VIN
- צהוב - SCL (סיכת SCK בחיישן ל-
- כתום - SDA (סיכת SDA בחיישן)
הערה: סיכות SCL ו- SDA נחוצות לשני החיישנים, כך שיהיה קל יותר להשתמש בסיכת SCL או SDA בחלק אחר של Featherwing.
MPR121
ידיים עוזרות עוזרות גם בעת הלחמת חיישן זה במקומו (קלטת עובדת גם כן). הקוד השתמש ב- I2C לתקשורת ל- ESP32, כך שתחבר את סיכות SCA ו- SDA.
שלב 4: רכיבי הלחמה/הרכבה - חלק ג '(לוח מקשים לחיישן קיבולי ומעטה במארז)
בשלב זה תלחם את החוטים ממקלדת לחיישן המגע הקיבולי. השתמש באותו מיפוי צבעים מקודם. אם עקבת אחר ערכת הצבעים שלי, אז תלחם את החוטים הצבעוניים כדלקמן:
- צהוב - סיכה 0/לחצן 1
- אפור - סיכה 1/לחצן 2
- אדום - סיכה 2 /לחצן 3
- כחול - סיכה 3 /לחצן 4
- ירוק - סיכה 4/לחצן 5
- לבן - סיכה 5/לחצן 6
- שחור - סיכה 6/לחצן 7
לאחר סיום ההלחמה, השתמש בקשירה מתפתלת כדי להחזיק את החוטים במקומם.
לאחר מכן, הברג את מסך ה- TFT לחלק "הקדמי". תשתמש בברגי M3 (ארבעה בסך הכל). לאחר שה- TFT במקומו, הברג את חתיכת ה"קדמי "למארז. שוב, תשתמש בברגי M3 (שניים).
לאחר מכן, חבר את המשולש Featherwing, עם כל הרכיבים מחוברים, ל- TFT.
הערה - אם בכוונתך להשתמש בסוללה, הקפד לחבר אותה ליציאת ESP32 -JST לפני הכנסת TFT. השתמש בקלטת כדי להצמיד את הסוללה לחלק התחתון של המארז.
שלב 5: אופציונלי - הלחמה/הרכיב רכיבים - חלק ד '(נוצה INA219)
אם אתה משתמש בחיישן INA219, כאן אתה מחבר את החוטים לתקעי DC.
- הכנס את תקעי ה- DC לכריכה האחורית, והברג אותם במקומם.
-
השתמש במגהץ לחיבור חוטי INA219.
- החוטים השחורים צריכים לעבור ל- GROUND עבור כל תקע DC.
- החוט האפור צריך לעבור לתקע DC INPUT
- החוט הכחול צריך לעבור לתקע OUTPUT.
שלב 6: הברג את המכסה האחורי וחבר USB
השלב האחרון בהרכבת החומרה הוא הברגת המכסה האחורי במקומו - באמצעות ברגי M2 (4). משם, חבר את כבל ה- USB, חבר אותו למחשב האישי שלך והמשך לשלבי תוכנה!
שלב 7: הכנת סביבת AWS
כפי שציינתי במבוא, הנחת המוצא של הפתרון היא כדלקמן:
- הטרמינל, המופעל על ידי ESP32, משתמש בחיבור MQTT (באמצעות Wifi) לתקשורת עם ענן AWS.
- ענן AWS מבצע את עיקר העיבוד ומשמש כממסר בין הצג לשירותים המבוקשים.
יש כמה דברים שנצטרך לעשות בשלב זה:
ראשית, עליך להגדיר את סביבת AWS שלך, אם עדיין לא עשית זאת. הוראה זו מניחה שיש לך כבר חשבון AWS שהוגדר, כך שההוראות להקמת חשבון ענן אינן כלולות. עם זאת, השלבים פשוטים וניתן למצוא אותם כאן.
לאחר שעברת את השלב הזה, עליך ליצור כמה שירותים, אז היכנס למסוף AWS.
צור מפתח דבר והורד
AWS IoT Core מקל על התקשורת בין ענן AWS לתצוגה. יהיה עליך ליצור "דבר" ולהוריד אישורים לתמיכה בתקשורת.
[הערה: רוב ההנחיות הללו נלקחו ממדריך שנכתב על ידי מוהייב זארה, אוונג'ליסט AWS]
- פתח את מסוף AWS ובחר AWS IoT Core.
- במסוף AWS IoT, בחר הרשמת דבר חדש, צור דבר אחד.
- תן שם לדבר החדש "starTrekESP32". השאר את השדות הנותרים כברירת מחדל. בחר הבא.
- בחר צור תעודה. יש צורך רק בחיבור ה- cert, המפתח הפרטי והורדות CA 1 של Amazon Root כדי להתחבר ל- ESP32. הורד ושמור אותם במקום מאובטח, כפי שהם משמשים בעת תכנות מכשיר ESP32.
- בחר הפעל, צרף מדיניות.
- דלג על הוספת מדיניות ובחר רישום דבר.
- בתפריט הצד של מסוף AWS IoT, בחר באבטחה, מדיניות, צור מדיניות.
- תן שם לפוליסה AllowEverything. בחר בכרטיסייה מתקדם.
- הדבק בתבנית המדיניות הבאה.
- {{"Version": "2012-10-17", "Statement": [{"Effect": "Allow", "Action": "iot:*", "Resource": "*"}]}
- בחר צור. (הערה: זה מומלץ רק לתחילת העבודה. לאחר שנוח לך שהכל עובד, אנא חזור ושנה למשהו מגביל יותר).
- במסוף AWS IoT, בחר Secure, Certification.
- בחר את זה שנוצר עבור המכשיר שלך ובחר פעולות, צרף מדיניות.
- בחר AllowEverything, Attach.
- לפני שאתה עוזב, לחץ על "הגדרות" (בתפריט השמאלי). "נקודת הסיום המותאמת אישית שלך" תוצג; שמור את זה בקובץ טקסט … תזדקק לו בעת הגדרת ה- ESP32.
צור קובץ Lambda ריק
למבדה היא צורה של מחשוב ללא שרת, כך שאנו לא צריכים לדאוג לחומרה כאן. בסופו של דבר, כאן נציב את הקוד המעודכן שלנו (שנעשה זאת בכמה צעדים). לעת עתה, אנחנו רק רוצים ליצור מציין מקום, אז …
- היכנס שוב לקונסולת AWS (אם התנתקת) ולחץ על למבדה.
- לחץ על כפתור "צור פונקציה".
- בעמוד הבא הזן שם בסיסי, כמו starTrekDisplay
- בחר Node.js 12. X
-
תחת הרשאות:
- אם אתה מכיר את דרכך סביב למבדה ומכיר אותה, תוכל לבחור בכל אפשרות הגיונית. תזדקק להרשאות ב- CloudWatch, IotCore, S3 (קריאה וכתיבה).
- אם אינך בטוח לגבי הרשאות, בחר "צור תפקיד חדש עם הרשאות Lambda בסיסיות". רשמו את שם התפקיד. בהמשך נשנה את ההרשאות.
- לחץ על צור פונקציה.
- לאחר דקה, תיכנס למסך חדש עם קטע קוד "שלום עולם". גלול למטה לתחתית אל הגדרות בסיסיות ולחץ על "ערוך"
- שנה את הזמן הקצוב מ -3 שניות ל -2 דקות ו -0 שניות. הערה: הקוד שלך לעולם לא צריך לפעול יותר מ- 5-10 שניות … עם זאת, אנו זקוקים לפסק זמן ארוך יותר לאימות הראשוני שלך עם Microsoft (עבור פונקציונליות לוח שנה). לאחר שתאמת, תוכל לשנות זאת ל -20 שניות.
- לחץ על שמור.
צור חוק Iot
- הישאר בקונסולת למבדה וגלול למעלה. בחר "הוסף טריגר".
- בחר AWS IoT. לאחר מכן בחר "כלל מותאם אישית".
-
בחר "צור חוק חדש".
- שם הכלל: חיבור ESP
- משפט שאילתת כלל: "SELECT * מתוך 'starTrekDisplay/pub'
- לחץ על "הוסף"
צור דלי ותיקיית S3
- נווט אל מסוף AWS ובחר S3.
- תזדקק לדלי ותיקיה לאחסון קבצי אימות. תיקיה זו צריכה להיות פרטית. אני מציע לך להשתמש בכל דלי שכבר יש לך ולתת שם ליצירת תיקיה בשם "starTrekDisplay". הערה - אם אין לך דלי, צור אחד באמצעות ההוראות כאן.
הרשאות עדכון - אם אפשרת ל- Lambda ליצור עבורך תפקיד, יהיה עליך לבצע את השלב הזה
- היכנס למסוף AWS ובחר IAM
- לחץ על תפקידים ובחר את שם התפקיד שיצרת קודם לכן.
-
לחץ על צורף מדיניות ולאחר מכן בחר את המדיניות הבאה:
- AWSIoTFullAccess
- AmazonSNSFullAccess
- CloudWatchFullAccess
- AmazonS3FullAccess
שלב 8: הורד מפתחות תוכנה והגדר שירותי צד שלישי
אני משתמש בשירותי הצד השלישי הבאים בפרויקט:
- ממשק API העולמי - לזמן
- ממשקי שירות מזג אוויר לאומיים - למזג אוויר
- ממשק API של Microsoft Graph לגישה ליומן שלי
- API של Google Fitness לגישה למידע על כושר
יהיה עליך להגדיר חשבונות ולהוריד מפתחות על מנת למנף את אותם השירותים
ממשק API העולמי - לזמן
API זה אינו דורש מפתח, ולכן אין צורך בפעולה כדי לגרום לזה לעבוד.
ממשקי שירות מזג אוויר לאומיים - למזג אוויר
ה- API של שירות מזג האוויר הלאומי הוא ללא תשלום, ואין צורך במפתח API. עם זאת, הם כן מבקשים ממך להעביר פרטי התקשרות (בצורה של מייל) בכל בקשה (כחלק מקובץ הכותרת). בשלב הבא תוסיף פרטי יצירת קשר לקוד.
אופציונלי - Microsoft Graph API ו- Google Fitness API
זהו החלק המורכב ביותר בהגדרת הקוד. למכשיר שלנו אין מקלדת מלאה … לכן אנו משתמשים במשהו שנקרא OAUTH למכשירים מוגבלים כדי לגשת ללוח השנה שלנו. למרבה הצער, עליך ליצור "אפליקציה" ותכלת Google כדי שתוכל להשתמש בקוד לשימוש ב- OAUTH עבור מכשירים מוגבלים.
הוראות ליצירת אפליקציה נמצאות כאן עבור מיקרוסופט, כאן עבור Google. להלן מספר דברים שכדאי לדעת:
- יהיה עליך ליצור חשבון ענן ותכלת Google. זה בחינם, ולא תחויב בכלום
-
מיקרוסופט:
- תתבקש לפרט מה יכולים המשתמשים להשתמש באפליקציה. אני מציע לך לבחור "חשבונות בכל ספרייה ארגונית וחשבונות Microsoft אישיים". זה יאפשר לך להשתמש בחשבונות Microsoft וחשבונות ארגוניים אישיים (ברוב המקרים).
- תרצה לבחור ביישומי "נייד ושולחן עבודה", אולם אינך צריך למלא את כל המידע (מכיוון שזו אפליקציה אישית). המשמעות היא שאינך יכול להפוך את האפליקציה שלך לזמינה לעולם …. אבל זה בסדר במקרה הזה
- לאחר הגדרת האפליקציה, יהיה עליך לבחור את ההרשאות הדרושות. ביקשתי הרשאות הקשורות לפרופילים ולוחות שנה (ראו את התמונה בגלריה לרשימת ההרשאות המלאה). יהיה עליך לבחור את אותה קבוצה. אם תוסיף הרשאות נוספות, יהיה עליך לשנות את ההיקף כראוי בשלב הבא.
שלב 9: שנה והעלה קוד AWS
מדריך זה מניח שאתה מכיר את פיתוח Node.js ו- Lambda. הורד את הקובץ המקושר ובצע שינויים לעדכון:
- פרטי האפליקציה והלקוח של Microsoft
- מפתח גוגל
- כתובת דוא"ל למעקב אחר שירות מזג האוויר הלאומי
- שם דלי S3
- שם תיקיה S3
- נקודת סיום של AWS
יהיה עליך גם להוריד את ספריות הצומת הבאות:
- aws-sdk
- אזור זמן של הרגע
- מבטאים
לאחר ביצוע השינויים הללו, העלה את הקוד ל- lambda מציין המיקום שיצרת קודם לכן.
שלב 10: הכן את Arduino IDE והורד ספריות
מדריך זה גם מניח שאתה מכיר את Arduino. יהיה עליך לוודא שה- IDE שלך מוגדר לעבודה עם Adafruit ESP32. עקוב אחר ההוראות כאן אם אתה זקוק לעזרה.
לאחר השלמת ההורדה, הורד את הספריות הבאות:
- Adafruit_GFX (ממנהל הספרייה)
- Adafruit_HX8357 (ממנהל הספרייה)
- TFT_eSPI (ממנהל הספרייה)
- TFT_eFEX (https://github.com/Bodmer/TFT_eFEX)
- PubSubClient (ממנהל הספרייה)
- ArduinoJson (ממנהל הספרייה)
- Adafruit_STMPE610 (ממנהל הספרייה)
- Adafruit_MPR121 (ממנהל הספרייה)
- Adafruit_INA219 (ממנהל הספרייה)
- Adafruit_Sensor (ממנהל הספרייה)
- Adafruit_BME680 (ממנהל הספרייה)
- Tone32 (https://github.com/lbernstone/Tone)
בשלב הבא נצטרך לשנות כמה מהספריות:
- פתח את תיקיית PubSubClient (בתיקייה Arduino/Library) ופתח את "PubSubClient.h". מצא את הערך עבור MQTT_MAX_PACKET_SIZE ושנה אותו ל -2000.
- לאחר מכן, פתח את תיקיית TFT_eSPI ופתח את הקובץ "User_Setup_Select.h". הגיבו על כל שורת "כולל user_setup …" והוסיפו שורה זו:
#לִכלוֹל
לאחר מכן, הורד את הקובץ המקושר Custom_Tricorder.zip וחלץ את הקובץ ".h" למיקום "TFT_eSPI / User_Setups" בתיקיית ספריות Arduino שלך. אני
כעת נוכל להמשיך לעדכן את קוד הארדואינו
שלב 11: עדכן והתקן את קוד Arduino והפעל
קוד ארדואינו
הורד ופתח את הקובץ המקושר עבור קוד ה- Arduino. עבור לכרטיסייה secrets.h. יהיה עליך לעדכן את הדברים הבאים:
- WIFI_SSID = עדכון עם ה- SSID של ה- wifi שלך
- WIFI_PASSWORD = עדכן עם סיסמת ה- wifi שלך
- TIMEZONE = עדכן עם אזור הזמן שלך מרשימה זו
- LAT (אתה יכול להשתמש בשירות כמו "https://www.latlong.net" כדי למצוא את קו הרוחב והאורך שלך
- LNG
- AWS_IOT_ENDPOINT = היית צריך לשמור זאת מקודם. זה צריך להיראות כמו "dx68asda7sd.iot.us-east1-amazonaws.com"
- AWS_CERT_CA
- AWS_CERT_CRT
- AWS_CERT_PRIVATE
הורדתם גם את האישורים משלב קודם. פתח לאחר מכן בעורך ההערות (למשל פנקס רשימות) והדבק את הטקסט בין ה- R 'EOF (' ו- ') EOF ";'. הקפד לכלול את "----- BEGIN CERTIFICATE -----" או "----- BEGIN RSA PRIVATE KEY -----".
קבצי תמונות
ה- ESP32 מגיע עם מערכת קבצים קטנה. אנו משתמשים במערכת קבצים זו כדי לשמור תמונות לתוכנית שלנו. יהיה עליך להתקין את הכלי המאפשר לך להעלות קבצים.
- ראשית, בקר במדריך המעמיק על הדרכות חנון אקראיות.
- לאחר שהדבר עובד, תוכל להעלות את הקבצים בתיקיית הנתונים (כלול גם בקובץ ה- zip).
לחתור למגע
העלה את קוד ה- Arduino הסופי וסיימת!
הערה - השם של מסע בין כוכבים ותמונות מסע בין כוכבים הם בבעלות CBS/Paramount. יש להם מדיניות די רופפת בכל הנוגע לקוספליי ולבדיוני מעריצים - אנא קרא כאן אם יש לך שאלות.
פרס ראשון בתחרות פאנדום
מוּמלָץ:
עשה זאת בעצמך - צור מערכת רמקול מיני USB עם PAM8403 וקרטון - בורג זהב: 5 שלבים
עשה זאת בעצמך - צור מערכת רמקול מיני USB עם PAM8403 וקרטון | בורג זהב: היום אראה לך כיצד להכין מערכת רמקולי מיני USB עם מודול מגבר PAM8403 וקרטון. קל מאוד עם חומרים זולים
מסע בין כוכבים לפיזר: 7 שלבים
עובד מסע בין כוכבים: אני משתתף בתחרות Made With Math. נא להשאיר הצבעה למעלה. לייזרים מסוכנים ויעיוורים עיניים לצמיתות. לעולם אל תזרק לייזר בעיניים של מישהו. ההנחיה הזו תראה לך איך להכין פאסר עובד מ
עשה זאת בעצמך: קופסת חיישן מיני צמודה לתקרה עם חיישן תנועה ממוקד: 4 שלבים
עשה זאת בעצמך: קופסת חיישן מיני צמודה לתקרה עם חיישן תנועה ממוקד: שלום. לפני זמן מה עזרתי לחבר שלי עם רעיון בית חכם ויצרתי קופסת חיישנים מיני בעיצוב מותאם אישית שניתן להרכיב על התקרה לתוך החור בגודל 40x65 מ"מ. תיבה זו מסייעת ל: • למדוד את עוצמת האור • למדוד לחות
כתוב זאת ! עשה זאת! שתף אותו!: 4 שלבים
כתוב זאת ! עשה זאת! שתף את זה!: התלמידים שלי השתמשו ב- Legos עזרה בהוספת יצירתיות לכתיבה שלהם, ארגון הכתיבה והצגת עבודותיהם באופן דיגיטלי עם משפחתם ועם חבריהם בכיתה
מקרר מחשב PC ביי ביי/תקליטור 5.25 אינץ 'עשה זאת בעצמך: 6 שלבים (עם תמונות)
מגניב CD/DVD בגודל 5.25 אינץ 'למחשב מחשב: אם המחשב שלך מתחמם מדי או אם אתה צריך דרך טובה יותר לצנן את הכונן הקשיח שלך אתה יכול להציץ בפרויקט שלי ולהשתמש אם במקרה שלך! זהו מאוורר בגודל 8 ס"מ המתאים 2 מכלות מיסוך כונן התקליטורים המקורי של התיק שלך. תוכל להתקין דרייב קשיח