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

עציץ צמחים אוטומטי - גן קטן: 13 שלבים (עם תמונות)
עציץ צמחים אוטומטי - גן קטן: 13 שלבים (עם תמונות)

וִידֵאוֹ: עציץ צמחים אוטומטי - גן קטן: 13 שלבים (עם תמונות)

וִידֵאוֹ: עציץ צמחים אוטומטי - גן קטן: 13 שלבים (עם תמונות)
וִידֵאוֹ: מדריך לבניית תשתית שתילה נכונה בעציצים ואדניות 2024, נוֹבֶמבֶּר
Anonim
עציץ אוטומטי לצמח - גן קטן
עציץ אוטומטי לצמח - גן קטן

אני סטודנט מטכנולוגיית מולטימדיה ותקשורת ב- Howest Kortrijk. לצורך המשימה הסופית שלנו, היינו צריכים לפתח פרויקט IoT לפי בחירתנו.

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

המשימות העיקריות עבור עציץ צמחים אוטומטי זה, Little Garden, הן:

  • מדוד את ה

    • טֶמפֶּרָטוּרָה
    • עוצמת האור
    • לחות
    • לחות קרקע

שמור את המדידות למסד נתונים

שפר את התנאים לצמיחת הצמח אם ערך מסוים נמוך מדי

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

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

שלב 1: אספקה

אספקה
אספקה
אספקה
אספקה
אספקה
אספקה

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

רכיבי ליבה:

  • פטל פי 4 דגם B
  • ספק כוח פטל פטל
  • סנדלר T פטל פטל
  • כרטיס מיקרו SD בנפח 16GB
  • ספק כוח ללוח עם 3.3V ו- 5V
  • לוח לחם
  • ספק כוח 12V

חיישנים:

  • DHT11: חיישן לחות וטמפרטורה
  • BH1750: חיישן עוצמת אור
  • חיישן לחות קרקע
  • MCP3008

רכיבי מפעיל:

  • משאבת מים 220V
  • רצועת LED 12V
  • מודול ממסר ולמן
  • טיפ 50: טרנזיסטור NPN
  • מסך 16X2 LCD-moduke
  • PCF8574a

נגדים:

  • 3 x 330 נגדי אוהם
  • 1 x 5k אוהם אוהם
  • נגדי 2 x 10k Ohm
  • 1 x 1k אוהם אוהם
  • 1 x 10k נגד פוטנטיו

חומרים:

  • חממה/עציץ צמחי בית
  • תיבת חיבור
  • בקבוק מים מפלסטיק
  • מסתובבים
  • חוטי מגשר + חוט רגיל
  • שרבוטים
  • פח הלחמה + צינורות כיווץ חום
  • סרט נייר דו צדדי
  • צֶבַע

כלים:

  • אקדח דבק
  • תרגיל
  • להב של מסור
  • מלחם
  • חותך קופסאות
  • מכחול

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

שלב 2: פריצה סכמטית

פרימיטינג סכמטי
פרימיטינג סכמטי
פרימיטינג סכמטי
פרימיטינג סכמטי

לוח הלוח והתכניות החשמליות למכשיר מוצגות למעלה. כאן תוכלו לראות כיצד כל הרכיבים מחוברים יחד.

הסבר כללי כיצד פועלים הרכיבים:

  • ה- DHT11 מודד את לחות האוויר באחוזים ואת הטמפרטורה ב- ° C. התקשורת איתו מטופלת על ידי I2C bu.
  • BH1750 מודד את עוצמת האור בלוקס. התקשורת מטופלת על ידי אוטובוס I2C
  • חיישן לחות הקרקע יוצר אות דיגיטלי המומר על ידי ה- MCP3008 לאות דיגיטלי קריא עבור ה- Raspberry Pi
  • מודול LCD בגודל 16x2 מציג את כתובות ה- IP מהפי, בזה אחר זה. הוא מחובר ל- PCF8574a שמקבל אות מ- Raspberry Pi שימיר אותו למספר אותות עבור סיכות הסיביות של התצוגה. סיכות E ו- RS מתצוגת ה- LCD מחוברות ישירות ל- Pi. נגד הפוטנציו קובע את בהירות המסך.
  • משאבת המים מחוברת לממסר שנמצא בינה לבין ספק הכוח/שקע של 220 וולט. ה- Raspberry Pi יכול לשלוח אות לממסר לסגירת המעגל החשמלי ולהפעלת המשאבה.
  • רצועת ה- LED מחוברת לספק הכוח 12V ול- TIP 50 (טרנזיסטור NPN) המחליף את הזרם החשמלי. הנגד של 1k אוהם משמש להגבלת הכוח הנמשך מ- Raspberry Pi, אחרת הוא יטוגן פריך במיוחד.

שלב 3: הכינו את ה- Raspberry Pi

הכינו את ה- Raspberry Pi
הכינו את ה- Raspberry Pi

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

  1. עדכון sudo apt-get
  2. sudo apt-get upgrade

לאחר מכן תוכל להפעיל או להתקין את החבילות כדי שהפרויקט יעבוד, או באמצעות raspi-config או פקודות.

  • SPI
  • I2C
  • MySQL: השלב הבא
  • SocketIO: התקן pip-socketio

לאחר ההתקנה, תוכל להוסיף את הקבצים הדרושים הכתובים ב- HTML, CSS, Javascript ו- Python. ניתן למצוא את כל הקוד שלי במאגר github שלי.

שלב 4: מודל מסד נתונים - MySQL

מודל מסד נתונים - MySQL
מודל מסד נתונים - MySQL

למעלה אתה יכול לראות את תרשים ה- ERD המתארח באמצעות MariaDB. אני ממליץ לעקוב אחר מדריך ההתקנה הזה של MariaDB, לא רק כדי להתקין את MariaDB, אלא גם כדי לוודא שה- Pi שלך מוגן.

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

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

  • metingId = מזהה של שורת המדידה/החלפה
  • deviceId = מזהה המכשיר האחראי לשורה זו בטבלה
  • waarde = ערך מדידת החיישן או החלפת מפעיל

    • חיישן: ערך המדידה ביחידות המתאימות
    • מפעילים: 0 = OFF ו- 1 = ON
  • commentaar = הערות המשמשות להוספת מידע נוסף, כגון שגיאות
  • datum = התאריך והשעה שבהם התרחשה המדידה/ההחלפה

ההגדרות של המכשיר מאוחסנות בתוך הגדרות.

  • settingId = מזהה של שורה זו וערך ההגדרה
  • deviceID = מזהה המכשיר/החיישן המתאימים
  • waarde = ערך ההגדרה
  • type = סוג הסטין, האם הוא מקסימלי או מינימלי?

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

  • deviceId = מזהה המכשיר בטבלה זו
  • naam = שם המכשיר/רכיב
  • merk = מותג
  • מחיר = מחיר הרכיב
  • beschrijving = סיכום של הרכיב
  • יחידה = יחידה לערכים הנמדדים
  • typeDevice = מציין אם הרכיב הוא חיישן או מפעיל

שלב 5: Frontend: הגדרת שרת האינטרנט

Frontend: הגדרת שרת האינטרנט
Frontend: הגדרת שרת האינטרנט

ה- Pi ידרוש ממך להתקין את שרת האינטרנט של Apache על מנת להפעיל את שרת האינטרנט עבור מכשיר זה. ניתן לעשות זאת באמצעות הפקודה הבאה:

sudo apt-get להתקין apache2.

לאחר שתעשה זאת, תוכל לנווט אל התיקייה:/var/www/html. כאן תצטרך למקם את כל הקוד של החזית. לאחר מכן תוכל לגשת לאתר על ידי גלישה לכתובת ה- IP.

שלב 6: סוף

כדי להפעיל את ה- backend, יהיה עליך להריץ את הקובץ app.py, באופן ידני או על ידי יצירת שירות עבורו ב- Pi כך שהוא יופעל אוטומטית.

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

הסבר קצר:

app.py: הקובץ הראשי שבו מצטרפים מסד הנתונים, קוד החומרה וקוד ה- backend

config.py: קובץ התצורה של databaseRepositories

מאגרים: לגישה למאגר הנתונים

  • עוֹזֵר

    • devices_id: שיעורים שיסייעו בזיהוי פרטי המכשיר במסד הנתונים
    • lcd: להפעלת ה- PCF ו- LCD
    • מפעילים: שיעורים להפעלת המפעילים
    • חיישנים: שיעורים להפעלת החיישנים

שלב 7: הצבת רצועת LED

הצבת רצועת LED
הצבת רצועת LED

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

שלב 8: הנחת הצינורות

הצבת הצינורות
הצבת הצינורות

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

שלב 9: הצבת ה- LCD

הצבת ה- LCD
הצבת ה- LCD

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

ה- LCD מציג את כתובות ה- IP של ה- Raspberry Pi, ומאפשר לדעת באיזו כתובת תוכל להשתמש כדי לגלוש לאתר.

שלב 10: הצבת החיישנים וחיבור רצועת ה- LED

הצבת החיישנים וחיבור רצועת הלד
הצבת החיישנים וחיבור רצועת הלד
הצבת החיישנים וחיבור רצועת הלד
הצבת החיישנים וחיבור רצועת הלד

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

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

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

שלב 11: חיבור ה- Pi

חיווט לפי
חיווט לפי
חיווט לפי
חיווט לפי
חיווט לפי
חיווט לפי

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

לאחר מכן הנחתי את לוח הלחם (עם סנדלר T, PCF8574a, MCP3008, התנגדות מתכווננת ו- TIP50), ממסר ו- Raspberry Pi בתחתית ארגז החיבורים, שהיה מכוסה בקלטת נייר דו צדדית. ספק הכוח לא התאים ללוח הלחם, אז הייתי צריך לשים אותו בצד והשתמשתי בחוטי מגשר כדי לחבר אותו ללוח הלחם.

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

שלב 12: הכנת מיכל למים

הכנת מיכל למים
הכנת מיכל למים

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

שלב 13: תוצאה סופית

תוצאה סופית
תוצאה סופית
תוצאה סופית
תוצאה סופית

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

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

מוּמלָץ: