داشبورد›رودمپ›آشنایی با رباتیک
🤖 آشنایی با رباتیک · درس ۳

چرخه حس کن، فکر کن، عمل کن

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

⏱ ۱۵ دقیقه 🌱 آسان ⭐ +۳۰ XP 🧠 کوئیز الزامی
🎯
بعد از این درس

قراره چی یاد بگیری؟

  • رفتار یک ربات را به Sense، Think و Act تقسیم کنی.
  • ترتیب منطقی داده تا عمل را توضیح بدهی.
  • یک شبه‌کد بسیار ساده کنترلی را بخوانی.

رفتار ربات را خرد کن

اگر پروژه‌ای مثل «ربات مانع‌گریز» را یک‌جا ببینی ممکن است پیچیده به نظر برسد. یکی از مهم‌ترین مهارت‌های مهندسی این است که یک رفتار بزرگ را به چند مرحله کوچک‌تر تبدیل کنیم.

در شروع می‌توانیم تقریبا هر رفتار ساده را با این مدل ببینیم:

SENSE → THINK → ACT

Sense — حس کردن

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

Think — تصمیم گرفتن

برنامه بررسی می‌کند:

اگر فاصله کمتر از 20 سانتی‌متر بود
    مانع نزدیک است
در غیر این صورت
    مسیر آزاد است

Act — عمل کردن

حالا بر اساس تصمیم، موتور باید بایستد یا جهت حرکت تغییر کند.

چرا این مدل مهم است؟

چون وقتی پروژه خراب می‌شود، می‌توانی مرحله‌به‌مرحله عیب‌یابی کنی:

  • آیا Sense درست کار می‌کند و عدد سنسور واقعی است؟
  • آیا Think شرط درست دارد؟
  • آیا Act فرمان را اجرا می‌کند و موتور سالم است؟

این روش از همان پروژه‌های ساده تا سیستم‌های پیچیده‌تر همراهت می‌ماند.

اولین شبه‌کد

شبه‌کد قرار نیست زبان برنامه‌نویسی واقعی باشد. فقط منطق را واضح می‌کند:

loop forever:
    distance = read_sensor()

    if distance < 20:
        stop()
        turn()
    else:
        move_forward()

بعدا همین منطق را با C/C++ روی Arduino می‌نویسیم. فعلا فقط باید بفهمی داده چطور به تصمیم و بعد به عمل تبدیل می‌شود.

پایان اولین ماژول

اگر سه درس این بخش را کامل کنی، موتور RoboPath ماژول آشنایی با رباتیک را خودکار Complete می‌کند، XP ماژول را اضافه می‌کند و دو مرحله بعدی Core یعنی برنامه‌نویسی مقدماتی و الکترونیک مقدماتی در رودمپ باز می‌شوند.

یک قدم فراتر: حلقه بازخورد

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

🃏
مرور سریع

فلش کارت‌ها

۱ / ۳
🧠
برای تکمیل درس لازمه

اولین منطق رباتیکی تو

حد نصاب ۷۰٪

این آزمون چند نوع تعامل مختلف منطق آزمون تعاملی را هم تمرین می‌کند.

۱

مراحل رفتار یک ربات مانع‌گریز را به ترتیب درست بچین.

۲ امتیاز
☰فرمان مناسب را به موتورها بده
☰تصمیم بگیر مستقیم بروی یا بپیچی
☰فاصله را از سنسور بخوان
☰مقدار فاصله را با حد مجاز مقایسه کن
با Drag & Drop یا فلش‌ها ترتیب رو درست کن.
۲

اگر فاصله کمتر از 20 سانتی‌متر شد، جای خالی شبه‌کد را کامل کن.

۲ امتیاز
if distance < 20:
     جای خالی 
else:
    move_forward()
۳

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

۱ امتیاز
۲ سوال هنوز جواب نداره.
🔗
برای عمیق‌تر شدن

منابع تکمیلی