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

CloudyData - ESP8266 ל- Google Sheets פשוט: 10 שלבים (עם תמונות)
CloudyData - ESP8266 ל- Google Sheets פשוט: 10 שלבים (עם תמונות)

וִידֵאוֹ: CloudyData - ESP8266 ל- Google Sheets פשוט: 10 שלבים (עם תמונות)

וִידֵאוֹ: CloudyData - ESP8266 ל- Google Sheets פשוט: 10 שלבים (עם תמונות)
וִידֵאוֹ: Home Assistant - подключаем адресную ленту WS2812B через ESP8266 с прошивкой WLED 2024, יולי
Anonim
CloudyData - ESP8266 ל- Google Sheets פשוט
CloudyData - ESP8266 ל- Google Sheets פשוט

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

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

שלב 1: יעד כללי

מטרה כללית
מטרה כללית

אני רוצה לדעת אם חיים בנוכחות מדפסת תלת מימד עלולה להיות מסוכנת.

לשם כך אני צריך נתונים, ויש לאחסן נתונים בענן.

אני רוצה להשתמש ב- Google Sheets מכיוון שהוא פשוט ויעיל.

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

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

שלב 2: שלב ראשון: חיישנים

שלב ראשון: חיישנים
שלב ראשון: חיישנים
שלב ראשון: חיישנים
שלב ראשון: חיישנים

אני משתמש בשני חיישנים כדי לפקח על איכות האוויר הביתי שלי:

  • מודול חיישן לגילוי איכות אוויר Nova PM SDS011, פיסת חומרה נהדרת, פשוטה יחסית לשימוש עם Arduino ולוחות דומים. ניתן להשתמש בו עם תוכנה משלו (חלונות בלבד!:-() ומתאם USB, או חיבור ל- ארדואינו עם ספריות. מידע רב ניתן למצוא כאן:

    • inovafitness.com/en/a/chanpinzhongxin/95.ht…
    • www-sd-nf.oss-cn-beijing.aliyuncs.com/%E5%…
    • aqicn.org/sensor/sds011/
  • מגן SHT30 מבית Wemos, עבור Wemos D1 mini: השתמשתי בגרסת v1.0.0, הגרסה הנוכחית היא v2.1.0 אך יש להם טביעת רגל זהה, אותן פונקציות

    wiki.wemos.cc/products:d1_mini_shields:sht…

שלב 3: שלב שני: התחברות למיקרו -בקר

שלב שני: חיבור למיקרו -בקר
שלב שני: חיבור למיקרו -בקר

Wemos D1 mini היא כנראה הדרך הטובה ביותר לאב טיפוס סביב ESP8266: מחבר microUSB, מובנה מובנית, מגנים נחמדים ומוכנים לשימוש זמינים.

חיברתי ישירות את מגן SHT30 ב- Wemos D1 mini (דאג להתמצאות!), ואז חיברתי את חיישן נובה אוויר ל- Wemos D1 mini כדלקמן:

חיישן Wemos GND pin Nova Air GND

חיישן Wemos 5V pin Nova Air 5V

חיישן Wemos D5 (סיכת RX) חיישן נובה אוויר TX

חיישן Wemos D6 (פין TX) חיישן נובה אוויר RX

תוכל להציץ כאן למידע נוסף:

www.hackair.eu/docs/sds011/

www.zerozone.it/tecnologia-e-sicurezza/nov…

www.instructables.com/id/Make-one-PM25-mon…

שלב 4: שלב שלישי: בניית סקיצה

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

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

ערכתי מחדש את המערכון שמצאתי באינטרנט, במיוחד את זה מ- nishant_sahay7, שהדרכה שלו מלאה ומלאה במידע. אתה יכול למצוא אותו כאן.

השתמשתי בספרייה זו:

אעיר רק כמה שורות במערכון שיצרתי:

שורה 76-77: להעיר את חיישן האבק לזמן מה, ואז הוא ישן שוב, מכיוון שגיליונות הנתונים קובעים שהוא מיועד לעבוד במשך כ -8000 שעות, וזה יותר ממספיק, אך לא אינסופי

sds.wakeup (); עיכוב (30000); // עובד 30 שניות

שורה 121: הנתונים שנשלחו הם טמפרטורה, לחות, PM2.5 ו- PM10

sendData (t, h, pm2_5, pm10);

שורה 122-123: אני לא משתמש ב- ESP.deepSleep, אנסה בעתיד; בינתיים עיכוב פשוט (90000) יספיק כדי לשלוח נתונים כל 30 + 90 = 2 דקות, פחות או יותר

//ESP.deepSleep(dataPostDelay);

עיכוב (90000);

שורה 143:

זו השורה החשובה ביותר, הסדר שאתה יוצר את ה- String_url להעלאת נתונים חייב להיות זהה בו תשתמש ב- Google Script (ראה את השלבים הבאים)

כתובת URL = "/פקודות מאקרו/s/" + GAS_ID + "/exec? Temperature =" + string_x + "& לחות =" + string_y + "& PM2.5 =" + string_z + "& PM10 =" + string_k;

שלב 5: שלב רביעי: הכנת גיליון Google והתסריט שלו

שלב רביעי: הכנת גיליון Google והתסריט שלו
שלב רביעי: הכנת גיליון Google והתסריט שלו
שלב רביעי: הכנת גיליון Google והתסריט שלו
שלב רביעי: הכנת גיליון Google והתסריט שלו
שלב רביעי: הכנת גיליון Google והתסריט שלו
שלב רביעי: הכנת גיליון Google והתסריט שלו

הקרדיטים מגיעים ל- nishant_sahay7, כפי שאמרתי.

אני פשוט מפרסם כאן מחדש את יצירתו ומוסיף כמה טיפים לשיפורים עתידיים ולשינויים:

  1. הגדרת Google Sheets

    1. פתח את Google Drive וצור גיליון אלקטרוני חדש ושם אותו, לאחר מכן תן לשדות את הפרמטרים שברצונך להגדיר.
    2. מזהה הגיליון מוצג באיור 2
    3. עבור אל Tools-Script Editor (איור 3)
    4. תן את אותו השם של גיליון אלקטרוני (איור 4)
    5. בחר את הקוד מכאן והדבק בחלון עורך הסקריפט (איור 5)

      החלף את var sheet_id במזהה הגיליון האלקטרוני שלך משלב 2

    6. עבור לפרסם - פריס כאפליקציית אינטרנט (איור 6)
    7. שנה את סוג הגישה לכל אחד, אפילו אנונימי, ופריס (איור 7)
    8. עבור אל הרשאות סקירה (איור 8)
    9. בחר מתקדם (איור 9)
    10. בחר עבור אל (שם קובץ) ולאחר מכן אפשר (איור 10)
    11. העתק את כתובת האתר הנוכחית של אפליקציית האינטרנט ולחץ על אישור (איור 11)
  2. קבלת מזהה סקריפט של Google

    • כתובת האתר שהועתקה תהיה בערך כמו: https://script.google.com/macros/s/AKfycbxZGcTwqe… הקישור למעלה הוא בצורה של: https://script.google.com/macros/s/AKfycbxZGcTwqe…/exec אז הנה מזהה סקריפט של Google הוא: AKfycbxZGcTwqeDgF3MBMGj6FJeYD7mcUcyo2V6O20D6tRlLlP2M_wQ זה ישמש לדחיפת הנתונים ל- Google Sheets: דוגמה:

      script.google.com/macros/s/AKfycbxZGcTwqeD…

      הדבקת הקישור לעיל לחלון חדש והקשה על enter תשלח נתונים ל- Google Sheet והודעת אישור תופיע בחלון. הנתונים שנשלחו יהיו

      • טמפרטורה = 1
      • לחות = 2
      • PM2.5 = 3
      • PM10 = 33.10
  3. שנה את הצרכים שלך

    עליך לשנות את הסקריפט של Google ו- Arduino בהתאם, על מנת להוסיף או להסיר ערכים ועמודות: השווה בין איור 5 ובין איור 5b

שלב 6: שלב חמישי: חיבור הכל ביחד

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

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

הטוב ביותר יהיה לנהל מעט את הנתונים האלה, להראות רק כמה שצריך.

שלב 7: שלב שישי: נתוני גרפים

שלב שישי: גרף נתונים
שלב שישי: גרף נתונים
שלב שישי: גרף נתונים
שלב שישי: גרף נתונים

על מנת שיהיה פאנל פשוט אך מעניין ושימושי ארגנתי את הנתונים שלי כך:

  1. הגיליון המקורי של Google, הראשי, המשמש לאסוף את המזהה שלו כדי להזין אותו ב- Google Script, חייב להיות ללא נגיעה ולשמור על הסדר שלו
  2. יצרתי שני גיליונות נוספים, בעקבות הדף הראשי

    1. אחד לחלץ רק כמה נתונים מכל הדברים, 24 השעות האחרונות למשל לחלץ נתונים השתמשתי בפונקציית SORT ו- QUERY, הכנסתי לתא הראשון של הנתונים שחולצו

      = מיון (QUERY (Foglio1! A2: Z, "סדר לפי הגבלת הגבלה 694"), 1, 1)

    2. השני ליצירת גרפים להצגת ערכים, תוך יצירת לוח פשוט

שלב 8: שלב שביעי: ניתוח נתונים

שלב שביעי: ניתוח נתונים
שלב שביעי: ניתוח נתונים

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

אכן יש צורך בנתונים וניתוחים נוספים.

מוּמלָץ: