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

מחוון עומס מעבד Raspberry Pi: 13 שלבים
מחוון עומס מעבד Raspberry Pi: 13 שלבים

וִידֵאוֹ: מחוון עומס מעבד Raspberry Pi: 13 שלבים

וִידֵאוֹ: מחוון עומס מעבד Raspberry Pi: 13 שלבים
וִידֵאוֹ: Mini UPS 5, 9, 12 Вольт на 10400 мАч, для роутеров, мини ПК, IP камер, тест емкости 2024, יולי
Anonim
מחוון עומס מעבד Raspberry Pi
מחוון עומס מעבד Raspberry Pi

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

למרות ששימוש בטרמינל מרחוק עם SSH, נדרש ביצוע מדי פעם של פקודת Linux כדי לבדוק עד כמה עומס המערכת מכביד על המעבד כעת

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

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

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

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

והמעגל הזה יוסיף תכונה קצת מצחיקה ל- RPI ללא ריצה.

שלב 1: בדיקת Linux Linux

עומס מעבד בודק פקודת לינוקס
עומס מעבד בודק פקודת לינוקס

קיימות מגוון פקודות לינוקס של בדיקת עומס מעבדים כגון top, iostat, sysstat וזמן פעולה.

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

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

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

הפקודה iostat מספקת מידע מעמיק על עומס המערכת על ידי הפרדה של עבודות תור של משתמשים ומערכת אשר מכבידות על המעבד כיום.

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

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

כפי שצוין לעיל, יש צורך בפשטות קוד פייתון מכיוון שיש לבצעו לעתים קרובות למדי, כגון בכל 5 שניות או 10 שניות.

כאשר קוד הפיתון הופך להיות מורכב, הוא יכביד על המעבד הרבה.

זה סוג של פרדוקס שאתה מעמיס על RPI לפקח על עומס המערכת שלה.

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

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

ובכל זאת מעגל זה יכול לספק רמז ויזואלי מועיל המראה את מהלך ה- RPI כעת.

שלב 2: תרשימים

סכמטים
סכמטים

מעגל זה יקבל 4 רמות שונות (למשל 00-> LOW, 01-> LIGHT, 10-> MEDIUM, 11-> HIGH) של עומס המעבד הנוכחי מ- RPI באמצעות שתי כניסות מצמד אופטי.

74LS139 (מפענח 2 עד 4 ומכפילים) מפענח שתי כניסות ביט לתוך אחת מהפלט היחיד מבין 4 דרכים אפשריות כגון 00 (LOW)-> B0, 01 (LIGHT)-> B1, 10 (MEDIUM)-> B2, 11 (HIGH)-> B3.

מכיוון שפלט 74LS139 הוא ברמה הפוכה (קלט 00 -> B0 הופך לנמוך ועוד 3 פלט גבוה), מהפך 74HC04 משמש כדי להפוך את הפלט לאחור פעם נוספת.

כאשר הפלט של 74LS139 הוא נורמלי גבוה, 74HC04 לא יהיה צורך.

אבל איכשהו 74LS139 עשוי בצורה כזו. (אנא בדוק את טבלת האמת של 74LS139)

כאשר נבחר כל אחד מפלט 74LS139, הוא יפעיל מתג אנלוגי אחד מסוים בין 4 מתגים הכלולים ב- CD4066 IC.

CD4066 יכול לתמוך ב -4 מתגים אנלוגיים וכל מתג כולל כניסת בקרה אחת ושתי יציאות אנלוגיות.

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

פשוט שליטה 1 (סיכה 13) של CD4066 הופכת לגבוהה, נתיב בין פלט 1 (סיכה 1) לפלט 2 (סיכה 2) מחובר בינתיים יציאות אחרות אינן מחוברות (במצב עכבה גבוהה).

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

ואז LM555 מהבהב שני נוריות בקצב מהבהב שונה.

כפי שאתה יכול לראות בסכימה למעלה, NE555 יפעל עם ערך התנגדות בין 4 (12k, 24k, 51k, 100k) רמות התנגדות אפשריות.

שלב 3: NE555 דור שעון שונה

NE555 דור שעון שונה
NE555 דור שעון שונה

כפי שמוצג בתרשים, NE555 יפעיל ערך בעל התנגדות אפשרית כגון 12k, 24l, 51k ו- 100k.

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

תוכנית הפעולה של המעגלים היא כדלקמן.

- כאשר אין עומס מעבד משמעותי, תוכנית פייתון המותקנת ב- RPI תשלח יציאות 00 למעגל המחוונים. ואז שני נתיבי יציאות של CD4066 מופעלים ו- NE555 פועל עם ערך הנגד 12k. לכן, נוריות מהבהבות 1.5 פעמים בשנייה (מהבהבות די מהר)

- המעבד נטען קלות (אז אורך התור לזמן הפעולה הופך לרמה של 0.1 ~ 0.9), פייתון ישלח 01 למעגל. לאחר מכן מופעל CD4066 עם יציאות המחוברות לנגד 24k. כתוצאה מכך, מהבהב הנורית ירד 1.2 פעמים בשנייה (מהבהב הנורית ירד מעט אך עדיין מעט מהר)

- כאשר עומס המעבד גדל באופן משמעותי (אז אורך תור ההפעלה לזמן הופך לרמה של 1.0 ~ 1.9), פייתון יפיק 10 למעגל. אז נפתח נתיב חיבור הנגד 51k ו- NE555 פועל 0.8 פעמים בשנייה. כעת קצב המהבהב הופחת באופן משמעותי.

- עומסים כבדים המכבידים על המעבד ואורך תור ההרצה לזמן ארוך מתארכים (יותר משתי עבודות ימתינו לביצוע על ידי המעבד וזמן הפעולה ידווח על יותר מ -2.0). כאשר נבחר חיבור הנגד 100k, NE555 יהבהב LED 0.5 פעמים בשנייה (מהירות ההבהוב הופכת לאיטית מאוד)

***

במקביל לעומסי מערכת מוגברת, מהירות מהבהבי ה- LED תופחת בהתאם.

כאשר LED מהבהב לאט למדי, אז RPI בוודאי עומס יתר משמעותית.

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

שלב 4: חלקים

לצורך יצירת מעגל זה משתמשים בשבבי IC שונים.

למרות שאני מזכיר שבבי IC ישנים מסוג 74LSxx, סוג CD40xx, אתה יכול להשתמש בסוגים האחרונים של שבבי TTL ו- CMOS כגון 74HC4066 ו- 74ASxx כאשר שבב ה- IC הנבחר הוא מסוג DIP.

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

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

- 74LS139 (2 עד 4 מפענח, דה-מרבב) x 1

- 74HC04 (6 ממיר) x 1

- CD4066 (4 מתגים אנלוגיים IC) x 1

- IC טיימר NE555 טיימר x 1

- קבלים: 10uF x 1, 0.1uF x 1

-PC817 מצמד אופטי x 2 (ניתן להשתמש בכל מצמד אופטי משותף בעל 4 פינים)

- נגדים: 220 אוהם x 4 (הגבלת זרם LED), 4.7 K (ממשק מצמד אופטי) x 2, 12 K,/24 K/51 K/100 K (בקרת תזמון שעון) x 1

- LED x 2 (כל הצבעים השונים כגון צהוב, ירוק או אדום, ירוק)

- לוח אוניברסלי 30 (W) על 20 (H) גודל חורים (ניתן לחתוך כל גודל של לוח אוניברסלי כך שיתאים למעגל זה)

- חוט פח (ליצירת דפוסי חיווט על הלוח האוניברסלי)

- ראש סיכה (3 סיכות) x 3

- ראש סיכת IC (4 סיכות) x 4

- כבלי חיווט בצבע אדום/כחול

***

שלב 5: הכנת ציור PCB

ביצוע ציור PCB
ביצוע ציור PCB

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

אבל אתה לא בהכרח מקל על תכנית החיווט הזו.

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

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

השתמש רק בשרטוט ה- PCB לבדיקה ואישור ההלחמה הנכונה בין החלקים.

