تبلیغات

به نام خدا

با عرض سلام خدمت دوستان عزیزم

در این جلسه كمی از دنیای الكترونیك و كامپیوتر فاصله می‌گیریم و به بررسی یك سیستم مكانیكی خاص برای حركت ربات در زمین مسابقه می‌پردازیم.

ما تا كنون با 2 سیستم برای حركت ربات آشنا شده‌ایم: یكی سیستمی كه برای خودروهای شهری استفاده می‌‌شود و برای پیچیدن خودرو به هر سمت، چرخ‌های جلو به همان سمت متمایل می‌شوند. دوم سیستم حركت دیفرانسیلی كه برای حركت تانك یا و خودروهای سنگین راه‌سازی استفاده می‌شود كه توضیح كامل آن هم در جلسات گذشته داده شده است.

وجه اشتراك این دو سیستم این است كه در هر دو، وسیله‌ی مورد نظر (خودرو یا ربات)، فقط در یك راستا می‌تواند جلو عقب برود و اگر بخواهد به سمت دیگری به جز جلو یا عقب برود، باید به دور خود بچرخد. برای مثال در شكل زیر اگر بخواهد از نقطه‌ی A به نقطه‌ی B برود، ابتدا باید 90 درجه به راست بچرخد، سپس به سمت جلو حركت كند تا به نقطه‌ی B برسد.



این جلسه‌ با سیستم حركتی جدیدی آشنا می‌شویم كه به ربات ما این قابلیت را می‌دهد كه ربات بتواند در دو راستای عمود برهم بدون چرخش حركت كند. یعنی همان‌گونه كه به راحتی می‌تواند به جلو یا عقب حركت كند، بتواند هركجا كه لازم بود بدون این كه به سمتی بچرخد، مستقیماً به چپ یا راست حركت كند. یعنی در شكل بالا برای رسیدن به نقطه‌ی
B، دیگر نیازی نیست ربات به سمت راست بچرخد و بعد حركت كند، بلكه می‌تواند مستقیماً به سمت راست حركت كند و به B برسد.

اما چگونه ممكن است ربات بتواند در دو راستای عمود بر هم حركت كند بدون اینكه به دور خود 90 درجه بچرخد؟

ابتدا با نوعی چرخ خاص آشنا می‌شویم كه مهمترین عنصر برای طراحی این سیستم حركتی جدید است:



این چرخ‌ها اُمنی ویل (
Omni Wheel) نام دارند. شكل بالا یك اُمنی ویل است كه به یك موتور گیربكس-دار متصل شده است. همان‌طور كه می‌بینید تعداد زیادی چرخ كوچك بر روی یك چرخ بزرگ‌تر در راستای عمود بر هم تعبیه شده‌اند.

چند مدل دیگر از این چرخ‌ها در زیر نشان داده شده است:

اما چگونه از این چرخ عجیب برای طراحی خود استفاده می‌كنیم؟

رایج‌ترین نحوه‌ی چینش و استفاده از این نوع چرخ، برای طراحی یك سیستم حركتی چند جهته (منظور سیستم حركتی‌ است كه ربات به‌وسیله‌ی آن می‌تواند در 2 راستای عمود بر هم به‌راحتی بدون چرخش حركت كند)، در شكل زیر نشان داده شده است: (عكس از زیر ربات است)



همان‌طور كه می‌بینید چهار عدد اُمنی ویل دو به دو روبروی یك‌دیگر تعبیه شده‌اند.

به‌عنوان مثال اگر موتور‌های شماره‌ی 1 و 3 هم‌زمان در جهتی كه در شكل مشخص شده است بچرخند و موتور‌های 2 و 4 خاموش باشند، چرخ‌های كوچك روی اُمنی ویل‌های شماره‌ی 2 و 4 به روی زمین چرخانده می‌شوند و ربات به سمت راست به‌راحتی حركت می‌كند.

برعكس این نیز ممكن است. یعنی موتورهای 2 و 4 در یك جهت یك‌سان بچرخند و موتورهای 1 و 3 خاموش باشند. در این‌صورت چرخ‌های كوچك روی اُمنی ویل‌های 1 و 3 روی زمین چرخانده می‌شوند و ربات در راستایی عمود بر حالت بالا حركت می‌كند.

بیشترین كاربرد سیستم‌های حركتی چندجهته در رباتیك، در ساخت انواع ربات‌های فوتبالیست و مین‌یاب است. این سیستم را نمی‌توان در ساخت تمام ربات‌ها به‌كار برد، مثلاً در ساخت ربات مسیر‌یاب تقریباً به هیچ شكل نمی‌توان از این سیستم استفاده كرد.

اما راه‌اندازی و استفاده از این سیستم بر روی ربات، كمی پیچیده‌تر از سیستم‌های حركتی قبلی است. در ادامه  جلسه‌ چند نكته‌ی اساسی برای استفاده از این سیستم مطرح می‌شود كه اگر این به این نكات توجه نشود، درعمل ربات نمی‌تواند عمل‌كرد مطلوب و قابل قبولی را داشته باشد.

شكل زیر تصویر یك ربات فوتبالیست است كه در آن از سیستم حركتی 4-جهته استفاده شده و به دلایلی كه در ادامه مطرح خواهد شد، به جای 4 چرخ، از 3 چرخ استفاده شده است.



واین نیز تصویر یك نمونه‌ی دیگر از ربات‌های 3-چرخه با استفاده از اُمنی ویل است:



استفاده از سیستم 3-چرخه، 2 مزیت مهم نسبت به سیستم 4-چرخه دارد:

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

مزیت دوم: در سیستم 4-چرخه، یكی از مهم‌ترین مشكلاتی كه وجود دارد این است كه به‌سختی می‌توان ارتفاع 4 چرخ را با یكدیگر تراز كرد، یعنی در این سیستم ممكن است به‌دلیل نا‌همواری زمین مسابقه، یكی از چرخ‌های ربات با زمین اصطكاك نداشته باشد، مثلاً ممكن است یك سنگ‌ریزه زیر یكی از چرخ‌ها گیر كند و یكی از چرخ‌ها از روی زمین بلند شود. این مشكل اصولاً برای همه‌ی سیستم‌های چهار-چرخه وجود دارد، حتی برای خودرو‌های سواری! اما چاره چیست؟



برای حل این مشكل در خودرو ها از سیستم تعلیق استفاده می‌شود، یعنی به‌وسیله‌ی فنر و كمك فنر و ...، چرخ‌ها این قابلیت را پیدا می‌كنند كه كمی نسبت به شاسی ماشین بالا و پایین بروند و به این واسطه می‌توان اطمینان حاصل نمود كه هر چهار چرخ خودرو به‌طور كامل با زمین اصطكاك دارند.

هرچند طراحی یك سیستم تعلیق برای چرخ‌های ربات كمی دشوار است، ولی تنها راهی است كه استفاده از سیستم‌های 4-چرخه را برای ما ممكن می‌سازد.

اما استفاده از سیستم 3-چرخه كمی پیچیده‌تر از سیستم چهار-چرخه است، زیرا در سیستم 4-چرخه به-سادگی مشخص بود برای حركت به هر سمت باید كدام موتور‌ها حركت كنند، اما در سیستم 3-چرخه كار كمی پیچیده‌تر است، زیرا در همه‌ی حركت‌ها هر 3 موتور درگیر هستند، اما سرعت و جهت آن‌ها با یك‌دیگر متفاوت است.

تنظیم سرعت موتور‌ها را می‌توان با استفاده از PWMها انجام داد. یعنی برای هدایت هر موتور از یك PWM میكروكنترلر استفاده می‌كنیم. می‌دانیم كه برای حركت به جلو، عقب، چپ و ... باید سرعت و جهت هر 3 موتور را تنظیم نمود. برای پیدا كردن سرعت‌های مناسب برای حركت ربات در هر جهت را می‌توان از بحث‌هایی كه در مورد بردارها در دروس دبیرستانی خوانده‌اید استفاده كرد، اما روش بسیار ساده‌تر و بعضاً كارآمد‌تر، استفاده از روش سعی و خطا است. مثلاً اگر می‌خواهیم ربات به سمت چپ حركت كند، باید با كم و زیاد كردن عدد PWMها مشخص كنیم هر موتور با چه سرعتی و در چه جهتی حركت كند.

 در مورد ربات‌های مین‌یاب خودكار و الگوریتم‌‌های جستجوی زمین مسابقه توضیح داده شد. یك نكته‌ی بسیار مهم در ساخت ربات‌هایی كه از الگوریتم ‌جستجوی منظم استفاده می‌كنند وجود دارد كه باید حتماً به آن توجه كرد. همان‌طور كه گفته شد ربات در این الگوریتم می‌بایست به‌صورتی كه در شكل نشان داده شده است، كل زمین مسابقه را جستجو كند.


اما مشكل این است كه ربات در حالت عادی بدون سیستم‌های تصحیح حركت نمی‌تواند این مسیر را طی كند، زیرا طول زمین 5 متر است، و در این مسافت طولانی نمی‌توان مطمئن بود كه ربات مسیر مستقیم را طی كند. مثلاً طبق شكل بالا ربات حركت خود را در زمین مسابقه از خانه‌ی (1و1) شروع می‌كند و انتظار می‌رود در انتهای زمین به نقطه‌ی (10و1) برسد، اما به دلایل گوناگون (مثلاً ناهمواری‌های سطح زمین یا عدم هماهنگی موتور‌ها) به‌جای خانه‌ی (10و1) به خانه‌ی (10و2) می‌‌رسد و در نتیجه بخشی از زمین مسابقه را نمی‌تواند پوشش دهد.

برای حل این مشكل چند راه وجود دارد (كه البته هیچ كدام هم زیاد ساده نیستند)، متداول‌ترین راه برای حل این مشكل استفاده از قطب‌نمای الكتریكی است. به‌وسیله‌ی قطب‌نمای الكتریكی، ربات می‌تواند با دقت بسیار بالایی زاویه‌ی خود را نسبت به قطب شمال و جنوب به‌دست آورد، و به‌كمك آن می‌تواند هرگونه انحرافی را از مسیر خود تشخیص دهد. یعنی مثلاً اگر ربات 2 درجه به‌ سمت راست منحرف شده باشد (2 درجه به سمت راست چرخیده باشد)، با استفاده از قطب‌نمای الكتریكی می‌توان این انحراف را متوجه شد و سپس با فرمان مناسب به موتور‌ها، مسیر حركت ربات را اصلاح كرد. استفاده از قطب‌نمای الكتریكی نیازمند آموزش مبحث ارتباط سریال در میكروكنترلر است، در جلسه‌های آینده به این موضوع مفصلاً خواهیم پرداخت.

نكته‌ی بالا فقط مربوط ربات‌های مین‌یاب با سیستم حركتی 4-جهته نیست، بلكه در سیستم حركت دیفرانسیلی(سیستم حركت تانك) هم باید به این موضوع دقت كرد، مگر اینكه نخواهیم از الگوریتم جستجوی منظم استفاده كنیم و ربات الزامی به حركت دقیق نداشته باشد. علاوه بر آن در ربات‌های فوتبالیست دانش‌اموزی هم باید به موضوع انحراف ربات دقت كرد، در غیر این صورت ربات ممكن است به‌جای دروازه‌ی حریف، به دروازه‌ی خودش گل بزند.

جلسه‌ی آینده شما را با لیگ ربات‌های فوتبالیست دانش‌اموزی و ساختار كلی ربات‌های آن آشنا خواهیم كرد.

منتظر سوالات و نظرات دوستان عزیز هستم