תוכן עניינים:
וִידֵאוֹ: ESP32 Scraper-parser-mailer ו- Live Mapper: 4 שלבים (עם תמונות)
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:11
שלום עולם! זה ההנחיה הראשונה שלי! אני מרקו מגרוסטו איטליה, אני לא מפתח, אני לא מהנדס אלקטרוניקה אבל אני מדריך סביבתי בפארק הטבע המקומי שלנו (פארק הטבע Maremma).
בקואופרטיב שלי אנחנו עובדים הרבה עם טיולי קאנו, טיולים נטורליסטיים ורגועים בנהר אומברון לצפייה בציפורים ומרגיע קצת חוש.
אבל נהר אומברון מפורסם גם בזכות זרימת המים האופיינית לו: מהקיץ "אפס" ועד זרימת סתיו-חורף של כמה אלפי מטרים מעוקבים של מים לשעה.
מסיבה זו, נהר אומברון נמצא במעקב מתמיד על ידי השירות ההידרומטרי האזורי המעולה (SIR), עם אתר פנטסטי שהופך את הנתונים שנאספים לזמינים.
כעת אנו מחכים לסוף העונה ולשיטפונות הסתיו הראשונים להסרת הרציף והקאנו …
אבל כשאנחנו מתחילים לדבר על גרידת ניתוח esp32ing וכו '? עוד רגע אחד
במהלך הנעילה האיטלקית עשיתי את השיעור הראשון של מבזק ארדואינו, מגניב … והמשכתי לשחק עם חיישנים וארדואינו C. אז אם אתה מוצא את הקוד שלי גס או מלא בפערים הגיוניים שטויות, שקול זאת!
עשיתי הרבה דברים רק כדי לבזבז זמן אבל עם הסיכון המתמיד הזה להצפות החלטתי לעשות משהו מגניב: בזכות ESP32 עם גורם צורה של ארדואינו (Wemos d1 r32) ששמרתי עטוף במשך חודשים כי חשבתי "קשה", באמת היו לי הרבה סיפוקים:
עשיתי מגרד שמביא ונתח נתונים מדף אינטרנט של SIR ומציג את המשתנים שהתקבלו ב- LCD i2c זול, וכמהבהב תדר בהירות בכמה נוריות במפה מציאותית.
אז אם תגיע הצפה מצד ההר אני אזהיר מהבהירות הגוברת (שינוי הרמה) והתדירות הגוברת (שינוי הרמה תוך שעה) של הנורות במפה … אך ה- ESP32 יכול לשלוח גם מיילים! אז למה שלא תעשה פונקציה בשביל זה?
בוא נלך לראות את הקוד למטה עכשיו!
אספקה
- לוח מבוסס ESP32: השתמשתי ב- Wemos d1 r32 כי יש לו סיכות נקבות וקל יותר לטפל בו
- leds, אדום הוא יותר "דרוך כמו"
- I2C 16x2 LCD הוא רק כחול אך הירוק מסוגנן יותר
- לוח שעם זול
- שעת לילה (אופציונלי)
שלב 1: הקוד
באינטרנט מצאתי רק הדרכות אדיות המשתמשות באתרים חיצוניים כדי לנתח נתונים, אז ניסיתי לבדוק את העוצמה של ליבות esp32 המנתחות את הנתונים ישירות על הלוח … ללא בעיות!
כך שאם אתה מציג את מקור דף ה- SIR יכול להבין כיצד הוא פועל: למרבה המזל הם משתמשים בערכי "פסיק מופרד כמו" להצגת הנתונים שלהם, כך שעם קוד זה אני מחפש תחנה הידרוגרפית (קוד TOSnumber) וסופר את מספר הפסיקים (כמפריד) המכילים את הערך שאני רוצה (ומאחסנים אותו כמשתנה), ולאחר מכן מעבירים אותו מחדש כבהירות וזמן מוביל באלפיות עבור מהבהב "רמת וריאציה"
הליבה של מגרד זה נמצאת בכרטיסייה
ind = payload.indexOf ("TOSstation_number"); // קבל את המיקום (ind) מהיכן להתחיל לספור פסיקים
מחרוזת my_var = getValue_ind (מטען, ',', 8); // כאשר 8 הוא התא השמיני המוגדר על ידי פסיקים (מפריד)
"מטען" הוא מה שאני מקבל מהאינטרנט שניקה בעבר מ"ציטוטים "ו-" & nbsp ";
והפונקציה getValue_ind הנמצאת בכרטיסייה הראשית
String getValue_ind (נתוני מחרוזות, מפריד תווים, אינדקס int) {
int נמצא = 0; int strIndex = {0, -1}; int maxIndex = data.length () - 1; for (int i = ind; i <= maxIndex && found <= index; i ++) {// from ind position if (data.charAt (i) == מפריד || i == maxIndex) {נמצא ++; strIndex [0] = strIndex [1] + 1; strIndex [1] = (i == maxIndex)? i + 1: i; }} נמצאה החזרה> אינדקס? data.substring (strIndex [0], strIndex [1]): ""; }
מותאם מתוך
הקוד מבקש את הדף כל 15 דקות, הוא בערך 44Kb, אני לא חושב שהוא עומס גדול על השרתים ועל ה- ESP32.. כדי להימנע מדי גלילה חילקתי את התוכנית בפונקציות שונות, קרא את ההערות
כאן הדבקת הקוד היא באמת בלגן … שמתי את קבצי ה-ino ישירות
השתמשתי בתכונת הכרטיסיות של arduino IDE כך שיש לי קבצי.ino שונים
זו הגרסה האחרונה של הקוד (?), יש הרבה מאמצים, אז אני אעריך כל הצעה!
- ליישור בהירות הלדים לערכים נמוכים, - לפונקציית "מפה" למשתנים של נקודה צפה - לשימוש בגרעין השני ב- ESP32, - להבנת כיצד להדפיס דואר HTML מחרוזת עם sprintfI יש ביליתי הרבה "זמן חנונים" אמיתי אז קרא על ההערות על קבצי.ino או על github!
כהגדרות העלאה השתמשתי בכלים: תוכנית מחיצות: אין OTA כדי שיהיה לי יותר מקום לקוד הענק הזה
תעשה חיים
לחץ כאן לקוד ב- github
שלב 2: המפה
תור זה כלול בקוד ESP32, כך שאוכל לתת לך רק כמה מילות מפתח, קישורים וכלים המשמשים:
השירות המצוין לחלץ אזורים וקטוריאליים מפתחי openstreetmap
- את ה- QGis ה"אוסטיים "לעיכולם
- חפש טבלת תכונות לפשט את המפה שלך
- צור פריסת הדפסה וייצא את המפה בפורמט svg בפורמט נייר A3
- ליהנות עם המאייר ה"חלק יותר"
- תדפיס את זה
שלב 3: מסיבת הדבק החם
כדי שאוכל להציע לחתוך את החורים של הלד והתצוגה על הנייר לפני שתתקן אותו על לוח הפקק
החיווט ממש פשוט ונעשה על ידי רע: P
רמת ההלחמה שלי: יונה
כפי שאתה יכול לראות מהקוד הלדים עוברים לסיכות IO
#define LED_PIN0 14 // si #define LED_PIN1 27 // buon #define LED_PIN2 16 // sass #define LED_PIN3 17 // tur #define LED_PIN4 25 // ist #define LED_PIN5 26 // berr
חפש pinout ESP32 כדי להבין
שלב 4: המוצר המוגמר
אז התמונה הזו לא הכי טובה, אבל כשיהיה לנו שיטפון נהר אעלה סרטון נחמד!
מוּמלָץ:
צלם תמונות נהדרות באמצעות אייפון: 9 שלבים (עם תמונות)
צלם תמונות נהדרות עם אייפון: רובנו נושאים איתנו סמארטפון לכל מקום בימים אלה, לכן חשוב לדעת כיצד להשתמש במצלמת הסמארטפון שלך לצלם תמונות נהדרות! היה לי רק סמארטפון במשך כמה שנים, ואהבתי להחזיק מצלמה ראויה לתיעוד דברים שאני
מחזיק תמונות עם רמקול מובנה: 7 שלבים (עם תמונות)
מחזיק תמונות עם רמקול מובנה: הנה פרוייקט נהדר לביצוע בסוף השבוע, אם אתה רוצה ליצור רמקול משלך שיכול להכיל תמונות/גלויות או אפילו רשימת מטלות. כחלק מהמבנה אנו הולכים להשתמש ב- Raspberry Pi Zero W כלב הפרויקט, ו
The Mapper - מיפוי + מערכת התראות: 9 שלבים
The Mapper - מיפוי + מערכת התראות: נהיגה בלילה היא די כיף. אך לעתים קרובות, מסתבר שזהו סיוט, בדמות בעלי חיים שחוצים את הכביש (במיוחד אותם חתולים וכלבים משוטטים, שמחכים שתסעו בקרבתם כדי שיוכלו לחצות !!). אז חשבתי להכין כך
תחילת העבודה עם ESP32 - התקנת לוחות ESP32 ב- Arduino IDE - קוד מהבהב ESP32: 3 שלבים
תחילת העבודה עם ESP32 | התקנת לוחות ESP32 ב- Arduino IDE | קוד מהבהב ESP32: במדריך זה נראה כיצד להתחיל לעבוד עם esp32 וכיצד להתקין לוחות esp32 ל- Arduino IDE ונתכנת את esp 32 להפעלת קוד מהבהב באמצעות arduino ide
שעון תמונות ESP32: 9 שלבים (עם תמונות)
שעון תמונות ESP32: מדריכים אלה מראים כיצד להשתמש ב- ESP32 ו- LCD ליצירת שעון צילום. ביפנית קוראים לזה BiJin ToKei (美人 時 計)