Presentation is loading. Please wait.

Presentation is loading. Please wait.

Mobile Robot Kinematics

Similar presentations


Presentation on theme: "Mobile Robot Kinematics"— Presentation transcript:

1 Mobile Robot Kinematics
سینماتیک روباتهای متحرک دکتر سعید شیری قیداری & فصل 3 کتاب Amirkabir University of Technology Computer Engineering & Information Technology Department

2 مقدمه سینماتیک عبارت است از مطالعه عملکرد سیستم های مکانیکی
مطالعه سینماتیک روباتهای متحرک در دو زمینه لازم است: طراحی مناسب روبات برای انجام عمل مورد نظر نوشتن نرم افزار کنترلی روبات ساخته شده یک اختلاف مهم بین روبات متحرک و روبات صنعتی در اندازه گیری موقعیت است. روبات صنعتی در یک نقطه ثابت است لذا میتوان موقعیت آنرا نسبت به این نقطه ثابت اندازه گرفت.

3 نقش چرخها برای فهم حرکت روبات باید نقش هر یک از چرخها و همچنین محدودیت هائی که هر یک از آنها در حرکت ایجاد میکنند بررسی شود.

4 روبات های چرخدار چرخ ساده بوده و دارای بازدهی زیادی است.
برای کاربردهای زیادی میتوان از چرخ استفاده نمود. داشتن فقط 3 چرخ میتواند پایداری را تضمین کند. در صورت استفاده از بیش از 3 چرخ نیازمند سیستم تعلیق مناسب هستیم. دغدغه های اصلی در روباتهای متحرک که از چرخ استفاده میکنند عبارتند از: قدرت کشش، قدرت مانور و نحوه کنترل

5 سینماتیک روباتهای متحرک
سینماتیک روباتهای متحرک شبیه به روباتهای صنعتی است با این تفاوت که روبات متحرک میتواند آزادانه در محیط حرکت نماید. علاوه بر آن روش مستقیمی برا ی اندازه گیری موقعیت روبات وجود ندارد و موقعیت را باید در طول زمان با انتگرال گیری از حرکت های انجام شده بدست آورد. اینکار منجر به ایجاد خطا در اندازه گیری خواهد شد. مقابله با این مسئله یکی ازمباحث جدی در روبات های متحرک میباشد. برای فهم حرکت روبات باید از محدودیتهائی که چرخها بر سر راه حرکت ایجاد میکنند شروع نمود.

6 نشان دادن موقعیت روبات فرض میشود که روبات یک جسم صلب باشد که روی چرخها قرار گرفته و بر روی یک صفحه حرکت میکند. موقعیت روبات را میتوان با دو متغیر x,y در صفحه و یک متغیر q برای نشان دادن جهت آن مشخص نمود

7 نشان دادن موقعیت روبات برای اینکار از دو فریم مختصات استفاده میشود:
یکی فریم مختصات مرجع و دیگری فریم محلی که بر روی روبات قرار دارد فریم مرجع بصورت زیر نشان دادن میشود فریم روبات بصورت زیر نشان داده میشود

8 نشان دادن موقعیت روبات اگر اختلاف زاویه بین فریم روبات و فریم مرجع برابر با q بوده و مبدا فریم روبات (P) درنقطه x,y نسبت به فریم مرجع قرار داشته باشد در اینصورت مختصات فریم روبات نسبت به فریم مرجع بصورت زیر نشان داده میشود.

9 نشان دادن موقعیت روبات برای توصیف حرکت روبات لازم است تا حرکت در راستای فریم مرجع به حرکت در فریم روبات نگاشت شود. برای اینکار از ماتریس دوران زیر استفاده میشود. برای مثال برای حالت شکل قبل داریم

10 مدل سینماتیک مستقیم هدف: اگر سرعت چرخهای روبات و ابعاد هندسی آنرا داشته باشیم حرکت روبات چگونه خواهد بود؟

11 مدل سینماتیک مستقیم روبات شکل زیر دارای دو چرخ هر یک با شعاع r بوده و باندازه l از نقطه P که در وسط بین دو چرخ قرار دارد فاصله دارد. سرعت چرخها برابر با f1, f2 میباشد. در اینصورت مدل سینماتیک مستقیم روبات بصورت زیر خواهد بود:

12 مدل سینماتیک مستقیم میتوان موقعیت روبات در فریم مرجع را با استفاده از موقعیت روبات در فریم محلی و بکار بردن رابطه زیر محاسبه نمود. برای اینکارلازم است تا تاثیر هر یک از چرخها را در فریم اصلی محاسبه نمود.

13 محاسبه سینماتیک مستقیم
برای محاسبه حرکت روبات در فریم مرجع میتوان تاثیر هر یک از چرخها در فریم روبات را محاسبه کرده و نتیجه را به فریم مرجع منتقل نمود. اگر فرض کنیم که روبات در جهت محور X در حرکت باشد سرعت حرکت نقطه P بازای چرخش هر یک از چرخها بصورت زیر خواهد بود: در یک روبات با درایو دیفرانسیلی میتوان ایندو مولفه را با هم جمع نمود.

14

15 محاسبه سینماتیک مستقیم
مولفه y این حرکت صفر خواهد بود. برای محاسبه مولفه q’ در نظر داشته باشید اگر فقط چرخ راست دوران کند روبات حول چرخ چپ به چرخش در خواهد آمد. سرعت زاویه ای نقطه P برابر خواهد بود با: به همین ترتیب برای چرخ چپ داریم با ترکیب این روابط مدل سینماتیکی روبات بصورت زیر خواهد بود:

16 محاسبه سینماتیک مستقیم
در این رابطه مقدار ماتریس دوران از رابطه زیر بدست میاید:

17 مثال اگر روبات در موقعیت زیر چرخها را با سرعتهای متفاوتی به حرکت در آورد خواهیم داشت:

18 اعمال محدودیت ها روابط فوق اطلاعاتی در مورد نحوه حرکت روبات در صورت داشتن سرعت چرخها را بدست میدهند اما در حالت کلی علاقمند هستیم که فضای حرکت های ممکن برای یک روبات با طراحی مشخص را بدانیم. در اینصورت برای توصیف حرکت روبات مجبور خواهیم بود تا محدودیت هائی که هر چرخ بر حرکت اعمال میکند را نیز در نظر بگیریم.

19 محدودیت های سینماتیکی چرخها
فرضهائی که بکار خواهیم برد: صفحه چرخها همیشه عمودی باقی خواهد ماند. در هر حالتی فقط یک نقطه برخورد بین چرخ و زمین وجود دارد. چرخها در نقطه کنتاکت سر نمیخورند. یعنی فقط حرکت چرخشی دارند.

20 چرخ استاندارد ثابت زاویه این چرخ نسبت به بدنه روبات ثابت بوده و فقط حرکت رو به جلو و یاعقب در صفحه چرخ انجام میشود. چرخش در نقطه برخورد چرخ با زمین صورت می پذیرد.

21 چرخ استاندارد ثابت بنا به محدودیت غلتش میبایست در محل برخورد فقط چرخش خالص داشته باشیم: مولفه های x, y, q حرکت حاصل از چرخش مجموع حرکت در صفحه چرخ تبدیل از موقعیت مرجع به موقعیت روبات

22 چرخ استاندارد ثابت بنا به محدودیت سر خوردن میبایست مولفه عمودی موقعیت چرخها نسبت به صفحه چرخ صفر باشد: مولفه های x, y, q مجموع حرکت در صفحه چرخ تبدیل از موقعیت مرجع به موقعیت روبات

23 مثال در این مثال سرعت در راستای XI صفر خواهد بود یعنی همانطور که انتظار میرود چرخ سر نخواهد خورد

