תוכן עניינים:
- שלב 1: התוכנית
- שלב 2: דברים שתצטרך
- שלב 3: חישוב זרם סטייה בקנה מידה מלא
- שלב 4: יצירת בקשת SNMP GET
- שלב 5: הבנת תגובת GET
- שלב 6: ממיר דיגיטלי לאנלוגי (DAC)
- שלב 7: האסיפה
- שלב 8: זמן הקידוד
- שלב 9: תהנה
וִידֵאוֹ: מד מהירות אינטרנט: 9 שלבים (עם תמונות)
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:12
עם נעילה מוחלטת בהודו, הכל כולל שירותי דואר נסגר. אין פרויקטים חדשים של PCB, אין רכיבים חדשים, שום דבר! אז כדי להתגבר על השעמום וכדי להעסיק את עצמי, החלטתי להכין משהו מהחלקים שכבר יש לי בבית. התחלתי לחפש מתוך ערימת זבל האלקטרוניקה ומצאתי מולטימטר אנלוגי ישן ושבור. חילצתי ממנו את 'תנועת המונים' והחלטתי להציג מידע כלשהו אבל לא בדיוק ידעתי מה. ראשית, חשבתי להציג נתונים סטטיסטיים על COVID-19 אבל יש כבר הרבה פרויקטים טובים יותר באינטרנט. כמו כן, הנתונים מתעדכנים לאחר מספר שעות ומצביע דומם של המונה יהיה משעמם. רציתי נתונים שמשתנים במהירות, משתנים כל שנייה. ביקשתי הצעות באינסטגרם ואחד העוקבים שלי השיב באמצעות מד מהירות אינטרנט. זה נשמע מעניין והחליט לעשות את זה!
במדריך זה, אראה לך כיצד תפסתי נתונים מנתב ה- WiFi שלי באמצעות SNMP והצגתי את מהירות ההעלאה וההורדה במד.
בואו נתחיל
שלב 1: התוכנית
כמו תמיד לפני שהתחלתי עם הפרויקט עשיתי קצת מחקר באינטרנט. מצאתי כמה פרויקטים הקשורים לנושא זה. הם היו משני סוגים. כזו שהראתה מהירות אינטרנט על ידי מדידת ה"עוצמה "של אות ה- WiFi. אני לא איש מומחה לרשת אבל זה לא נשמע נכון. האחרים מדדו את החביון וסווגו את המהירות כאיטית, בינונית או מהירה. איחורים הוא עיכוב הזמן בין שליחת הבקשה לבין קבלת התגובה ולכן זה לא יכול להיות הייצוג בפועל של מהירות האינטרנט. אנחנו יכולים לקרוא לזה מהירות תגובה ברשת! אז היו פרויקטים חוקיים שמדדו את הזמן הנדרש להורדת נתונים וחישבו את מהירות האינטרנט על סמך זה.
אבל בפרויקט הזה (של Alistair) למדתי על פרוטוקול ניהול רשת פשוט או SNMP. באמצעות SNMP, אנו יכולים לתקשר עם נתב ה- WiFi ולקבל את הנתונים הנדרשים ישירות ממנו. קל, נכון? בעצם לא! מכיוון שלדגמים שונים של נתבי WiFi יש הגדרות שונות וזקוקים להרבה ניסויים וטעויות לפני שאתה סוף סוף מקבל את הפלט. אל תפחד. אסביר בקצרה את כל מה שלמדתי על SNMP ועל הקשיים שעמם התמודדתי בשלבים הקרובים.
אז התוכנית היא להשתמש ב- NodeMCU כדי להתחבר לנתב ה- WiFi. אלה השלבים כדי להגיע לתפוקה הסופית:
- שלח בקשה לנתב 'מבקש' את הנתונים הדרושים
- קבל את התגובה מהנתב
- נתח את התגובה ונתח את הנתונים הנדרשים ממנה
- המר את הנתונים 'הגולמיים' למידע מובן
- צור מתח ביחס למהירות האינטרנט עבור המונה
- חזור
אני אשתמש בממיר DAC או דיגיטלי לאנלוגי לשליטה על המונה.
שלב 2: דברים שתצטרך
1x NodeMCU
1x תנועת מד אנלוגי
1x MPU4725 DAC
1x מתג SPDT
1x 10k פוטנציומטר
1x נגד
שלב 3: חישוב זרם סטייה בקנה מידה מלא
הערה: עבור לשלב 7 לבנייה בפועל!
דלג על שלב זה אם אתה כבר מכיר את זרם ההסטה בקנה מידה מלא עבור המונה שלך. במד שלי לא היה שום אזכור לזה אז הייתי צריך לחשב. אך ראשית, הבה נראה במהרה כיצד פועלת תנועה כזו. הוא מורכב מסליל התלוי בשדה מגנטי. כאשר הזרם זורם דרך הסליל, על פי חוק פאראדיי, הוא חווה כוח. מותר לסליל להסתובב בחופשיות בשדה המגנטי וכך גם המצביע המחובר לסליל. גודל הזרם שגורם לסמן לנוע ב'קצה הסולם 'נקרא זרם סטייה בקנה מידה מלא. זהו גם הזרם המרבי שיש לאפשר לו לזרום דרך הסליל.
יש עוד הרבה דברים אבל זה מספיק למה שאנחנו עושים. כעת יש לנו את התנועה. זה יכול לשמש כמד מתח על ידי הוספת עמידות גבוהה בסדרה איתו או כמד זרם על ידי הוספת התנגדות קטנה במקביל אליו. נשתמש בו כמד מתח כדי להציג את המתח ביחס למהירות האינטרנט. לכן, עלינו לחשב את ההתנגדות שיש להוסיף בסדרות. לשם כך, ראשית עלינו לחשב את זרם ההסטה בקנה מידה מלא.
- בחר ערך התנגדות גבוה (כמו> 100k)
- חבר אותו בסדרה עם התנועה והפעל עליו מתח משתנה באמצעות הסיר.
- המשך להגדיל את המתח לאט עד שהמצביע יגיע לסוף הסולם.
- מודד את הזרם הזורם באמצעות מודד. זהו זרם הסטה בקנה מידה מלא. (I = 150uA במקרה שלי)
אנו משתמשים ב- DAC בעל טווח מתח היציאה מ- 0 ל- VCC (3.3V עקב NodeMCU). המשמעות היא שכאשר מוחל 3.3V על המונה, הוא אמור להצביע בסוף הסקאלה. זה יכול לקרות כאשר זרם סטייה בקנה מידה מלא זורם במעגל כאשר 3.3V מופעל. באמצעות חוק אוהם, 3.3/(זרם סטייה בקנה מידה מלא) נותן את הערך להתנגדות שיש להוסיף בסדרות.
שלב 4: יצירת בקשת SNMP GET
פרוטוקול ניהול רשת פשוט (SNMP) הוא פרוטוקול אינטרנט סטנדרטי לאיסוף וארגון מידע על התקנים מנוהלים ברשתות IP ולשינוי מידע זה לשינוי התנהגות המכשיר. התקנים התומכים בדרך כלל ב- SNMP כוללים מודמים של כבלים, נתבים, מתגים, שרתים, תחנות עבודה, מדפסות ועוד. לצורך בנייה זו, נתקשר עם נתב ה- WiFi שלנו באמצעות SNMP ונקבל את הנתונים הנדרשים.
אך ראשית, עלינו לשלוח לנתב בקשה הידועה בשם 'בקשת GET' ולציין את פרטי הנתונים אותם אנו רוצים. פורמט GET Request מוצג בתמונה. הבקשה מורכבת מחלקים שונים. הדגשתי את הבייטים שאולי תרצה לשנות.
שימו לב שהכל בהקסדצימלי.
הודעת SNMP -במקרה שלי, אורך ההודעה כולה הוא 40 (צבע אפור) שכאשר היא מומרת להקסדצימלי היא 0x28.
מחרוזת קהילה SNMP - הערך 'PUBLIC' כתוב בהקסדצימלי כ'70 75 62 6C 69 63 'שאורכו 6 (צהוב).
סוג PDU PDP - במקרה שלי, אורך ההודעה הוא 27 (כחול) כלומר 0x1B.
סוג רשימת Varbind - במקרה שלי, אורך ההודעה הוא 16 (ירוק) כלומר 0x10.
סוג Varbind - במקרה שלי, אורך ההודעה הוא 14 (ורוד) כלומר 0x0E.
מזהה אובייקטים -
כפי שצוין קודם לכן, התקני רשת התומכים ב- SNMP (למשל נתבים, מתגים וכו ') שומרים על מסד נתונים של סטטוס מערכת, זמינות ומידע על ביצועים כאובייקטים, המזוהים על ידי OIDs. עליך לזהות את OIDs של הנתב שלך עבור מנות העלאה והורדה. ניתן לעשות זאת באמצעות דפדפן MIB בחינם כמו זה.
הזן כתובת כ- 192.168.1.1 ו- OID בשם.1.3.6.1.2.1.2.2.1.10.x (ifInOctets) או.1.3.6.1.2.1.2.2.1.16.x. (ifOutOctets). בחר קבל פעולה ולחץ על עבור. אתה אמור לראות את ה- OID יחד עם הערך והסוג שלו.
במקרה שלי, אורך ההודעה הוא 10 (אדום) כלומר 0x0A. החלף את הערך ב- OID. במקרה זה, '2B 06 01 02 01 02 02 01 10 10'
זהו זה! הודעת הבקשה שלך מוכנה. שמור את שאר הבייטים כפי שהם.
הפעלת SNMP בנתב שלך:
- היכנס לדף נתב ה- WiFi שלך דרך שער ברירת המחדל. הקלד 192.168.1.1 בדפדפן שלך והקש Enter. כברירת מחדל, שם המשתמש והסיסמה צריכים להיות 'מנהל'.
- אני משתמש בנתב TP-LINK (TD-W8961N). עבור נתב זה, עליך לעבור לניהול גישה> SNMP ובחר 'מופעל'.
- קהילת GET: ציבורית
- מארח מלכודת: 0.0.0.0
שלב 5: הבנת תגובת GET
אתה יכול לדלג על שלב זה, אך טוב לדעת אם עליך לבצע כמה בעיות.
לאחר העלאת הקוד והפעלתו, תוכל להציץ בתגובה באמצעות הצג הסידורי. זה צריך להיראות כמו שמוצג בתמונה. יש כמה בייטים שאתה צריך לחפש אותם שהדגשתי.
החל מ -0, בייט 15 אומר לסוג PDU - 0xA2 פירושו שהוא GetResponse.
בייט 48 אומר לסוג הנתונים - 0x41 פירושו שסוג הנתונים הוא Counter.
49 בתים מספרים את אורך הנתונים - 0x04 פירושו שאורך הנתונים הוא 4 בתים.
בת 50, 51, 52, 53 מכילה את הנתונים.
שלב 6: ממיר דיגיטלי לאנלוגי (DAC)
בקרי מיקרו הם מכשירים דיגיטליים שאינם מבינים ישירות במתח אנלוגי. אני משתמש במד אנלוגי שצריך מתח משתנה ככניסה. אבל מיקרו -בקר יכול פשוט להוציא HIGH (3.3V במקרה של NodeMCU) ו- LOW (0V). עכשיו אתה יכול להגיד למה אל תשתמש ב- PWM. זה לא יעבוד מכיוון שהמד יציג רק את הערך הממוצע.
אני משתמש ב- MCP4725 DAC כדי לקבל מתח משתנה. זהו DAC של 12 סיביות כלומר במונחים פשוטים, הוא יחלק 0 ל- 3.3V ל 4096 (= 2^12) חלקים. הרזולוציה תהיה 3.3/4096 = 0.8056mV. המשמעות היא ש 0 תואם 0V, 1 תואם 0.8056mV, 2 תואם 1.6112mV, ….., 4095 תואם 3.3V.
מהירות האינטרנט 'תמופה' מ- '0 עד 7 מגהביט לשנייה' ל- '0 עד 4095' ולאחר מכן ערך זה יינתן ל- DAC להוצאת מתח שיהיה פרופורציונלי למהירות האינטרנט.
שלב 7: האסיפה
חיבורים פשוטים מאוד. הסכימה מצורפת כאן.
עיצבתי והדפסתי את הסולם. העליונה מיועדת למהירות ההורדה והתחתונה היא למהירות ההעלאה. הדבקתי את הסקאלה החדשה על הישנה.
הסרתי את כל החומרים הישנים מהמולטימטר ודחסתי בו הכל. זה היה בכושר הדוק. הייתי צריך לקדוח חור בחזית כדי לחבר את מתג המתג המשמש לבחירה בין מהירות העלאה להורדה.
שלב 8: זמן הקידוד
הקוד צורף כאן. הורד ופתח אותו ב- Arduino IDE. התקן את ספריית MCP4725 מ- Adafruit.
לפני שאתה מעלה:
- הזן את ה- SSID והסיסמה של ה- WiFi שלך
- הזן מהירות העלאה והורדה מקסימלית המוזכרות בסולם.
- בצע את השינויים הדרושים במערך הבקשות להורדה וכן להעלות מנות.
- לא הגיב על קו 165 לצפייה בתגובה על הצג הסדרתי.
לחץ על העלה!
שלב 9: תהנה
הפעל אותו ותיהנה מהמחט שרוקדת מסביב בזמן שאתה גולש באינטרנט!
תודה שנצמדת עד הסוף. מקווה שכולכם אוהבים את הפרויקט הזה ולמדתם משהו חדש היום. ספר לי אם תכין אחד לעצמך. הירשם לערוץ היוטיוב שלי לפרויקטים נוספים כאלה.
מוּמלָץ:
נקודת גישה ESP8266 NodeMCU (שרת אינטרנט) עבור שרת אינטרנט עם חיישן טמפרטורה DT11 והדפסת טמפרטורה ולחות בדפדפן: 5 שלבים
נקודת גישה ESP8266 NodeMCU (AP) עבור שרת אינטרנט עם חיישן טמפרטורה DT11 וטמפרטורת הדפסה ולחות בדפדפן: שלום חברים ברוב הפרויקטים בהם אנו משתמשים ב- ESP8266 וברוב הפרויקטים אנו משתמשים ב- ESP8266 כשרת אינטרנט כך שניתן יהיה לגשת לנתונים ב כל מכשיר באמצעות wifi על ידי גישה לשרת האינטרנט המתארח על ידי ESP8266 אך הבעיה היחידה היא שאנחנו צריכים נתב עובד עבור
נורית מבוקרת אינטרנט באמצעות שרת אינטרנט מבוסס ESP32: 10 שלבים
נורית מבוקרת אינטרנט באמצעות שרת אינטרנט מבוסס ESP32: סקירה כללית של הפרויקט בדוגמה זו נבין כיצד ליצור שרת אינטרנט מבוסס ESP32 לשליטה על מצב LED, הנגיש מכל מקום בעולם. תזדקק למחשב Mac לפרויקט זה, אך תוכל להריץ תוכנה זו אפילו על i
שימוש חוזר במודעת מצלמת אינטרנט של WebCam 101 Aka 679257-330 כמצלמת אינטרנט כללית של USB: 5 שלבים
שימוש חוזר במודול מצלמת רשת HP WebCam 101 Aka 679257-330 כמחשב מצלמת אינטרנט כללי: אני רוצה לתבל את ה- Panasonic CF-18 בן 14 שלי עם מצלמת רשת חדשה לגמרי, אך Panasonic אינה תומכת יותר במכונה המופלאה הזו, אז אני חייב השתמש בחומר האפור למשהו קל יותר מ b & b (בירות והמבורגרים). זהו החלק הראשון
מד מהירות אינטרנט: 4 שלבים (עם תמונות)
מד מהירות אינטרנט: סקירה כללית " מד מהירות אינטרנט " ייתן לך פיקוח כמעט בזמן אמת על השימוש שלך ברשת. מידע זה זמין בממשק האינטרנט של רוב נתבי הבית. עם זאת, הגישה אליו מחייבת אותך להפסיק את המשימה הנוכחית שלך כדי להמשיך ב
רדיו אינטרנט/ רדיו אינטרנט עם Raspberry Pi 3 (ללא ראש): 8 שלבים
רדיו אינטרנט/ רדיו אינטרנט עם Raspberry Pi 3 (ללא ראש): HI האם אתה רוצה אירוח רדיו משלך דרך האינטרנט אז אתה נמצא במקום הנכון. אנסה לפרט כמה שיותר. ניסיתי כמה דרכים שרובן היו זקוקות לכרטיס קול אשר לא היססתי לקנות. אבל הצליח למצוא