כאשר מספר ICs של TTL או CMOS גדל, בדרך כלל ציור PCB הופך למורכב למדי מעבר לשילוב נכון בצד אחד של ה- PCB.

לכן, רב שכבתית של PCB משמשת בדרך כלל למעגלים דיגיטליים תעשייתיים הכוללים הרבה TTL, CMOS ומעבד מיקרו.

שלב 6: הלחמה

הַלחָמָה
הַלחָמָה

אני משתמש בחוט פח וכבל חיווט משותף יחד כדי למזער את גודל ה- PCB ככל האפשר.

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

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

אתה יכול לראות נגדים של 12k/24k/51k/100k מוכנסים על ראש סיכת ה- IC ללא הלחמה.

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

שלב 7: הרכבה

הרכבה
הרכבה

מעגל חיווי העומס שהושלם (להלן מחוון) מותקן בתיבת ה- RPI של נגן המוסיקה כפי שמוצג בתמונה למעלה.

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

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

קניתי לאחרונה Raspberry Pi 4 Model B 2GB (להלן RPI 4B) כדי לתמוך ביישום הפעלת וידאו.

מכיוון ש- RPI 4B הגביר את הביצועים של 4 ליבות מעבד, הטיפול בעומסי המערכת משופר באופן משמעותי יחסית ל- RPI 3B+.

לכן יש להתייחס לפלט אורך תור ההרצה בזמן שונה מ- RPI 3B+.

- לעומס המערכת המקובל מאוד כגון הפעלת וידאו, אורך תור ההפעלה בדרך כלל פחות מ- 0.5 (כך שעומס המערכת הנמוך יהיה ברמה של 0.0 ~ 0.5)

- כאשר מתווסף עומס קל נוסף של המערכת כגון הפעלת וידיאו והעתקת קבצים מעבודות וספרייה מקומית, גורמים לעומס קל על המעבד. (אז רמת העומס LIGHT תהיה 0.5 ~ 1.0)

- כאשר מופעלים עומסים משמעותיים כגון הפעלת וידאו בדפדפן באתר Youtube וגלישה באינטרנט בדפדפן אחר, מהירות הריצה של RPI 4 הופכת להיות איטית מעט (כך שרמת העומס MEDIUM תהיה 1.0 ~ 2.0)

- לבסוף עומס המערכת RPI 4 הופך להיות גבוה בעת הפעלת דפדפני אינטרנט מרובים והעתקת קבצים גדולים לשרת RPI אחר דרך הרשת (לאחר מכן אורך תור ההפעלה הופך ליותר מ -2.0)

***

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

שלב 8: תיקון המעגל המקורי

שינוי המעגל המקורי
שינוי המעגל המקורי

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

הסיבות לשינוי הן כדלקמן.

- דופק השעון NE555 מורכב מצורת גל HIGH ו- LOW. אך בדרך כלל משך האותים HIGH ו- LOW (t = 1/f) אינו זהה (לדוגמה HIGH הוא 70% ו- LOW הוא 30% במעגל המקורי). לכן, קצב המהבהב של שני נוריות LED (ירוק/צהוב LED בעיצוב המקורי) אינו זהה (נורית אחת נדלקת ארוכה יותר מאחרות). מסיבה זו, אינדיקציה חזותית על ידי מהבהב LED אינה ניתנת לזיהוי בקלות רבה. '

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

- גם שינוי תוכניות מהבהבי LED הפוכות כמו מהבהב איטי בעומס נמוך ומהבהב מהיר יותר עם עומס גבוה. (המעגל המקורי עשוי להבהב מהר יותר בעומס נמוך והבהוב איטי בעומס גבוה). במצב עומס גבוה, כל פעולות RPI נעשות איטיות. והצגת מהבהב LED איטי לא תשמח אותך. (בהיבט הפסיכולוגי, אני בוחר מערך תצוגה חיובי יותר)

***

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

שלב 9: שינוי סכמטי מקורי

שינוי סכמטי מקורי
שינוי סכמטי מקורי

הוספת CD4017 ו- 8 נוריות LED הן שינויים משמעותיים.

גם לשינוי תדירות השעון NE555 ותוכנית מהבהבות LED הפוכות, ערכי הנגדים משתנים כפי שמוצג בתרשימים לעיל.

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

כל חלק המעגל שהשתנה יכול להתבצע כלוח לוח PCB שאליו מולחמים CD4017 ו- 8 נוריות LED.

ניתן לחבר את לוח הבת ללוח המרכזי (לוח האם) כפי שמוצג בתמונה בשלב 8.

שלב 10: בדיקה

סרטון הבדיקה של כל שלבי הפעולה (LOW, LIGHT, MEDIUM ו- HIGH load load) מוצג על ידי הקובץ המאוחסן בכונן Google למטה.

***

drive.google.com/file/d/1CNScV2nlqtuH_CYSW…

***

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

שלב 11: קוד פייתון

קוד פייתון
קוד פייתון

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

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

- איסוף עומס מערכת ממוצע של דקה מפלט זמן פעולה

-הכנת חותמת זמן כמו yy-mm-dd hh: mm: ss format

- טמפרטורת כתיבה, עומס מערכת יחד עם חותמת זמן

- על פי נתוני פלט עומס המערכת הנוכחיים (00, 01, 10, 11) למעגל אינדיקטור

- ישן 5 שניות לפני שתתחיל בצעדים שהוזכרו לעיל

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

***

drive.google.com/file/d/1BdaRVXyFmQrRHkxY8…

***

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

בדרך כלל אני מנגן קליפ, העתק/העברת קבצים או תכנות פייתון עם RPI 4B 2GB שנרכש לאחרונה.

לכן העומס הממוצע בדרך כלל פחות מ -1.0 במקרה שלי ובהתאם אני משנה רמות LOW/LIGHT/MEDIUM/HIGH בקוד שלי. (תוכל לשנות את תנאי הבדיקה אחרת)

אך כאשר אתה בדרך כלל צופה בסרטוני Youtube עם RPI, בדרך כלל יתרחשו יותר מ -2.0 מעומסי מערכת.

שלב 12: יחסיות בין עומס המערכת וטמפרטורת המעבד

יחסיות בין עומס המערכת וטמפרטורת המעבד
יחסיות בין עומס המערכת וטמפרטורת המעבד

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

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

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

- לשם השוואה קלה, אני מכפיל 10 לעומס מערכת ממוצע. אחרת קנה המידה של עומס המערכת קטן מאוד (0.0 ~ 2.0), השוואה ישירה הופכת להיות קשה.

- כאשר מותקן מעגל FAN קירור לתיבת ה- Pi המנגנת, טמפרטורת המעבד לעולם לא תעלה על 50C

- כאשר עומס המערכת נמצא בטווח של 0.0 ~ 1.0, הטמפרטורה בטווח של 45 ~ 48C (כיסוי מתכת המעבד מתחמם מעט)

- אך עומס כבד מופעל (בדרך כלל דפדפן אינטרנט ומשחק סרטוני Youtube), הטעינה ממריאה וכך הטמפרטורה

***

מכיוון שמותקן RPI 4B עם מעבד בעל 4 ליבות, תיאורטית הביצועים לא ייפגעו עד לרמת הטעינה (תור הפעלה לזמן פעולה) 4.

אך עדיין רמת עומס פחות מהממוצע 4, יהיה צורך בבקרת טמפרטורה מתאימה.

שלב 13: סיום

סיום
סיום

אני מסיים את הפרויקט על ידי התקנת תיבת INDICATOR ל- Pi כמו התמונה למעלה.

במהלך שימוש מזדמן בתיבת Pi זו, אינדיקטור מראה לעיתים רחוקות רמת HIGH ו- LED מהבהב.

בדרך כלל הוא נשאר במצבי נוריות מהבהבות איטיות (כך שרמת LOW או LIGHT).

בכל אופן הוסיף מחוון ויזואלי קצת מצחיק לפחות זה מראה ש- RPI עושה משהו כרגע.

תודה שקראתם את הסיפור הזה ….

מוּמלָץ: