خط مهندسی
مجله ی آنلاین مهندسی

ربات مسیریاب یا ربات تعقیب کننده خط

0 111
با پیشرفت علم و تکنولوژی شاهد آن هستیم که روز به روز استفاده از ربات‌ها برای آسایش انسان‌ها در زندگی بیشتر از قبل می‌شود و همان طور که امروزه ربات‌ها در بسیاری از مسائل به کمک انسان‌ها آمده و بسیاری از مشکلات را حل کرده‌اند، تاثیر وسیعی در زندگی آینده انسان‌ها خواهند داشت. با خط مهندسی همراه باشید تا به بررسی گونه‌ای از ربات‌ها به نام ربات‌های مسیریاب بپردازیم.

ربات مسیریاب چیست؟

ربات مسیریاب، رباتی است که می‌تواند خطوط را تشخیص داده و آن‌ها را دنبال کند و هر زمان که خطوط تغییر مسیر دادند، ربات مسیریاب نیز مسیر خود را همراه با خطوط تغییر می‌دهد. معمولا این نوع ربات‌ها، ساده ترین نوع ربات‌های شناخته شده هستند و انتخاب بسیار مناسبی برای افراد تازه کار و علاقه مندان به یادگیری رباتیک (در خط مهندسی بخوانید : رباتیک چیست؟) است. ساخت این نوع ربات علاوه بر اینکه بسیار جالب و سرگرم کننده است، باعث می‌شود تا مهارت‌های برنامه نویسی و الکترونیک شما افزایش پیدا کند.

ربات مسیریاب-00

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

ربات مسیریاب ماموریت ساده ای دارد،  “دنبال کردن خطوط “. این ربات‌ها را می‌توان با کمترین منابع ساخت و نیازی به مهارت‌های الکترونیکی و برنامه نویسی بالا برای ساخت این نوع ربات وجود ندارد.

کاربرد ربات مسیریاب

یکی از کاربرد‌های عمده این ربات، حمل‌و‌نقل وسایل و کالاهای مختلف در کارخانجات، بیمارستان‌ها، فروشگاه‌ها، کتابخانه‌ها وغیره می‌باشد.

 

ربات مسیریاب-ربات کتابخانه

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

 


ربات مسیریاب-ربات آمازون

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

 


ربات مسیریاب-بیمارستان

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

 


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

( در خط مهندسی بخوانید: مکاترونیک و تفاوت‌های آن با رباتیک )

ساخت ربات مسیریاب

ساخت ربات مسیریاب کاری نسبتا ساده می‌باشد، برای ساخت ربات شما نیاز به دانش برنامه نویسی برای پردازنده و رباتیک برای ساخت قسمت متحرک دارید، شما همچنین باید طریقه کار با سنسور‌ها را بدانید، در ادامه شما را با کلیه مراحل ساخت ربات مسیر یاب آشنا می‌کنیم.
برای ساختن یک ربات باید آشنایی مقدماتی با ۳ رشته مکانیک (مهندسی مکانیک – هر آنچه باید بدانید)، برنامه نویسی و الکترونیک آشنایی داشته باشیم. البته نیازی نیست در تمامی این رشته‌ها خود تسلط داشته باشیم چنانچه شما عضو یک تیم هستید هریک از اعضای تیم باید در مهارت خود تسلط داشته باشند تا شما به نتیجه دلخواه و ایده آل خود برسید. “البته برای ربات‌های ساده احتیاج به یک تیم و مهارت بالا نیست”. 
همانطور که گفته شد ساخت یک ربات مسیریاب شامل سه بخش است:
  •  مکانیک
  •  الکترونیک
  • برنامه نویسی

 

مکانیک ربات مسیریاب

  • برای اتصال برد‌ها به بدنه اصلی حتما از پیچ و مهره و یا Spacer و مهره استفاده کنید.
  • برای محکم شدن اتصالات و جلوگیری از بازشدن آنها از واشر فنری استفاده کنید.
  • در جاهایی که ممکن است مهره یا Spacer باعث اتصالات در مدار شما شوند از واشر فیبری استفاده کنید.

 

مکانیک ربات مسیریاب جز ساده‌ترین مکانیک‌ها محسوب می‌شود.این مکانیک شامل بخش‌های زیر است.

  •  شاسی یا بدنه
  • موتورها
  • چرخ‌ها
  •  برد سنسور

 

  •  شاسی یا بدنه

این بخش در ساده‌ترین حالت می‌تواند یک طلق پلاستیکی یا چوب (تخته سه لا) باشد که نسبتا سبک بوده و استحکام خوبی دارد. برد الکترونیکی شما روی آن پیچ می‌شود و موتور‌ها و چرخ‌ها به آن وصل می‌شود و برد سنسور در جای خود قرار می گیرد.

ربات مسیریاب-بدنه-شاسی

  • موتور‌ها

موتورهای ربات یکی از مهمترین اجزا ربات محسوب می‌شوند. موتور‌هایی که باید در این ربات‌ها استفاده شوند از نوع DC Motor می‌باشند و مستقیماً نمی‌توان آن‌ها را به چرخ وصل کرد مگر اینکه توسط گیربکس از سرعت آن‌ها کم شود و به قدرت آن‌ها اضافه شود. از سه نوع موتور می‌توان برای ربات استفاده کرد.

ربات مسیریاب-موتور

 

 شما در یک ربات مسیریاب به دو موتور نیاز دارید یکی برای موتور سمت راست و دیگری برای موتور سمت چپ می‌باشد. بهتر است موتورها و چرخ‌ها در عقب ربات نصب شوند و چرخ هرزگرد و برد سنسور در جلوی ربات نصب شوند.

  •  موتور‌های اسباب بازی‌ها

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

  • گویی وپولی

روش دیگری که می توان استفاده کرد استفاده از گویی وپولی ها است که از تسمه برای وصل کردن وتبدیل دور استفاده می شود اما این روش توصیه نمی‌شود.

  •  موتور گیربکس دار

در این موتورها موتور و گیرباکس داخل یک مجموعه قراردارند و در دورهای مختلف با توان‌های مختلف عرضه شده‌اند. بهترین گزینه استفاده از این نوع موتورها می‌باشد.

 دقت کنید موتور‌های معمولی را مستقیماً به چرخ وصل نکنید زیرا آن‌ها دارای سرعت بالا ( ۲۰۰۰ تا ۳۰۰۰  دور در دقیقه) هستند ولی قدرت لازم برای حرکت را ندارند.

  • چرخ‌ها

برای یک ربات موفق مسیریاب چند نکته اهمیت دارد:
ربات مسیریاب-چرخ‌ها
  •  اندازه قطر چرخ‌ها

بهتر است اندازه چرخ‌ها طوری تعیین شود که با موتورها هماهنگی کاملی داشته باشند، چون هرچه قطر چرخ‌ها بیشتر باشند با یک دور چرخش موتور، ربات به مقدار بیشتری حرکت می‌کند و هرچه چرخ‌ها کوچکتر باشد حرکت ربات کمتر است.

  • اندازه عرض چرخ‌ها

عرض چرخ‌ها بهتر است بین ۱ تا ۲ سانتی‌متر باشد، چون هرچقدر عرض چرخ‌ها بیشتر باشد هم وزن چرخ بیشتر می‌شود و سطح اصطحکاک بیشتری با زمین پیدا می‌کند.

خواندنی ها
  • میزان اصطحکاک چرخ با زمین

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

  • چرخ هرزگرد

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


  •  برد سنسور

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

ربات مسیریاب-برد

الکترونیک ربات مسیریاب

  • چنانچه در طراحی و ساختار مدار و IC تجربه ندارید بهتر است از بردهای آماده یا بردهای آموزشی استفاده کنید.
  • به این نکته توجه داشته باشید مدار الکترونیکی شما حتما در مقابل نویز مقاوم باشد چون مدار درایور موتور و DC موتورها نویز شدیدی در مدار ایجاد می‌کنند.
  • سعی کنید از فیبر‌های سوراخ‌دار برای برد اصلی استفاده نکنید.

الکترونیک مدار ربات مسیریاب از بخش‌های زیر تشکیل شده است.

مدار تغذیه
مدار درایور موتور

بخش خروجی
میکروکنترلر
مقایسه‌گرهای آنالوگ
مدار برد سنسور

  • مدار تغذیه

این بخش از مدار وظیفه تبدیل ولتاژ ورودی مدار به برق ۵ ولت را برعهده دارد، به این دلیل که میکرو کنترلر شما و اکثر المان‌های برد با برق ۵ ولت کار می‌کنند. برای این تبدیل ولتاژ بهتر است از رگولاتور ۷۸۰۵ استفاده و برای گرفتن نویز مدار یک خازن با ظرفیت بالا (با این بخش موازی کنیم LED 2000 ) و یک خازن با ظرفیت بسیار پایین با مدار موازی کنیم. در این مدار فقط خازن با ظرفیت پایین با مدار موازی شده که بهتر است یک خازن با ظرفیت بالا بعد از رگولاتور با مدار موازی شود.


  •  مدار درایور موتور

وظیفه این بخش تامین ولتاژ و جریان مورد نیاز‌ موتور است و توسط میکروکنترلر کنترل می‌شود. میکروکنترلر مستقیما نمی‌تواند برق موتورها را تامین کند برای راه اندازی موتورها از دو روش استفاده می‌شود.

  •  رله

رله‌ها قطعات الکترو‌مکانیکی هستند که با وصل کردن برق رله، اتصال دو سیم رله متصل می‌شود و برق به موتور‌های ما وصل می‌گردد. استفاده از رله چند عیب دارد ، سرعت قطع و وصل شدن رله کم است و نمی‌توان از آن به صورت PWM استفاده کرد و موتورها را نمی‌توانیم به صورت دو جهته کنترل کنیم.

ربات مسیریاب-رله-5 ولت

 

  • ترانزیستورها یا IC های درایور موتور

با ترانزیستورها یا IC های درایور موتور می‌توان موتورها را کنترل کرد. بهترین گزینه برای کنترل این موتورها آی سی L293 و آی سی L298 می‌باشد که می‌توان موتورها را به صورت دو جهته کنترل کرد.

ربات مسیریاب-آی سی
چرا باید از موتور ها به صورت ۲ جهته استفاده کنیم؟
اگر بخواهیم ربات ما مستقیما به جلو حرکت کند کافی است ۲ موتور را روشن کنیم. چنانچه بخواهیم ربات به سمت راست بچرخد می‌توانیم موتور سمت راست را خاموش کنیم و موتور سمت چپ روشن باشد تا ربات به سمت راست گردش داشته باشد. چنانچه بخواهیم ربات به سمت چپ بچرخد می‌توانیم موتور چپ را خاموش کنیم و موتور سمت راست روشن باشد تا ربات به سمت چپ گردش داشته باشد. پس چرا موتورها باید به صورت ۲ جهته کنترل شود؟ دلیل آن کاملا واضح است چنانچه بخواهیم ربات را با سرعت بالایی کنترل کنیم باید در پیچ های ۹۰ درجه یا بیشتر از معکوس استفاده کنیم یعنی مثلا می‌خواهیم ربات به سمت راست بچرخد به جای خاموش کردن موتور سمت راست آن را به صورت معکوس روشن می‌کنیم یعنی موتور سمت راست به سمت عقب می‌چرخد و موتور سمت چپ به سمت جلو پس ما گردش با سرعت بالاتر و حول محور مرکز ربات را خواهیم داشت و همین مسئله در گردش به سمت چپ صدق می‌کند.

  •  بخش‌خروجی

این بخش‌ها می‌تواند شامل LED و LCD ها باشد که بتوانیم خروجی‌های یک ربات و وضعیت‌های آن را مشاهده کنیم تا بتوانیم راحت‌تر مشکلات ربات را بررسی و برطرف کنیم. “البته این بخش یک بخش اختیاری در ربات است”

ربات مسیریاب-ال سی دی

  • میکروکنترلر

میکرو کنترلر در حقیقت مغز ربات ما می‌باشد و طبق برنامه که ما به آن می‌دهیم ربات را کنترل می‌کند، که شامل فرآیند دریافت ورودی از سنسورها، پردازش توسط برنامه‌ای که ما برای آن مشخص کرده‌ایم و خروجی دادن به موتورها می‌شود.

ربات مسیریاب-میکروکنترلر-آردوینو

میکرو‌هایی که معمولا در ربات‌های مسیریاب استفاده می‌شود از دو خانواده هستند.

  •  میکروکنترلرهای ۸۰۵۱
  •  میکرو کنترلرهای خانواده AVR یا آردوینو (Arduino)
ما به چند دلیل میکرو کنترلر AVR را پیشنهاد می‌کنیم.
۱. مدار ساده تر نسبت به خانواده ۸۰۵۱
۲. داشتن مبدل آنالوگ به دیجیتال
۳. داشتن PWM سخت افزاری
۴. داشتن مدار پروگرامر ساده
۵. تکنولوژی بالاتر در طراحی میکرو و مقاوت بیشتر در مقابل Noise

  •  مقایسه‌گرهای آنالوگ (Opamp)

این مدار در صورتی مورد نیاز است که از میکرو های خانواده ۸۰۵۱ استفاده کنیم. در این مدار خروجی سنسورها با یک ولتاژ متغیر که توسط یک مقاومت متغیر ساخته شده مقایسه می‌شود و خروجی آنالوگ ولتاژ سنسورها به صفر یا یک تبدیل شده که برای میکرو قابل فهم است. از Opamp های رایج می توان به Lm324 اشاره کرد .

 در میکرو‌های ۸۰۵۱ به دلیل داشتن مبدل آنالوگ به دیجیتال ما ولتاژ را در میکرو به صورت یک عدد بین ۰ تا ۱۰۲۳ دریافت می کنیم که ۰ به عنوان ۰ ولت و ۱۰۲۳ به عنوان ولتاژ مرجع ( ۵ ولت ) است.

  • مدار سنسور

وظیفه این بخش مشخص کردن وضعیت حالت زیر سنسور است که آیا سفید است یا مشکی؟ برای مشخص کردن این وضعیت از دو نوع سنسور می‌توان استفاده کرد.

  • سنسورهای فتوسل(Photocell)

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

ربات مسیریاب-سنسور فوتوسل

 

  • سنسور های مادون قرمز

 

در اکثر موارد برای شناسایی خطوط از سنسورهای مادون قرمز استفاده می‌شود. این سنسورها انواع مختلفی دارند که CNY70 و LTH دو نوع پرکاربرد این نوع سنسور‌ها  که در مقابل رنگ سیاه ولتاژی حدود ۰.۲ ولت و در مقابل رنگ سفید ولتاژی حدود ۳.۵ ولت خروجی می‌دهند. بنابراین شناسایی خطوط سیاه از زمینه سفید توسط این سنسورها کار بسیار ساده ای است. البته این سنسورها باید در مدار مناسبی قرار بگیرند به همین منظور از آی سی‌ها  استفاده می‌شود تا ولتاژ خروجی سنسورها دقیق تر و حدود ۵ ولت بشود.

ربات مسیریاب-سنسور-مادون قرمز

 

طرز چیدن سنسور‌ها به الگوریتم برنامه مربوط می شود ولی سعی کنید حداقل از ۵ سنسور در مدار خود استفاده کنید.

الگوریتم مسیر‌یابی

الگوریتم مسیر‌یابی باید طوری نوشته شود تا ربات بتواند هرگونه مسیری را، با هر اندازه پیچ و خم دنبال کند، به‌طوری که خطای آن مینیمم باشد. تجربه نشان می‌دهد که بهترین روش برای یافتن و دنبال کردن مسیر، استفاده از ۵ سنسور است. البته با استفاده از حداقل ۲ سنسور نیز می‌توان ربات مسیریاب ساخت، ولی قضیه دو دوتا ۴ تاست! یعنی با کم کردن سنسور ضریب اطمینان ربات نیز کاهش می‌یابد. وظیفه سنسورهای ۱ و ۲ تشخیص پیچ‌های مسیر و سنسور ۳ مقدار چرخش ربات به جهات مختلف را تعیین می‌کند .


  • برنامه نویسی

برنامه یک ربات مسیریاب می‌تواند شامل چند بخش باشد.

  • خواندن وضعیت از سنسور‌ها
  • تصمیم گیری ( پردازش اطلاعات )
  • فرمان دادن به موتورها

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


جمع‌آوری و نگارش: خط مهندسی
منبع: خط مهندسی