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

מזין חיות מחמד: 9 שלבים
מזין חיות מחמד: 9 שלבים

וִידֵאוֹ: מזין חיות מחמד: 9 שלבים

וִידֵאוֹ: מזין חיות מחמד: 9 שלבים
וִידֵאוֹ: ניר וגלי 9 נשמות - איזה כלב 2024, יולי
Anonim
Image
Image
מזין חיות מחמד
מזין חיות מחמד

יש לך חיית מחמד?

  • לא: אמץ אחד! (וחזור להנחיה זו).
  • כן: עבודה טובה!

האם זה לא יהיה נהדר אם תוכל להאכיל ולתת מים לאהובך מבלי לבטל תוכניות על מנת להגיע הביתה בזמן? אנחנו לא אומרים יותר לדאוג.

בפרויקט זה הכנו מכשירי מזון ומים בשליטה מרחוק (דרך האינטרנט).

באמצעות לוח המחוונים המקוון תוכלו לצפות בנתונים ולשלוט במתקנים:

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

מי אנחנו?

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

פרויקט זה נועד לקורס IOT.

אספקה

מכשירי חשמל

  • 2 X ESP8266 (Wemos d1 מיני).
  • חוטי מגשר.
  • 2 X לוח לחם.
  • חיישן 4X אולטרסאונד.
  • 2 X תא טעינה.
  • מגבר 2 תאי עומס (HX711).
  • סרוו (180 °).
  • סרוו (סיבוב רציף).
  • ספק כוח 2X 6V.

חלקים

  • מתקן קורנפלקס (קישור לאמזון).
  • משפך מתקן מזון מודפס בתלת מימד (https://www.thingiverse.com/thing:3998805).
  • מצורף סרוו של מתקן מזון מודפס בתלת מימד (https://www.thingiverse.com/thing:3269637).
  • מעמד מתקן מזון מודפס בתלת מימד (מיועד לפרויקט זה:
  • בסיס צלחת ותא מטען מודפס בתלת מימד (מיועד לפרויקט זה:
  • מתקן מים (קישור אמזון למשהו דומה).
  • חוט (לחיבור כפתור מתקן המים לסרוו).
  • מעמד חיישן קולי 3 X.

שלב 1: איך זה עובד?

איך זה עובד?
איך זה עובד?

לוחות ESP8266 שולחים את קריאות החיישנים ל- Node-RED דרך Mosquitto (מתווך MQTT).

Node-RED מעבד את הנתונים, מבצע פעולות בהתאם (שלח גם פקודות מתן ללוחות ESP8266 דרך Mosquitto) ומציג מידע על לוח המחוונים.

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

שלב 2: תוכנות

תוכנות
תוכנות

Arduino IDE

הורד והתקן (קישור:

יתוש

הורד והתקן (קישור:

Node.js

הורד והתקן (קישור:

צומת אדום

בצע את ההוראות:

ngrok

הורדה:

מִברָק

התקן את האפליקציה בסמארטפון שלך.

שלב 3: פריסת המעגל

פריסת מעגל
פריסת מעגל

* לשני המכשירים מעגלים זהים

מתקן מים

  • חיישן קולי (למיכל המים)

    • GND - G
    • VCC - 5V
    • ECHO - D5
    • טריגר - D0
  • חיישן קולי (למרחק של חיית המחמד מהקערה)

    • GND - G
    • VCC - 5V
    • ECHO - D6
    • טריגר - D7
  • תא עומס

    • ירוק - A+ (HX711)
    • לבן - A- (HX711)
    • שחור - E- (HX711)
    • אדום - E+ (HX711)
  • HX711 (מגבר תא עומס)

    • GND - G
    • VCC - 5V
    • DT - D4
    • SCK - D3
  • סרוו (180 °)

    • GND - G
    • VCC - 5V

מתקן מזון

  • חיישן אולטרסאונד (למיכל המזון)

    • GND - G
    • VCC - 5V
    • ECHO - D5
    • טריגר - D0
  • חיישן קולי (למרחק של חיית המחמד מהקערה)

    • GND - G
    • VCC - 5V
    • ECHO - D6
    • טריגר - D7
  • תא עומס

    • ירוק - A+ (HX711)
    • לבן - A- (HX711)
    • שחור - E- (HX711)
    • אדום - E+ (HX711)
  • HX711 (מגבר תא עומס)

    • GND - G
    • VCC - 5V
    • DT - D4
    • SCK - D3
  • סרוו (סיבוב רציף)

    • GND - G
    • VCC - 5V
    • בקרה - D8

שלב 4: יצירה

מְלָאכָה
מְלָאכָה
מְלָאכָה
מְלָאכָה
מְלָאכָה
מְלָאכָה

מתקן מים

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

מתקן מזון

  1. הברג את הסרוו למחזיקו (חלק מודפס בתלת מימד).
  2. הדבק את המשפך (חלק מודפס בתלת מימד) למחזיק הטנק (חלק מודפס בתלת מימד).
  3. חבר את מחזיק המיכל למעמד המתקן (חלק מודפס בתלת מימד) והנח את המיכל במקומו.
  4. הכנס את החלק המסתובב (מודפס בתלת מימד) למקומו ודרך חלק הגומי המסתובב של המתקן.
  5. הברג את חלק מחזיק הסרוו למעמד המתקן.
  6. הדבק חיישן קולי אחד בצד הפנימי של מכסה המיכל (חיישן כלפי מטה).
  7. הדבק חיישן אולטרסוני אחד לצד מחזיק הטנק הפונה לכיוון המקום בו חיית המחמד שלך תאכל.

טען תאים

הדבק כל תא עומס לבסיס ולצלחת המודפסת בתלת -ממד (החץ של תא הטעינה כלפי מטה)

שלב 5: יתוש

יתוש
יתוש

פתח את Mosquitto (משתמשי windows: עבור לתיקיית Mosquitto, פתח cmd והזן: "יתוש -v").

* כדי לקבל את כתובת ה- IP הפנימית של המחשב, הפעל את cmd והזן "ipconfig".

שלב 6: Arduino IDE

Arduino IDE
Arduino IDE
Arduino IDE
Arduino IDE

פתח את Arduino IDE ופעל לפי החלק "התקן את ESP8266 תוסף ב- Arduino IDE" במדריך זה:

עבור אל כלים-> לוח ובחר "LOLIN (WEMOS) D1 R2 & mini".

עבור אל סקיצה-> כלול ספרייה-> הוסף ספריית ZIP … והוסף את שלוש הספריות בקובץ "Libraries.rar".

פתח סקיצה של "HX711 כיול", העלה אותה לשני ESP8266, הפעל אותה ופעל לפי ההנחיות (בתחילת הקוד ובצג הטורי) לכיול תאי העומס (ודא שקצב השידור של הצג הסדרתי מוגדר ל- 115200 שידור).

* רשום את גורם הכיול ואת קיזוז האפס (לשימוש מאוחר יותר).

פתח את רישומי "FoodDispenser" ו- "WaterDispenser" דרך ה- IDE ושנה את המשתנים הבאים בעזרת ההגדרות שלך (בקובץ "Settings.h"):

  • WIFI_SSID
  • WIFI_PASSWORD
  • MQTT_SERVER
  • LOAD_CELL_CALIBRATION_FACTOR
  • LOAD_CELL_ZERO_OFFSET

* ב- MQTT_SERVER הזן את כתובת ה- IP הפנימית משלב "היתוש".

העלה את הסקיצות לשני ESP8266 שלך (קוד אחד לכל לוח).

* שים לב שהשתמשנו בספריית "AsyncMqttClient" ולא בספריית "pubsubclient" הנפוצה יותר מכיוון ש- esp8266 מתרסק בשילוב עם ספריית "HX711".

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

שלב 7: Ngrok

Ngrok
Ngrok
Ngrok
Ngrok

פתח את הקובץ שהורדת (מהקישור בשלב "תוכנות").

פתח את "ngrok.exe" והפעל את הפקודה "ngrok http 1880".

* אתה יכול לבחור את האזור הקרוב ביותר אליך (au, eu, ap, us, jp, in, sa). ברירת המחדל היא אנחנו.

למשל הפעלת הפקודה: "ngrok http --region = eu 1880" (הגדר את האזור לאירופה).

כעת תראה את כתובת האינטרנט שלך לשימוש חיצוני (נתייחס לכתובת זו בשם YOUR_NGROK_ADDRESS).

שלב 8: Node-RED

צומת אדום
צומת אדום
צומת אדום
צומת אדום
צומת אדום
צומת אדום

פתח את Node-RED (משתמשי windows: פתח cmd והזן "node-red") ועבור אל https:// localhost: 1880 (אם זה לא עובד, חפש את הכתובת בחלון cmd שבו כתוב "שרת עכשיו רץ ב ").

פתח את התפריט (בפינה השמאלית העליונה) ולחץ על "ניהול לוח".

עבור לכרטיסייה "התקן", חפש והתקן את המודולים הבאים:

  • node-red-contrib-persist.
  • node-red-contrib-cron-plus.
  • node-red-contrib-ui-led.
  • צומת-אדום-לוח מחוונים.
  • node-red-contrib-telegrambot.

עבור לתפריט-> ייבוא והעלה את קובץ הזרימה (חלץ את קובץ ה- RAR המצורף והעלה את קובץ ה- json).

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

יהיה עליך לשנות את הצמתים האלה עם ההגדרות שלך:

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

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

לפרוס את הזרימה (בצד ימין למעלה).

* רק בפריסה הראשונה, תראה אזהרה בחלון הבאגים לגבי חסר קובץ 'persistance.json'. אל תדאג מזה מכיוון שכרגע תקבע את זמני האכלה או תשנה את מתג המים האוטומטי, הוא יאתחל את הקובץ הזה ולא תהיה לך עוד אזהרה זו.

תוכל להציג את לוח המחוונים שלך בכתובת https:// NODE-RED_PC'S_INTERNAL_IP_ADDRESS: 1880/ui (אם אתה מחובר לאותו LAN כמו השרת) או ב- YOUR_NGROK_ADDRESS/ui (מכל מקום).

שלב 9: סיום

לעטוף
לעטוף

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

אתה מוזמן לשאול אותנו כל דבר.

מוּמלָץ: