רובוט דמוי Segway המיוצב בשיטת Fuzzy Logic מצגת סוף חלק א

Preview:

DESCRIPTION

רובוט דמוי Segway המיוצב בשיטת Fuzzy Logic מצגת סוף חלק א'. עמרי פפאו ושחר כהן מנחה: עידו כהן. מבנה המצגת. סקירת שלבי העבודה הקשיים שבדרך המשימות הבאות. תיאור הפרוייקט מטרות הפרוייקט פירוט משימות סכמת בלוקים מודל פיזיקלי Fuzzy Control יתרונות השיטה סיבוכיות וסימולציה. - PowerPoint PPT Presentation

Citation preview

Segwayרובוט דמוי Fuzzy Logicהמיוצב בשיטת

מצגת סוף חלק א'

עמרי פפאו ושחר כהן

מנחה:

עידו כהן

מבנה המצגתסקירת שלבי העבודה17.

הקשיים שבדרך19.

המשימות הבאות20.

תיאור הפרוייקט3.

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

פירוט משימות5.

סכמת בלוקים7.

מודל פיזיקלי 8.

.11Fuzzy Control

יתרונות השיטה12.

סיבוכיות וסימולציה15.

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

גלגלים מקבילים ואינו יציב.

קומות. כיוון 3גוף הרובוט גלילי ובנוי מ-שהגלגלים קבועים במקומם הרובוט יכול

"ליפול" קדימה ואחורה בלבד.

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

של משתמש על תנועות הרובוט.

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

Fuzzy Logic Controlייצוב של הרובוט בשיטת • ביחס לאנך.0סביב זווית

שליטה מרחוק על הרובוט: הרובוט יענה על פקודות • שיכללו שינוי כיוון נסיעה, שינוי מהירות ואף

סיבובים.

פירוט משימותFuzzy Logic הכרה ומימוש של בקרת • .Membership Functions מימוש בניית טבלת מצבים הקושרת בין מצב הרובוט לכוח שניתן

למנועים.בניית סימולציות ובדיקת התכן.

השלמת בניית הרובוט• השולט על Pic( וכן בקר iNemoהתקנת כרטיס חיישנים )

המנועים )כיוון ומהירות סיבוב(. למנועים וסט נוסף DCהצבת בתי סוללות: סט אחד עבור מתח

שיהווה מתח אספקה לבקר, לחיישנים ולדרייברים.

המשך...

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

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

סכמת בלוקים

iNemoחיישניםiNemoחיישנים

Picבקר Picבקר

כרטיס דרייבריםכרטיס דרייברים

DC מנועי 2 DC מנועי 2

12Vסוללות 12Vסוללות

5Vסוללות 5Vסוללות מחשבמחשב

Segwayרובוט Segwayרובוט

מודל פיזיקלי של המערכתומשוואות מצב

מודל המערכת מזכיר את המטוטלת ההפוכה הקווית.

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

"Segbot" By Grace Chi, Joshua Hausbach and Brian Hunter )May, 2005(

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

ממשוואות אלה מצאנו את הלגרנג'יאן

שמגזירתו לפי כל משתני המצב

קיבלנו את משוואות המצב של המערכת.

u

dt

dqdt

d

q

L

()

L

, ,k system p systemL E E

...המשך

2

2 2

2

2

00 1 0 0

10 0 0

0 0 0 1 0

0 0 0

b

b

BBx xM gLB RA

x xB AD RA B AD

M gLA BA

B AD RB AD

נקודת שיווי המשקל סביבה ביצענו לינאריזציה היא .משוואות המצב שהתקבלו הן:

0

המשך...

הם:A,B,Dכאשר הקבועים

- מסת הגוף, - מסת הגלגלים

- מומנט אינרציה של המנוע , - מומנט אינרציה של הגוף,

- מומנט אינרציה של הגלגלים

- Gear Ratio .מומנט הרובוט, נוצר ע"י המנוע - ,

L ,)רדיוס הגליל )גוף הרובוט - g ,קבוע הגרוויטציה - R רדיוס - הגלגלים.

2

2

2

2 2

22

2

2

m w

b w

mb

b b m

J JA M M

R

JB M L

R

D M L J J

bMwM

mJbJ

wJ

Fuzzy Controlשיטת בקרה זו מתבססת על "לוגיקה עמומה".

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

ומצבה הרצוי.

מגדירים את מצבי המערכת עפ"י הכניסות האפשריות )מוצא החיישנים(.

.if – thenהבקרה ממומשת ע"י סט פקודות

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

לייצוב.

נשים לב!פשוט Fuzzy Logicמימוש בקרה באמצעות שיטת ה-

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

לא מצריכה ידיעה של המודל Fuzzy Controlשיטת של המערכת ובכך יתרונה הגדול על פני המתמטי המלא

שיטות אחרות.

שלבי עיבוד הנתונים

• Membership Function

- מבצעים דיסקריטיזציה של ציר הזוויות .

' 1שערכה הוא 'צורה קבועה מגדירים כל ערך בדיד- עבור ' בקצוות. הצורות נבנות על תחומים חופפים.0 במרכזה ו-'

בצורה מגדיר את מידת הוודאות כל זווית - הערך של להמצאות במצב מסויים.

עפ"י המשקל שהיא מהווה בכל מצב הזווית - נגדיר את צורה.

90,90

0

4

4

2

2

1

המשך...

חישוב מידת הוודאות להמצאות בכל מצב עבור שתי הכניסות יחד•

- הגדרת : פונקציה המבטאת את מידת הודאות שהמערכת נמצאת במצב מסויים המגדיר את שתי הכניסות יחד.

משקול המצבים המשותפים ומציאת הכוח הנחוץ לייצוב•

.Mem. Func- חישוב השטח שמגדיר מוצא ה- ב-

- הכפלת כל שטח עם הכוח המתאים לכל מצב.

- סכימת כל המכפלות ונירמולן לפי סכום השטחים.

_ premise

_ premise

סיבוכיות קוד הבקרה וסימולציות לבדיקת התכן

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

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

פקודות בכל איטראציה.100– המעבד מבצע סדר גודל של

סימולציות:•

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

, כשבכל איטראציה שינינו את הכוח המייצב את Ode45האיטראטיבית

המערכת בהתאם למשתני המצב הזמניים על מנת להגיע למצב יציב.

המשך...

להלן תוצאה של אחת הסימולציות. תנאי התחלה:

מעלות12זווית הרובוט ביחס לציר האנכי:

מעלות 12מהירות זוויתית התחלתית של הרובוט:

לשניה.

0 2 4 6 8 10 12 14 16 18 20-6

-4

-2

0

2

4

6

8

10

12

Time

Deg

rees

Teta

Teta dot

סקירת שלבי העבודהשלב ראשון•

בספר 2 והבנתה - קריאת פרק Fuzzy Logic- הכרת שיטת

"Fuzzy Control“, K. M. Passino and S. Yurkovich, Ohio State Uni., 1998

ובניית סימולציות לבדיקת התכן.Matlab- כתיבת קוד הבקרה ב- שלב שני•

- למידה לעומק של עבודת הדרייברים והקישור שלהם עם המנועים.

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

- בחירה של כרטיס חיישנים ובקר מנועים מתאימים וסגירת חוג הבקרה באמצעות מחשב.

המשך...

שלב רביעי•

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

.Pic באמצעות בקר PWM- הפקה של אות

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

כך שנוכל לייצבו כנדרש. לא הצלחנו לגרום לרובוט להתייצב באופן אוטונומי )כלומר, ללא •

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

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

נסיעה תוך שמירה על יציבותו.

המשימות הבאות.COM למחשב ע"י חיבור Pic בקר ה-חיבור•שליחת פקודות הבקרה מהמחשב לבקר:•

שמוציא הבקר PWM של ה-Duty Cycle- שליטה על ה- )לקביעת מהירות סיבוב הגלגלים(matlab באמצעות ה-

- שליטה על כיוון סיבוב הגלגלים. שליטה על נסיעה של הרובוט ע"י פקודות משתמש.•

תם ולא נשלם!

שאלות?

תודה על ההקשבה!

Recommended