24 چرخ استاندارد هدایت شونده
این چرخ دارای یک درجه آزادی بیشتر است ( حول یک محور عمودی می چرخد که از وسط چرخ و محل برخورد با زمین میگذرد). معادلات حرکتی آن مشابه چرخ استاندارد است با این تفاوت که زاویه چرخ با بدنه ثابت نبوده و در طول زمان تغییر میکند.

25 چرخ کاستور محور چرخش عمودی این چرخ از محل برخورد با زمین نمیگذرد.
این چرخ میتواند حول یک محور عمودی چرخش نماید. این محور از نقطه برخورد با زمین عبور نمیکند. این محدودیت مثل قبل است محور چرخش عمودی این چرخ از محل برخورد با زمین نمیگذرد. محدودیت غلتشی آن مشابه چرخ ثابت است. اما وجود افست بین محل اتصال چرخ به بدنه (A) و محور چرخش عمودی(نقطه B ) باعث میشود تا چرخ در مواجهه با هر نیروی عمودی اعمال شده به آن جهت دلخواهی را بخود بگیرد تا به حالت تعادل برسد. در اینجا یک پارامتر اضافی خواهیم داشت دو پارامتر متغیر با زمان داریم: f(t) , b(t)

26 چرخ کاستور محدودیت های سر خوردن:
محدودیت های سر خوردن: در نقطه A نیروهای جانبی به چرخ وارد میشوند. از اینرو با توجه به فاصله بین این نقطه و نقطه برخورد محدودیت نداشتن حرکت جانبی اشتباه خواهد بود. در اینصورت هر نوع حرکت عمود در راستای صفحه چرخ با گردش کاستور جبران خواهد شد. بازای هر موقعیت روبات مقداری برای سرعت وجود خواهد داشت که محدودیت های فوق بر آورده شوند. لذا وجود چرخ کاستور محدودیتی برای حرکت روبات نخواهد بود.

27 چرخ سوئدی این چرخ قادر به حرکت بصورت تمام جهت میباشد که در اثر افزودن یک درجه آزادی به چرخ استاندارد ایجاد شده است. این درجه آزادی ناشی از غلتک ها یا چرخهای کوچکی است که در محیط چرخ اصلی و بصورت عمود بر آن و یا زاویه دار نصب شده اند. با تر کیب مناسب زاویه بین محور اصلی و زاویه غلتک ها میتوان چرخ را در هر جهتی به حرکت در آورد.

28 چرخ سوئدی

29 چرخ کروی این چرخ فاقد هر گونه محور چرخش اصلی است از اینرو هیچ گونه محدودیتی برای حرکت روبات بوجود نمی آورد.

30 محدودیتهای سینماتیکی روبات متحرک
با داشتن محدودیتهای سینماتیکی چرخها میتوان محدودیتهای سینماتیکی روبات را بدست اورد: هر چرخ استاندارد یک محدودیت سینماتیکی را به روبات اعمال میکند. چرخ کاستور، چرخ سوئدی و چرخهای کروی محدودیت سینماتیکی خاصی بر روی روبات اعمال نمیکنند. لذا کافی است تا این محدودیت برای چرخهای استاندارد محاسبه شود.

31 محدودیتهای سینماتیکی روبات متحرک
قدرت مانور روبات با در نظر گرفتن محدودیت سینماتیکی چرخها چگونه محاسبه میشود؟ اگر تعداد کل چرخهای ثابت و متحرک را بصورت زیر در نظر بگیریم: N=Nf+Ns

32 محدودیتهای سینماتیکی روبات متحرک
موقعیت چرخشی چرخهای ثابت و متحرک حول محور افقی محدودیت چرخش همه چرخها را میتوان بصورت یک ماتریس نشان داد:

33 محدودیتهای سینماتیکی روبات متحرک
به همین ترتیب محدودیت سر خوردن همه چرخها را میتوان بصورت ماتریس زیر نشان داد.

34 مثال: روبات دیفرانسیلی
با جمع کردن محدودیت های فوق بصورت یک ماتریس داریم: از چرخ هرزگرد صرفنظر میشود و برای دو چرخ دیگر محدودیت های به و خلاصه میشود. اگر روبات در جهت در حال حرکت باشد، برای چرخ راست داریم : و برای چپ:

35 مثال: روبات دیفرانسیلی
که با جایگرینی داریم: با معکوس کردن رابطه فوق خواهیمداشت:

36 مثال: روبات تمام جهت

37 قابلیت مانور روبات بزرگترین عاملی که قابلیت مانور روبات را محدود میکند، الزام چرخها در بر آورده کردن محدودیت سر خوردن است. روبات علاوه بر حرکت سینماتیکی لحظه ای میتواند موقعیتش را در طول زمان با فرمان دادن به چرخها تغییر دهد. بنابر این قدرت مانور روبات ترکیبی از محدودیت چرخهای ثابت در مقابل سرخوردن و درجه آزادی ناشی از فرمان پذیری چرخها خواهد بود.

38 درجه تحرک پذیری محدودیت سر خوردن چرخهای ثابت و متحرک عبارت است از:
از لحاظ ریاضی برآوردن کرده شروط فوق مستلزم قرار گرفتن در میباشد. از لحاظ گرافیکی این معنا را میتوان با استفاده از تعریف مرکز لحظه ای دوران نشان داد.

39 خط Zero Motion یک چرخ ثابت حول محوری میچرخد که در آن هیچ حرکتی نخواهد داشت. بعبارت دیگر چرخ در هر لحظه حول دایره ای میچرخد که مرکز آن در روی این خط قرار دارد. وقتی که این نقطه در بی نهایت قرار داشته باشد چرخ در روی خط راست حرکت خواهد نمود. برای روبات با بیش از یک چرخ فقط یک مرکز لحظه ای دوران خواهیمداشت که از برخورد خطوط zero Motion بدست میآید.

40 Instantaneous Center of Rotation

41 Mobile Robot Maneuverability: More on Degree of Mobility

42 Mobile Robot Maneuverability: Degree of Steerability

43 Mobile Robot Maneuverability: Robot Maneuverability

44 قدرت مانور روبات متحرک عبارت است از مجموع درجات آزادی که روبات قادر به کنترل آنهاست. که برابر است با درجه آزادی که روبات با تغییر سرعت چرخها بدست میآورد به اضافه درجه آزادی که از کنترل زاویه چرخها حاصل میشود.

45 Mobile Robot Maneuverability: Wheel Configurations

46 Five Basic Types of Three-Wheel Configurations

47 Mobile Robot Workspace: Degrees of Freedom

48 Mobile Robot Workspace: Degrees of Freedom, Holonomy

49 روبات Holonomic یک روبات هولونومیک روباتی است که محدودیت سینماتیکی غیر هولونومیکی نداشته باشد. محدودیت سینماتیکی هولونومیکی به محدودیتی گفته میشود که فقط تابعی از موقعیت روبات باشد. ( فاقد عبارت مشتق باشد) برای روباتی با یک چرخ ثابت این محدودیت باید فقط شامل عبارات باشد. محدودیت سر خوردن یک محدودیت غیر هولونومیکی است زیرا تابعی از است.

50 مثال آیا دو چرخه ای که هر دو چرخ آن ثابت شده باشند هولونومیک است؟
اگر فضای کاری روبات را محدود به یک خط راست بکنیم که در امتداد محور x قرار داشته باشد در نتیجه محدودیت سینماتیکی سر خوردن روبات به تبدیل میشود و محدودیت غلتش را میتوان بصورت زیر نوشت: برای چنین روباتی محدودیت ها وجود دارند اما هولونومیک هستند!

51 روبات تمام جهت وقتی که باشد، روبات محدودیت سینماتیکی نداشته و در نتیجه برای تمامی روبات هائی که باشد میتوان روبات را روبات هولونومیک نامید.

52 دنبال کردن مسیر قاعدتا یک روبات متحرک باید بتواند هر مسیری در فضای کاری خودش را دنبال کند. یک روبات تمام جهت از عهده این کار بر می آید زیرا Holonomic است. دوچرخه ای را درنظر بگیرید که هر دو چرخ آن قابل هدایت باشد (two stear) چنین روباتی دارای قدرت مانور خواهد بود که با روبات هولونومیک برابر است. این روبات میتواند ICR را در هر نقطه ای قرار دهد و هر مسیری را دنبال کند. اما بین این دو روبات فرق است!

53 کنترل سرعت یا هدایت چرخ گرچه دوچرخه با دو چرخ هدایت پذیر و روبات تمام جهت هر دو قدرت مانور بالائی دارند و هر دو میتوانند هر مسیری را دنبال کنند، اما در دنبال کردن تراجکتوری با هم تفاوت خواهند داشت. برای مثال مسیری را در نظر بگیرید که روبات با سرعت 1m/s برای یک ثانیه در راستای x حرکت کرده، سپس در مدت 1 ثانیه باندازه 90 درجه تغییر جهت داده و در انتها به مدت یک ثانیه در راستای y حرکت میکند.

54 Path / Trajectory Considerations: Omnidirectional Drive
روبات تمام جهت براحتی میتواند حرکت دوم را فقط با تغییر سرعت چرخ هایش انجام دهد.

55 Path / Trajectory Considerations: Two-Steer
اما دوچرخه مذکور با شتاب و سرعت محدود نمیتواد چنین مسیری را دنبال کند. زیرا مجبور است تا رسیدن جهت چرخها به جهت مورد نظر صبر کند.

56 Motion Control کنترل حرکت روبات غیر هولونومیک کار ساده ای نیست.
معمولا به دو صورت حلقه بسته یا حلقه باز انجام میشود. هدف کنترلر دنبال کردن یک تراجکتوری است تا به موقعیت یا سرعت مشخص شده در زمان برسد. برای مثال: حرکت در مسیر دایره ای یا روی یک خط.

57 Motion Control: Open Loop Control
مسیر به بخشهائی متشکل از اجزائی نظیر خط یا دایره تبدیل میشود. یک مسیر هموار بر اساس اجزای فوق از قبل محاسبه شده و روبات وادار به حرکت در آن میشود. معایب: محاسبه یک مسیر از قبل تعیین شده کار ساده ای نیست. بخصوص اگر بخواهیم محدودیت های سینماتیک روبات را اعمال کنیم. قادر نیست تا تغییرات پویای محیط را در نظر بگیرد. مسیر های بدست آمده غالبا هموار نیستند.

58 Motion Control: Feedback Control, Problem Statement
یک روش عملی تر استفاده از فیدبک موقعیت و جهت روبات است. در این حالت کار کنترلر قرار دادن لحظه ای روبات بر روی یک مسیر معین است. اگر موقعیت مرجع مختصات روبات بصورت زیر مشخص شود: موقعیت نقطه هدف را میتوان بصورت یک مقدار خطا در نظر گرفت:

59 Motion Control: Feedback Control, Problem Statement
در اینصورت کار کنترلر عبارت است از:

60 مثال: کنترل روبات تفاضلی
مبدا مختصات کلی را طوری فرض میکنیم که نقطه هدف در نقطه (0,0) قرار گیرد. در اینصورت سینماتیک روبات تفاضلی را میتوان بصورت زیر نوشت: اگر مرکز روبات را با خطی به مقصد وصل کنیم زاویه حاصل بین این خط و محور X روبات را مینامیم

61 Kinematic Position Control: Coordinates Transformation
با انجام یک تبدیل مختصات به مختصات قطبی خواهیم داشت: در اینصورت مشخصات سیستم در مختصات جدید بصورت زیر خواهد بود:

62 Kinematic Position Control: Remarks

63 Kinematic Position Control: The Control Law

64 Kinematic Position Control: Resulting Path

65 بحث پایداری میتوان نشان داد که با در نظر گرفتن مقادیر زیر رابطه کنترلی بدست آمده همواره پایدار خواهد بود:


Download ppt "Mobile Robot Kinematics"

Similar presentations


Ads by Google