תוכן עניינים:
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:15
בקורס הנדסת מחשבים בכיתות 11 קיבלנו את המשימה לגרום לרובוט שלנו לעבור במבוך. על מנת לשלוט אם זה הולך ישר, פונה שמאלה או ימינה התבקשנו לעשות פגושים. בדרך זו אם הרובוט נגע בקיר והוא פגע בפגוש הימני, הרובוט יפנה שמאלה ואם יפגע בפגוש השמאלי הרובוט יפנה ימינה. אז בעצם המשימה שלנו הייתה ליצור פגוש שניתן לדחוף פנימה כדי לאפשר להסתובב ואני גם צריך לחזור החוצה כדי שהוא לא ימשיך להפעיל לולאה. עם זאת, הגדרת פגוש דורשת ממך גם להגדיר קוד ומעגל על מנת להפעיל את הפגוש שלך. בצע את השלבים הבאים כדי ללמוד כיצד להכין פגוש משלך לרובוט.
שלב 1: המעגל
על מנת לגרום לפגושים לפעול, עליך ליצור מעגל על לוח הלחם בחלקו העליון של הרובוט שלך.
(עקוב אחר התמונה למעלה כדי להשיג 2 פגושים)
חומרים דרושים
- 2 נורות לד קטנות (כדי להבטיח שהפגושים שלך עובדים)
- 8 חוטים
- 2 נגדים חומים-צהובים-שחורים
- 2 נגדים אדומים-אדומים-חומים
כמה דברים שכדאי לזכור
- ה- Vss הוא ה"אדמה "שם מכיוון שהוא שווה לאפס וה- Vdd שווה ל -1
- כאשר המעגל פועל הערך הוא 0 כאשר הוא אינו פועל הערך הוא 1
- הצד השטוח של הלד שלילי והצד השני חיובי
טעויות נפוצות במעגלים
- LED הוא הדרך הלא נכונה
- הנורית, הנגד והחוט אינם מסודרים באותו העמוד
- הלד כבר לא עובד
שלב 2: הקוד
הקוד:
'{$ STAMP BS2}' {$ PBASIC 2.5}
קוד PIN LBump 11
RBump PIN 10
PIN LMOTOR 15
PIN 14 של RMOTOR
RFast CON 650
LFast CON 850
RSlow CON 700
LSLOW CON 800
MStop CON 750
RFastRev CON 850
LFastRev CON 650
RSlowRev CON 800
LSlowRev CON 700
MLoopC VAR Word 'For.. N משתנה הבא עד 65000ish
לַעֲשׂוֹת
GOSUB קדימה קדימה 'קדימה
אם IN10 = 0 ואז 'אם נלחצים על שני החוטים בקלט 10, פנה שמאלה
GOSUB TurnLeft 90
ELSEIF IN11 = 0 ואז 'אם נלחצים על שני החוטים בקלט 11, פנה ימינה
GOSUB TurnRight 90
ENDIF
לוּלָאָה
TurnRight90:
'הליך משנה לפנייה של 90 מעלות ימינה
'**********************************************************
גבוה 1
נמוך 0
עבור MLoopC = 1 עד 22
PULSOUT LMOTOR, LfastRev 'התקדם דופק אחד קדימה
PULSOUT RMOTOR, Rfast 'באמצעות סיכות וקבועים
השהה 20
'20mS מאפשר לרובוט לנוע' לפני הדופק הבא
הַבָּא
לַחֲזוֹר
'*********************************************************
TurnLeft90:
'הליך משנה לפנייה של 90 מעלות ימינה
'********************************************************
גבוה 0
נמוך 1
עבור MLoopC = 1 עד 22
PULSOUT LMOTOR, Lfast 'התקדם דופק אחד קדימה
PULSOUT RMOTOR, RfastRev 'באמצעות סיכות וקבועים
PAUSE 20 '20mS מאפשר לרובוט לנוע' לפני הדופק הבא
הַבָּא
לַחֲזוֹר
'***********************************************************
קדימה מהירה:
'הליך משנה להניע את הרובוט קדימה במהירות של ריבוע אחד
'**********************************************************
עבור MLoopC = 1 עד 70
מנוע PULSOUT, LFAST PULSOUT
RMOTOR, RFast
השהה 20
הַבָּא
לַחֲזוֹר
סקירה קצרה
מטרת קוד זה היא לתכנת את הרובוט לסובב שמאלה כאשר לוחצים על החוטים הימניים (פגוש) ולפנות ימינה כאשר לוחצים על החוטים השמאליים (הפגוש).
מה פירוש הקוד?
ובכן לפני שאני עונה על שאלה זו עליך להכיר את משמעותם של כמה מהקודים המשמשים בתוכנית זו.
GOSUB - אז תת מייצג עבור אל תת -שגרה (תת -התוכנית חייבת להיות מזוהה בקוד שלך)
ENDIF - משמש לסיום פקודה IF מרובה שורות
_
מסביר את המשמעות מאחורי הקוד…..
DOGOSUB מהיר קדימה
- אומר לרובוט ללכת קדימה מיד כשהוא מופעל
אם IN10 = 0 אז
GOSUB TurnLeft 90
- אומר שאם שני החוטים בכניסה 10 (הפגוש הימני) נוגעים אז הרובוט יפנה שמאלה בזווית של 90.
ELSEIF
IN11 = 0 ואז GOSUB TurnRight90
- אומר שאם שני החוטים בכניסה 11 (פגוש שמאלי) נוגעים אז הרובוט יפנה ימינה בזווית של 90.
TurnRight90: 'הליך משנה לפנייה של 90 מעלות ימינה
'**********************************************************
גבוה 1
נמוך 0
עבור MLoopC = 1 עד 22
PULSOUT LMOTOR, LfastRev
PULSOUT RMOTOR, Rfast
השהה 20
החזרה הבאה '******************************************** **********
- זוהי דוגמה לתת -שגרה בה נעשה שימוש כך שאינך צריך לחזור על אותו קוד ארוך שוב ושוב. כך הקוד שלך נראה מסודר ויותר יחד.
- האפס הגבוה 1 / נמוך פירושו שכאשר הרובוט פונה ימינה (החוטים השמאליים נוגעים) הדלק נדלק, כך תדעו שהכל עובד.
שלב 3: הפגושים (דרושים חומרים)
כדי להפוך את הפגוש, תזדקק…
- 4 מקלות ארטיק למבנה הראשי ו -2 מקלות ארטיק להרכיב את הפגוש על הרובוט
- 4 חתיכות של ספוג
- 4 מהדקי נייר
- אז רדיד אלומיניום
- 4 חוטים (לחיבור ללוח הלחם, הסבר בשלב 1 על המעגל)
- אקדח דבק חם ומקלות דבק
- נייר דבק
שלב 4: הרכבת הפגושים
להכנת פגוש אחד, קח 2 מקלות ארטיק וחתך את הקצוות המעוגלים (כמו המסומן בתמונה הראשונה). מקלות ארטיק אלה ישמשו את החלק העליון והתחתון של הפגוש שלך. על מנת שהחוטים ייגעו ונגיעו מיד לאחר מכן, יש צורך בספוג. קחו ספוג וחתכו 2 ריבועים זעירים (כמו בתמונה השנייה שמוצגת למעלה). לאחר מכן, בעזרת אקדח דבק חם, קח מקל ארטיק אחד והדבק ריבוע ספוג אחד בצד שמאל וספוג אחד בצד ימין (השתמש בתמונה השלישית כהפניה). לאחר מכן, קח חוט אחד ועוטף קצה אחד של קצה החוט בעזרת רדיד אלומיניום. הנח את החוט באמצע מקל הארטיק והדק אותו בעזרת מהדק נייר. חזור על שלב זה עם החוט השני ומקל הארטיק. הדבק אחרון את הארטיק ללא הספוגים, לארטיק בעזרת ספוגים (כמו שמוצג בתמונה השלישית למעלה). עכשיו הפגוש הראשון שלך הושלם
חזור על כל התהליך הזה פעם שניה כדי ליצור פגוש שני.
כדי להוסיף את הפגושים לרובוט, קח מקל ארטיק אחד והדבק אותו בתחתית הפגוש. זוויו את הפגוש השמאלי לכיוון הצד השמאלי, וזוו את הפגוש הימני כלפי הצד הימני. הדבקתי את הפגושים בעזרת סרט מסקינג. (תמונה מספר 4 היא הפגושים שהושלמו, המחוברים לרובוט).
מוּמלָץ:
מגדל טיפוס עוזר לרובוט V1 - שליטה דו -רגליים, RF, BT עם אפליקציה: 22 שלבים (עם תמונות)
Tower Climb Helping Robot V1 - שליטה דו -רגליים, RF, BT עם אפליקציה: כשאני רואה לטאות על קירות אני מתכנן לעשות רובוט כמוהו. זהו רעיון לטווח ארוך, אני מחפש הרבה מאמרים אחר אלקטרו-דבקים ובודק בדרך כלשהי את כושר ההחזקה שלו. כרגע אני מתכנן לעשות את זה באמצעות אלקטרומגנט כדי
(2) התחלת יצירת משחק - יצירת מסך התזה ביחידות 3D: 9 שלבים
(2) התחלת יצירת משחק - יצירת מסך התזה ב- Unity3D: במדריך זה תלמד כיצד להכין מסך התזה פשוט ב- Unity3D. ראשית, נפתח את אחדות
הפוך פגושים רובוטיים (עם קוד): 4 שלבים
הפוך פגושים רובוטיים (עם קוד): מדריך זה ילווה את הקוראים כיצד ליצור ולקודד פגושים בבוט-בוט שיוכל לנווט במבוך תוך זיהוי מכשולים. הקידוד לפרויקט נעשה באמצעות תוכנת תכנות BASIC Stamp ו- Boe-Bo
פגושים לרובוט: 6 שלבים
פגושים לרובוט: זהו עיצוב שעשיתי עבור רובוט שיזהה מתי הוא מתנגש עם משטח. קוד הבול הבסיסי עדיין בעיצומו
כיצד להוסיף פגושים ל- SUMOBOT: 9 שלבים (עם תמונות)
כיצד להוסיף פגושים ל- SUMOBOT: מה שזה עושה זה שתוכל לגרום לזה שאם זה יפגע באחד הפגושים ברובוט, הוא יתהפך ויתרחק מהאובייקט