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

MARIO KART: 5 שלבים
MARIO KART: 5 שלבים

וִידֵאוֹ: MARIO KART: 5 שלבים

וִידֵאוֹ: MARIO KART: 5 שלבים
וִידֵאוֹ: Every Day Is a Mario Day on Nintendo Switch! 2024, יולי
Anonim
מריו קארט
מריו קארט
מריו קארט
מריו קארט

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

שלב 1: הסבר כללי על הפרויקט

הסבר כללי על הפרויקט
הסבר כללי על הפרויקט

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

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

זה התקיים במהלך חג היוצר של ה- ITESM CUU בסמסטר Agu-Dec 2016.

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

שלב 2: חומרים

חומרים
חומרים
חומרים
חומרים
חומרים
חומרים

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

מנועים עם הילוכים. זהו מנוע באורך 5 סנטימטר, בעל הספק של 12 וולט והספק פלט מרבי של 1.55 וואט במשקל של 65 גרם ומומנט מרבי של 0.071 ננומטר.

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

SparkFun bluetooth mate כסף. ה- Bluetooth Mate דומה מאוד למודם BlueSMiRF שלנו, אך הוא תוכנן במיוחד לשימוש עם Arduino Prosand ו- LilyPad Arduinos שלנו. מודמים אלה פועלים כצינור סדרתי (RX/TX) ומהווים תחליף אלחוטי נהדר לכבלים טוריים. כל זרם סדרתי בין 2400 ל- 115200bps יכול להיות מועבר בצורה חלקה מהמחשב שלך ליעד שלך.

מודול בלוטות 'HC-06. כמודול עבדים הוא פשוט ושימושי לפרויקטים קטנים בהם אתה מסתכל למעלה לתקשורת קלה בין הטלפון הסלולרי שלך לבין Arduino או בקרי מיקרו אחרים.

סוללה נטענת 12V. מקור אנרגיה זה משמש להאכלת המנועים, הארדואינו ומודול הבלוטות ', תוך שימוש בעוד 4 בתי סוללות 1.5V להאכיל את הנשק.

נֶשֶׁק. זו בעצם עמידות בחום, באמצעות כבל, אנו מחממים חוט שנמצא בקצה מקלות העץ.

צִיוּד.

מכונת חיתוך בלייזר

קאוטין וולר

החלקה עליונה

תוֹכנָה.

AutoCad

קורל צייר

שלב 3: עיצוב והרכבה

עיצוב והרכבה
עיצוב והרכבה

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

כדי לייצא את הקובץ מהאוטוקאד ליציאת USB, פורמט הציור חייב להיות בפורמט Corel Draw כדי שמכונת חיתוך הלייזר תוכל לקרוא אותו ולהוציא אותו.

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

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

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

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

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

שלב 4: קוד

הקוד בו השתמשנו היה בשפת C בתוכנת המחשב של הארדואינו. שורות הקוד היו כדלקמן:

#include #include #include "כלי השירות/Adafruit_MS_PWMServoDriver.h" #include int bluetoothTx = 51; // סיכת TX-O של חבר Bluetooth, Arduino D2 int bluetoothRx = 50; // סיכת RX-I של bluetooth mate, Arduino D3 int i, ia, vDI, vDD, vTI, vTD, DI, DD; תוכנה Bluetooth סידורי (bluetoothTx, bluetoothRx); Adafruit_MotorShield AFMS = Adafruit_MotorShield (); Adafruit_DCMotor *MotorDI = AFMS.getMotor (1); Adafruit_DCMotor *MotorDD = AFMS.getMotor (2); Adafruit_DCMotor *MotorTI = AFMS.getMotor (3); Adafruit_DCMotor *MotorTD = AFMS.getMotor (4); הגדרת void () {Serial.begin (9600); // התחל את הצג הטורי ב- 9600bps bluetooth.begin (115200); // ה- Bluetooth Mate כברירת מחדל ל- 115200bps bluetooth.print ("$"); // הדפס שלוש פעמים בנפרד bluetooth.print ("$"); bluetooth.print ("$"); // הזן עיכוב במצב פקודה (100); // עיכוב קצר, המתן עד שה- Mate ישלח CMD bluetooth.println ("U, 9600, N"); // שנה באופן זמני את קצב העדר ל- 9600, אין זוגיות // 115200 יכולה להיות מהירה מדי לפעמים עבור NewSoftSerial להעביר את הנתונים באופן אמין bluetooth.begin (9600); // התחל סדרת Bluetooth ב- 9600 AFMS.begin (); MotorDI-> setSpeed (150); MotorDI-> הפעלה (קדימה); MotorDI-> הפעלה (RELEASE); MotorDD-> setSpeed (150); MotorDD-> הפעלה (קדימה); MotorDD-> הפעלה (RELEASE); MotorTI-> setSpeed (150); MotorTI-> הפעלה (קדימה); MotorTI-> הפעלה (RELEASE); MotorTD-> setSpeed (150); MotorTD-> הפעלה (קדימה); MotorTD-> הפעלה (RELEASE); } לולאת void () {if (bluetooth.available ()) // אם ה- bluetooth שלח תווים כלשהם {i = bluetooth.read (); } if (Serial.available ()) // אם הדברים הוקלדו בצג הטורי {// שלח תווים כלשהם המסך הסידורי מדפיס ל- bluetooth.print ((char) Serial.read ()); } אם (ia! = i) {switch (i) {מקרה 119: bluetooth.println ("w"); vDI = 250; vDD = 250; vTI = 250; vTD = 250; DI = 1; DD = 1; לשבור; מקרה 101: bluetooth.println ("e"); vDI = 220; vDD = 50; vTI = 220; vTD = 50; DI = 1; DD = 1; לשבור; מקרה 100: bluetooth.println ("d"); vDI = 250; vDD = 250; vTI = 250; vTD = 250; DI = 1; DD = 2; לשבור; מקרה 115: bluetooth.println ("s"); vDI = 0; vDD = 0; vTI = 0; vTD = 0; DI = 1; DD = 1; לשבור; מקרה 97: bluetooth.println ("a"); vDD = 250; vDI = 250; vTD = 250; vTI = 250; DI = 2; DD = 1; לשבור; מקרה 113: bluetooth.println ("q"); vDD = 250; vDI = 50; vTD = 250; vTI = 50; DI = 1; DD = 1; לשבור; מארז 120: bluetooth.println ("x"); vDI = 220; vDD = 220; vTI = 220; vTD = 220; DI = 2; DD = 2; לשבור; } MotorDI-> setSpeed (vDI); MotorDI-> הפעלה (DI); MotorDD-> setSpeed (vDD); MotorDD-> הפעלה (DD); MotorTI-> setSpeed (vTI); MotorTI-> הפעלה (DI); MotorTD-> setSpeed (vTD); MotorTD-> הפעלה (DD); ia = i; }}

שלב 5: תחרות

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

מוּמלָץ: