بخشی از مقاله
چکیده
در این مقاله رباتی جهت یادگیری حرکات انجام شده توسط کاربر طراحی و پیاده سازی شده است. در زندگی روزمره ارتباط بین انسان و ربات در زمینه های مختلف افزایش یافته است. برای کار با ربات ها در خطوط صنعتی و یا کاربردهای دیگر نیاز به برنامه نویسی و تغییر برنامه ربات است. برای تغییر این برنامه باید ربات صنعتی که شامل بازوهای رباتیکی هستند، باید این بازوها از خط خارج شوند که باعث تعطیل شدن خط تولید تا زمان حضور شخص متخصص برنامه نویس خواهد شد.
بوسیله ربات طراحی شده دیگر نیازی به حضور شخص متخصص و تعطیلی طولانی خط نیست و کاربران عادی نیز می توانند با انجام حرکات مورد نظر بوسیله جوی استیک3، حرکت مورد نظر را به ربات یاد دهند و ربات آن حرکت را انجام دهد. برنامه یادگیری این ربات در نرم افزار متلب نوشته شده و بورد میکروکنترلی آردوینو، به عنوان واسط وظیفه انتقال اطلاعات مابین نرم افزار متلب و سروموتورهای استفاده شده در بازوی ربات را بر عهده دارد.
مقدمه
ربات یک ماشین هوشمند است که قادر است در شرایط خاصی که در آن قرار می گیرد، کار تعریف شده ای را انجام دهد و همچنین قابلیت تصمیم گیری در شرایط مختلف را نیز ممکن است داشته باشد. با این تعریف می توان گفت ربات ها برای کارهای مختلفی می توانند تعریف و ساخته شوند، مانند کارهایی که انجام آن برای انسان غیرممکن یا دشوار باشد. بازوی رباتیک دستگاه یا وسیلهای است که از تعدادی محور و مفصل تشکیل شده و عملکردی شبیه بازوی انسان دارد.
همان طور که نیروی انسانی میتواند در اماکن صنعتی از نیروی بازو برای انجام کارهای مختلف استفاده کند، این بازوی رباتیک هم میتواند در کارخانجات به عنوان جایگزین نیروی انسانی عمل کند. با توجه به گسترش علوم کامپیوتر و الکترونیک از یک سو و هزینه بالای سیستم های رباتیکی از سوی دیگر، دستیابی به صنعت رباتیک محدود به متخصصان در این زمینه شده است.
از این رو دانشمندان و محققان رباتیک در تلاش برای ایجاد سیستم هایی با هزینه پایین و سطح پیچیدگی مناسب برای درک افراد غیر متخصص هستند و در اکثر این آزمایش ها و طراحی ها برای سیستم های رباتیک، جنبه آموزشی آنها را نیز در نظر دارند تا این سیستم ها را با طراحی های منحصر به فرد در اختیار کودکان و مدارس قرار دهند تا دانش آموزان در سنین پایین با این صنعت به روز دنیا که با سرعت زیادی در حال پیشرفت است آشنا شوند. ایده طراحی و ساخت ربات TRA در مواجهه با این کمبود ها بوجود آمد. TRA یک ربات برنامه پذیر براساس نرم افزار متلب است که برای کنترل و برنامه ریزی توسط کاربر از یک محیط گرافیکی قدرتمند سود می برد.
این محیط گرافیکی که در نرم افزار متلب طراحی و پیاده سازی شده است، علاوه بر اینکه امکان کنترل ربات بصورت گرافیکی را به کاربر می دهد، بلکه نمایشگرهایی نیز در خود دارد تا پارامترهای ورودی مانند مقادیر سنسورها در هنگام جابجایی بازوها و پارامترهای خروجی مانند زاویه موتورها را در هر لحظه بصورت آنلاین نمایش داده و ذخیره کند. علاوه بر این امکانات، بزرگترین و نوآورانه ترین خصوصیت این ربات قابلیت یادگیری حرکات انجام شده است بطوریکه کافیست کاربر فقط یکبار حرکت را بصورت دستی با کنترل های موجود در محیط گرافیکی انجام دهد و بعد از آن ربات کلیه این حرکات را به خاطر سپرده و در زمان معین بنابه درخواست کاربر همان حرکات را تکرار خواهد کرد.
روش های مختلفی برای کنترل بازوهای رباتیک وجود دارد. از روش های متداول در این زمینه میتوان به کنترل آنها با جوی استیک و ترمینال های کامپیوتر اشاره کرد - . - Kamaril et al, 2012 در این روش ، کنترلر ربات بوسیله یک کنترلر که در بازی های کامپیوتری مورد استفاده قرار میگیرد پیادهسازی شده است. این نوع کنترلرها علاوه بر اینکه محدودیت طراحی دارند یعنی کاربر تعداد محدود و از قبل تعیین شدهای جوی استیک یا شستی در اختیار دارد و در صورت گسترده بودن سیستم تحت کنترل، کاربر با مشکل مواجه خواهد شد.
همچنین بازوی ربات ساخته شده دو لینکی می باشد که محدودیت زیادی در دستیابی به تمامی نقاط صفحه کار خواهد داشت. برخلاف بازوی ربات طراحی و ساخته شده - Kamaril et al, 2012 - ، کنترلر طراحی شده برای ربات TRA بصورت نرم افزاری است و هیچ محدودیتی در نوع و تعداد عناصر صادر کننده فرمان ندارد. همچنین بازو بصورت سه لینکی میباشد که محدودیت بازوی دولینکی را برطرف کرده است. روش دیگری که برای کنترل ربات ها استفاده می شود، استفاده از اینترنت برای ارسال و دریافت اطلاعات است.
در این روش - Sentil et al, 2015 - ، از اینترنت برای کنترل بازو و فرمان دادن به آن و انتقال تصاویر فضای کاری ربات به کاربر استفاده شده است. با توجه به در دسترس نبودن اینترنت بطور یکنواخت در مکان های مختلف و با در نظر گرفتن کم و زیاد بودن سرعت آن و قطعی های احتمالی، استفاده از این روش برای کارهای حساس قابل اطمینان نمیباشد. علاوه بر مشکل ارتباطی در روش - Sentil et al, 2015 - که قابلیت اطمینان پایینی دارد، در ساخت مکانیکی بازو از موتورهای دی سی5 با یک آیسی6 راه انداز معمولی استفاده شده است که آن هم برای کنترل قسمت های مختلف بازو در زوایای خاص تحت بار مناسب نمی باشد و دچار لرزش خواهد بود.
در مقایسه با ربات ذکر شده، ربات TRA هم از نظر ارتباطی امنیت بیشتری دارد زیرا سیستم بطور مستقیم با ربات در ارتباط است و هیچ گونه واسط در میان نیست و در ساختار مکانیکی نیز از سرو موتور استفااده شده است که با گرفتن فیدبک مکانیکی از شفت موتور آنرا تحت بار و در زاویه دلخواه ما پایدار نگه خواهد داشت.
در مرجع - Mustafa et al, 2014 - نیز ربات بصورت دو لینکی طراحی شده است که محدودیت های ذکر شده از نظر مکانیکی و دسترسی به تمام نقاط فضای کاری ربات را دارد. در بعضی ربات ها مانند مرجع - - Tanneeru et al, 2015 از کنترلرهای دست ساز برای کنترل ربات استفاده می شود که این نوع کنترلرها و به خصوص کنترلر استفاده شده در این مرجع، توانایی مانیتورکردن مقادیر سنسورها و نمایش گرافیکی و نموداری آنها را ندارند. البته چنین سیستمی با استفاده از نمایشگرهای موجود در بازار می تواند پیاده سازی شود اما توانایی و قدرت مانیتورینگ توسط نرم افزار متلب را ندارند که در ربات TRA این قابلیت پیاده سازی شده است.
در ربات هایی مانند ربات های طراحی شده در مراجع - Farhan et al, 2015 - و - Olaya et al, 2016 - ، جنبه آموزشی نیز در نظر گرفته شده است. بدین معنی که ربات ها قابلیت استفاده در محیط هایی آموزشی برای انتقال مفاهیم علم رباتیک به دانش آموزان و دانشجویان را داشته باشند اما در این دو مرجع، جنبه آموزشی فقط توانایی کنترل ربات بوسیله یک کنترلر خارجی و کاربر در نظر گرفته شده است در حالیکه در ربات طراحی شده در این پایان نامه کاربر با اعمال اندازه بازو ها و تعداد مفاصل می تواند معادلات سینماتیکی ربات مورد نظر خود را نیز مشاهده نماید و آنها را مورد تجزیه تحلیل و بررسی قرار دهد .
در کنترل ربات ها بصورت دستی در برخی موارد مانند مرجع - Lengare et al, 2016 - ، از پردازش تصویر استفاده می شود. با وجود اینکه پردازش تصویر از الگوریتم های پیشرفته و پیچیده برای تجزیه و تحلیل تصاویر استفاده میکند، اما به نوبه خود محدودیت هایی نیز دارد. الگوریتم این سیستم به گونه ای است که کاربر به مفاصل بازوی خود برچسب های رنگی میچسباند و در محیطی در مقابل دوربین قرار می گیرد که پس زمینه سفید داشته باشد. سپس برنامه نوشته شده با پردازش حرکت بازوی کاربر و تغییر موقعیت برچسب های رنگی، موتور مربوط به هر برچسب را به زاویه متناسب هرایت می کند.
در این روش، کاربر حتما باید به بازوی خود برچسب بزند و حتما در محیطی با پس زمینه سفید و نور کافی قرار داشته باشد که تقریبا محیطی شبیه به محیط ازمایشگاه خواهد بود و در محیط های صنعتی و یا محیط های کم نور بازده مناسب را نخواهد داشت که مشکلات ذکر شده در کنترلر دستی ربات طراحی شده در این پایان نامه وجود ندارد.
در مرجع - Barakatel et al, 2016 - ، معادلات سینماتیکی ربات مورد بررسی قرار گرفته است که در مقایسه با ربات این پایان نامه، طریقه بدست آوردن معادلات به یک صورت است زیرا معادلات از یک روش بدست می آیند ولی ربات بررسی شده در این مرجع دو لینکی است که بالطبع ساده تر از بررسی و بدست آوردن معادلات سینماتیکی برای ربات سه لینکی است.
محیط گرافیکی طراحی شده در نرم افزار متلب همانند مرجع - Mineo et al, 2016 - قابلیت کنترل ربات بصورت دستی و دادن سناریوهای مختلف را دارد و علاوه بر آن قابلیت ثبت اطلاعات ورودی و خروجی و نیز مانیتورینگ انواع سنسورهای محیط به غیر از سنسورهای مقاومتی استفاده شده بر روی خود ربات را دارد. پس از بررسی جنبه های مکانیکی و الکتریکی بازوهای رباتیک مشابه با بازوی ربات طراحی شده در این پایان نامه و برتری آن در بسیاری از جهات نسبت به موارد مشابه، حال به بررسی قابلیت یادگیری بازوهای رباتیک می پردازیم.
در مرجع - - Yilmaz et al, 2015 بحث از طراحی رباتی با قابلیت یادگیری توسط شبکه های عصبی به میان آمده است. در این مرجع، ربات بصورت چهار لینکی در نظر گرفته شده است که در موارد مسیریابی کار برای تصمیم گیری را سخت می کند و تعداد مسیرهای دستیابی به هدف بیشتر از دو مسیر می شود. اما در ربات سه لینکی با توجه به ساختار ربات، فقط دو مسیر برای رسیدن به هدف وجود دارد که باعث کم شدن پردازش و کم بودن زمان پاسخ گویی می شود . همچینین در این مرجع ورودی ها برای یادگیری که باید حرکات مفاصل و بازوها باشند، بوسیله دیتاست7 به سیستم اعمال می شوند و ورودی واقعی نیستند و ربات نیز ساخته نشده است و همه نتایج مربوط به محیط ایده آل شبیه سازی است ولی در ربات طراحی شده در این تحقیق همه چیز بصورت عملی طراحی و پیده سازی خواهند شد