ساير روبات ها
دسته اول روباتهاي ايستا ميباشند( شکل1-1). بيشتر روبات هاي صنعتي موجود در کارخانهها ازين دست مي باشند. بازوهاي روباتيک9 و همچنين روباتهاي پردازشگر و ابر محاسباتي10 از اين دست روبات مي باشند.

شکل 1-1: مثال هايي از روبات هاي غير متحرک
دسته بعدي روباتهاي متحرک مي باشند که بر روي زمين حرکت مي کنند. اين گروه شامل طيف گستردهاي از روباتها مي باشد :

روباتهاي چرخدار11
روباتهاي زنجيردار12
روباتهاي پا دار
روباتهاي دوپا13 (انسان نما)
روباتهاي سه پا
روباتهاي چهار پا
ديگر موارد
شکل 1-2 نشان دهنده نمونههاي مختلف از روباتهاي متحرک بر روي زمين است. دسته بعدي روباتهاي فضانورد هستند که مخصوص فعاليت در فضاهاي کم گرانش طراحي ميشوند و مخصوص انجام ماموريت در سطح کرات ديگر و يا ايستگاههاي فضايي ميباشند. روباتهاي کاوشگر فضايي از نمونههاي اين دسته هستند.

شکل 1-2 : نمونه هايي از روبات هاي متحرک بر روي زمين
روباتهاي پرنده دسته بعدي روباتها هستند که پهبادها، هواپيما و بالگردهاي بدون سرنشين از جمله اين روباتها هستند. و در نهايت دسته آخر همانگونه که از نام آن پيداست مخصوص حرکت در سطح يا زير آب طراحي ميشوند. روباتهاي دريانورد شامل انواع زيردرياييها، قايقها، و روباتهاي ماهي ميباشد. شکل هاي1-3، 1-4 و1-5 به ترتيب نشان دهنده نمونه هايي از روبات هاي فضانورد، پرنده و دريانورد ميباشند. همانطور گه از تصاوير و توضيحات مشخص است، حوزه عملکرد روباتها در طراحي سامانه حرکتي آن نقش مستقيم دارد.

شکل 1-3 : کاوشگر کنجکاوي، ماموريت اکتشاف در مريخ
شکل 1-4 : نمونه هايي از روبات هاي پرنده
شکل 1-5 : نمونه هايي از روبات هاي دريايي
روباتهاي انسان نما14

از ميان تقسيم بنديهاي گوناگون ارائه شده در حيطه روباتيک، يکي از پرکاربردترين و مهمترين روباتها، روبات انساننما ميباشد که از نظر تقسيمبندي در دسته روبات هاي پادار دوپا قرار ميگيرد. اين روباتها يکي از جذابترين و در عين حال پيچيدهترين حوزههاي تحقيق در علوم روباتيک هستند [1-3]. درجه آزادي15 بالا، ديناميک پيچيده و مسائل تعادلي اين روبات را به يکي از پيچيدهترين روباتها تبديل کرده است به طوري که تحليل و مدلسازي آن به آساني امکان پذير نميباشد.
روبات انساننما همانطور که از نام آن پيداست به روبات خودکاري گفته ميشود که شبيه انسان است. به اين معنا که از لحاظ ظاهري داراي دو دست، دو پا و سر باشد. البته اين شباهت به فراخور کاربرد ميتواند بيشتر وارد جزئيات شود به اين صورت که چشم، دهان، انگشتان و ساير اجزاي بدن نيز به آن افزوده شود (شکل1-6). همچنين اين روبات داراي حسگرهاي16 پيشرفتهاي جهت درک محيط اطرافش ميباشد و داراي پردازشگرهايي پيشرفته جهت پردازش دادههاي دريافتي از محيط است. با پيادهسازي الگوريتمهاي پيشرفته و استفاده از حسگرها، اين روبات قادر خواهد بود به تقليد رفتارهاي انساني ديدن، شنيدن، يادگيري از محيط و ديگر تواناييهاي ذهني انسان نيز بپردازد. به طور مثال با استفاده از حسگر بينايي17 و الگوريتمهاي مربوطه ميتواند افراد يا اشيا را در محيط تشخيص دهد، به سمت آنها حرکت کند، اشيا را جابهجا کند يا با استفاده از حسگر شنوايي و الگوريتمها و سيستمهاي پردازش گفتار، به گفت و گو با انسان بپردازد و تواناييهايي ديگر ازين دست. به همين دليل اين شاخه از روباتيک به يکي از جذابترين و به روزترين شاخههاي اين علم تبديل شده است که ذهن دانشمندان زيادي را به خود مشغول کرده است و همچنين کشورهاي پيشرفته سرمايه گذاري هاي فراواني در اين زمينه انجام دادهاند.

شکل 1-6 : نمونههايي از روباتهاي انساننما

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

شما می توانید تکه های دیگری از این مطلب را با جستجو در همین سایت بخوانید

ولی برای دانلود فایل اصلی با فرمت ورد حاوی تمامی قسمت ها با منابع کامل

اینجا کلیک کنید

اين روباتها براي آينده صنعت و تحقيق در زمينه روباتيک اهميت فراواني دارند. از جمله کاربردهاي پيش بيني شده براي اين روباتها در آينده کار در کارخانهها، منازل، شرکت در عمليات امداد و نجات، بازي فوتبال و در سطوح بالاتر استفاده از آنها در عمليات هاي نظامي و استراتژيک ميباشد. روشهاي هوش مصنوعي قابل پيادهسازي در اين روباتها علت اصلي علاقه محققين هوش مصنوعي به اين زمينه است به طوري که فوتبال روباتهاي انساننما مدتي است که در مجامع علمي به عنوان بستري مناسب جهت پياده سازي و آزمايش روشهاي هوش مصنوعي جايگاه مناسبي پيدا کرده است و گرايش به انجام تحقيق در اين زمينه با استقبال چشمگيري روبرو بوده است.

روبوکاپ18، انگيزه ها و اهداف
روبوکاپ عنوان مسابقاتي درزمينه دانش روباتيک وهوش مصنوعي است که بصورت ساليانه توسط فدراسيون بين‌المللي روبوکاپ19 برگزار مي شود. روبوکاپ بزرگترين اقدام بشر در جهت عملياتي شدن تحقيقات در حوزه هوش مصنوعي و روباتيک است. اين مسابقات با فراهم آوردن چارچوب هاي مشخص و استاندارد، زمينه مناسبي جهت طراحي، پياده سازي و ارتقاي الگوريتم هاي هوش مصنوعي فراهم آورده است. ايده برگزاري روبوکاپ براي اولين بار در سال ???? توسط پروفسور آلن مکورث20 از کانادا در مقالهاي تحت عنوان روباتهاي بينا مطرح گرديد. در 1993 گروهي از محققان کشور ژاپن به بررسي امکانپذيري برگزاري مسابقه فوتبال روباتها پرداختند که اين بررسي‌ها منجر به تأسيس رقابتهاي Robot J-League (که بعدها به روبوکاپ تغيير نام داد) شد. رقابت هاي روبوکاپ درسال 1996 بصورت رسمي آغازبکارکرد. هدف از برگزاري اين مسابقات غالبا به صورت زير مطرح شده مي شود :
” در سال 2050 ميلادي، يک تيم فوتبال از روباتهاي هوشمند، در يک مسابقه رسمي با رعايت کليه قوانين فيفا مقابل آخرين تيم قهرمان فوتبال انسانها به پيروزي خواهد رسيد. “[4]
اين مطلب شايد تا حدود زيادي خوشبينانه و غير ممکن باشد اما تاريخ علم در موارد گوناگون اثبات کرده است که هر آنچه قابل گنجايش در تخيل بشر باشد، در آينده قابل دسترسي است کما اينکه پيشرفتهاي قابل توجه در زمينه مسابقات روبوکاپ در همين مدت کوتاه نيز مؤيد اين امر ميباشد. البته روبوکاپ علاوه بر اين هدف بلند مدت، اهداف کوتاه مدتي را نيز دنبال ميکند که در واقع ايحاد بستري مناسب و رقابتي جذاب جهت ارتقاي روباتيک و هوش مصنوعي و همچنين افزايش گرايش عمومي به هوش مصنوعي و روباتيک با استفاده از جذابيت هاي مسابقات روبوکاپ ميباشد[5]. روبوکاپ دربر گيرنده طيف وسيعي از تحقيقات در زمينههاي هوش مصنوعي و روباتيک است که از جمله آنها مي توان به مفاهيمي چون يادگيري ماشين21، بينايي ماشين 22، پردازش تصوير23، عمل در محيطهاي چند عاملي24، هوش مصنوعي توزيع شده25، کنترل هوشمند روباتها و مفاهيم ديگر از اين دست اشاره کرد[6]. به همين منظور سازمان جهاني روبوکاپ شاخههاي مختلفي که هر يک در برگيرنده طيفي از مفاهيم بالا ميباشد را معرفي کرده است. ليگ روباتهاي انساننما، روباتهاي امدادگر26، روباتهاي مينياب، روباتهاي فوتباليست27 اندازه متوسط، روباتهاي فوتباليست اندازه کوچک، شبيهسازي فوتبال28 و شبيهسازي امداد29 و نجات تعدادي از مهمترين اين مسابقات ميباشد[7].
ليگ شبيهسازي فوتبال شامل دو بخش مهم شبيهسازي دو بعدي30 و شبيهسازي سهبعدي31 ميباشد. در محيط دوبعدي فضاي مسابقه شبيه به يک تصويربرداري هوايي از محيط مسابقه است، به اين ترتيب که عملکرد هر شي از محيط به فضايي دو بعدي نگاشته ميشود و روباتها به شکل دايره ديده ميشوند. در چنين فضايي اهميت ويژگيهاي محيطهاي سه بعدي مانند جاذبه، مسئله حفظ تعادل و… از بين ميرود. اما در محيط سهبعدي تمامي ويژگيهاي يک زمين بازي واقعي در نظر گرفته ميشود. در اين محيط روبات ها به شکل انسان هستند در نتيجه تمامي مسائل مطرح درباره انسان، در مورد اين روباتهاي انساننما نيز صدق ميکند و اين شاخه زمينه گسترش فعاليت در حيطه روباتهاي انساننما را فراهم آورده است. اين فعاليتها شامل کار بر روي تواناييهاي سطح بالا و سطح پايين روباتهاي انساننما ميباشد که زمينه ورود الگوريتمهاي هوش مصنوعي را فراهم ميکند. شکل 1-7 محيطهاي شبيهسازي فوتبال دوبعدي و سهبعدي را نشان ميدهد. اين دو بخش بر مبناي استفاده از يک سيستم شبيهساز بنا نهاده شدهاند که در ادامه به معرفي آن خواهيم پرداخت.
شکل1-7 : محيط هاي شبيه سازي فوتبال دوبعدي و سه بعدي
شکل1-8 : محيط هاي شبيه سازي فوتبال دوبعدي و سه بعدي
نرم افزار شبيهسازي و مدل روبات32
1-4-1- شبيهسازي
نرم افزار شبيهساز که اصطلاحا به آن سرور شبيهسازي ميگويند در حقيقت مسئول شبيهسازي تمامي عوامل دخيل در يک مسابقه فوتبال واقعي مانند وزن توپ، وزن بازيکنان، شرايط محيطي33 مانند وزش باد و… است. اين نرم افزار مسئول شبيهسازي يک محيط زمان حقيقي34 و خطادار است به نحوي که دو تيم از روباتهاي نرم افزاري را قادر به رقابت در برابر هم ميسازد. سيستم شبيهسازي دو بعدي يک سيستم چند عامله ارزشمند براي تحقيق در همکاري توزيع شده اعضاي تيمها، يادگيري ماشين و … است اما به علت دوبعدي بودن، نتايج حاصل قابل به آساني انتقال به جهان واقعي نميباشد به همين منظور در سال 2003 يک سيستم شبيهسازي سه بعدي و نزديک به جهان واقعي به نام سيمسپارک35 پيشنهاد شد و براي اولين بار در سال 2004 مورد استفاده قرار گرفت.
سرور شبيه ساز سه بعدي36 Rcssserver3D يک شبيهساز سه بعدي بر اساس اسپارک و موتور پوياي آزاد (ODE) 37است. اسپارک قادر به انجام محاسبات و پردازشهاي توزيع شده چند عاملي ميباشد[8]. اين سيستم يک شبيهساز بر مبناي اجزاي عمومي سيستم شبيهسازي چند عاملي فيزيکي است که در اين پاياننامه اساس کار قرار ميگيرد. براي روي آوردن به شبيهسازي و دست کشيدن از ساخت روبات دلايل بسياري ميتوان برشمرد، از جمله اينکه ساخت يک روبات از لحاظ زماني و تجهيزات هزينهبر است و احتياج به احاطه بر مسائل سخت افزاري دارد، روبات واقعي بر اثر استفاده مداوم دچار عيوب سخت افزاري ميشود که بر هزينه زماني و مالي ميافزايد و… که تمامي اين مسائل خصوصا ساخت روبات و درگيري با مسائل سخت افزاري فرصت را از محققين براي پرداختن به مسائل نرمافزاري و پياده سازي و ارتقاي الگوريتمها ميگيرد. شبيهسازي با فراهم آوردن بستري مهيا، اين فرصت را فراهم آورده است که بدون درگيري با مسائل جانبي، تمام توجه خود را بر روي ابداع، پيادهسازي و بهبود و ارتقاي الگوريتمهاي مورد نياز متمرکز کنيم. البته شبيهسازي با تمام مزايايي که دارد، مشکلاتي نيز دارد که از جمله ميتوان به خطاهاي رخ داده در مدلسازيها، مشکلاتي در پيادهسازي الگوريتمهاي شبيهسازي شده در محيط واقعي و… اشاره کرد. اما با وجود اين مشکلات، مزاياي شبيهسازي به حدي مهم و با ارزش هستند که کماکان شبيهسازي در بسياري از موارد گزينه نخست است. همين مسائل، مسابقات شبيه سازي خصوصا شبيهسازي فوتبال را در زمره جذابترين بخشهاي مسابقات روبوکاپ قرار داده است.
1-4-2- مدل روبات
روبات مورد استفاده در شبيهسازي فوتبال سهبعدي، در حال حاضر روبات انساننماي نائو ميباشد. اين روبات که هماکنون بازيگر اصلي صحنه مسابقات روباتيک خصوصا شبيهسازي فوتبال سه بعدي است، در سال 2008 به بازار معرفي شد دليل اصلي جذابيت اين روبات، نزديکي قابليتهاي حرکتي اين روبات به انسان است. اين روبات همانگونه که در جدول 1-1 مشخص شده است، يک روبات انسان نماي با 22 درجه آزادي38 است که براي هر پا 6 تا، هر دست 4 تا و سر 2 درجه آزادي وجود دارد. همچنين اين روبات داراي يک حسگر همه جهته39، موتورها و حسگرهاي زاويهسنج جداگانه براي هر مفصل، يک سنسو زيروسکوپ40، يک ابزار ارتباطي41 ويک حسگر نيرو42 در هر پا ميباشد. علاوه بر فوتبال، اين روبات با استفاده از چهار ميکروفن تعبيه شده در سر و سيستم پردازش صوتش قادر به برقراري ارتباط و صحبت کردن است. در نسخه شبيهسازي شده اين روبات، تمامي مفاصل و سيستم مکانيکي روبات، موتورها و محرکهاي روبات و حسگرهاي آن توسط سيستم شبيهساز پيادهسازي ميشود و تنها قسمت باقيمانده مغز روبات ميباشد که بايستي توسط برنامه نويس، برنامه ريزي شود و به طور قطع الگوريتمهاي پياده سازي شده بايستي با شبيهساز و معماري آن سازگاري داشته باشند.

جدول 1-1 : مشخصات روبات نائو
نام روباتارتفاعوزنتعداد درجات آزادينائو57سانتي متر5/4 کيلوگرم22-25 درجه آزادي
رقابتهاي شبيهسازي فوتبال سه بعدي در حال حاضر در زميني به ابعاد 21 در 14 متر بين دو تيم که هر يک داراي 9 بازيکن (عامل43) هستند انجام ميشود. هر تيم بر روي يک کامپيوتر جداگانه اجرا ميشود و مسابقه شامل دو نيمه 5 دقيقهاي ميباشد[7]. محيط شبيهساز فوتبال سه بعدي با تمامي ويژگيها و محدوديتها، زمينه مناسبي براي فعاليت در حيطه علوم روباتيک و هوش مصنوعي فراهم آورده است. در اين پاياننامه از روبات نائو به عنوان روبات مورد آزمايش و از محيط شبيهساز فوتبال سهبعدي به عنوان بستري براي ارزيابي روش ها استفاده ميکنيم.
1-4-3- کد پايه
کدهاي پايه44 در زمينه مسابقات روبوکاپ در واقع بستري هستند به منظور فراهم آوردن امکانات لازم جهت پياده سازي الگوريتمها و روشها. در زمينه فوتبال سه بعدي کد پايه ارتباط بين سرور شبيهسازي و عاملهاي بازي را فراهم مي آورد، و معمولا برخي از توانايي هاي پايهاي لازم براي روبات فوتباليست را در خود دارد به اين ترتيب کد پايه احتياج برنامه نويس براي درگير شدن با جزئيات را بر طرف ميکند و به او اين امکان را ميدهد که بدون توجه به جزئيات، به پياده سازي تواناييهاي متنوع بپردازد. در زمينه شبيهسازي فوتبال سهبعدي، اکثر تيمها کدهاي پايه مربوط به خود را منتشر کردهاند که براي تيمهاي ديگر قابل استفاده است. اين کار در اين مورد نيز مانند ساير پروژههاي متن باز45 باعث رفع خطاهاي منطقي موجود در کدها و بهينهتر شدن کدهاي منتشر شده، شده است. بسياري از اين کدها را ميتوان از پايگاه اينترنتي پروژههاي متن باز sourceforge.net دريافت کرد. يکي از معروفترين کدهاي پايه در شبيهسازي فوتبال سه بعدي، کد پايه تيم Nexusاز دانشگاه فردوسي مشهد است. بعد از دريافت کد و استخراج آن، مشاهده مي شود که کد پايه به دستههاي doc و lib، src تقسيم ميشود که به ترتيب حاوي کد منبع تيم، کتابخانه هاي مورد استفاده و مستندات توليد شده توسط Doxygenاست. به منظور کامپايل کردن کد، به نرم افزار CMake جهت ايجاد پيش نيازهاي کامپايل کد نياز داريم. کد تيم از نظر تئوري در تمامي پلتفرم هايي که از g++ و Cmake پشتيباني ميکنند قابل استفاده ميباشد.
براي کامپايل کردن کد کافيست شاخه اي به عنوان نمونه با نام build در ريشهي کد ايجاد کرده و با اجراي دستور cmake نسبت به ايجاد فايل هاي مورد نياز جهت کامپايل و اجراي کد اقدام نماييم. با اين کار فايل هايي از جمله start.sh(اسکريپت موجود براي اجرا کردن تيم) ايجاد ميشوند و با اجراي دستور make کد تيم کامپايل شده و فايل nexus3D به عنوان فايل اجرايي تيم توليد ميگردد. جدول 1-2 به طور خلاصه به محتويات شاخه هاي موجود در کد پايه ميپردازد.

جدول 1-2 : محتويات شاخه هاي موجود در کد پايه
کاربردنام شاخهمحل قرار گرفتن فايل اجرايي تيم به همراه اسکريپت ها و فايل هاي مورد نياز/binمحل قرار گرفتن فايل هاي مورد نياز جهت کامپايل کد پايه/buildمحل قرار گرفتن مستند سازيهاي موجود در کد پايه/docمحل نگهداري از کتابخانه هاي مورد استفاده/libمحل قرار گرفتن کدهاي تيم/src
کد پايه تيمNexus مانند ساير کدهاي پايه اي بر اساس معماري لايه اي از سه لايه ي اصلي ارتباطي، داده و تصميم گيري تشکيل شده. لايه ي ارتباطي وظيفه ي برقراري ارتباط با کارگزار شبيه سازي، لايه ي داده وظيفه ي پردازش داده هاي خام ورودي از لايه ي قبل و لايه ي تصميم گيري وظيفه ي تصميم گيري با استفاده از اطلاعات ورودي از لايه ي قبل را بر عهده دارد که شکل 1-9 ساختار لايه اي آن را نشان ميدهد.
شکل 1-9 : ساختار لايه اي کد پايه
راه رفتن روبات انساننما از بغل
به طور کلي تواناييهاي يک روبات انساننماي فوتباليست به دو دسته تقسيم ميشود:
تواناييهاي سطح پايين46
تواناييهاي سطح بالا47
تواناييهاي سطح پايين در حقيقت همان تواناييهاي اوليه و اساسي يک روبات هستند، از اين دسته ميتوان به حفظ تعادل، راه رفتن به جلو وعقب48، راه رفتن از بغل49 و… اشاره کرد. اين تواناييها سنگ بناي تواناييهاي سطح بالايي مانند تصميمگيري50، همکاري در تيم فوتبال و… هستند و همين امر موجب افزايش اهميت آنها شدهاست.
راه رفتن يکي از پايهايترين و اساسيترين تواناييهاي يک روبات دوپا است، اگر چه اين توانايي براي انسان بسار جزيي و ناچيز قلمداد ميشود اما در روبات دوپا دخيل شدن مساله حفظ تعادل51 در راه رفتن، دشواري راه رفتن را دوچندان ميکند. حفظ تعادل و راه رفتن در روباتهاي دو پا اهميت فراواني دارد به اين دليل که توانايي فعاليت در محيطهاي انساني را براي روبات فراهم ميآورد. اگرچه با استفاده از روباتهاي چرخدار ميتوان بر بسياري از دشواريهاي حفظ تعادل و راه رفتن غلبه کرد اما در عوض بسياري از مزايايي که انعطافپذيري راه رفتن دوپا به همراه دارد قرباني خواهند شد. راه رفتن از بغل به عنوان يک توانايي سطح پايين که به صورت طبيعي در انسانها وجود دارد داراي مشکلات و پيچيدگيهاي فراوان است. ابتدا روبات بايد بتواند بدون بر هم خوردن تعادل سر جاي خود بايستد، سپس با برداشتن گامها بايد تعادلش حفظ شود. اين مساله که در هنگام راه رفتن تقريبا تمامي مفاصل بدن درگير هستند، پيچيدگي کار را دوچندان ميکند. به اين ترتيب که بايد براي تمامي مفاصل سرعت زاويهاي و مکان آنها را در هر لحظه بدانيم، که تمامي اين موارد با تغيير خصوصيات زمين ازجمله شيب، جنس و اصطکاک آن تغيير ميکند.

اهداف
در اين پايان نامه، قصد داريم روشي براي راه رفتن روبات نائو ارائه کنيم که توانايي استفاده از حداکثر ممکن درجات آزادي اين روبات را داشته باشد. سرعت رسيدن به نقاط مختلف زمين مسابقه فوتبال امري مهم است و روبات نائو به عنوان يک روبات فوتباليست بايستي بتواند در رسيدن به نقاط مختلف زمين فوتبال عملکرد مناسبي داشته باشد. در اين بين ارائه متدي که علاوه بر افزايش سرعت، در حفظ تعادل روبات و کاهش تعداد دفعات زمين خوردن آن تاثير مثبت داشته باشد اهميت فراوان دارد. به اين ترتيب بهبود پايهايترين توانايي روبات، راه را براي ايجاد و ارتقا تواناييهاي سطح بالاتري همچون همکاري تيمي، تصميمگيري، دريبل زدن، شوت زدن و…. هموار ميسازد.
راه رفتن از بغل مانند راه رفتن مستقيم از تواناييهاي سطح پايين مهم ميباشد که تاثير بسزايي در کاهش زمان رسيدن به نقاط مختلف زمين دارد. به علاوه استفاده روبات ازين توانايي مزاياي بساير ديگري دارد که در ادامه مورد بحث قرار خواهد گرفت.
در اين پاياننامه الگوريتمي جديد براي راه رفتن مبتني بر اتوماتاي يادگير ارائه ميشود که به منظور راه رفتن مستقيم و راه رفتن از بغل مورد استفاده قرار ميگيرد. اين روش با استفاده از تعداد بيشتري از مفاصل روبات نائو به افزايش سرعت اين روبات در راه رفتن به جلو و راه رفتن از بغل، بهبود تعادل و ثبات روبات و کاهش تعداد دفعات زمين خوردن روبات کمک ميکند.
فصل دوم:
مروري بر تحقيقات پيشين و روشهاي به کار رفته در تحليل حرکت روبات
مقدمه
راه رفتن روبات انسان نما يکي از کليديترين توانايي هاي يک روبات است. با توجه به اهميت بالاي اين توانايي در محيطهاي واقعي و شبيهسازي، و همچنين به عنوان سنگ بنايي براي تواناييهاي سطح بالاي روبات انساننما، تحقيقات زيادي به خصوص در زمينه راه رفتن به جلو و عقب صورت گرفته است. به طور کلي و از ديد تحليلي روشهاي مطرح شده در حرکت روبات به دو دسته کلي تقسيم ميشود[9] :
روشهاي بر اساس مدل
روش هاي بدون در نظر گرفتن مدل
در روش اول لازم است که در ابتداي کار مدل روبات مشخص باشد و بر اساس اين مدل از پيش تعيين شده راه رفتن روبات تحليل شده و الگوريتمي براي آن ايجاد شود. روشهاي مبتني بر نقطه گشتاور صفر در اين مجموعه قرار ميگيرند.
در روش دوم که “پويا” نيز ناميده ميشود، راه رفتن روبات تنها با استفاده از اطلاعات حسگرها و بدون در نظر گرفتن مدل روبات حاصل ميشود.
به طور معمول تحليل حرکتي هر روبات مختص همان روبات است که اين امر به دليل تفاوت در درجات آزادي و تعداد مفاصل روباتها، تفاوت در ساختمان و همچنين تفاوت در توانايي و سامانههاي حرکتي هر روبات ميباشد. اما در عين حال روشهاي کلي براي اين کار نيز وجود دارد که در ادامه به بررسي نمونههايي از تحليل حرکتي روبات و الگوريتمهاي مطرح شده در راه رفتن روبات به جلو و عقب و همچنين راه رفتن از بغل خواهيم پرداخت.

تعادل روبات و نقطه گشتاور صفر
يکي از اساسي ترين مسائلي که يک روبات انساننما با آن سر و کار دارد، حفظ تعادل ميباشد. اهميت موضوع در برخورد روبات با محيط واقعي بيشتر نمايان ميشود،جاييکه نيروهاي خارجي هر يک به نوبه خود تعادل روبات را با مشکل مواجه ميسازند که اين خوذ نشان دهنده اهميت حفظ و بازيابي تعادل روبات در شرايط مختلف ميباشد. از جمله اين شرايط حفظ تعادل روبات در زمان راه رفتن است. در هنگام راه رفتن عوامل متعددي بر تعادل تاثير دارند، از جمله ميتوان به جاذبه، اصطکاک، ويژگيهاي محيطي مانند پستي و بلنديها و… اشاره کرد که نشان دهنده پيچيدگيهاي اين مساله هستند.
نقطه گشتاور صفر يکي از پايهاي ترين روشهاي حفظ تعادل ميباشد که توسط واکوبراتوويچ براي حفظ تعادل روبات انساننما به کار برده شد[10]. نقطه گشتاور صفر نقطهاي از محيط است که برآيند گشتاور حاصل از تمامي نيروهاي فعال در آنجا صفر ميباشد. اساس کار بر حفظ اين نقطه در ناحيهاي پايدار به منظور حفظ تعادل روبات است. در صورت خروج اين نقطه از ناحيه پايداري، تعادل روبات بر هم خورده و روبات زمين ميخورد پس براي پيشگيري از اين امر مفاصل روبات بايستي به نحوي تنظيم شوند که اين نقطه در ناحيه پايدار باقي بماند. در مبحث حفظ تعادل در هنگام راه رفتن به طور کلي دو نوع راه رفتن وجود دارد، اولين نوع راه رفتن که معمولترين روش نيز هست، راه رفتن ايستا ميباشد[11].
در اين نوع راه رفتن تصوير مرکز جرم روبات بر روي زمين، بايد همواره در ناحيه پايداري باشد که در حالتي که روبات روي دوپا باشد اين ناحيه يک چند ضلعي ايجاد شده بين دوپاست و در حالتي که روبات روي يک پا باشد اين ناحيه کف پاست (شکل2-1).

شکل 2-1 : راه رفتن ايستا
در نوع دوم راه رفتن که راه رفتن پويا ناميده ميشود، امکان خروج مرکز جرم از ناحيه پايداري وجود دارد و در بيشتر اوقات روبات از نقطه نظر ايستايي در حالت ناپايدار است. در اين روش نقطه گشتاور صفر که با استفاده از ديناميک کل سيستم بدست ميآيد در ناحيه پايدار قرار گيرد (شکل2-2) . همين امر باعث ميشود سرعت در راه رفتن پويا بيشتر و طول گامها بزرگتر از روش ايستا باشد اما در عوض پياده سازي آن دشوارتر است. در راه رفتن پويا محاسبه و برآورد نقطه گشتاور صفر اهميت پيدا ميکند که پيچيدگيهاي خاص خود را دارد اما در عوض مزاياي مهمي دارد که قبلا ذکر شد. راه رفتن پويا وابسته به محاسبه و بدست آوردن مکان نقطه گشتاور صفر است و همين موضوع باعث کشيده شدن محققان بسياري به سمت آن شده است و تحقيقات بسياري در اين زمينه صورت گرفته است که در ادامه به آنها اشاره خواهد شد.

شکل 2-2 : راه رفتن پويا
محاسبه نقطه گشتاور صفر به مدل روبات مورد استفاده وابسته است و تاکنون براي محاسبه آن روشهاي مختلفي معرفي شده است. در سال 1991 لي [12] و همکارانش با استفاده از حسگرهاي نيرو سنج در کف پا و بدست آوردن نيروهاي وارد بر آن روشي براي محاسبه نقطه گشتاور صفر ارائه کردند. در 2001 هيونگ [13] و همکارانش براي حفظ تعادل روبات در حين حرکت در محيطهاي ناهموار و شيبدار ارائه کردند. يانگ [14] وهمکارانش با بدست آوردن نقطه گشتاور صفر در حين راه رفتن، نشان دادند که با تغيير وضعيت مفاصل چنانچه اين نقطه را در ناحيه پايداري حفظ کنند، راه رفتن بدون بر هم خوردن تعادل امکانپذير خواهد بود. سعيد عبدالشاه [15] و همکارانش نيز روش مناسبي براي محاسبه نقطه گشتاور صفر ارائه کردند. آنها با فرض اينکه اين نقطه يک سه تايي مثل (X,Y,Z) روي زمين است، و با يک روبات داراي n لينک سروکار داريم، و مجموع گشتاورها حول اين نقطه برابر صفر است، معادله مجموع گشتاور را به صورت زير بدست آوردند:
T=?_(i=1)^n??(R_i+R_z )*F_i ?+?_(i=1)^n??T_i=0? 2-1

که F_i مجموع نيروهاي بر روي هر لينک و T_i مجموع گشتاور موتور حول هر لينک است. R_i و R_z به ترتيب بردار مکان محل اثر نيرو تا مرکز جرم لينک و بردار گشتاور صفر ميباشند. با حل اي معادله بر حسب x و y و با توجه به اينکه در صفحه مورد نظر Z=0 است، معادلات مربوط به نقطه گشتاور صفر را به صورت زير بدست آوردند:

X=(?_(i=1)^n?(z_i F_xi-x_i F_zi ) +?_(i=1)^n?T_yi )/(?_(i=1)^n?F_zi )2-2
Y=(?_(i=1)^n?(z_i F_yi-y_i F_zi ) +?_(i=1)^n?T_xi )/(?_(i=1)^n?F_zi ) 2-3

همچنين کمباياشي [16] از نقطه گشتاور صفر به عنوان معياري براي برازش در الگوريتم ژنتيک استفاده کردند به اين ترتيب که براي بدست آوردن اين نقطه يک مساله بهينه سازي طرح کردند که در آن هر کرومزوم تخميني از نقطه گشتاور صفر به ما ميدهد، سپس نشان دادند هر چه تفاوت بين نقطه تخميني ونقطه واقعي گشتاور صفر کمتر باشد کرومزوم مورد نظر برازندهتر و پايداري روبات بيشتر است.

حرکت شناسي
حرکت شناسي در پايه اي ترين حالت خود مربوط به روباتهاي صنعتي داراي چندين لينک متصل به هم ميباشد. روباتهاي صنعتي به طور کلي شامل چند بخش ميباشند، يک پايه که سيستم بر روي آن سوار است، تعدادي لينک که به وسيله مفاصل به هم متصل شده اند، و در نهايت يک نوک عملگر انتهايي که در انتهاي بازوي روباتيک نصب شده است و بسته به کاربرد، ميتواند متفاوت باشد[17] (شکل2-3) . حرکت شناسي روبات به مطالعه ارتباط بين ابعاد و اتصال زنجيرههاي حرکتي و موقعيت مکاني، سرعت و شتاب هر کدام از لينکها در يک سيستم روباتيک، به منظور برنامهريزي و کنترل حرکت روبات ميپردازد. سينماتيک روبات به طور کلي به دو گروه تقسيم ميشود [18] که در ادامه به معرفي آنها ميپردازيم.

شکل2-3 : بخشهاي مختلف روبات صنعتي

2-3-1- حرکت شناسي مستقيم
حرکت شناسي مستقيم در واقع يک نگاشت از فضاي مفاصل (Q) به فضاي مختصات دکارتي (W) است :


پاسخ دهید