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

IOToilet: 7 שלבים (עם תמונות)
IOToilet: 7 שלבים (עם תמונות)

וִידֵאוֹ: IOToilet: 7 שלבים (עם תמונות)

וִידֵאוֹ: IOToilet: 7 שלבים (עם תמונות)
וִידֵאוֹ: «Растения против зомби 2», телешоу «Тролль квест», «Мой говорящий Том 2», «Игры о кальмарах», Skibidi.io, «Туалетная драка» 2024, נוֹבֶמבֶּר
Anonim

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

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

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

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

כלים וחומרים
כלים וחומרים
כלים וחומרים
כלים וחומרים
כלים וחומרים
כלים וחומרים
כלים וחומרים
כלים וחומרים

חומרים המשמשים:

מחזיק נייר טואלט

Wemos D1 מיני

שבב ATTiny85, אריזת DIP

2 x טרנזיסטור 2n2222

נגד 220 אוהם

נגד 2 * 1KOhm

מד תאוצה MPU6050

אופציונלי, במידה ואינך משתמש במחשב הלוח שלי:

מגן אב טיפוס של Wemos

חוט, הלחמה וכו '.

כלים בשימוש:

דרמל עם דיסק חיתוך

לוח devtiny (להעלאת קושחה בנוחות)

מתכנת USB Tiny ISP

מברג משולש, השתמשתי בערכה זו:

שלב 2: ביטול ניתוק היחידה המקורית

פירוק היחידה המקורית
פירוק היחידה המקורית
פירוק היחידה המקורית
פירוק היחידה המקורית
פירוק היחידה המקורית
פירוק היחידה המקורית

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

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

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

שלב 3: מעגלים מוסברים

מסלול מעגלים
מסלול מעגלים
מסלול מעגלים
מסלול מעגלים

אז הנה קצת על ההיגיון מאחורי המעגל:

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

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

האפשרות השנייה שלי הייתה באמצעות מתג ההטיה שסופק עם היחידה המקורית כדי להעיר את ה- ESP. תחילה קשרתי אותו ישירות לסיכת RESET של Wemos כמתואר בתמונות למעלה, באמצעות טרנזיסטור להפעלה/ביטול המנגנון. כאשר בסיס הטרנזיסטור היה גבוה, ה- GND יכול לעבור דרך מתג ההטיה ולגרום לו להתחבר באופן זמני לסיכת RESET, ולגרום לאיפוס ה- MCU (זוהי הדרך היחידה להעיר ESP משינה עמוקה, ככל הנראה). לאחר מכן חיברתי את D0 לבסיס הטרנזיסטור, מתוך הנחה כי רגל זו היא גבוהה כל עוד ה- MCU ישן, וברגע שהיא מתעוררת, D0 חוזר ל- LOW, ומשבית את מנגנון האיפוס. אחרי הכל, לא הייתי צריך איפוס חוזר כדי לקרות, רק בפעם הראשונה כאשר מחזיק נייר הטואלט החל לזוז.

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

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

בסופו של דבר הוספתי עוד MCU, ATTiny85, שיתעורר מהשינה באמצעות מתג ההטיה, ואז יעיר את ה- ESP8266 ותחכה זמן מה לפני שתחזור לישון. אני יודע שזה כנראה לא הפתרון החסכוני ביותר לבעיה, אבל היה לי מועד אחרון …

אתה יכול לראות את הפתרון המפורט בסכימה שכללתי. שים לב כי נגדי 10K הוחלפו ב- 1K מכיוון שאלו 10k היו גבוהים מדי מכדי שהטרנזיסטורים ייפתחו במלואם.

שלב 4: הכנת ה- ATTiny85

הכנת ה- ATTiny85
הכנת ה- ATTiny85

אם מעולם לא תיכנת ATTiny85, אל תפחד! השימוש ב- Arduino IDE האהוב יכול להביא אותך לכל אורך הדרך. התחל בהוראות אלה כיצד להגדיר את Arduino IDE:

github.com/SpenceKonde/ATTinyCore/blob/mas…

לאחר מכן, התקן את מנהלי ההתקנים של USBTinyISP מכאן:

learn.adafruit.com/usbtinyisp/drivers

כעת, טען את קוד הבדיקה המצורף: WakeOnExternalInterruptTest.ino

והתחבר (ראה דיאגרמת Pinout ATTiny85):

1. כפתור טאקט בין סיכה 3 לקרקע

2. LED ונגד 220 אוהם בסדרה, בין סיכה 2 לקרקע

הַבָּא, בחר את ה- USBTinyISP כמתכנת (תחת כלים -> מתכנת) והעלה את סקיצת הבדיקה ללוח.

הנורית אמורה להבהב 5 פעמים ואז השבב צריך לישון. לחיצה על הכפתור תגרום לו להתעורר ולחזור על רצף זה.

האם זה עבד? גדול! העלה את המערכון הסופי "מעורר" ל- ATTiny, שישמש במעגל הסופי.

שלב 5: בניית מגן Wemos

בניית מגן וומוס
בניית מגן וומוס
בניית מגן וומוס
בניית מגן וומוס
בניית מגן וומוס
בניית מגן וומוס
בניית מגן וומוס
בניית מגן וומוס

לכן, כדי לבנות את המגן יש לך 3 אפשרויות שאתה יכול לבחור מבין:

1. השתמש במגנת פרוטוש סטנדרטית עבור ה- Wemos והלחם עליה את המעגלים.

2. בנה PCB, בהתבסס על קבצי EAGLE המצורפים.

3. בקש ממני PCB שאוכל לשלוח לך בדואר חלזונות (יש לי כמה שוכבים, העלות היא כמעט כלום).

בכל מקרה, אני ממליץ לבנות את המעגל על קרש לחם לפני התחייבות ל- PCB!

אם אתה משתמש באפשרויות ה- PCB, הקפד לחבר את החוט השחור כמו בתמונות, בצד הקדמי או האחורי של הלוח (האחרון עבד הכי טוב בשבילי). חוט זה מחבר את ה- GND מהוומוס ל- ATTiny85 ובלעדיו לא תתעורר התעוררות.

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

שלב 6: הכנת הוומוס

אם מעולם לא השתמשת ב- Arduino IDE לתכנת לוח Wemos, החל בהתקנת מנהל הלוח ובחירת הלוח בתפריט כלים -> לוח, כמתואר כאן:

github.com/esp8266/Arduino

התחל בהעלאת סקיצת המצמוץ ללוח שלך, וודא שהקוד יעלה כהלכה.

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

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

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

עצה: תכננו מראש.

עכשיו, בדיקה!

לאחר ההתקנה, התחל בהעלאת סקיצת הבדיקה של BlinkAccelerometer ל- Wemos וודא שהיא מדליקה ומכבה את נורית MPU6050. אם לא, בדוק את חיווט הטרנזיסטור שאחראי להפעלת ה- MPU6050. הבסיס שלו צריך להיות מחובר לסיכה D5 של ה- Wemos, האספן צריך להיות מחובר ל- GND של מד התאוצה והפולט צריך להיות מחובר ל- GND משותף.

לאחר מכן, העלה את שרטוט TurnCountTest1 ללוח Wemos ופתח צג סידורי. אתה אמור לראות נתונים שמגיעים ממד התאוצה המוצג על הצג. אם לא עובד, בדוק את השעון וחיווט הנתונים: יש לחבר את CLK ל- D1 ולחבר את DATA ל- D2.

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

לאחר מכן, חבר את כניסת הסוללה 3V ל- Wemos VCC, ואת מסוף המינוס שלה ל- Wemos GND. ודא כי הפעלת המתג מפעילה את היחידה. לבסוף, חבר את הרמקול ל- GND וסיכה D4 של ה- Wemos.

העלה את הקוד הסופי ל- Wemos - סקיצה בשם SmartWipe. פתח צג סדרתי וודא שהיחידה הולכת לישון לאחר 3 דקות ומתעוררת על ידי הזזת מתג ההטיה (הודעות מתאימות אמורות להופיע על הצג).

אם ברצונך להקטין את הזמן בו Wemos ער (בעיקר לצורכי בדיקה), עמעם את הערך של WIFI_CONFIGURATION_IDLE_TIMEOUT המוגדר ב- params.h והעלה את הסקיצה ללוח. וודא שאחרי שהוומוס הולך לישון עמוק, הזזת מתג ההטיה גורמת ל- ATTiny להתעורר (מסומן על ידי הנורית), אשר בתורו מעיר את הוומוס.

שנה את ערך הפרמטר בחזרה ל- 180000L (3 דקות, באלפיות השנייה) וודא שה- Wemos יורה נקודה חמה בשם IOToilet_XXXXXXX שם XXXXXXX יוחזר מכתובת ה- MAC של השבב. התחבר ל- Wifi זה באמצעות טלפון חכם, ועליך להפנות אותך לטופס הרשמה (מנגנון שנקרא Captive Portal). מלא את הפרטים, במיוחד ה- SSID והסיסמה של ה- wifi המקומי שלך חשוב ושלח את הטופס. לאחר מכן על היחידה לנסות להתחבר לרשת באמצעות האישורים המסופקים, ואם יצליח, להשמיע 3 צלילים עולים ברמקול. אם הייתה בעיה בחיבור ל- Wifi, יושמע 3 צלילים יורדים. לאחר מכן, הוומוס צריכים לישון עמוק, עד שיתעוררו על ידי תנועה.

לבסוף: בדיקת מערכת מקצה לקצה.

גלגל את מחזיק נייר הטואלט לאורך ציר הסיבוב שלו כמה סיבובים, ולאחר מכן הנח אותו על משטח יציב (כדי לסמן שהגלולה הסתיימה והפעלת העלאת נתונים). המתן כעשר שניות עד שספירת הגלילים תישלח לענן, ולאחר מכן עבור אל https://smartwipe-iot.appspot.com/ ולחץ על שאילתה. אתה אמור לראות את פרטי ההרשמה שלך ואת מספר גלילות השימוש שלך לאחרונה בענן! הקפד לרשום את uuid שלך, שהוא המזהה הייחודי שלך במערכת, המופק מכתובת ה- MAC של Wemos שלך.

אם ברצונך לחלץ רק את הנתונים הסטטיסטיים שלך בפורמט JSON, השתמש בכתובת אתר דומה לזה:

smartwipe-iot.appspot.com/api?action=query&uuid=1234567890

פשוט תחליף את uuid בשלך.

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

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

צרה? כתוב לי!

UNITED WE POP!

מוּמלָץ: