آموزش ROS2 برنامه‌ریزی مسیر و پیمایش هزارتو با بینایی ماشین - آخرین آپدیت

دانلود ROS2 Path Planning and Maze Solving with Computer Vision

نکته: ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره:

مکان‌یابی ربات متحرک، ناوبری و برنامه‌ریزی حرکت با سیستم عامل ربات ۲ (ROS2)

ساخت شبیه‌سازی حل ماز (پیچ‌وخم) اختصاصی خودتان (ROS2)

پیاده‌سازی الگوریتم‌های جستجو [A*، دایکسترا، هرم کمینه]

تکنیک‌های بینایی ماشین (مانند: تشخیص، تقسیم‌بندی/سگمنتیشن)

کاوش عمیق در گراف‌های ناوبری سفارشی

پیش‌نیازها:

  • برنامه‌نویسی پایه پایتون و ماژول‌ها

  • ارتباط نودهای ROS2

  • فایل‌های راه‌اندازی (Launch Files)

این دوره بر رفتار حل ماز ربات در یک شبیه‌سازی مبتنی بر ROS2 تمرکز دارد. بینایی ماشین با الگوریتم‌های مهم رباتیک برنامه‌ریزی حرکت ادغام شده و هسته اصلی تمرکز این دوره است. نوع رباتی که استفاده خواهیم کرد، یک ربات دیفرانسیلی با یک چرخ متحرک (کستر ویل) است. ساختار دوره شامل سرفصل‌های اصلی زیر است:

  1. ساخت ربات سفارشی

  2. یکپارچه‌سازی گازیبو (Gazebo) و آروییز (Rviz)

  3. مکان‌یابی (Localization)

  4. ناوبری (Navigation)

  5. برنامه‌ریزی مسیر (Path Planning)

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


نتایج یادگیری

- بخش شبیه‌سازی

  • طراحی ربات سفارشی در بلندر (مدل‌سازی سه‌بعدی)

  • وارد کردن ربات حل ماز به شبیه‌سازی ROS با پشتیبانی گازیبو (Gazebo) و آروییز (Rviz)

  • کنترل ربات خود با نودها

  • افزودن حسگر برای درک بهتر محیط

  • ساخت مازهای (پیچ‌وخم‌های) مختلف برای حل

- بخش الگوریتم

  • مکان‌یابی با استخراج پیش‌زمینه و پس‌زمینه

  • نقشه‌برداری با ساختار داده گراف‌ها

  • برنامه‌ریزی مسیر با:

    • جستجوی A*

    • دایکسترا (Dijkstra)

    • درختان DFS

    • هرم کمینه (Min Heap)

  • ناوبری همزمان با اجتناب از موانع و رفتار GTG (حرکت به سمت هدف)


پیش‌نیازهای دوره

مبتنی بر نرم‌افزار

  • اوبونتو 20.04 (LTS)

  • ROS2 - فاکسی فیتزروی (Foxy Fitzroy)

  • پایتون 3.6

  • اوپن‌سی‌وی 4.2 (OpenCV 4.2)

مبتنی بر مهارت

  • ارتباط پایه نودهای ROS2

  • فایل‌های راه‌اندازی (Launch Files)

  • ساخت مدل‌های گازیبو (Gazebo)

  • ذهن مشتاق :)

تمام کدهای مرجع این دوره در مخزن گیت‌هاب آن موجود است.

با مشاهده تمام پیش‌نمایش‌های رایگان موجود، دید خوبی از دوره پیدا کنید و در صورت هرگونه ابهام، با ما تماس بگیرید :)


سرفصل ها و درس ها

پیش‌نیاز Pre-requisite

  • منابع گیت‌هاب و وابستگی‌ها Github Resources and dependencies

  • اجرای پروژه کامل با داکر در لینوکس Docker Linux Running complete project

  • اجرای پروژه کامل با داکر در ویندوز Docker Windows Running complete project

  • اجرای پروژه کامل بدون داکر Run Complete Project without docker

  • مهم: راهنمای توسعه دوره IMPORTANT : Course Development Guide Line

  • راهنمای ۱: تنظیمات پایه (همراه با مدرس کدنویسی کنید). Guide 1: Base Setup (Code alongside the instructor).

طراحی ربات حل‌کننده هزارتو Maze Solving Robot Designing

  • انتخاب نوع ربات Deciding Robot Type

  • مدل‌سازی سه‌بعدی ربات حل‌کننده هزارتو 3D modeling our maze Solving Robot

  • خروجی گرفتن از مدل ربات برای ROS Exporting robot Model for ROS

راه‌اندازی ROS ربات با استفاده از مش‌های سفارشی Robot ROS setup using custom Meshes

  • نسخه ROS و سایر نرم‌افزارهای مورد نیاز ROS Version and other required Software

  • نصب ROS2 Foxy ROS2 Foxy installation

  • شروع توسعه در ROS2 Start Developing in ROS2

  • فضای کاری (Workspace) و پکیج‌ها Workspace and Packages

  • گردش کار پابلیشر و سابسکرایبر Publisher and Subscriber workflow

  • تبدیل (Transform) و ساختارهای ربات Transform and Robot Structures

  • فایل توصیف یکپارچه ربات Unified Robot Description file

  • نوشتن URDF سفارشی ما Writing our custom URDF

  • فایل راه‌اندازی (Launch File) و مدیریت پکیج Launch File and package managment

  • Rviz و راه‌اندازی ربات از طریق فایل لانچ Rviz and robot bring up through launch file

  • وارد کردن مش‌های STL در ROS STL meshes importing in ROS

  • ایجاد ساختار ربات Robot Structure creation

  • رابطه بین لینک‌های ربات Realtion between robot's links

  • تغییر اندازه مش ربات Robot mesh resizing

  • تست محور مفصل Joint Axis Test

گره‌های ROS و فایل‌های لانچ برای دنیاهای سفارشی ROS Nodes and Launch Files for custom Worlds

  • مقدمه‌ای بر Gazebo Introduction to Gazebo

  • فایل لانچ برای Gazebo و مسیرهای مدل Launch file for Gazebo and paths to model

  • محاسبات اینرسی برای مش‌های ربات Inertia Calculations for robot's meshes

  • درباره گردش کار گره‌های ROS2 بخوانید Read About ROS2 Nodes workflow

  • گره سرعت ربات Robot velocity Node

  • یکپارچه‌سازی پلاگین Differential Drive Differential Drive plugin integeration

  • گره رانندگی دیفرانسیلی Differential Driving Node

  • رفتار حرکت به سمت هدف Goal movement behavior

  • گره "برو به ژست هدف" Go to Goal Pose Node

  • پیاده‌سازی ریاضی "برو به هدف" Go to Goal Mathematical implementation

  • رانندگی به سمت مکان هدف Drive to Goal location

  • ایجاد هزارتوی سفارشی Custom Maze Creation

  • پلاگین دوربین در Gazebo Camera Plugin in Gazebo

  • تنظیم دوربین در بالای هزارتو و ذخیره به عنوان فایل دنیا (world file) Setting camera at the top of Maze and save as world file

  • راه‌اندازی فایل دنیای Gazebo Gazebo World File Launching

  • رفع رنگ دنیا World's Color fixing

  • گره ذخیره‌کننده ویدئو Video Saver Node

  • گره حل‌کننده هزارتو Maze Solving Node

  • ایجاد یک شاخه برای توسعه بیشتر Creating a Branch for Further Development

آغازین Inception

  • حل هزارتو چیست؟ What is Maze-Solving?

  • تفکیک پروژه Project Breakdown

حل هزارتو: مرحله ۱ (محلی‌سازی) Maze-Solving : Stage 1 ( Localization )

  • مفهوم و مورد Concept & Case

  • برنامه حمله Plan Of Attack

  • تفریق پس‌زمینه (نظریه) Background Subtraction (Theory)

  • تفریق پس‌زمینه (کدنویسی - الف): [استخراج مدل پس‌زمینه] Background Subtraction ( Coding - A ) : [Extracting Background Model]

  • تفریق پس‌زمینه (کدنویسی - ب): [استخراج پیش‌زمینه] Background Subtraction ( Coding - B ) : [Foreground Extraction]

  • بررسی صحت {محلی‌سازی} Sanity-Check { Localization }

حل هزارتو: مرحله ۲ (نقشه‌برداری) Maze-Solving : Stage 2 ( Mapping )

  • مفهوم و مورد Concept & Case

  • برنامه حمله Plan Of Attack

  • نقاط مورد علاقه (نظریه) Interest Points (Theory)

  • نقاط مورد علاقه (کدنویسی) Interest Points (Coding)

  • گراف‌ها (نظریه) Graphs (Theory)

  • گراف‌ها (کدنویسی) Graphs (Coding)

  • یک‌گذر (نظریه) One Pass (Theory)

  • یک‌گذر (کدنویسی) One Pass (Coding)

  • بررسی صحت و تحلیل [نقشه‌برداری] Sanity Check & Analysis [ Mapping ]

حل هزارتو: مرحله ۳ (برنامه‌ریزی مسیر) Maze-Solving : Stage 3 ( PathPlanning )

  • مفهوم و مورد Concept & Case

  • برنامه حمله Plan Of Attack

  • بازگشت (نظریه) Recursion (Theory)

  • DFS (نظریه) DFS (Theory)

  • DFS (کدنویسی) DFS (Coding)

  • DFS (تحلیل) DFS (Analysis)

  • DFS-کوتاه‌ترین مسیر (کدنویسی و تحلیل) DFS-ShortestPath (Coding & Analysis)

  • دایجسترا (نظریه) Dijisktra (Theory)

  • MinHeap (نظریه) MinHeap (Theory)

  • MinHeap (کدنویسی) MinHeap (Coding)

  • دایجسترا (کدنویسی) Dijisktra (Coding)

  • A-Star (نظریه) A-Star (Theory)

  • کدنویسی A-Star {چالش} Code A-Star { Challenge }

  • A-Star (کدنویسی) A-Star (Coding)

حل هزارتو: مرحله ۴ (برنامه‌ریزی حرکت) Maze-Solving : Stage 4 ( Motion Planning )

  • مفهوم و مورد Concept & Case

  • برنامه حمله Plan Of Attack

  • به چه نگاه می‌کنی؟ ربات! (نظریه) What Are You Looking At? Bot! (Theory)

  • به چه نگاه می‌کنی؟ ربات! (کدنویسی) What Are You Looking At? Bot! (Coding)

  • برو به هدف (نظریه) Go to Goal (Theory)

  • برو به هدف (کدنویسی) Go to Goal (Coding)

  • هزارتو به دنیا {آزمایش} Maze 2 World {Testing}

  • ناوبری مانع (نظریه) Obstacle Navigation (Theory)

  • ناوبری مانع (کدنویسی) Obstacle Navigation (Coding)

  • پایان کار!!! Signing Off!!!

نمایش نظرات

آموزش ROS2 برنامه‌ریزی مسیر و پیمایش هزارتو با بینایی ماشین
جزییات دوره
9.5 hours
84
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
1,116
4.1 از 5
ندارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Muhammad Luqman Muhammad Luqman

روباتیک سنگین

Haider Najeeb Haider Najeeb

مهندس بینایی کامپیوتر