38
הההההה ההההה ההההה ההההההההה הההההה ההההה ההההההההה הההה – הההה ההההה הההההההה הההההה : ההה הההה הההה ההההה1

פרויקט בניית ניסוי ברובוטיקה

  • Upload
    malory

  • View
    87

  • Download
    0

Embed Size (px)

DESCRIPTION

פרויקט בניית ניסוי ברובוטיקה. מנחה – קובי כוחיי סטודנטים מבצעים : ערן דומב רועי הוכמן. מבוא ורקע כללי מבנה התוכנה המבוך וייצוג הרובוט שלבי הניסוי פונקציונליות : Dead Reckoning ניווט המבוסס על שדה פוטנציאל SLAM סיכום ורעיונות להמשך תודות. מבנה המצגת. מבוא ורקע כללי. - PowerPoint PPT Presentation

Citation preview

Page 1: פרויקט בניית ניסוי ברובוטיקה

פרויקט בניית ניסוי ברובוטיקההמעבדה לבקרה ורובוטיקה

מנחה – קובי כוחייסטודנטים מבצעים :

ערן דומב•רועי הוכמן•

1

Page 2: פרויקט בניית ניסוי ברובוטיקה

מבנה המצגת

מבוא ורקע כללימבנה התוכנההמבוך וייצוג הרובוטשלבי הניסוי:פונקציונליות

Dead Reckoningניווט המבוסס על שדה פוטנציאלSLAM

סיכום ורעיונות להמשךתודות

המעבדה לבקרה ורובוטיקה

2

Page 3: פרויקט בניית ניסוי ברובוטיקה

המעבדה לבקרה ורובוטיקה

3

מבוא ורקע כללי

Page 4: פרויקט בניית ניסוי ברובוטיקה

מטרות הפרויקט

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

שעות כל אחד4הניסוי יורכב משני מפגשים בני

המעבדה לבקרה ורובוטיקה

4

Page 5: פרויקט בניית ניסוי ברובוטיקה

חלוקה לשניים: חלק א', חלק ב'

חלק ב' – פיתוח הניסויהגדרת מטרות לכל מפגש תרגום המטרות לדרישות

ביצועיות מהסטודנטים פיתוח מודולים לתוכנה

בהתאם לדרישות

חלק א' – פיתוחהפלטפורמה

פיתוח מערכת שידורIRוקליטה של

פיתוח מערכת דגימה פיתוח מערכת מתחתקשורת עם הרובוטפיתוח תוכנה

המעבדה לבקרה ורובוטיקה

5

Page 6: פרויקט בניית ניסוי ברובוטיקה

ICREATEרקע - רובוט המיוצר ע"יiRobot ומיועד ,

להאקינג. יכולות מובנות, תוספים ייעודיים

(BAM , IR, Bump) בעבודה עם הרובוט צריך לשים לב

לשני סוגי שגיאות בסיסיות: חוסר דיוקים פנימיים של

הרובוט השהיות בתגובת הרובוט

כתוצאה ישירה של טיב התקשורת

המעבדה לבקרה ורובוטיקה

6

Page 7: פרויקט בניית ניסוי ברובוטיקה

מבנה המערכת – סכימת בלוקים

Sensors

BluetoothComm.

Robot Computer with dedicated software

7

המעבדה לבקרה ורובוטיקה

Page 8: פרויקט בניית ניסוי ברובוטיקה

מבנה התוכנה

8

המעבדה לבקרה ורובוטיקה

Page 9: פרויקט בניית ניסוי ברובוטיקה

תוכנה – מימוש מודולרי

המעבדה לבקרה ורובוטיקה

9

Form class

Gui

Iro class – Robot

representation

Comm class – Communication handling

for IRO

Map class

Eran
התייחסות לממשק של הGUI עם הטרד הראשי
Page 10: פרויקט בניית ניסוי ברובוטיקה

פונקציונליות – המבוך וייצוג הרובוט

המעבדה לבקרה ורובוטיקה

10

Page 11: פרויקט בניית ניסוי ברובוטיקה

מבוך

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

מגוונות. ההשראה לבניית המבוך נלקחה מאבני הלגו:

45פלטות בסיס בגודלx60 מחוררות במטריצת חורים

קירות באורכים וגבהים משתנים בעלי פינים"המתלבשים" על פלטות הבסיס

החוזק המבני של המבוך נובע מהחיבור בין הקירותלפלטות הבסיס

המעבדה לבקרה ורובוטיקה

11

ם שי

תרל

וךמב

ה

Page 12: פרויקט בניית ניסוי ברובוטיקה

ייצוג הרובוט

:באופן כללי ניתן לייצג את הרובוט בשני אופניםייצוג נקודהייצוג אובייקט

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

רובוט עגול = הרחבה לפי רדיוס הרובוט לכל כיוון

המעבדה לבקרה ורובוטיקה

12

?

Page 13: פרויקט בניית ניסוי ברובוטיקה

שלבי הניסוי

13

המעבדה לבקרה ורובוטיקה

Page 14: פרויקט בניית ניסוי ברובוטיקה

ופעילויות אפשריותמטלות

הכרות עם הרובוט ומגבלותיו , ניווט ': חלק אDead Reckoning מדידת שגיאות, נסיעה בריבוע/מלבן/מעגל ,

וכד'

אוטונומיה למחצה: ניווט ': חלק בDead Reckoning Bump, wallsבשילוב סנסורים:

המעבדה לבקרה ורובוטיקה

14

Page 15: פרויקט בניית ניסוי ברובוטיקה

מטלות ופעילויות אפשריות

פתרון מבוך נתון ע"י שימוש בשדה פוטנציאל': חלק ג

חלק ד :'SLAM הרובוט צריך להגיע לנקודת היעד בזירה ,לא מוכרת.

המעבדה לבקרה ורובוטיקה

15

Page 16: פרויקט בניית ניסוי ברובוטיקה

☼Dead Reckoningקלאסי ☼Dead Reckoningעם שימוש בסנסורים

DEAD RECKONINGפונקציונליות –

המעבדה לבקרה ורובוטיקה

16

Page 17: פרויקט בניית ניסוי ברובוטיקה

DEAD RECKONING'חלק א –

Dead Reckoning הינה דרך לניווט הרובוט "על עיוור". שימוש בשיטה מחייבת ידע מוקדם של

מבנה המבוך, ובהתאם לכך ניתנות פקודות נסיעה בסיסיות.

:פקודות הנסיעה שמומשו

.בשיטה זו אין התייחסות לסטיות מדידה

המעבדה לבקרה ורובוטיקה

17

Drive [Distance] <Velocity>Rotate [angle] <Velocity>

Page 18: פרויקט בניית ניסוי ברובוטיקה

DEAD RECKONING + SENSORS חלק – ב'

על מנת לפתור את חוסר ההתייחסות לסטיות, מומשו Dead Reckoningהמדידה המובנית ב

פקודות העושות שימוש מוגבל בחיישני הרובוט:Bumpחיישן מגע בקדמת הרובוט – Wall sensor חיישן – IR הממוקם בצידו הימני עליון

של הרובוט. :פקודות הנסיעה שמומשו

אלגוריתם עקיבת קיר הינה דוגמא לשימושבשיטה זו.

המעבדה לבקרה ורובוטיקה

18

DriveTillBump <Velocity>FollowWall <Low Threshold> <High Threshold>

Page 19: פרויקט בניית ניסוי ברובוטיקה

DEAD RECKONING + SENSORS :עקיבת קיר הינה דוגמא לשימוש בשיטה זו

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

באופן דומה יש לקבוע סף אשר מתחתיו הקיר רחוקמדי והרובוט יפעל להתקרב לקיר.

האפשרות לשלוט על הספים נתונה למשתמש, וניתןכך לתת לסטודנטים למצוא ספים "אופטימליים" אשר

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

המעבדה לבקרה ורובוטיקה

19

Page 20: פרויקט בניית ניסוי ברובוטיקה

שדה פוטנציאל – כללי☼אלגוריתם חזית גל☼תוצאות אמפיריות☼מטלות מוצעות לניסוי☼

פונקציונליות : ניווט המבוסס על שדה פוטנציאל – חלק ג'

המעבדה לבקרה ורובוטיקה

20

Page 21: פרויקט בניית ניסוי ברובוטיקה

ניווט על פי שדה פוטנציאל

פונקצייה סקלארית שמייצגת את הסביבה שלהרובוט

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

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

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

המעבדה לבקרה ורובוטיקה

21

Page 22: פרויקט בניית ניסוי ברובוטיקה

ניווט על פי שדה פוטנציאל – דוגמא

המעבדה לבקרה ורובוטיקה

22

התחלה

סיום

Page 23: פרויקט בניית ניסוי ברובוטיקה

ניווט על פי שדה פוטנציאל– אלגוריתם חזית גל

"הפתרון – אלגוריתם "חזית גל(wave-front):עיקרי האלגוריתם

8 או 4בחירת יחסי שכנות היעד של הרובוטמנקודת מתחילים את האלגוריתם

במבוך בכל "צעד" כל נקודה מקבלת ערך גבוה באחד

מהשכן הכי נמוך שלה )כאשר לא כוללים נקודות "מיוחדות", קירות וכ"ו(

ניתן להחליט האם לסיים כשמגיעים לנקודהמסויימת )נקודת ההתחלה של הרובוט( או

להמשיך עד שביקרנו בכל הנקודות הקשורות על הלוח

המעבדה לבקרה ורובוטיקה

23

Page 24: פרויקט בניית ניסוי ברובוטיקה

8אלגוריתם חזית גל – דוגמא שכנות

המעבדה לבקרה ורובוטיקה

24

מיקום הרובוט מכשול

נקודת הסיום של הרובוט

Page 25: פרויקט בניית ניסוי ברובוטיקה

ניווט בשדה פוטנציאל - תוצאות

המעבדה לבקרה ורובוטיקה

25

כמהפתרונות

מעברים צריםאפשרייםמדי לרובוט

Page 26: פרויקט בניית ניסוי ברובוטיקה

ניווט בשדה פוטנציאל - תוצאות

המעבדה לבקרה ורובוטיקה

26

Page 27: פרויקט בניית ניסוי ברובוטיקה

ניווט בשדה פוטנציאל - תוצאות

המעבדה לבקרה ורובוטיקה

27

Page 28: פרויקט בניית ניסוי ברובוטיקה

ניווט בשדה פוטנציאל - תוצאות

המעבדה לבקרה ורובוטיקה

28

התחלה

סיום

Page 29: פרויקט בניית ניסוי ברובוטיקה

ניווט בשדה פוטנציאל – אתגרים נוספים לסטודנטים

שגיאות המדידה של הרובוט יוצרות אי ודאותבמיקומו:

"צריך לקבוע "מפתח זויותצריך לקבוע מהירות נסיעה

צריך לקבוע פקטור הרחבת קירות כך שנקבל מרווחבטיחות מהקירות מבלי "לסגור" מעברים לגיטימים

צריך להחליט האם להתחיל את האלגוריתם התחילתהמסלול או בסופו

: הפקודה המתאימה

המעבדה לבקרה ורובוטיקה

29SolveMaze < Angle offset > < Angle range >

Page 30: פרויקט בניית ניסוי ברובוטיקה

– חלק ד'SLAMפונקציונליות :

המעבדה לבקרה ורובוטיקה

30

Page 31: פרויקט בניית ניסוי ברובוטיקה

Simultaneous Localization And Mapping (SLAM)

:בעיית הביצה והתרנגולתצריך לדעת את המיקום המדוייק כדי לבנות את המפהצריך לקרוא מפה על מנת לקבוע מה המיקום המדויק

יש צורך בפתרון איטרטיבי! צריך לבנות מפה של הסביבהתוך כדי איכון עצמי.

הפקודה המתאימה :

המעבדה לבקרה ורובוטיקה

31

Slam < Angle offset > < Angle range >

Page 32: פרויקט בניית ניסוי ברובוטיקה

ופתרונםSLAMאתגרי ה-

חישה – חיישני התנגשות(bumpמובנים של הרובוט )ניתן להוסיף עוד חיישנים בעתיד שימנעו מגע עם הקירות

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

לפתרון המבוך איכון – האיכון הבסיסי מתבצע ע"י האנקודרים המובנים של

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

תיקוני מיקום:שימוש במפה המעודכנת – אלגוריתם הנסיעה הוא

המעבדה לבקרה ורובוטיקה

32

חישובחזית גל

נסיעה במדרון)שדה פוטנציאל(

?התנגשות בקירמיקום קיר על המפה-

תיקון מיקום עצמי-

Page 33: פרויקט בניית ניסוי ברובוטיקה

SLAMאתגרים לסטודנטים –

-שלב הSLAM הוא שלב סופי בו על הסטודנטים ליישם את כל מה שלמדו עד כה

:אתגר לדוגמא בחירת אורך הקירות – האם אחרי התנגשות מסמנים על המפה רק נקודה

אחת על קיר או קיר יותר ארוך? באיזה אורך?

המעבדה לבקרה ורובוטיקה

33

Page 34: פרויקט בניית ניסוי ברובוטיקה

סיכום ורעיונות להמשך

המעבדה לבקרה ורובוטיקה

34

Page 35: פרויקט בניית ניסוי ברובוטיקה

סיכום ורעיונות להמשך – מטלות אפשריות לסטודנטים

Dead Reckoning פתרון המבוך בצורה – עיוורת, תכנון נסיעה, מדידת סטיות, ציור ריבוע

Dead Reckoning + sensors תכנון – הנסיעה, קביעת מהירות, מדידת סטיות

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

SLAM ,קביעת מהירות נסיעה, מפתח זוית – אורך קירות

המעבדה לבקרה ורובוטיקה

35

Page 36: פרויקט בניית ניסוי ברובוטיקה

סיכום ורעיונות להמשך

שימוש בחיישנים נוספים שימנעו פגיעה בקירות-תיקון זוית רובוט לפי הקירות בSLAM הפשטת המעבר ממפה בתוכנה למפת גבהים

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

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

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

(BushFireנוספים )כגון

המעבדה לבקרה ורובוטיקה

36

Page 37: פרויקט בניית ניסוי ברובוטיקה

המעבדה לבקרה ורובוטיקה

37

ברצוננו להודות לצוות אשר עזר ותמך בנו עד כה:

* אורלי ויגדרזון* קובי כוחיי

Page 38: פרויקט בניית ניסוי ברובוטיקה

מבוך - תרשימים

המעבדה לבקרה ורובוטיקה

38