ماتریس ژاکوبین
ماتریس ژاکوبین به طور موثر گرادیان یک تابع با مقدار برداری است که سرعت تغییر زوایای مفاصل را به نرخ تغییر مکان فیزیکی اندافکتور ترسیم می کند. اگر با حساب دیفرانسیل و انتگرال چند متغیره آشنایی ندارید، یا اگر آخرین کلاس حساب دیفرانسیل و انتگرال شما به خیلی قبل تر بر می گردد، بیایید به یک مثال ساده نگاه کنیم: یک خط دو بعدی.
شکل 1 ) مثالی از یک شکل در صفحه برای توصیف کاربرد ژاکوبین
معادله این خط y = mx است که در آن m شیب، یعنی نرخ تغییر خط است. فرض کنید در یک نقطه (xe,ye) بر روی خط هستیم و ما مقادیر هر دو نقطه xe و ye را می دانیم. همچنین مقدار شیب خط را نیز می دانیم، با در نظر
گیری این که میخواهیم به موقعیت عمودی دیگری برویم که آن را yt می نامیم با این حال، ما مختصات افقی xt موقعیت هدف را نمی دانیم یعنی نمی دانیم چقدر باید در جهت x حرکت کنیم تا به تغییر مورد نظر خود در جهت y برسیم. حال فرمول زیر را در نظر بگیرید که در این عبارت همه چیز را به غیر از DeltaX می دانیم. محاسبه DeltaX تنها با ضرب تغییرات در جهت عمودی در معکوس m محاسبه می شود.
روش معکوس ژاکوبین اساساً همین کار را انجام می دهد، به جز اینکه به جای نگاشت یک اسکالر Delta x به یک اسکالر Delta y از طریق شیب m ، یک تغییر با ارزش برداری در فضای مفصلی را به یک تغییر با ارزش برداری در فضای فیزیکی Delta r از طریق ماتریس ژاکوبین J تصویر می کند.
بنابراین، ماتریس ژاکوبین در واقعیت چگونه به نظر می رسد؟ برای حالت سه بعدی، ژاکوبین یک ماتریس3*n است که n تعداد مفاصل است:
ماتریس، مشتق جزئی هر جزء از بردار موقعیت موثر انتهایی را با توجه به هر مفصل می گیرد. به عبارت دیگر، هر عنصر از ماتریس در نظر میگیرد که اگر تنها یکی از زوایای اتصال تغییر کند، اند افکتور چگونه حرکت میکند. برای مثال، اولین عنصر (ردیف 1، ستون 1) ماتریس را در نظر بگیرید که عبارت است از تغییرات جزئی x نسبت به مفصل 1. این عنصر به ما می گوید: «اگر زاویه اولین مفصل را تغییر دهیم، در حالی که زوایای سایر مفاصل ثابت نگه داشته شده اند، مختصات x اندافکتور چگونه تغییر می کند؟ به عنوان مثال، سرعت تغییر مختصات مؤثر x با توجه به چقدر است ؟ ما این کار را برای هر مختصات اندافکتور با توجه به هر مفصل انجام می دهیم. ضرب زوایای اتصال در این ماتریس، تأثیر هر مفصل بر روی هر مختصات مؤثر انتهایی را جمع می کند. معادله بالا این است، . نوشتن عبارت ها به طور کامل و همچنین حاصل ضرب نتیجه زیر را می دهد :
نتیجه می گوید که تغییر کلی در مختصات x موقعیت اندافکتور ، مجموع نرخ تغییر مختصات x با توجه به است. به علاوه نرخ تغییر مختصات x با توجه به و به همین ترتیب برای هر مفصل ادامه می دهد. همین امر برای مختصات y و z به ترتیب در ردیف های دوم و سوم انجام می شود.
روش دیگر برای قرار دادن این است که ما بردار مماس بر مسیر اندافکتور را برای هر مفصل بدست می آوریم، سپس آنها را با هم جمع می کنیم:
شکل 2) تعریفی از محاسبه مماس بر اندافکتور برای حل مسئله سینماتیک معکوس
در شکل بالا، سمت چپ، خط چین نشان دهنده مسیر واقعی اندافکتور در هنگام چرخش اولین مفصل است، در صورتی که سایر زوایای مفاصل تغییر نکنند. مماس خط جامد بر آن قوس، مشتق جزئی عامل انتهایی را با توجه به اولین اتصال در جهت جریان (در مجموعه فعلی زوایای اتصال) نشان میدهد، یعنی نرخ تغییر آنی در جهت جریان. این مربوط به ستون اول ماتریس ژاکوبین است. به همین ترتیب، تصویر بعدی در شکل مسیر و سرعت تغییر اندافکتور را نسبت به مفصل دوم نشان می دهد که مربوط به ستون دوم ماتریس ژاکوبین است. و به همین ترتیب برای هر مفصل که در مثال ما سه مفصل است. در هر مورد، من یک بردار از مفصل مورد نظر تا اندافکتور رسم کردهام. این بردار نشاندهنده شعاع کمان است که نشاندهنده مسیر اندافکتور (یعنی خط چین) است.
توجه داشته باشید که با گرفتن مشتق از اندافکتور با توجه به هر مفصل، مسئله را خطی می کنیم. برای مجموعه معینی از زوایای مشترک، ژاکوبین نرخ تغییر لحظه ای را به ما می دهد. یعنی خطوط مماس در شکل بالا. این بدان معناست که وقتی از ژاکوبین استفاده می کنیم، خطوط مماس را دنبال می کنیم – نه خطوط چین. برای جابجاییهای زاویهای کوچک، خطوط مماس تقریبی دقیق با خطوط نقطه چین هستند، اما برای جابجاییهای زاویهای بزرگ (تغییرات بزرگ در زوایای مفصل) دقیق نیستند.
چگونه عناصر ماتریس ژاکوبین را تعیین کنیم؟ یک راه این است که مختصات اندافکتور را به عنوان تابعی از زوایای مفصل بدست آوریم. با ضرب ماتریسهای تبدیل و مختصات عامل پایانی در سیستم مختصات نهایی که قبلاً به دست آوردهایم، مشتق جزئی این تابع را نسبت به هر زاویه اتصال گرفته و زوایای اتصال را برای موقعیت فعلی وصل کنید.
یک روش دیگر این است که از حاصل ضرب متقاطع استفاده کنید، که اگر ژاکوبین را به صورت عددی بسازیم ممکن است ارجح باشد. به نظر می رسد که حاصلضرب متقاطع به عنوان یک مولد چرخش بی نهایت کوچک عمل می کند، که اساساً به این معنی است که اگر موقعیت ها را بدانیم، می توانیم نرخ بردار تغییر یک نقطه را، مانند یک عامل پایانی، نسبت به نقطه دیگر، مانند یک مفصل، به دست آوریم. از آن نقاط و اگر محور چرخش را بدانیم. این با معادله زیر به دست می آید:
که در آن بیانگر زاویه مفصل j اُم ، rj بیانگر موقعیت مفصل و aj بردار یکه است که بیانگر محور چرخش برای آن مفصل است. دوباره به شکل قبل مراجعه کنید. برای هر مفصل، بردار از مفصل تا عامل انتهایی کمیت است. بنابراین، با استفاده از حاصل ضرب، تعریف ما از ماتریس ژاکوبین را می توان به صورت زیر نوشت:
علاوه بر این، از آنجا که بازوی ربات در مثال ما کاملاً در صفحه XY قرار دارد، همه مفاصل ما حول محور Z می چرخند. بنابراین، محور چرخش در مثال ما همیشه با بردار واحد k نشان داده میشود که در امتداد محور Z قرار دارد.
پس از ساخت ماتریس ژاکوبین، مرحله نهایی روش معکوس ژاکوبین همانطور که از نامش پیداست، معکوس کردن ماتریس ژاکوبین است. در بیشتر مواقع، ماتریس ژاکوبین غیرمربع خواهد بود و آن را غیرقابل معکوس می کند. بسته به جهت اتصالات، ماتریس ممکن است سینگولار نیز باشد، اگر یک یا چند زاویه مشترک برابر با صفر باشد، که آن را نیز غیرقابل معکوس (معکوس ناپذیر) می کند. بنابراین معمولاً از شبه معکوس ماتریس استفاده می شود. بدون پرداختن به جزئیات، شبه وارونه از این مشکلات جلوگیری می کند و همیشه امکان محاسبه یک معکوس را فراهم می کند.
در نهایت، پس از محاسبه معکوس، میتوانیم با ضرب معکوس ژاکوبین و تغییر موقعیت، زوایای اتصال لازم برای دستیابی به تغییر مطلوب در موقعیت افکتور انتهایی را بدست آوریم:
و در اینجا شما آن را دارید – روش معکوس ژاکوبین برای حل مسئله سینماتیک معکوس. همانطور که در بالا ذکر شد، ژاکوبین یک تقریب خطی برای مشتق موقعیت عامل پایانی ارائه می دهد. ژاکوبین با تغییر زوایای مفصل تغییر می کند. برای تغییرات کوچک در زوایای اتصال، ژاکوبین تقریب خطی دقیقی را برای حرکت اندافکتور ارائه می دهد، اما با ادامه تغییر زوایای اتصال، این تقریب دقت کمتری می کند. بنابراین، معکوس ژاکوبین یک روش تکراری است. ما یک تغییر کوچک در زوایای مفصل ایجاد می کنیم، سپس ژاکوبین را دوباره محاسبه می کنیم، و این کار را تا زمانی که اندافکتور در موقعیت هدف قرار بگیرد (یا به اندازه کافی نزدیک) باشد، تکرار می کنیم.
نتیجه گیری
ما در اینجا ژاکوبین را کمی با استفاده از یک ماتریس ژاکوبین 3*n ساده کردهایم که فقط مختصات x، y و z اندافکتور را در نظر میگیرد (به همین دلیل سه ردیف دارد). با این حال، اگر به جهتگیری زاویهای اندافکتور اهمیت میدادیم، میتوانیم یک ماتریس ژاکوبین 6*n را بسازیم، که در آن ردیفهای 4، 5 و 6 چرخش زاویهای اندافکتور را در مورد X، Y و Z نشان میدهند. به همین ترتیب، اگر نه تنها به محل قرارگیری اندافکتور در فضا، بلکه به جهت آن نیز اهمیت میدهیم، از فرمول 6*n ژاکوبین استفاده میکنیم. به عنوان مثال، در کارخانههایی که خودروها مونتاژ میشوند، ممکن است بازوهای روباتی ( ربات صنعتی ) وجود داشته باشد که قطعات رنگ مانند درهای خودرو را اسپری میکند. در چنین مواردی، اندافکتور بازوی ربات ممکن است یک نازل رنگ باشد که درب خودرو را با رنگ مناسب اسپری می کند. برای اطمینان از اینکه نازل اسپری به سمت قطعه هدف قرار می گیرد، فقط دانستن اینکه نازل در کجای فضای فیزیکی قرار دارد کافی نیست. ما همچنین باید بدانیم که نازل به کدام جهت اشاره میکند. در نهایت، اگر نازل در فاصله مناسبی از قطعه باشد اما به سمت سقف باشد، کار چندان خوبی نخواهد داشت. برای دستیابی به این، ممکن است از یک ژاکوبین 6*n استفاده کنیم که محور چرخش افکتور انتهایی را در نظر می گیرد. توجه داشته باشید که اگر میخواهیم این کار را انجام دهیم، باید اندازه بردارهای موقعیت خود را نیز افزایش دهیم تا اطلاعاتی در مورد جهت زاویهای هر مفصل و اندافکتور را در بر بگیرد.
کار ما در اینجا نیز ساده شده است زیرا ما فقط یک اثر پایانی و یک هدف ثابت را در نظر گرفته ایم. ممکن است چند اندافکتور و چندین هدف داشته باشیم و اهداف می توانند متحرک باشند.
علاوه بر این، توجه به این نکته مهم است که ما فقط مفاصل چرخشی را در نظر گرفتهایم که میچرخند، اما ممکن است مفاصل منشوری نیز وجود داشته باشند که ترجمه میشوند. عناصر ماتریس ژاکوبین برای اتصالات منشوری کمی متفاوت است. اینها همه مفاهیمی هستند که ممکن است در پست های بعدی بررسی شوند. در پست بعدی، برخی از محدودیتهای معکوس ژاکوبین را نیز مورد بحث قرار میدهیم.
منبع : برق تِک