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

פעמון בית ספר לתלמידים מרחוק: 6 שלבים
פעמון בית ספר לתלמידים מרחוק: 6 שלבים

וִידֵאוֹ: פעמון בית ספר לתלמידים מרחוק: 6 שלבים

וִידֵאוֹ: פעמון בית ספר לתלמידים מרחוק: 6 שלבים
וִידֵאוֹ: עדן חסון ואודיה - הנשיקה! 😱 2024, יולי
Anonim
פעמון בית ספר לתלמידי מרחוק
פעמון בית ספר לתלמידי מרחוק

עם מגיפת COVID-19, בתי ספר לילדים רבים הלכו למסירה מרחוק. פעמון בית הספר הביתי הזה הוא דרך מהנה להישאר לפי לוח הזמנים שמשתמש ב- Raspberry Pi ורמקול USB. אתה יכול לעשות את זה עם הילד שלך והם יכולים ללמוד על תכנות ויכולים "לצלצל בפעמון". בניתי את זה לבתי שעולה לכיתה ז '(כרגע באמצעות משלוח למרחקים), וזה עובד טוב כדי לשמור אותנו בזמן.

אספקה

לפרויקט זה תזדקק ל:

  • מחשב Raspberry Pi - זה עובד הכי טוב אם יש לך WiFi, השתמשתי ב- RPi 3B מתוך ערכת קאנו
  • רמקול - השתמשתי ברמקול USB

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

שלב 1: הגדר את ה- Raspberry Pi שלך

הגדר את ה- Raspberry Pi שלך
הגדר את ה- Raspberry Pi שלך

ישנם מספר רב של משאבים להקמת מחשב Raspberry Pi, לכן אני מפנה אותך למחשב שגוגל מוצא. הדבר החשוב הוא שלמחשב שלך יש דרך להשיג את התאריך והשעה הנכונים. רוב מחשבי ה- Raspberry Pi המודרניים המותאמים ל- WiFi משתמשים בפרוטוקול NTP כדי לקבוע את השעה מהאינטרנט, וזו הדרך בה קיבלתי את הזמן הנכון. הגדרתי את ה- RPi שלי להיות "ללא ראש", כלומר אין לו מקלדת או צג, אך הוא נגיש באמצעות מעטפת מאובטחת (SSH) דרך האינטרנט. אם אתה טוב עם RPi, תוכל לבצע את ההגדרה הזו ללא מקלדת / וידאו / עכבר, אך קל יותר פשוט להגדיר את ה- pi עם אותם אביזרים.

שים לב שלא הייתי צריך להשתמש בממשק הגרפי, אז הורדתי רק את "Raspberry Pi OS (32-bit) Lite", שהוא קטן ומהיר יותר להורדה ומאתחל מהר יותר.

הגדר את הרשת ואת אפשרויות הממשק של ה- Raspberry Pi

$ sudo raspi-config

בתצורה, בצע את הפעולות הבאות:

  • שנה את הסיסמה - עשה זאת תחילה, בתקווה לפני היציאה לאינטרנט!
  • ב"אפשרויות רשת ",

    • שנה את שם המארח. השתמשתי בשם המארח: "פעמון בית הספר".
    • התחבר לרשת ה- LAN האלחוטית שלך (אם לא עשית זאת בהגדרה)
  • תחת "אפשרויות ממשק", הפעל את גישת SSH
  • תמיד טוב להריץ את האפשרות "עדכון"

לאחר שעשית זאת ואתחל מחדש, אתה אמור להיות מסוגל להתחבר ל- Raspberry Pi ממחשב אחר באותה רשת מקומית באמצעות לקוח SSH. התחבר אליו באמצעות האישורים הבאים:

שם מארח: schoolbell.local

משתמש: סיסמא pi: whateveryousititas

מתיבת לינוקס זה פשוט כמו הקלדת שורת פקודה זו בשורת $:

$ ssh [email protected]

… הזן סיסמה בהנחיה

זה יכנס אותך ותוכל לבדוק שהשעה ב- Raspberry Pi נכונה. בשורת הפקודה, הקלד את פקודת התאריך ובדוק את התגובה:

pi@schoolbell: ~ $ date

חמישי 3 בספטמבר 20:44:34 AKDT 2020

אני מקווה שזה הזמן הנוכחי. אם זה לא נכון, גוגל בנושא הגדרת NTP ב- Raspberry Pi.

שלב 2: הפעל את מערכת הסאונד שלך

לגרום למערכת הסאונד שלך לפעול
לגרום למערכת הסאונד שלך לפעול

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

pi@schoolbell: ~ $ sudo apt-get install mpg321

בצע את ההנחיות להתקנת תוכנה זו.

