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

גשש GPS LTE Arduino + לוח מחוונים IoT (חלק 2): 6 שלבים (עם תמונות)
גשש GPS LTE Arduino + לוח מחוונים IoT (חלק 2): 6 שלבים (עם תמונות)

וִידֵאוֹ: גשש GPS LTE Arduino + לוח מחוונים IoT (חלק 2): 6 שלבים (עם תמונות)

וִידֵאוֹ: גשש GPS LTE Arduino + לוח מחוונים IoT (חלק 2): 6 שלבים (עם תמונות)
וִידֵאוֹ: RC car scale digital dash screens by @ScaleBuilt - #rccar #rccars #rccrawler #vs410 2024, יולי
Anonim
Image
Image
התקנת Board Board
התקנת Board Board

מבוא וסיכום חלק 1

כן, הגיע הזמן לעוד הוראה על גשש ה- GPS SIM7000 עם Arduino ו- LTE! אם עדיין לא עשית זאת, עיין במדריך תחילת העבודה עבור מגן ה- SIM7000 CAT-M/NB-IoT של Botletics ואז קרא על חלק 1 של מדריך המעקב אחר GPS. ככזה, אני הולך להניח שיש לך את כל החומרה מוגדרת ומוכן לפרסם נתונים בענן כל מה שאנחנו באמת צריכים לעשות במדריך זה הוא להכיר את ThingsBoard ולעשות בדיקת דרך נוספת כדי לראות את הנתונים המדהימים שהוא הופעות!

בחלק הראשון קיבלנו בהצלחה את גשש ה- GPS החכם שלנו לשלוח נתונים ל- dweet.io ושילמנו את הנתונים ב- freeboard.io כדי להמחיש את הנתונים. עם זאת, מהר מאוד הבנתי שפונקציונליות המפה צולעת למדי על הלוח החופשי מכיוון שהיא אינה מאפשרת לך להזיז את הסמן או אפילו לשנות את גודל חלון הווידג'ט. זה הוביל אותי לפתרון טוב יותר: ThingsBoard.io שהוא לוח מחוונים IoT סופר מדהים (ובחינם!) המאפשר לך לאחסן, לדמיין ולהתאים אישית את כל הנתונים שלך! אתה יכול לגרור לסדר מחדש ווידג'טים (וזה עובד ב- Chrome בניגוד ללוח חינם), והאיכות הכוללת היא הקרם של היבול. והכי חשוב, יישומון מפות Google מאפשר לך להסתובב חופשי, להתקרב ולצאת החוצה, ולבחור סגנונות שונים (לוויין, תצוגת כביש וכו ') ואפילו מאפשר לך לגרור ולשחרר את הבחור הצהוב הקטן לכביש לצפייה ברחוב. !

שלב 1: הגדרת ThingsBoard

התקנת ThingsBoard
התקנת ThingsBoard
התקנת ThingsBoard
התקנת ThingsBoard

חשבון ThingsBoard והתקנת מכשירים

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

לאחר מכן בחר בכרטיסייה "התקנים" בצד שמאל. זה אמור להביא חבורה של מכשירי הדגמה כמו ESP8266, DHT22, Arduino ו- Pi הדגמות וכו '. צור מכשיר חדש על ידי לחיצה על כפתור האדום "+" בפינה השמאלית התחתונה והזן שם ובחר "ברירת מחדל" לסוג ההתקן. לאחר לחיצה על "הוסף" אתה אמור לראות את המכשיר החדש שלך בכרטיסייה מכשירים. לחץ על "נהל אישורים" ותראה חלון קטן המציג את אסימון הגישה של המכשיר. זהו בעצם מזהה המכשיר והוא מקביל לזהות המכשיר המשמש לפרסום נתונים ב- dweet.io. אתה יכול לשנות את מזהה המכשיר הזה למספר IMEI של המגן שלך אם תרצה, אך תוכל גם פשוט להשתמש באסימון שנוצר אוטומטית. העתק את האסימון הזה כפי שתזדקק לו במערכון הארדואינו.

הגדרת דוגמה לארדואינו

במדריך זה נשתמש באותה דוגמה בדיוק של סקיצת Arduino כמו במדריך הראשון אך הפעם עדכנתי את הסקיצה כך שתכלול קוד לשליחת נתונים ישירות ל- ThingsBoard.io במקום dweet.io בחלק 1. כמו תמיד, תוכל למצוא את קוד הדוגמה כאן ב- Github.

הדבר הראשון שאתה צריך לעשות הוא להגיב על השורות שהופכות את פוסט המגן ל- dweet.io:

// קבל בקשה/* // תוכל להתאים את תוכן הבקשה אם אינך צריך דברים מסוימים כמו מהירות, גובה וכו 'sprintf (URL, "https://dweet.io/dweet/for/%s ? lat =%s & long =%s & speed =%s & head =%s & alt=%s & temp =%s & batt =%s ", imei, latBuff, longBuff, speedBuff, headBuff, altBuff, tempBuff, battBuff);

מונה int = 0; // זה סופר את מספר הניסיונות שנכשלו

// נסה בסך הכל שלוש פעמים אם הפוסט לא הצליח (נסה עוד 2 פעמים) בעוד (נגד <3 &&! Fona.postData ("GET", URL, "")) {// הוסף את הציטוטים "" כשלישי קלט כי לבקשת GET אין "body" Serial.println (F ("נכשל לפרסם נתונים, מנסה שוב …")); מונה ++; // עיכוב נגד התוספת (1000); } */

לאחר מכן, בטל את הערות השורות המפרסמות ב- thingsboard.io:

// ננסה בקשת POST ל- thingsboard.io const char* token = "YOUR_DEVICE_TOKEN"; // מתוך deviceboard.io מכשיר sprintf (URL, "https://demo.thingsboard.io/api/v1/%s/telemetry", אסימון); sprintf (גוף, "{" קו הרוחב / ":%s, \" אורך / ":%s, \" מהירות / ":%s, \" ראש / ":%s, \" alt / ":%s, / "temp \":%s, / "batt \":%s} ", latBuff, longBuff, speedBuff, headBuff, altBuff, tempBuff, battBuff); // sprintf (body, "{" lat / ":%s, \" long / ":%s}", latBuff, longBuff); // אם כל מה שאתה רוצה הוא lat/long

מונה int = 0;

while (! fona.postData ("POST", URL, body)) {Serial.println (F ("נכשל בהשלמת HTTP POST …")); מונה ++; עיכוב (1000); }

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

הערה: ל- Arduino Uno יש מעט מאוד זיכרון (RAM) ופרסום ב- Thingsboard עלול לגרום לקריסת ה- Arduino. אם אתה חווה הפעלה מחדש של המערכון בערך במיקום הפונקציה postData () או התנהגות מוזרה אחרת, סביר להניח שזה מה שקורה. התיקון הקל לכך הוא החלפת ה- Uno עם Arduino Mega או לוח עם יותר זיכרון RAM. תוכל גם לנסות למזער את גודל המערכים ולפצל את הנתונים למספר פוסטים.

שלב 2: אמת את קליטת הנתונים

אמת את קליטת הנתונים
אמת את קליטת הנתונים

על מנת לוודא כי הנתונים נשלחים נכון ל- ThingsBoard, עבור אל אותו דף פרטי המכשיר (לחץ על אריח מכשיר ה- GPS Tracker בדף "התקנים") ולאחר מכן לחץ על הכרטיסייה "טלמטריה אחרונה". אם גשש ה- GPS שלך שולח ערכים ל- ThingsBoard, עליך לראות את הערכים האחרונים כאן והם יתעדכנו בזמן אמת עם כניסתם.

כעת, לאחר שאימתת ש- ThingsBoard אכן מקבל את הנתונים הגיע הזמן להגדיר את לוח המחוונים כדי שנוכל לדמיין את הנתונים שלנו כאשר אנו אוספים אותם! (או לאחר מעשה)

שלב 3: הגדרת לוח המחוונים

הגדרת לוח מחוונים
הגדרת לוח מחוונים
הגדרת לוח מחוונים
הגדרת לוח מחוונים
הגדרת לוח מחוונים
הגדרת לוח מחוונים

עכשיו הגיע הזמן לחלק המהנה! כעת לחץ על הכרטיסייה "לוחות מחוונים" בצד שמאל ובחר את מכשיר גשש ה- GPS שלך. זה אמור להעלות דף חדש שמבקש ממך להוסיף ווידג'טים. לחץ על הלחצן הימני התחתון של "+" ועל "צור יישומון חדש" כדי להציג תפריט נפתח של ווידג'טים לבחירה. בינתיים נוסיף "מד דיגיטלי". בחירה זו אמורה לטעון חבורה של תצוגות מקדימות עבור כל הסוגים השונים של מדידים דיגיטליים שתוכל לבחור מהם. כאשר תלחץ על אחד זה יעלה לך מסך נוסף כדי להגדיר את פרמטרי הווידג'ט. הדבר הראשון שעליך להוסיף הוא מקור הנתונים (מכשיר גשש ה- GPS שלך ששולח את הנתונים ל- ThingsBoard). לחץ על כפתור "+ הוסף" ובחר את מכשיר "GPS Tracker" שלך ובחר את המשתנה המתאים שברצונך להציג את הווידג'ט. במקרה זה, בואו לבחור את המשתנה "טמפ '(טמפרטורה).

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

שלב 4: הוספת מפה

הוספת מפה!
הוספת מפה!
הוספת מפה!
הוספת מפה!
הוספת מפה!
הוספת מפה!
הוספת מפה!
הוספת מפה!

עכשיו עבור גשש GPS מפה היא חובה! הוסף אחד על ידי יצירת ווידג'ט חדש (כפתור "+" הימני התחתון שוב) והפעם גלול למטה ובחר "מפות". קדימה, לחץ על אחד וזה יביא את האפשרויות עבורו. הוסף את מקור הנתונים כרגיל, אך הפעם בחר במשתנים "lat" ו- "long" מכיוון שהוא יצטרך את שניהם כדי לקבל את המיקום. לאחר מכן, עבור לכרטיסייה "הגדרות" וכאן תוכל להגדיר את חלון הזמן של הנתונים שיוצג על המפה. לדוגמה, ייתכן שתרצה ש -2 הדקות האחרונות של הנתונים יופיעו, או שתרצה שכל הנתונים מאז אתמול, או שתרצה רק חלון קבוע בזמן (כמו 2PM אתמול עד 10 בבוקר היום).

אם תרצה תוכל לעבור ללשונית "מתקדם" ולבחור את סוג המפה (מפת דרכים, לוויין, היברידי או שטח). החלק החשוב ביותר מכל זה אולי הוא לבדוק את שמות מפתח הרוחב והאורך. וודא ששמות אלה מתאימים בדיוק לשמות המשתנים שאתה בעצם שולח ל- ThingsBoard. לדוגמה, אם מערכון ה- Arduino שלך אומר שהוא שולח משתנים "lat" ו- "long" (שהם כברירת מחדל), עליך לשנות את שמות המפתח ל- "lat" ו- "long" ולהשתמש ב- "latitude" ו- "longitude" לא יביא את הנתונים שלך!

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

שלב 5: מבחן דרכים

מבחן דרכים
מבחן דרכים
מבחן דרכים
מבחן דרכים

בדיקת גשש ה- GPS היא סופר פשוטה! פשוט חבר את הארדואינו למתאם USB לרכב כדי להפעיל אותו, וודא שהנורית הירוקה נדלקת והוא אמור להתחיל לשלוח נתונים! כדי לשנות את קצב הדגימה של גשש ה- GPS וודא שאתה מוצא את שורת הקוד הזו בסקיצה לדוגמא:

#define samplingRate 10 // הזמן בין ההודעות, בשניות

ותגדיר אותו למה שאתה רוצה. גיליתי ש 10s עובד די טוב למבחן דרכים נינוח, אבל אם אתה מהיר וזועם אולי תרצה שיעור דגימה גבוה עוד יותר!

שלב 6: תוצאות

תוצאות
תוצאות
תוצאות
תוצאות
תוצאות
תוצאות

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

המפה הייתה מדהימה והצלחתי לאסוף נתונים מדויקים באמת של מסלול שעשיתי. כמו כן, נתוני המהירות היו מדויקים ביותר מכיוון שמעולם לא חרגנו מכ -40 קמ"ש (הגרף בקמ"ש) בכבישי העיר. ניתן להסביר את תנודות המהירות הרבות ברמזורים. בסך הכל, תוצאות מצוינות ודמיין למה עוד נוכל להשתמש בזה! אתה יכול להתקין את זה על קרוואן, אופנוע, מכונית וכו 'ולגרום לזה לעקוב כל הזמן ולהעלות את התוצאות ב- ThingsBoard!

לסיכום, במדריך זה תיכנו את גשש ה- GPS שלנו לשלוח נתונים ישירות ל- ThingsBoard באמצעות בקשות HTTP POST וניהלנו את הנתונים בלוח המחוונים. אתה יכול להוסיף מספר מכשירים ולוח מחוונים, כל אחד מכיל ווידג'טים מרובים שנראים מגניבים ביותר ויש להם הרבה אפשרויות התאמה אישית! ThingsBoard הוכיח את עצמו ככלי רב עוצמה (וגם בחינם!) לצפייה בנתוני IoT ויש אפילו תכונות אחרות שאפילו לא גירדתי. אתה מוזמן לשחק עם זה ולראות מה אתה מוצא.

  • אם אהבת את ההדרכה הזו, יצרת בעצמך או שיש לך שאלות, אנא הערה למטה!
  • הקפד לתת לב זה ללמידה והירשם כאן ובערוץ היוטיוב שלי לקבלת הדרכות מדהימות יותר הקשורות לארדואינו!
  • אם אתה רוצה לתמוך במה שאני עושה, שקול לרכוש מגן SIM7000 של Botletics משלך ב- Amazon.com!

עם זה, נתראה בפעם הבאה!

מוּמלָץ: