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

QuizzPi, משחק טריוויה של פטל פטל עם פייתון: 7 שלבים (עם תמונות)
QuizzPi, משחק טריוויה של פטל פטל עם פייתון: 7 שלבים (עם תמונות)

וִידֵאוֹ: QuizzPi, משחק טריוויה של פטל פטל עם פייתון: 7 שלבים (עם תמונות)

וִידֵאוֹ: QuizzPi, משחק טריוויה של פטל פטל עם פייתון: 7 שלבים (עם תמונות)
וִידֵאוֹ: הצד האפל של פטריק מבובספוג 2024, נוֹבֶמבֶּר
Anonim
QuizzPi, משחק טריוויה של פטל פאי עם פייתון
QuizzPi, משחק טריוויה של פטל פאי עם פייתון
QuizzPi, משחק טריוויה של פטל פטל עם פייתון
QuizzPi, משחק טריוויה של פטל פטל עם פייתון

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

דרישות הפרויקט:

  • קל לשימוש
  • נייד
  • קל לשדרג את מערכת השאלות והתשובות
  • טבלת ציונים גבוהים

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

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

בוא נלך!

שלב 1: אתה צריך כמה חומרים וכלים …

אתה צריך כמה חומרים וכלים …
אתה צריך כמה חומרים וכלים …

יש לך את רוב החומרים בבית ללא ספק …

  • Raspberry Pi 2/3 עם כרטיס SD של 8 ג'יגה -בתים ומעלה (35 $)
  • פטל פי 3.5 אינץ 'LCD עם מארז (11 $). ראה (זה אופציונלי, אתה יכול להשתמש בכל תצוגה שיש לך, אתה רק צריך לשנות את מארז QuizzPi בשביל זה)
  • סוללות. אתה יכול להשתמש בבנק חשמל או שאתה יכול להשתמש במארז סוללות diy 18650 (5 $). במקרה שלי השתמשתי בבנק כוח אחד של Aukey 5000mah (12 $). לִרְאוֹת
  • ארבעה כפתורי ארקייד. יש לי כאלה בבית (3 $, 12 כפתורים ב -10 $). לִרְאוֹת
  • מתג הפעלה/כיבוי אחד (0.25 $). לִרְאוֹת
  • שני מחברי USB (0.50 $)
  • כבל USB/מיקרו USB אחד
  • רמקול אחד זול (אופציונלי) (0.25 $). לִרְאוֹת
  • מגבר PAM8403 אחד (אופציונלי) (0.80 $). לִרְאוֹת
  • כמה חוטים לחיבור כפתורים, מחבר USB ומתג הפעלה/כיבוי לסיכות GPIO (1 $?)
  • ארבעה מגנטים ניאודימיום או שאתה יכול להשתמש בכל דבר כדי לסגור את הדלת האחורית. לִרְאוֹת
  • דִיקְט. השתמשתי בדיקט 5 מ מ אבל אתה יכול להשתמש בכל מה שיש לך בבית (2 $)

גם אתה צריך כמה כלים…

  • כלי הלחמה
  • מברגים
  • אקדח דבק חם
  • מדפסת תלת מימד (אופציונלי)

בוא נלך!

שלב 2: בואו לעצב מארז QuizzPi מגניב …

בואו לעצב מארז QuizzPi מגניב …
בואו לעצב מארז QuizzPi מגניב …
בואו לעצב מארז QuizzPi מגניב …
בואו לעצב מארז QuizzPi מגניב …

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

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

השלב הבא הוא הדבקה חמה של החלקים …

שלב 3: הכנת מארז דיקט …

מכין את מארז הדיקט…
מכין את מארז הדיקט…
מכין את מארז הדיקט…
מכין את מארז הדיקט…
מכין את מארז הדיקט…
מכין את מארז הדיקט…
מכין את מארז הדיקט…
מכין את מארז הדיקט…

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

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

תיק QuizzPi הסתיים …

שלב 4: חיבור סיכות GPIO, הרכבה של פטל+LCD …

חיבורי פיו GPIO, הרכבה של פטל+LCD…
חיבורי פיו GPIO, הרכבה של פטל+LCD…
חיבורי פיו GPIO, הרכבה של פטל+LCD…
חיבורי פיו GPIO, הרכבה של פטל+LCD…
חיבורי פיו GPIO, הרכבה של פטל+LCD…
חיבורי פיו GPIO, הרכבה של פטל+LCD…

עלינו לחבר את הכפתורים ל- Raspberry Pi כדי שנוכל לדעת על איזה כפתור לוחצים. הכפתורים מחוברים לסיכות GPIO. אנחנו צריכים ארבעה סיכות GPIO IN ועוד סיכת GPIO אחת של Gnd. השתמשתי בסיכת GPIO 31 (GPIO6), 33 (GPIO13), 35 (GPIO19), 37 (GPIO26) ו- 39 (Gnd) לכפתורים אדומים, צהובים, ירוקים וכחולים בהתאמה. למסך זה יש ממשק SPI. המשמעות היא שהוא מחובר לבנק GPIO, אז ראשית שמתי חוטים שהסתיימו בריבוע בסיכות לחצנים ואז חיברתי את מסך ה- LCD.

השלב הבא היה הרכבת מארז Raspberry+LCD+על הלוח. השתמשתי בברגים של מארז Raspberry Pi עצמו.

ה- QuizzPi מותקן…

שלב 5: סוללה, לחצנים, מתג ומחבר USB …

סוללה, לחצנים, מתג ומחבר USB…
סוללה, לחצנים, מתג ומחבר USB…
סוללה, לחצנים, מתג ומחבר USB…
סוללה, לחצנים, מתג ומחבר USB…
סוללה, לחצנים, מתג ומחבר USB…
סוללה, לחצנים, מתג ומחבר USB…

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

השלב הבא הוא חיבור מתג ההפעלה/כיבוי בין בנק החשמל ל- Raspberry Pi. לקחתי כבל USB וחתכתי רק את חוט החשמל, ואז הלחמתי קצה חוט אחד לפין אחד של מתג ההפעלה/כיבוי ואת קצה החוט השני לסיכה השנייה של מתג ההפעלה/כיבוי. כך שכאשר מתג כיבוי ההפעלה לא עובר את ה- swtich והפטל כבוי וכאשר מתג ההפעלה עובר את ה- swtich והפטל מופעל.

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

למקם את הכפתורים ולחווט אותם היה קל. לכפתורים יש 2 סיכות, סיכה אחת של כל כפתור מתחברת לכבל משותף העובר לסיכת GPIO טחונה, והסיכה השנייה של הכפתור מתחברת לסיכת ה- GPIO המתאימה שלה של הפטל. תרשים החיווט מוצג בתרשים המצורף.

מערכת הסאונד מבוססת ב- PAM8403, מגבר קול זול. זה הכרחי מכיוון שהצליל שמגיע מהשקע של Raspberry Pi אינו חזק מדי בכדי לגרום לרמקול לפעול. אתה צריך להפעיל אותו עם 5V או יותר. בתמונות המצורפות ניתן לראות כיצד לחבר את המגבר והרמקול. אנחנו צריכים שקע 3.5 מ מ זכר כדי להתחבר לשקע האודיו/ווידיאו של הראפברי. הלחמתי 3 חוטים לשקע: אודיו, וידאו ואדמה. התרשים המצורף מראה מה הסיכה לכולם. אחר כך הלחמתי חוט למתג ההפעלה/כיבוי כדי לקחת ממנו חשמל וחוט נוסף לחוט הארקה מכבל בנק החשמל. לאחר מכן אני מחבר את החוטים מהרמקול ליציאות המגבר. החלק הקל הוא להקצות את מערכת הסאונד במקרה. אתה יכול לראות בתמונות.

QuizzPi מותקן, בתמונה האחרונה עדיין נוכל לראות סימני עיפרון על העץ, אבל הגיע הזמן לתוכנה … בואו ניצור מנוע חידון זעיר …

שלב 6: תמונה ורסבית ותכנות מנוע החידון …

תמונה ורסבית ותכנות מנוע החידון …
תמונה ורסבית ותכנות מנוע החידון …
תמונה ורסבית ותכנות מנוע החידון …
תמונה ורסבית ותכנות מנוע החידון …
תמונה ורסבית ותכנות מנוע החידון …
תמונה ורסבית ותכנות מנוע החידון …
תמונה ורסבית ותכנות מנוע החידון …
תמונה ורסבית ותכנות מנוע החידון …

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

מנוע החידון כתוב ב- Python 3, ולכן אנו זקוקים לתמונת Raspbian עם מהדר Python מותקן. בשלב זה עלינו לקחת בחשבון את סוג המסך שהתקנו. המסך שלי הוא ממשק SPI, והמוכר נותן תמונה של Raspbian עם כל מנהלי ההתקנים של המסך מותקנים. גם לגרסה זו של Raspbian יש מנוע Python. אתה יכול להוריד את התמונה בקישור הזה.

אם יש לך מסך HDMI או RCA תוכל להוריד את התמונה האחרונה של Raspbian הזמינה באתר raspberrypi.org. שימו לב: אתם זקוקים לגרסת Rasbian לשולחן העבודה, לכן הימנעו מהורדת תמונת Lite Raspbian. תמונות אלה מכילות מהדר פייתון.

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

השלב הבא הוא הורדת הקבצים של מנוע החידון. צירפתי את קוד המקור בקובץ QuizzPi.zip. הורד את המקור וצור תיקייה ב- Raspberry Pi:

# mkdir/home/pi/QuizzPi

ולפתוח את הקובץ שהורד לתיקייה זו.

QuizzPi.zip מכיל קבצים אלה:

  • QuizzPi.py - הוא מכיל את הקוד
  • קבצי תמונות-p.webp" />
  • קבצי קול MP3 - ניתן לשנות אותם בהתאמה אישית
  • losmejores.txt - הוא מכיל טבלת ציונים גבוהים, אתה יכול למחוק אותו לאתחול הטבלה
  • Instructions.txt

אני לא אתן הסבר ממצה כיצד תיכננתי את קוד המנוע ב- Python מכיוון שזה קשה לאנשים ללא ידע בתכנות. הם רק צריכים לשמור את הקבצים ב- Raspberry. אנשים עם ידע בתכנות יוכלו לשנות אותו ללא כל הסבר;)

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

#Cargo desde URLurl = 'https://opentdb.com/api.php?amount=10&type=multiple'

משתנה עם כתובת האתר שהתקבלה ממעצב ה- API

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

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

כעת עליך לשנות את ה- Raspbian שלך להפעלה אוטומטית של QuizzPi. אתה יכול לקרוא מאמר זה שבו להסביר כיצד לעשות זאת:

סיימנו!!!

שלב 7: הפגנה …

Image
Image

לסיום ההוראה ניתן לראות את הסרטון הזה. אתה יכול לראות שזה קל לשימוש והקשה של השאלות תלויה בך …

עריכה: הסרטון עודכן עכשיו עם סאונד!

תחרות מיקרו -בקר
תחרות מיקרו -בקר

מקום שני בתחרות מיקרו -בקר

מוּמלָץ: