۱) جستوجو
ربات در میدان میگردد و گنجها (مصدومها) را پیدا میکند — یا با دانستن موقعیتشان، یا با چرخش و جستوجوی تصادفی به کمک سنسورها.
این صفحه ساده و کامل توضیح میدهد ربات امدادگرِ شبیهسازِ ما چیست، چه مأموریتی دارد، چرا آن را ساختیم، چه سنسورهایی دارد، قوانین بازی چیست و چطور میتوان آن را با پایتون برنامهریزی کرد.
ربات امدادگرِ ما یک ربات مجازی در محیط شبیهسازِ CoSpace Rescue است (همان مسابقهٔ شبیهسازی RoboCupJunior). یک ربات چرخدار که در یک میدان دوبعدی حرکت میکند، با سنسورهایش محیط را «میبیند» و خودش تصمیم میگیرد کجا برود. در نسخهٔ ما دو ربات داریم: یکی برای تیم قرمز و یکی برای تیم آبی که با هم رقابت میکنند.
ربات در میدان میگردد و گنجها (مصدومها) را پیدا میکند — یا با دانستن موقعیتشان، یا با چرخش و جستوجوی تصادفی به کمک سنسورها.
وقتی روی یک گنج میرود، آن را داخل مخزن خود میگذارد. مخزن ظرفیت ۶ گنج دارد؛ بیشتر از آن جا نمیشود.
گنجها را به منطقهٔ امنِ نارنجی میبرد و آنجا خالی میکند. تحویل در منطقهٔ امن امتیاز را دو برابر میکند.
هر تیم تلاش میکند در زمان مسابقه (۸ دقیقه) امتیاز بیشتری جمع کند. تیم با امتیاز بالاتر برنده است.
سه سنسور فاصله که فاصلهٔ تا نزدیکترین مانع را به سانتیمتر میدهند. در کد: Front، Left، Right.
رنگِ کفِ زیر ربات را میخواند تا منطقهٔ امن (نارنجی)، تله (زرد) و… را تشخیص دهد. در کد: Color.
مختصات ربات روی میدان. در کد: X و Y (سانتیمتر).
جهت ربات بر حسب درجه (۰ تا ۳۶۰). در کد: Compass.
چرخ چپ و راست؛ با مقدار بین ۵- تا ۵+ کنترل میشوند. در کد: WheelLeft و WheelRight.
صندوقی روی ربات که گنجهای جمعشده را نگه میدارد — حداکثر ۶ گنج.
سه نوع گنج با ارزشهای مختلف. داخل منطقهٔ ویژه ارزش گنج دو برابر میشود و تحویل در منطقهٔ امن هم آن را دو برابر میکند.
| گنج | امتیاز عادی | داخل منطقهٔ ویژه |
|---|---|---|
| سیاه | ۲۰ | ۴۰ |
| آبی | ۱۵ | ۳۰ |
| قرمز | ۱۰ | ۲۰ |
| نارنجی (ویژه) | ۱۸۰ (حداقل ست) یا ۳۶۰ (ست کامل) — هم موقع برداشت، هم موقع تحویل | |
گنجی که اینجا جمع شود دو برابر امتیاز میگیرد.
محل تحویل گنجها؛ تخلیه اینجا امتیاز را دو برابر میکند.
سرعت ربات را ۵۰٪ کم میکند؛ بهتر است دور بزند.
اگر ربات با بار وارد تله شود، تمام گنجهایش از بین میرود.
سه راه: الگوریتم آمادهٔ A*، الگوریتم Dijkstra، یا کد سنسوریِ پایتونِ خودت. در حالت کد، با سنسورها تصمیم میگیری و موتورها را میرانی. یک نمونهٔ ساده:
میتوانی کد را همانجا بنویسی یا یک فایل .py آپلود کنی — هم برای ربات قرمز، هم آبی.
در شبیهساز میتوانی ابعاد زمین را تغییر دهی، خودت گنج/تله/دیوار بسازی، رباتها را جابهجا کنی،
نمای دوربین (بالا/بغل/POV) را عوض کنی و تمامصفحه تماشا کنی.
منبع قوانین رسمی: ربات و سنسورهای CoSpace · RoboCupJunior Rescue Simulation