180 likes | 360 Views
הטכניון - מכון טכנולוגי לישראל TECHNION - ISRAEL INSTITUTE OF TECHNOLOGY הפקולטה להנדסת חשמל המעבדה לבקרה ורובוטיקה. פיתוח משחק איקס-עיגול על רובוט NAO. מגישים: אריאל שלייפר אור דלל מנחה: מעיין גל-און. מבנה המצגת. מטרת הפרויקט דרישות מהפרויקט הצגת הרובוט
E N D
הטכניון - מכון טכנולוגי לישראל TECHNION - ISRAEL INSTITUTE OF TECHNOLOGYהפקולטה להנדסת חשמלהמעבדה לבקרה ורובוטיקה פיתוח משחק איקס-עיגול על רובוט NAO מגישים: אריאל שלייפר אור דלל מנחה: מעיין גל-און
מבנה המצגת • מטרת הפרויקט • דרישות מהפרויקט • הצגת הרובוט • סביבת עבודה • תאור אלגוריתם המשחק • קשיים בפרויקט • הדגמת הפרויקט • זמן לשאלות
מטרת הפרויקט • לגרום ל-NAO לשחק משחק איקס-עיגול עם בן אדם • המשחק ישוחק על גבי לוח אנכי כאשר NAO מחליט על המהלך הבא ומניח את כלי המשחק שלו בעצמו
דרישות מהפרויקט • על כלי המשחק והלוח להיות מספיק גדולים • כדי שייראו ע"י הקהל • על NAO לשחק ברמה שתתאים לילדים • הרובוט יישלט על ידי דיבור (פקודות קוליות)
הרובוט NAO • רובוט דמוי אדם • גובה: 58 ס"מ, משקל: 5 ק"ג • בעל יכולות רבות, בין היתר: • מעבד x86 AMD GEODE 500MHz CPU • חיישן סונאר, חיישני מגע • שתי מצלמות, רמקולים, לדים • תקשורת קווית /WiFi • מודולים של תנועה וText-To-Speech- • ניתן לשליטה בעזרת קוד ובעזרת תוכנות ייעודיות
סביבת העבודה • Choregraphe - תוכנה לסימולציה של הרובוט • Telepathe - תוכנה להצגת המצלמה וזיכרון הרובוט • NaoQi SDK - להרצת סקריפטים על הרובוט • תכנות האלגוריתמים בשפת Python
תאור אלגוריתם המשחק המתנה בקרה בקרה
תאור אלגוריתם המשחק • איפוס זווית הראש ביחס לגוף • יישור הגוף כלפי אמצע הלוח ע"י: • מציאת הסטייה ממרכז שדה הראייה ל"מרכז המסה" של הלוח • הזזת הראש / סיבוב הגוף לכיוון "מרכז המסה" • חזרה על האיטרציות עד אשר הסטייה מספיק קטנה התמקדות על הלוח
תאור אלגוריתם המשחק • צילום לוח המשחק • סילוק הכלים מהתמונה ע"י חיתוך בסף של הצבעים • ביצוע Labeling לקבלת מיקומי הריבועים של הלוח • בדיקת הצבע בכל ריבוע והחזרת מצב הלוח במטריצה צילום וניתוח הלוח
תאור אלגוריתם המשחק • החלטה על מהלך הבא באמצעות Minimax Algorithm • שימוש ב- Alpha-Beta Pruning • בחינת מספר סופי של מהלכים קדימה (3למשל) • עדיפות גבוהה לניצחון מהיר יותר החלטה על המהלך הבא
תאור אלגוריתם המשחק • התקרבות אל הלוח תוך שימוש בחיישן Sonar • הנחת הכלי הלוח תוך שימוש בתנועות מוקלטות מראש • חזרה אחורה לנקודת המתנה • המתנה למהלך היריב והתחלה מחדש ע"י חיווי קולי המשך האלגוריתם
קשיים בפרויקט • בעיות התממשקות עם הרובוט • דוקומנטציה לא ברורה • הרובוט מתחמם במהירות וקשה לעבוד איתו לאחר זמן מה • מערכת הסונארים אינה מדויקת קרוב ללוח (עד 20 ס"מ) או רחוק מהלוח (מעל 70 ס"מ) • סטייה בזמן ההליכה של הרובוט • בשפת python הבסיסית אין כלים רבים להתמודדות יעילה עם מערכים, עיבוד תמונה ויכולות נוספות
פתרון הקשיים • דוקומנטציה לא ברורה-פנייה לתמיכה טכנית, העזרות בפורומים באתר הרובוט, התייעצות עם אנשים אחרים. • מערכת הסונארים אינה מדויקת קרוב ללוח (עד 20 ס"מ) או רחוק מהלוח (מעל 70 ס"מ)-שימוש בסונארים בטווח הפעולה שלהם בשביל לדייק בהגעה אל הלוח. • סטייה בזמן ההליכה של הרובוט-בקרה מתמדת תוך שימוש בסונאריםובמצלמה. • בשפת python הבסיסית אין כלים רבים להתמודדות יעילה עם מערכים, עיבוד תמונה ויכולות נוספות-הורדת ספריות מיוחדת ברשת שיוצרו במיוחד לכל אחת מהבעיות.
הדגמת הרובוט • הצגת משחק מלא • אזכור בתקשורת-ערוץ 10
סיכום ומסקנות • ידע שנרכש : • שימוש בעיבוד תמונה • לימוד שפת python • בקרת תנועת רובוט • שימוש בחיישנים שונים דרך תוכנה • תוצאות הפרויקט: • הרובוט מסוגל לשחק משחק שלם של איקס-עיגול • כמו כן רמת הקושי ניתנת לבחירה
כיוונים להמשך והצעות לפרוייקט נוסף • הוספת זיהוי עפ"י צורה • לגרום לרובוט לאסוף את הכלי בעצמו מהרצפה • לגרום לרובוט לכתוב את מהלכו בעזרת טוש על גבי לוח מחיק • שדרוג למשחק מסובך יותר בעל יותר אפשרויות פעולה
סקר ספרות [1] “NAO User Guide Ver. 1.6.0,” 2010. [Online]. Available: http://academics.aldebaran-robotics.com/documentations.php. [Accessed: Jun. 23, 2010]. [2] L. Shapiro and G. Stockman, Computer Vision East Lansing, MI: Department of Computer Science Michgan State University, Mar 2010. [3] M. Shah, Fundamentals of Computer Vision. Orlando, FL 32816: Computer Science Department University of Central Florida, Dec. 7, 1997. [4] M. Lutz, Learning Python, Third Edition. 1005 Gravenstein Highway North, Sebastopol, CA 95472.: O’Reilly Media, Inc., 2008.