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

ספל מחובר: 5 שלבים (עם תמונות)
ספל מחובר: 5 שלבים (עם תמונות)

וִידֵאוֹ: ספל מחובר: 5 שלבים (עם תמונות)

וִידֵאוֹ: ספל מחובר: 5 שלבים (עם תמונות)
וִידֵאוֹ: סליחה, אולי תמצצי לי?... 2024, נוֹבֶמבֶּר
Anonim
ספל מחובר
ספל מחובר

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

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

ניתוח הרגש של הודעות דוא ל שטרם נקרא מתבצע על ידי שירותי IoT של IBM Watson. לוח Arduino MKR1000 משמש לשליטה ברצועת ה- LED וחיבור לשירותי IoT של IBM Watson באמצעות WiFi באמצעות פרוטוקול MQTT.

שלב 1: רכיבי חומרה

רכיבי חומרה
רכיבי חומרה
רכיבי חומרה
רכיבי חומרה

לוח פיתוח חומרה:

Arduino MKR1000

חומרה BOM

  • נגדי 3x 100ohm
  • 3x טרנזיסטורים NIP TIP122
  • 1x שקע חשמל
  • 1x רצועת אור LED RGB (AglaiaLT-S2)
  • כבלים חלופיים

החיווט לשליטה ברצועת LED עם Arduino MKR1000 מבוסס על הדרכה זו:

שלב 2: צור חשבון ב- IBM Watson IoT ורשום את המכשיר שלך

על מנת ליצור יישום ענן המסוגל לבצע ניתוח סנטימנט של הודעות דוא ל שטרם נקראו באמצעות IBM Watson IoT, תחילה יש לחתום על חשבון ניסיון חינם (https://www.ibm.com/internet-of-things/trial/). השלב השני הוא ליצור יישום לפלטפורמת Iats של Watson ולרשום את לוח Arduino MKR1000 שלך; זהו הליך סטנדרטי לחיבור פלטפורמות חומרה עם IBM Watson IoT, והוא מתועד היטב במדריכי ההתחלה המהירים של IBM:

console.ng.bluemix.net/docs/services/IoT/i…

IBM מספקת גם תבניות לוח חימום עבור IoT המאיצות את השלבים הללו על ידי הגבלת השירותים וזמני הריצה הדרושים להפעלת יישום IoT שלך. IoT for Electronics Starter Boilerplate היה זה ששימש לפרויקט זה.

מדריך לרישום מכשירים שלב אחר שלב ניתן כאן:

console.ng.bluemix.net/docs/services/IoT/i…

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

שלב 3: פיתוח היישום Node-RED לניתוח רגשות

פיתוח יישום Node-RED לניתוח רגשות
פיתוח יישום Node-RED לניתוח רגשות

NodeRED הוא כלי ויזואלי שניתן להשתמש בו בפלטפורמת IoT של IBM Watson ליצירת התקני חיווט ליישומים ושירותי ענן (nodered.org).

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

הזרימה הראשונה מתחברת לחשבון דוא"ל מעת לעת ומביאה את הודעות האימייל האחרונות שלא נקראו; התצורה תלויה בחשבון הדוא"ל שלך. כל הודעת דוא"ל המתקבלת נשלחת לתיבת ניתוח הרגש, המחזירה ציון (פחות או מעל 0) על סמך תוכן שלילי/חיובי של הטקסט המנותח (ראה מידע https://github.com/thisandagain/sentiment/blob/mas… עבור פרטים נוספים). ציון הרגש נשלח לתיבת פונקציות פשוטה המחשבת את הממוצע של הנתונים האחרונים שהתקבלו ודוחפת את התוצאה לצומת הבא. לבסוף הבלוק האחרון שולח הודעה המכילה את ערך ציון הרגש למכשיר המחובר באמצעות פרוטוקול MQTT; יש להגדיר את הבלוק הזה עם האישורים שנוצרים במהלך תהליך רישום המכשיר.

הזרימה השנייה משמשת למטרות בדיקה כדי להמחיש את מצב הלוח של Arduino; הוא מחבר צומת IoT קלט ללוח ה- Arduino שלך לדף האינטרנט של IBM Quickstart להדמיית נתונים (https://quickstart.internetofthings.ibmcloud.com/). צומת קלט IoT מוגדר כמפורט לעיל לקבלת הודעות מצב מלוח Arduino באמצעות פרוטוקולי MQTT. הודעות סטטוס מכילות את ציון הרגש ואת שילוב ה- RGB עבור LED המשמש כיום בארדואינו.

אפליקציית Node-RED יוצאה לקליפבורד ומוצגת כאן כקובץ.txt.

שלב 4: סקיצה של ארדואינו

מערכון Arduino מבוסס על ספריית לקוחות MQTT מאת Gilberto Conti (https://github.com/256dpi/arduino-mqtt) אשר שונתה כדי להתחבר עם IBM Watson IoT. הקוד מורכב משלושה חלקים:

  • setup (): התחבר ל- WiFi AP ולמתווך IBM MQTT; רשום שיחה חוזרת להודעות שהתקבלו מ- IBM Watson IoT
  • לולאה (): הגדר סיכת RGB לשליטה בנורות LED; שלח ל- IBM Watson IoT את סטטוס המכשיר (RGB וציון רגשות)
  • messageReceived (…): התקשרות חוזרת התקבלה עם קבלת הודעות עם ציון רגש מאפליקציית IoT של ווטסון. הציון ממופה לערך RGB (שלילי: אדום; חיובי: ירוק).

הגדר את הקוד כדלקמן, בהתבסס על אישורים שנוצרו במהלך הליך רישום המכשיר (מזהה אורגני, סוג מכשיר, מזהה מכשיר):

  • MQTT_MODE = IBM_API_KEY
  • char *client_id = "d: your-org-id: your-device-type: your-device-id";
  • char *user_id = "use-token-auth";
  • char *pwd = "your-pwd";
  • char *ibm_hostname = "your-org-id.messaging.internetofthings.ibmcloud.com";

האפליקציה נרשמת לנושא iot-2/cmd/+/fmt/string and message התקבל החזרה מנתח הודעות עבור רגשות מסוג פקודה.

הודעות סטטוס מתפרסמות לנושא: iot-2/evt/status/fmt/json

הערה: זכור לעדכן את אישור SSL עבור MKR1000; בצע את ההוראות כאן: https://github.com/arduino-libraries/WiFi101-Firm… והכנס את שם ה- ibm_hostname שלך כדי להוריד ולהתקין ב- MKR1000 את אישורי השורש.

מצורפת סקיצה של ארדואינו.

שלב 5: חבר את הספל שלך

חבר את הספל שלך
חבר את הספל שלך
חבר את הספל שלך
חבר את הספל שלך

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

לאחר מכן אני מחבר את רצועת ה- LED למעגל הלוח, מפעיל את ה- LED ואת ה- Arduino MKR1000 ומחכה לקבל הודעות עם ציון רגש מהיישום NodeRED. בתמונה למשל בדקתי על ידי שליחת חשבוני מיילים המכילים טקסט כמו "עבודה נהדרת! הפרויקט שלך נפלא!" וכו '

ניתן גם לבדוק בדף האינטרנט הציבורי של QuickStart של IBM (https://quickstart.internetofthings.ibmcloud.com) את הסטטוס בזמן אמת של אפליקציית Arduino (קוד RGB המוצג והתוצאה מתקבלת). רק צריך הזן מזהה מכשיר..

עכשיו אוכל סוף סוף ליהנות מהקפה שלי בספל מחובר.

מוּמלָץ: