פרויקט בניית ניסוי ברובוטיקה
DESCRIPTION
פרויקט בניית ניסוי ברובוטיקה. מנחה – קובי כוחיי סטודנטים מבצעים : ערן דומב רועי הוכמן. מבוא ורקע כללי מבנה התוכנה המבוך וייצוג הרובוט שלבי הניסוי פונקציונליות : Dead Reckoning ניווט המבוסס על שדה פוטנציאל SLAM סיכום ורעיונות להמשך תודות. מבנה המצגת. מבוא ורקע כללי. - PowerPoint PPT PresentationTRANSCRIPT
פרויקט בניית ניסוי ברובוטיקההמעבדה לבקרה ורובוטיקה
מנחה – קובי כוחייסטודנטים מבצעים :
ערן דומב•רועי הוכמן•
1
מבנה המצגת
מבוא ורקע כללימבנה התוכנההמבוך וייצוג הרובוטשלבי הניסוי:פונקציונליות
Dead Reckoningניווט המבוסס על שדה פוטנציאלSLAM
סיכום ורעיונות להמשךתודות
המעבדה לבקרה ורובוטיקה
2
המעבדה לבקרה ורובוטיקה
3
מבוא ורקע כללי
מטרות הפרויקט
,מטרת הפרויקט ליצור ניסוי עבור המעבדה לבקרה ורובוטיקהבתחום הרובוטיקה ובינה מלאכותית.
שעות כל אחד4הניסוי יורכב משני מפגשים בני
המעבדה לבקרה ורובוטיקה
4
חלוקה לשניים: חלק א', חלק ב'
חלק ב' – פיתוח הניסויהגדרת מטרות לכל מפגש תרגום המטרות לדרישות
ביצועיות מהסטודנטים פיתוח מודולים לתוכנה
בהתאם לדרישות
חלק א' – פיתוחהפלטפורמה
פיתוח מערכת שידורIRוקליטה של
פיתוח מערכת דגימה פיתוח מערכת מתחתקשורת עם הרובוטפיתוח תוכנה
המעבדה לבקרה ורובוטיקה
5
ICREATEרקע - רובוט המיוצר ע"יiRobot ומיועד ,
להאקינג. יכולות מובנות, תוספים ייעודיים
(BAM , IR, Bump) בעבודה עם הרובוט צריך לשים לב
לשני סוגי שגיאות בסיסיות: חוסר דיוקים פנימיים של
הרובוט השהיות בתגובת הרובוט
כתוצאה ישירה של טיב התקשורת
המעבדה לבקרה ורובוטיקה
6
מבנה המערכת – סכימת בלוקים
Sensors
BluetoothComm.
Robot Computer with dedicated software
7
המעבדה לבקרה ורובוטיקה
מבנה התוכנה
8
המעבדה לבקרה ורובוטיקה
תוכנה – מימוש מודולרי
המעבדה לבקרה ורובוטיקה
9
Form class
Gui
Iro class – Robot
representation
Comm class – Communication handling
for IRO
Map class
פונקציונליות – המבוך וייצוג הרובוט
המעבדה לבקרה ורובוטיקה
10
מבוך
לצורך ניסוי המעבדה תוכנן מבנה מודולריהמאפשר בניית מבוכים שונים בדרגות קושי
מגוונות. ההשראה לבניית המבוך נלקחה מאבני הלגו:
45פלטות בסיס בגודלx60 מחוררות במטריצת חורים
קירות באורכים וגבהים משתנים בעלי פינים"המתלבשים" על פלטות הבסיס
החוזק המבני של המבוך נובע מהחיבור בין הקירותלפלטות הבסיס
המעבדה לבקרה ורובוטיקה
11
ם שי
תרל
וךמב
ה
ייצוג הרובוט
:באופן כללי ניתן לייצג את הרובוט בשני אופניםייצוג נקודהייצוג אובייקט
עקב שימוש במטריצת מיקום נבחר ייצוג נקודה?איך מתייחסים לקירות כדי למנוע התנגשותהפתרון - הרחבת הקירות:משמעויות לסטודנט – לימוד התיאוריה והבנה כי
רובוט עגול = הרחבה לפי רדיוס הרובוט לכל כיוון
המעבדה לבקרה ורובוטיקה
12
?
שלבי הניסוי
13
המעבדה לבקרה ורובוטיקה
ופעילויות אפשריותמטלות
הכרות עם הרובוט ומגבלותיו , ניווט ': חלק אDead Reckoning מדידת שגיאות, נסיעה בריבוע/מלבן/מעגל ,
וכד'
אוטונומיה למחצה: ניווט ': חלק בDead Reckoning Bump, wallsבשילוב סנסורים:
המעבדה לבקרה ורובוטיקה
14
מטלות ופעילויות אפשריות
פתרון מבוך נתון ע"י שימוש בשדה פוטנציאל': חלק ג
חלק ד :'SLAM הרובוט צריך להגיע לנקודת היעד בזירה ,לא מוכרת.
המעבדה לבקרה ורובוטיקה
15
☼Dead Reckoningקלאסי ☼Dead Reckoningעם שימוש בסנסורים
DEAD RECKONINGפונקציונליות –
המעבדה לבקרה ורובוטיקה
16
DEAD RECKONING'חלק א –
Dead Reckoning הינה דרך לניווט הרובוט "על עיוור". שימוש בשיטה מחייבת ידע מוקדם של
מבנה המבוך, ובהתאם לכך ניתנות פקודות נסיעה בסיסיות.
:פקודות הנסיעה שמומשו
.בשיטה זו אין התייחסות לסטיות מדידה
המעבדה לבקרה ורובוטיקה
17
Drive [Distance] <Velocity>Rotate [angle] <Velocity>
DEAD RECKONING + SENSORS חלק – ב'
על מנת לפתור את חוסר ההתייחסות לסטיות, מומשו Dead Reckoningהמדידה המובנית ב
פקודות העושות שימוש מוגבל בחיישני הרובוט:Bumpחיישן מגע בקדמת הרובוט – Wall sensor חיישן – IR הממוקם בצידו הימני עליון
של הרובוט. :פקודות הנסיעה שמומשו
אלגוריתם עקיבת קיר הינה דוגמא לשימושבשיטה זו.
המעבדה לבקרה ורובוטיקה
18
DriveTillBump <Velocity>FollowWall <Low Threshold> <High Threshold>
DEAD RECKONING + SENSORS :עקיבת קיר הינה דוגמא לשימוש בשיטה זו
יש לקבוע סף, ממנו ואילך הקיר מוגדר כקרוב מדיוהרובוט יתרחק ממנו.
באופן דומה יש לקבוע סף אשר מתחתיו הקיר רחוקמדי והרובוט יפעל להתקרב לקיר.
האפשרות לשלוט על הספים נתונה למשתמש, וניתןכך לתת לסטודנטים למצוא ספים "אופטימליים" אשר
מאפשרים לרובוט תנועה חלקה ככל האפשר
המעבדה לבקרה ורובוטיקה
19
שדה פוטנציאל – כללי☼אלגוריתם חזית גל☼תוצאות אמפיריות☼מטלות מוצעות לניסוי☼
פונקציונליות : ניווט המבוסס על שדה פוטנציאל – חלק ג'
המעבדה לבקרה ורובוטיקה
20
ניווט על פי שדה פוטנציאל
פונקצייה סקלארית שמייצגת את הסביבה שלהרובוט
כדי לנווט, הרובוט שואף לעבור תמיד לנקודות עםפוטנציאל יותר נמוך
שיקולי הבנייה של שדה הפוטנציאלפונקציה חלקהנקודת המטרה תמיד תהיה הנקודה עם
הפוטנציאל הכי נמוךהמכשולים יקורבו לפוטנציאל אין סופייש להימנע מנקודת מינימום מקומי
המעבדה לבקרה ורובוטיקה
21
ניווט על פי שדה פוטנציאל – דוגמא
המעבדה לבקרה ורובוטיקה
22
התחלה
סיום
ניווט על פי שדה פוטנציאל– אלגוריתם חזית גל
"הפתרון – אלגוריתם "חזית גל(wave-front):עיקרי האלגוריתם
8 או 4בחירת יחסי שכנות היעד של הרובוטמנקודת מתחילים את האלגוריתם
במבוך בכל "צעד" כל נקודה מקבלת ערך גבוה באחד
מהשכן הכי נמוך שלה )כאשר לא כוללים נקודות "מיוחדות", קירות וכ"ו(
ניתן להחליט האם לסיים כשמגיעים לנקודהמסויימת )נקודת ההתחלה של הרובוט( או
להמשיך עד שביקרנו בכל הנקודות הקשורות על הלוח
המעבדה לבקרה ורובוטיקה
23
8אלגוריתם חזית גל – דוגמא שכנות
המעבדה לבקרה ורובוטיקה
24
מיקום הרובוט מכשול
נקודת הסיום של הרובוט
ניווט בשדה פוטנציאל - תוצאות
המעבדה לבקרה ורובוטיקה
25
כמהפתרונות
מעברים צריםאפשרייםמדי לרובוט
ניווט בשדה פוטנציאל - תוצאות
המעבדה לבקרה ורובוטיקה
26
ניווט בשדה פוטנציאל - תוצאות
המעבדה לבקרה ורובוטיקה
27
ניווט בשדה פוטנציאל - תוצאות
המעבדה לבקרה ורובוטיקה
28
התחלה
סיום
ניווט בשדה פוטנציאל – אתגרים נוספים לסטודנטים
שגיאות המדידה של הרובוט יוצרות אי ודאותבמיקומו:
"צריך לקבוע "מפתח זויותצריך לקבוע מהירות נסיעה
צריך לקבוע פקטור הרחבת קירות כך שנקבל מרווחבטיחות מהקירות מבלי "לסגור" מעברים לגיטימים
צריך להחליט האם להתחיל את האלגוריתם התחילתהמסלול או בסופו
: הפקודה המתאימה
המעבדה לבקרה ורובוטיקה
29SolveMaze < Angle offset > < Angle range >
– חלק ד'SLAMפונקציונליות :
המעבדה לבקרה ורובוטיקה
30
Simultaneous Localization And Mapping (SLAM)
:בעיית הביצה והתרנגולתצריך לדעת את המיקום המדוייק כדי לבנות את המפהצריך לקרוא מפה על מנת לקבוע מה המיקום המדויק
יש צורך בפתרון איטרטיבי! צריך לבנות מפה של הסביבהתוך כדי איכון עצמי.
הפקודה המתאימה :
המעבדה לבקרה ורובוטיקה
31
Slam < Angle offset > < Angle range >
ופתרונםSLAMאתגרי ה-
חישה – חיישני התנגשות(bumpמובנים של הרובוט )ניתן להוסיף עוד חיישנים בעתיד שימנעו מגע עם הקירות
מיפוי – סימון הקירות על מבנה המפה על פי המיקום העצמי שלהרובוט ושימוש בשדה פוטנציאל כדי לחשב דרך אופטימלית
לפתרון המבוך איכון – האיכון הבסיסי מתבצע ע"י האנקודרים המובנים של
הרובוט כאשר שימוש בידע המוקדם על המרחק בין הקירות והעובדה שהם יכולים להיות רק מקבילים או ניצבים מאפשר לבצע
תיקוני מיקום:שימוש במפה המעודכנת – אלגוריתם הנסיעה הוא
המעבדה לבקרה ורובוטיקה
32
חישובחזית גל
נסיעה במדרון)שדה פוטנציאל(
?התנגשות בקירמיקום קיר על המפה-
תיקון מיקום עצמי-
SLAMאתגרים לסטודנטים –
-שלב הSLAM הוא שלב סופי בו על הסטודנטים ליישם את כל מה שלמדו עד כה
:אתגר לדוגמא בחירת אורך הקירות – האם אחרי התנגשות מסמנים על המפה רק נקודה
אחת על קיר או קיר יותר ארוך? באיזה אורך?
המעבדה לבקרה ורובוטיקה
33
סיכום ורעיונות להמשך
המעבדה לבקרה ורובוטיקה
34
סיכום ורעיונות להמשך – מטלות אפשריות לסטודנטים
Dead Reckoning פתרון המבוך בצורה – עיוורת, תכנון נסיעה, מדידת סטיות, ציור ריבוע
Dead Reckoning + sensors תכנון – הנסיעה, קביעת מהירות, מדידת סטיות
שדה פוטנציאל – קביעת מהירות נסיעה, יחסישכנות, מפתח זוית, נקודת התחלה
SLAM ,קביעת מהירות נסיעה, מפתח זוית – אורך קירות
המעבדה לבקרה ורובוטיקה
35
סיכום ורעיונות להמשך
שימוש בחיישנים נוספים שימנעו פגיעה בקירות-תיקון זוית רובוט לפי הקירות בSLAM הפשטת המעבר ממפה בתוכנה למפת גבהים
במטלב הוספת אפשרות לסטודנטים לתכנן בעצמם את
אלגוריתם עקיבת קיר הוספת אפשרות לסטודנטים לתכנן בעצמם את
ביצוע האלגוריתם של חזית הגל והנסיעה המורד הרחבת הבניה של שדה הפוטנציאל לאלגוריתמים
(BushFireנוספים )כגון
המעבדה לבקרה ורובוטיקה
36
המעבדה לבקרה ורובוטיקה
37
ברצוננו להודות לצוות אשר עזר ותמך בנו עד כה:
* אורלי ויגדרזון* קובי כוחיי
מבוך - תרשימים
המעבדה לבקרה ורובוטיקה
38