השתמשתי ברמקול USB ישן, בעל דרייבר מוזר ולא הוגדר באופן מלא ככרטיס הקול המוגדר כברירת מחדל, כך שמצאתי שאני יכול "לפרוץ" את הרמקול לעבודה באמצעות כתובת החומרה שלו. לאחר חיבור הרמקול, השתמשתי בפקודה 'aplay -l' לרישום התקני שמע:

pi@schoolbell: ~ $ aplay -l

**** רשימת מכשירי החומרה PLAYBACK **** כרטיס 0: אוזניות [bcm2835 אוזניות], מכשיר 0: bcm2835 אוזניות [bcm2835 אוזניות] תת -התקנים: תת -התקן #0: תת -התקן #0 תת -התקן #1: תת -התקן #1 תת -התקן מספר 2: subdevice #2 תת -התקן #3: subdvice #3 תת -התקן #4: תת -התקן #4 תת -התקן #5: תת -התקן #5 תת -התקן #6: תת -התקן #6 תת -התקן #7: כרטיס מס '7: כרטיס 1: CODEC [USB Audio CODEC], מכשיר 0: USB Audio [USB Audio] תת -התקנים: תת -התקן #0: תת -התקן #0

המכשיר שאני רוצה הוא התחתון, כרטיס 1, מכשיר 0.

בדקתי את הרמקול עם "בדיקת רמקולים", באמצעות המכשיר "hw: 1, 0", כלומר כרטיס חומרה 1, מכשיר 0

pi@schoolbell: ~ $ speaker -test -D hw: 1, 0

תוכנית זו מוציאה רעש מהרמקולים. תהנה מהרעש ואז הקלד control-C כאשר אתה מתעצבן. אם אתה לא שומע רעש, נסה גוגל.

עכשיו יש לך צליל!

שלב 3: בדוק את השמעת צלילי הפעמון ו/או השמע צלילים חדשים

בדיקת השמעת צלילי פעמונים ו/או השמעת צלילים חדשים
בדיקת השמעת צלילי פעמונים ו/או השמעת צלילים חדשים

לפעמון שלי, הורדתי את הצליל "בינג-בונג" מ- "freesound.org". תודה לבנבנקן על הפיכת הצליל הזה לזמין:

freesound.org/people/Benboncan/sounds/93646/

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

pi@schoolbell: ~ $ wget

לאחר מכן שיניתי את שם הקובץ הזה:

pi@schoolbell: ~ $ mv 93646_634166-hq.mp3 bing-bong-chime-hq.mp3

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

pi@schoolbell: ~ $ mpg321 -a hw: 1, 0 bing-bong-chime-hq.mp3

נגן אודיו MPEG 1.0/2.0/2.5 בעל ביצועים גבוהים לשכבה 1, 2 ו- 3. גירסה 0.3.2-1 (2012/03/25). כתוב וזכויות יוצרים על ידי ג'ו דרו, המתוחזק כעת על ידי Nanakos Chrysostomos ואחרים. משתמש בקוד מאנשים שונים. ראה 'README' למידע נוסף! התוכנה מגיעה ללא אחריות לחלוטין! השתמש בסיכון שלך! משחק זרם MPEG מ- bing-bong-chime-hq.mp3 … MPEG 1.0 שכבה III, 128 kbit/s, 44100 הרץ מונו [0:02] פענוח של bing-bong-chime-hq.mp3 הסתיים.

מזל טוב! יש לך אודיו.

באמצעות קוד עריכת הקול "תעוזה" במחשב הנייד שלי, חילקתי את הקובץ ל"בינג "ו"בונג" בשביל הכיף. אתה יכול להשתמש בכל קבצי mp3 או אולי בפורמט אחר (לא בדקתי אחרים).

שלב 4: התקן את הקוד והגדר את לוח הזמנים שלך

התקן את הקוד והגדר את לוח הזמנים שלך
התקן את הקוד והגדר את לוח הזמנים שלך

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

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

הורד את הקוד מ- Github:

gist.github.com/BillSimpson/d7a1a531995c8b63492bb47ef8872618

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

במחשב המקומי שלך, העתק את הקוד מהדפדפן שלך, ולאחר מכן הדבק אותו בקובץ טקסט ושמור אותו בשם הקובץ "schoolbell.py". ואז scp את הקובץ מעל:

מכונה מקומית: ~ $ scp schoolbell.py [email protected]: ~/

תתבקש להזין את הסיסמה עבור המשתמש pi ב- schoolbell.local - הזן את הסיסמה, והקובץ יועתק בצורה מאובטחת. יש להריץ פקודה זו באותה ספרייה שבה נשמר סקריפט הפיתון, ולהעתיק אותה לספריית הבית של המשתמש pi. אתה יכול לעבור ל- schoolbell.local והקוד צריך להיות שם:

מכונה מקומית: ~ $ ssh [email protected]

לאחר מכן ב- schoolbell.local, רשום את הקבצים (ייתכן שתראה עוד קבצים):

pi@schoolbell: ~ $ ls

bing-bong-chime-hq.mp3 schoolbell.py

כעת ערוך את הקוד כדי שיהיה לו לוח הזמנים של הפעמון שלך באמצעות עורך כגון pico:

pi@schoolbell: ~ $ pico schoolbell.py

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

לדוגמה, מילון הפעמון הוא:

צלצולים = {

'warn': 'bing-bong-chime-hq.mp3', 'start': 'bing-bong-chime-hq.mp3', 'end': 'bing-bong-chime-hq.mp3'}

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

מילון לוח הזמנים דומה, אך "המפתח" הוא הזמן לצלצול. עליך להשתמש בפורמט HH: MM עם אפסים מובילים וזמן 24 שעות (זמן צבאי).

לוח הזמנים = {

'09: 00 ':' התחל ', פעמון' אוטובוס 'להתכונן '09: 28': 'הזהיר', … '13: 58 ':' הזהיר ', # לתקופה 4 '14: 00 ':' התחל ', '15: 00': 'סוף'}

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

אחרון, מילון החגים מפרט את תאריכי החגים. הפורמט הוא YYYY-mm-dd, עם אפסים מובילים כפי שמוצג.

חגים = {

'2020-09-07', …. '2021-03-11', '2021-03-12' }

לאחר שתסיים לערוך, שמור את הקובץ על ידי יציאה מהעורך, הקלדת ctrl-X אם אתה משתמש ב- pico.

הפוך את קוד הפייתון להפעלה על ידי:

pi@schoolbell: ~ $ chmod a+x schoolbell.py

זה מאפשר לכל המשתמשים לבצע את הקוד, "a" לכולם, "+" להוספת הרשאה ו- "x" לביצוע.

כעת בצע את קוד הפעולה ובדוק את הפלט. שים לב שאתה יכול להריץ את הקובץ על ידי הקלדת שם הקובץ אך עליך לציין שהוא נמצא בספרייה הנוכחית על ידי הקלדת "./" לפני שם הקובץ:

pi@schoolbell: ~ $./schoolbell.py

זהו יום לימודים, בדיקת השעה 21:35

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

כדי לבדוק שהקוד שלך יכול להפעיל פעמונים, השתמש באפשרות שורת הפקודה של קובץ להפעלה. נשתמש בקובץ הבינג-בונג שלנו:

pi@schoolbell: ~/schoolbell $./schoolbell.py bing-bong-chime-hq.mp3

זהו יום הולדת, בדיקת זמן 21:38 MPEG בעל ביצועים גבוהים 1.0/2.0/2.5 נגן אודיו לשכבה 1, 2 ו- 3. גירסה 0.3.2-1 (2012/03/25). כתוב וזכויות יוצרים על ידי ג'ו דרו, המתוחזק כעת על ידי Nanakos Chrysostomos ואחרים. …. יותר תפוקה….

היית צריך לשמוע את הפעמון.

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

pi@schoolbell: ~ $./schoolbell.py 09:00

זה אמור לגרום לצלצול שלך לצלצל! אתה יכול גם לבדוק שהוא לא מצלצל בזמנים שאינם פעמונים.

שלב 5: להפוך את הריצה לאוטומטית עם Crond

הפוך את הריצה לאוטומטית עם Crond
הפוך את הריצה לאוטומטית עם Crond

'הדמון' של cron הוא מתזמן שמפעיל משימות שחוזרות על עצמן במערכת לינוקס. הוא בודק אם התאריך/שעה תואמים לדפוס בטבלת cron (crontab) ולאחר מכן מריץ קוד אם כן. אתה יכול לערוך אותו באמצעות הפקודה "crontab -e":

pi@schoolbell: ~ $ crontab -e

פעולה זו תפתח עורך קבצים, ובתחתית הקובץ תוסיף את השורה הבאה:

* * * * * python3 /home/pi/schoolbell.py

פקודה זו אומרת ל- cron להריץ את python3 ולהפעיל את הסקריפט בספריית הבית הרגילה (/home/pi). החמישה *אומרים שזה צריך לרוץ כל דקה (ראשונה *), כל שעה (* *הבאה), כל יום בחודש, כל חודש, וכל יום בשבוע.

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

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

טיפ: לחגים ממושכים (למשל קיץ), ניתן להוסיף האשטאג (#) לדמות הראשונה של השורה הזו, מה שהופך אותה להערה ובכך מתעלם מהפעלתה. כאשר בית הספר חוזר למפגש, הסר את ה- # והוא יתחיל לפעול שוב.

שלב 6: התאם אישית ותהנה

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

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

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

הישאר בטוח בתקופה זו של COVID.

תמונה
תמונה
תמונה
תמונה

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

מוּמלָץ: