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

ציוץ תחנת מזג אוויר: 8 שלבים (עם תמונות)
ציוץ תחנת מזג אוויר: 8 שלבים (עם תמונות)

וִידֵאוֹ: ציוץ תחנת מזג אוויר: 8 שלבים (עם תמונות)

וִידֵאוֹ: ציוץ תחנת מזג אוויר: 8 שלבים (עם תמונות)
וִידֵאוֹ: עשר הנשים הכי גבוהות בעולם┃טופטן 2024, יולי
Anonim
ציוץ תחנת מזג אוויר
ציוץ תחנת מזג אוויר

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

הכירו את Tweeting Weather IoT Station המכונה TWIST - DIY, ניטור סביבתי בקוד פתוח ופלטפורמת רכישת מטאורולוגיה. מטרת ה- TWIST היא כך שאנשים וקהילות יוכלו לאסוף נתונים של מה שקורה בפועל בסביבתם ולשתף נתונים אלה במדיה חברתית כגון טוויטר.

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

TWIST מורכב משלושה רבדים טכנולוגיים:

השכבה הראשונה היא לוח חומרה המכיל את כל חיישני מזג האוויר והסביבה המכונים 'לוח החיישנים'. כפי שהשם מרמז, הוא נושא חיישנים שמודדים הרכב, טמפרטורה, לחות, גשם. ניתן להוסיף חיישנים נוספים כמו פעילות סיסמית, מדד UV, לחץ ברומטרי, גובה, לוקס (בהירות), רמות קול, מהירות רוח וכיוון וכו '. לאחר ההתקנה, לוח החיישנים מסוגל להזרים נתונים שנמדדו על ידי החיישנים לשכבה השנייה. השכבה השנייה היא לוח Intel Edison המקבל נתונים מלוח החיישנים, מעבד אותם ושולח אותם לשכבה הבאה. השכבה השלישית מחברת את לוח אדיסון שלך לאינטרנט באמצעות Wi-Fi באמצעות המודול האלחוטי בלוח אדיסון וציוץ תנאי מזג האוויר והסביבה הנוכחיים.

ניתן לספק חשמל למכשיר באמצעות פאנל סולארי או מתאם AC.

מאגרים מבוקרי גרסאות

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

כניסות לתחרות

הזמנת Intel IoT

ברצוני להודות לאינטל+Instructables שסיפקו לי את מועצת Intel Edison Board. אני מתכוון להכין עוד הרבה הוראות הקשורות ל- IoT באמצעות לוח אדיסון.

#iotweatherstn

אם אתה עושה TWIST, אל תשכח לצייץ את מזג האוויר באמצעות #iotweatherstn. #iotweatherstn יכול להיות האשטאג המשמש את כל תחנות מזג האוויר המציעות באמצעות IoT.

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

חלקים וחומרים
חלקים וחומרים
חלקים וחומרים
חלקים וחומרים
חלקים וחומרים
חלקים וחומרים

QuantityPartDetails 1

אינטל אדיסון

עם לוח פריצה Arduino

1

חיישן גז בעירה MQ2

1

YL-83

חיישן גשם

1

SL-HS-220

חיישן טמפרטורה ולחות

1

נַגָד

32K

4.7K

3 מתכת עמידה 1 אינץ '

1

נַגָד

32K

4.7K

2

יריעת עץ בגודל A4

מאוחר יותר ניתן לחתוך בגודל

3

עמידה ממתכת

1 אינץ

שלב 2: תכנון חשמל

כּוֹחַ

המערכת כולה מופעלת מספק כוח של 5V 1A. החיישנים (טמפרטורה, לחות, גשם, גז) שואבים כ 200 mA, האדיסון סביב 500 mA, מכיוון שהזרם הכולל הנדרש הוא פחות מ 1 אמפר, אספקת 1 אמפר אמורה לעבוד בסדר גמור. הנורית הירוקה המובנית בסיכה 13 הדיגיטלית של לוח אדיסון משמשת להצגת מצב החשמל.

אינטל אדיסון מפעילה את התוכנית עבור TWIST. האדיסון מותקן על לוח פריצה של Arduino, מה שמקל על קריאת האותות הדיגיטליים והאנלוגיים מהחיישנים. האדיסון מחובר למעקה 5V באמצעות כבל מיקרו USB. לאדיסון יש רדיו Wi-Fi מובנה, המאפשר לו להתחבר לטוויטר ללא צורך בחומרה נוספת.

שעון בזמן אמת (RTC)

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

ההתקנה הבסיסית ביותר של מערכת זו כוללת ארבעה חיישנים (טמפרטורה, לחות, גשם, גז) המתחברים לאדיסון. ניתן להוסיף חיישנים נוספים כגון רעש, רוח וכו '. כל חיישן מופעל ישירות ממעקה 5V וסיכת האות שלו מחוברת בהתאמה לפינים אנלוגיים A0 דרך A2 וסיכה דיגיטלית 2 בלוח הפריצה של אדיסון. לחיישנים יש לכל אחד גם פוטנציומטר התאמת רגישות המותקן על כל לוח חיישנים; ה- MQ-2 הוא חיישן גז דליק (גז נפט נוזלי, פרופאן, מימן ומתאן) שמפיק מתח אנלוגי ביחס לריכוז הגזים בחלקים למיליון. ל- SL-HS-220 יש תרמיסטור שנותן את ערך הטמפרטורה. מכיוון שפלט התרמיסטור אינו ליניארי, טבלת הטמפרטורות המתאימה ניתנת במאגר החיישנים. התרמיסטור דורש מעגל מחלק מתח כאשר הוא מחובר ללוח אדיסון כפי שמוצג בתרשים המעגלים. SL-HS-220 כולל גם מד טמפרטורה מובנה המודד לחות ויוצא מתח אנלוגי המתאים לערך לחות קבוע. טבלת מתח הלחות ניתנת גם במאגר החיישנים. תחליף נפוץ ל- SL-HS-220 הוא חיישן DHT11. לחיישן הגשם/חיישן המים יש פוטנציומטר אשר מותאם לתת פלט דיגיטלי לכמות מסוימת של גשם שאת המשתמש ניתן לכוון את רגישותו.

תחנת מזג האוויר. Fzz

שלב 3: תכנון מכני

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

חיתוך בלייזר

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

שלב 4: הרכבת מסגרת: פנים ובסיס

לוח פנים

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

צלחת בסיס

ההתנגדות של לוח אדיסון מוברגת על לוח הבסיס. ניתן להבריג את הממיר האנלוגי לדיגיטלי (ADC) המחובר לחיישן הגשם על לוח הבסיס.

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

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

שלב 5: הרכבה של אלקטרוניקה וחיישן

כּוֹחַ

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

חיישנים

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

שלב 6: תצורת טוויטר

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

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

הספרייה משתמשת באתר NeoCat זה כשרת proxy עבור דברים OAuth. לא ניתן ליישם את הציוץ שלך במהלך תחזוקת אתר NeoCat זה. נראה כי טוויטר דוחה ציוצים חוזרים עם אותו תוכן (מחזירה שגיאה 403).

אסימון טוויטר

ספריית הציוצים של Arduino

שלב 7: תוכנה ותצורה

עקוב אחר מדריך ההתקנה של Intel עבור Intel Edsion לפני שתתחיל לקודד.

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

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

עיכוב ציוץ

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

tweetMessage ();

עיכוב (10800000);

סוג יציקה

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

char **

char fmt [100]; sprintf (fmt, "%%% d.%df", רוחב, קדם); sprintf (sout, fmt, val); חזרה חזרה; }

אסימון טוויטר

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

tweet voidMessage () {

טוויטר טוויטר ("ENTER TWITTER TOKEN HERE");

ערכי חיישן מצייץ

על מנת לצייץ את ערך החיישן אנו כוללים תחילה את סוג החיישן; דוגמה: "לחות". לאחר מכן הצהרת תווים ושורת קוד הנדרשת לחיזוי הקלדה. לאחר מכן נוסיף הצהרה ליחידת המדידה; דוגמה: "%RH". אנו יכולים להמשיך ולהוסיף ערכים של חיישנים אחרים גם באופן דומה.

לחות(); לצוף לח;

// הודעת טוויטר String stringMsg = "לחות:"; char tmp [10]; dtostrf (לח, 1, 2, tmp); stringMsg += tmp; stringMsg += "%RH";

מיקום ותיוג תחנת מזג האוויר

לאחר מכן אנו מתייגים את המיקום (עיר, יישוב וכו ') ותגים אחרים כמו #iotweatherstn.

stringMsg += " #מומבאי #Bandra #iotweatherstn";

שעון בזמן אמת (RTC)

כפי שהוסבר קודם לכן TWIST יכול גם לצייץ את נתוני השעון בזמן אמת. להלן דוגמה לגוש הקוד של פרמטר 'היום' של ה- RTC. תכונת השעון בזמן אמת היא אופציונלית בפלטפורמת TWIST מכיוון שהמודול מגיע בנפרד. מכאן שישנו ענף נפרד שנוצר במאגר TWIST לקוד ולסכימות של ענף השעון בזמן אמת.

TwistDateTime (); DateTime עכשיו = rtc.now (); int twistday, twistmonth, twistyear, twisthour, twistmin, twistsec; String stringMsg = ""; char ds1307day [10]; dtostrf (twistday, 1, 0ds1307day); stringMsg += ds1307day; stringMsg += "/";

140 מגבלת תווים

בלוק קוד זה מכסה את מערך המחרוזות למערך של 140 תווים המוכן לציוץ.

הודעת char [140];

stringMsg.toCharArray (הודעה, 140);

הודעות וחיבור לפתרון בעיות

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

// צייץ את הפראייר הזה!

if (twitter.post (msg)) {int status = twitter.wait (); if (status == 200) {Serial.println ("אישור."); Serial.println ("הודעה צייצה"); } אחרת {// בדיקת חיבור Serial.print ("נכשל: קוד"); Serial.println ("ההודעה לא צייצה"); Serial.println (סטטוס); }} else {Serial.println ("החיבור נכשל."); Serial.println ("ההודעה לא צייצה"); }

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

ניתן להוריד את הקוד מכאן או מהמאגר הראשי:

תחנת מזג האוויר.ino

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

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

טוויסט GitHub

הזמנת Intel® IoT
הזמנת Intel® IoT
הזמנת Intel® IoT
הזמנת Intel® IoT

פרס שני בהזמנת IoT של Intel®

מוּמלָץ: