آموزش ROS برای مبتدیان: مبانی، حرکت و OpenCV

ROS for Beginners: Basics, Motion, and OpenCV

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
توضیحات دوره: با سیستم عامل ربات (ROS) در مدت زمان کمی متخصص شوید و رباتیک را بیاموزید و در اسناد گسترده گم نشوید. و جهت گیری در ROS نشان داده می شود شناخت چگونگی توسعه یک پروژه C++/Python ROS توسعه برنامه های بینایی کامپیوتری ساده با ROS و OpenCV پیش نیازها:دانش به زبان برنامه نویسی C++ و/یا Python. می خواهید ROS را یاد بگیرید مشتاق یادگیری رباتیک

اخبار و به‌روزرسانی‌ها.

این دوره پرفروش در ROS در Udemy است.

دوره من به آخرین نسخه ROS، ROS Noetic ارتقا یافته است، با چندین ویدیوی جدید که مفاهیم اساسی ROS را با تصاویر عملی توضیح می دهد. همچنین به شما مهارت های لازم برای یادگیری ROS2 و پشته ناوبری را می دهد، همانطور که در دو دوره دیگر من ارائه شده است.

چرا این دوره را تدریس می کنم؟

به طور معمول، کاربران ROS جدید هنگام شروع برنامه نویسی با ROS با مشکلات زیادی مواجه می شوند. اگرچه آموزش های زیادی وجود دارد، اما نکات و مسائل کاربردی زیادی وجود دارد که به راحتی در آموزش ها یافت نمی شوند و در مورد آنها بحث نمی شود و به شانس توسعه دهنده سپرده می شود. اگرچه اسناد زیادی برای ROS وجود دارد، اما چندین مورد بسیار گسترده هستند و درک مفاهیم به خوبی طول می کشد. اینجاست که این دوره با ارائه مقدمه ای متمرکز بر مبانی ROS، نقش ایفا می کند و ارزش افزوده ای را ارائه می دهد. این دوره نه تنها مفاهیم اساسی ROS را ارائه می دهد، بلکه به دو زمینه اساسی در رباتیک نیز می پردازد: (1) حرکت و (2) ادراک. ما مفاهیم کلی ROS را در زمینه حرکت و ادراک رباتیک اعمال خواهیم کرد. این دوره به شما فرصتی می دهد تا درباره OpenCV، قدرتمندترین کتابخانه بینایی رایانه ای که ادراک روباتیک را ارتقا می دهد، بیاموزید.

رویکرد من این است که شما را گام به گام از طریق نقشه راه یادگیری ROS ببرم تا مفاهیم را به ترتیب مناسب بیاموزید و به شما کمک کند تا تجربه ای از یک سخنرانی به سخنرانی دیگر بسازید.

این دوره ای است که مفاهیم اساسی و اصول سیستم عامل ربات (ROS) را ارائه می دهد. این دوره قصد دارد به کاربران مبتدی ROS مقدمه ای سریع و متمرکز با مبانی ROS و نکات کاربردی ارائه دهد که به آنها کمک می کند اولین پروژه های خود را با ROS در C++ و Python مدیریت بهتری داشته باشند. به طور خاص، توسعه با C++ در ROS به مراقبت ویژه در مقایسه با پایتون نیاز دارد تا محیط کامپایل و زمان اجرا را به خوبی پیکربندی کند. این به وضوح در این دوره ارائه شده است.

به طور عمده سه مرحله اصلی در دوره وجود دارد:

  1. مبانی و پایه ROS: این به مفاهیم کلی ROS می‌پردازد که همه باید بدانند، مانند موضوعات ROS، خدمات، پیام‌ها و گره‌ها، ...

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

  3. درک در ROS: من به شما معرفی خواهم کرد که چگونه یک ربات محیط را با استفاده از دوربین می بیند، چگونه تصاویر در ROS جمع آوری می شوند، و چگونه آنها در OpenCV پردازش می شوند.

  4. آردوینو: همچنین یاد خواهید گرفت که چگونه از بردها و حسگرهای آردوینو با ROS با استفاده از رابط ROSSERIAL Arduino استفاده کنید. این به شما امکان می دهد هر سنسور و برد آردوینو را در برنامه های روبات و روباتیک خود ادغام کنید.

بر اساس تجربه من، اینها مهمترین چیزهایی هستند که هر کاربر جدید ROS باید بداند تا پروژه رباتیک خود را ادامه دهد.

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

تجربه من با ROS

من سال هاست که در پروژه های دانشگاهی و صنعتی با ROS برنامه نویسی می کنم. من بسیار مشتاق توسعه یک برنامه با ROS هستم. من همچنین ROS را در دانشگاه تدریس کرده ام و برنامه های آموزشی ارائه کرده ام. من رهبر آزمایشگاه رباتیک و اینترنت اشیاء در دانشگاه شاهزاده سلطان و همچنین مشاور Gaitech Robotics هستم. من بسته های ROS زیادی را برای روبات ها و پهپادها توسعه داده ام. من فعالیت‌های علمی بین‌المللی را در اطراف ROS رهبری کرده‌ام، و به‌ویژه، ویراستار سه جلد کتاب با عنوان Robot Operating System، The Complete Reference با Springer هستم. من تجربیات زیادی در مورد مشکلاتی که کاربران جدید در یادگیری ROS با آن مواجه می‌شوند، به دست آوردم، که به پین ​​کردن درست به نقطه پرداختن به این مشکلات از طریق سخنرانی‌های مختلف دوره کمک کرد.


به دنیای ROS خوش آمدید.


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

معرفی Introduction

  • این دوره در مورد چیست؟ What is this course about?

  • درباره مربی About the Instructor

ROS: چگونه توسعه نرم افزار روباتیک را متحول کرد؟ ROS: 
How did it revolutionize robotics software development

  • درباره این بخش (اسلایدهای پیوست شده به منابع) About this section (slides attached to resources)

  • معرفی Introduction

  • چرا تصمیم گرفتم از ROS در کارم استفاده کنم؟ Why did I decided to use ROS in my work?

  • چرخه زندگی ربات The Robot Life Cycle

  • تاثیر ROS ROS Impact

  • کیف استفاده از خودروی خودران Self-Driving Car Use Case

  • تکامل ROS ROS Evolution

  • توزیع ROS (نسخه) در طول زمان ROS Distributions (version) over Time

  • معماری ROS ROS Architecture

  • مفاهیم اولیه و نسخه ی نمایشی ROS ROS Basic Concepts and Demo

  • پارادایم های ارتباطی ROS (موضوعات/خدمات/ActionLib) ROS Communication Paradigms (Topics/Services/ActionLib)

  • برنامه ریزی و ناوبری مسیر ROS ROS Path Planning and Navigation

  • محدودیت ROS Limitation of ROS

  • ROS2 ROS2

  • [اختیاری] برخی از مشارکت‌ها در ROS [OPTIONAL] Some Contributions to ROS

[جدید] تنظیم محیط خود با ROS Noetic [NEW] Setting your environment with ROS Noetic

  • اسلایدهای ROS را نصب کنید Install ROS Slides

  • ROS Noetic را روی اوبونتو 20.04 نصب کنید Install ROS Noetic on Ubuntu 20.04

  • فضای کاری catkin خود را با ROS Noetic ایجاد کنید Create your catkin workspace with ROS Noetic

  • مخزن مناسب GitHub را برای توزیع ROS Noetic کلون کنید Clone the right GitHub Repository for the ROS Noetic distribution

  • آزمایش نصب خود با گره های ++C Testing your installation with C++ nodes

  • تست و تعمیر نصب با گره های پایتون Testing and fixing installation with Python nodes

  • [به روز رسانی] توجه: توصیه من برای استفاده از ویرایشگر [UPDATE] Note: My recommendation for the editor to use

  • [مهم] قبل از شروع کار در دوره [IMPORTANT] BEFORE START WORKING ON THE COURSE

[LEGACY-OPTIONAL] نصب و راه اندازی محیط [LEGACY-OPTIONAL] Installation and Environment Setup

  • در مورد این بخش توجه کنید Note about this section

  • [اختیاری] نکات نصب ROS [OPTIONAL] ROS Installation Tips

  • یک ماشین مجازی اوبونتو را با استفاده از VM-Fusion بر روی Mac-OS نصب کنید Install a Ubuntu Virtual Machine on Mac-OS using VM-Fusion

  • به روز رسانی یادداشت در مورد توزیع ROS UPDATE NOTE ABOUT ROS DISTRIBUTION

  • ROS (Melodic) را روی اوبونتو (Bionic) نصب کنید Install ROS (Melodic) on Ubuntu (Bionic)

  • از کدام محیط توسعه یکپارچه (ID) با ROS استفاده کنیم؟ Which Integrated Development Environment (ID) to use with ROS?

  • [به روز رسانی] توجه: توصیه من از ویرایشگر برای استفاده [UPDATE] Note: My recommendation of editor to use

یک فضای کاری ROS و یک بسته ROS ایجاد کنید Create a ROS Workspace and a ROS Package

  • به روز رسانی یادداشت بخش Section Note Update

  • ROS Workspace و ROS Package (تنظیم پروژه های ROS شما) ROS Workspace and ROS Package (Setting up your ROS projects)

  • بسته شدن Wrapping up

  • ROS Workspace و ROS Package ROS Workspace and ROS Package

  • در مورد سخنرانی بعدی توجه کنید Note about the next lecture

  • [LEGACY] راه اندازی پروژه ROS (Kinetic+Melodic) دوره با استفاده از GitHub [LEGACY] Setup ROS (Kinetic+Melodic) Project of the course using GitHub

[جدید] نمودار محاسباتی ROS [NEW] ROS Computation Graph

  • نمودار محاسباتی ROS چیست؟ What is a ROS Computation Graph?

  • چرخه عمر نمودار محاسباتی ROS ROS Computation Graph Life Cycle

  • ROS Master Node را راه اندازی کنید Start the ROS Master Node

  • چگونه یک گره جدید (قابل اجرا) در ROS اجرا کنیم؟ How to run a new node (executable) in ROS?

  • وقتی یک گره ROS جدید راه اندازی می کنیم چه اتفاقی می افتد؟ What happens when we start a new ROS node?

  • اضافه کردن یک گره تلهوپ برای حرکت ربات Adding a teleop node to make the robot move

  • اطلاعات یک گره و اطلاعات یک موضوع را دریافت کنید Get the information of a node and the information of a topic

  • محتوای پیام حرکت/tutle1/cmd_vel The content of the motion message /tutle1/cmd_vel

  • ساختار پیام ROS را درک کنید Understand the structure of a ROS message

  • چگونه ساختار پیام را در خط فرمان ROS نشان دهیم؟ How to show the message structure on ROS command line?

  • پیامی را در مورد موضوعی از خط فرمان منتشر کنید Publish a message on a topic from a command line

  • نمودار محاسباتی ROS را با استفاده از ros_rqt_graph تجسم کنید Visualize the ROS Computation Graph using ros_rqt_graph

  • نسخه ی نمایشی: شروع Turtlesim و بررسی اطلاعات مربوط به گره ها و موضوعات Demo: Starting Turtlesim and checking information about the nodes and topics

  • نسخه ی نمایشی: نمایش محتوای پیام های ROS منتشر شده Demo: Showing the content of ROS messages published

  • دمو: موضوع ژست را درک کنید Demo: Understand the pose topic

  • نسخه ی نمایشی: مزیت استفاده از ROS چیست؟ Demo: What is the benefit of using ROS?

  • نسخه ی نمایشی: انتشار یک پیام از یک خط فرمان با استفاده از rostopic pub Demo: Publishing a message from a command line using rostopic pub

  • نسخه ی نمایشی: rqt_graph Demo: rqt_graph

  • [آزمایش] نمودار محاسباتی ROS [Quiz] ROS Computation Graph

  • فایل سیستم و اکوسیستم ROS ROS Filesystem and Ecosystem

  • توجه داشته باشید NOTE

  • [قدیمی] گره اصلی ROS (اختیاری - برای یادداشت‌های دانش‌آموز نگهداری می‌شود) [OLD] The ROS Master Node (OPTIONAL - KEPT FOR STUDENT NOTES)

  • [قدیمی] نمودار محاسباتی ROS: گره‌ها، موضوعات (اختیاری - برای یادداشت‌های دانش‌آموز نگهداری می‌شود) [OLD] ROS Computation Graph: Nodes, Topics (OPTIONAL - KEPT FOR STUDENT NOTES)

موضوعات ROS ROS Topics

  • بررسی اجمالی موضوعات ROS ROS Topics Overview

  • سوال: اگر ROS Master خراب شود چه اتفاقی می افتد؟ Question: what happens if ROS Master crashes?

  • دستورالعمل هایی برای نوشتن یک ناشر و یک مشترک در ROS Guidelines to Write a Publisher and a Subscriber in ROS

  • نمای کلی برنامه Talker/Listener (مثال ROS Hello World) Overview of the Talker/Listener Application (ROS Hello World Example)

  • یک گره ناشر در پایتون بنویسید Write a Publisher Node in Python

  • یک گره مشترک در پایتون بنویسید Write a Subscriber Node in Python

  • [DEMO] سخنگو/شنونده در پایتون [DEMO] Talker/Listener in Python

  • یک Node Publisher/Subscriber در C++ بنویسید Write a Publisher/Subscriber Node in C++

  • [DEMO] Talker/Listener در C++ [DEMO] Talker/Listener in C++

  • توضیح تکلیف خودت انجام بده Do-It-Yourself Assignment Explanation

  • خودتان انجام دهید: اولین برنامه ROS خود را برای کنترل حرکت ربات بنویسید Do-It-Yourself: Write your First ROS Program to Control the Motion of a Robot

  • در مورد دو سخنرانی بعدی About the next two lectures

  • [قدیمی-اختیاری] یک ناشر و مشترک ROS در C++ بنویسید [OLD-OPTIONAL] Write a ROS Publisher and Subscriber in C++

  • [OLD-OPTIONAL] یک ناشر و مشترک ROS در پایتون بنویسید [OLD-OPTIONAL] Write a ROS Publisher and Subscriber in Python

پیام های ROS ROS Messages

  • ایجاد پیام‌های سفارشی ROS: نمای کلی Create Custom ROS Messages: Overview

  • [دمو] ایجاد یک پیام ROS سفارشی: پیاده سازی [Demo] Create a Custom ROS Message: Implementation

  • [DEMO] برنامه های کاربردی ناشر/مشترک پیام سفارشی IoTSensor [DEMO] IoTSensor Custom Message Publisher/Subscriber Applications

خدمات ROS ROS Services

  • سرویس ROS چیست؟ What is a ROS Service?

  • خدمات ROS را با Turtlesim درک کنید Understand ROS Services with Turtlesim

  • [DEMO] خدمات ROS با Turtlesim [DEMO] ROS Services with Turtlesim

  • خودتان انجام دهید: خدمات ROS عملی عملی Do-It-Yourself: ROS Service Hands-On Practice

  • بررسی اجمالی سرویس AddTwoInts AddTwoInts Service Overview

  • فایل سرویس و پیام‌های درخواست/پاسخ را ایجاد کنید Create the Service File and Request/Response Messages

  • سرویس ROS (کلینت/سرور) را در پایتون بنویسید Write ROS Service (Client/Server) in Python

  • [DEMO] سرویس ROS (کلینت/سرور) را در پایتون بنویسید [DEMO] Write ROS Service (Client/Server) in Python

  • [DEMO] نوشتن یک سرویس ROS (کلینت/سرویس) در C++ [DEMO] Writing a ROS Service (Client/Service) in C++

  • سرویس Rectangle Aera ROS (با راه حل ویدیویی) Rectangle Aera ROS Service (with video solution)

[جدید] حرکت در ROS (به روز شده با ROS Noetic) [NEW] Motion in ROS (updated with ROS Noetic)

  • در مورد این بخش به روز شده توجه کنید Note about this updated section

  • بررسی اجمالی برنامه تمیز کردن Cleaning Application Overview

  • مرحله 1. موضوعات و پیام های مورد استفاده در برنامه را درک کنید Step 1. Understand Topics and Messages Used in the Application

  • کتابخانه ها را در پایتون و سی پلاس پلاس وارد کنید Import the Libraries in Python and C++

  • رویکرد تفرقه بیانداز و حکومت کن The Divide and Conquer Approach

  • حرکت به خط مستقیم (C++/Python) Move Straight Line (C++/Python)

  • [DEMO] حرکت به خط مستقیم (C++/Python) [DEMO] Move Straight Line (C++/Python)

  • حرکت چرخشی (C++/Python) Rotate Motion (C++/Python)

  • [نمایش] حرکت چرخشی (C++/Python) [Demo] Rotate Motion (C++/Python)

  • رفتار به سمت هدف Go-To-Goal Behavior

  • [نمایش] رفتار رفتن به هدف [Demo] Go-To-Goal Behavior

  • جهت دلخواه را تنظیم کنید Set Desired Orientation

  • [نمونه] جهت دلخواه را تنظیم کنید [Demo] Set Desired Orientation

  • مسیر مارپیچی Spiral Trajectory

  • نسخه ی نمایشی مسیر مارپیچی Spiral Trajectory Demo

  • قرار دادن همه با هم: برنامه تمیز کردن Putting All Together: The Cleaning Application

  • اجرای چندین گره با یک فایل راه اندازی Running Multiple Nodes with a Launch File

ابزارها و ابزارهای ROS ROS Tools and Utilities

  • پیکربندی شبکه ROS ROS Network Configuration

  • Launch Files (قسمت اول): اجرای چندین گره با roslaunch Launch Files (Part I): Running multiple nodes with roslaunch

  • فایل های راه اندازی (بخش دوم): شامل یک فایل راه اندازی و تعریف پارامترها Launch Files (Part II): including a launch file and define parameters

شروع کار با Turtlebot3 Getting Started with Turtlebot3

  • Turtlebot3 Simulator را نصب کنید Install Turtlebot3 Simulator

  • مروری بر محیط شبیه سازی Turtlebot3 Overview of Turtlebot3 Simulation Environment

  • [نسخه نمایشی] نسخه ی نمایشی ساده با Turtlebot3 [Demo] Simple Demo with Turtlebot3

درک I: دید کامپیوتر در ROS با OpenCV Perception I: Computer Vision in ROS with OpenCV

  • بررسی اجمالی OpenCV OpenCV Overview

  • [BEFORE ROS-NOETIC] OpenCV را برای ROS (Melodic/Kinetic) نصب کنید [BEFORE ROS-NOETIC] Install OpenCV for ROS (Melodic/Kinetic)

  • [جدید] OpenCV را برای ROS Noetic نصب کنید [New] Install OpenCV for ROS Noetic

  • نکته اضافی در مورد نصب OpenCV Additional Note about OpenCV installation

  • OpenCV: باز کردن/ذخیره فایل های تصویری (Python) OpenCV: Open/Save Image Files (Python)

  • OpenCV: پیکسل ها و ساختار تصویر (Python) OpenCV: Pixels and Image Structure (Python)

  • OpenCV: رمزگذاری تصویر (Python) OpenCV: Image Encoding (Python)

  • OpenCV: ورودی جریان ویدئو (پایتون) OpenCV: Video Streams Input (Python)

  • OpenCV: رسم اشکال OpenCV: Drawing Shapes

  • CvBridge: پل زدن OpenCV و ROS CvBridge: Bridging OpenCV and ROS

  • آستانه گذاری ساده و تطبیقی ​​در OpenCV Simple and Adaptive Thresholding in OpenCV

  • فیلتر رنگ در OpenCV (مورد استفاده از توپ تنیس) Color Filtering in OpenCV (Tennis Ball use case)

  • تشخیص و پردازش خطوط در OpenCV Contours Detection and Processing in OpenCV

  • تشخیص توپ تنیس با استفاده از OpenCV Tennis Ball Detection using OpenCV

  • ورودی/خروجی ویدیو OpenCV (C++). OpenCV (C++) 
Video Input/Output

  • OpenCV (C++) باز کردن و ذخیره تصاویر OpenCV (C++) 
Open and Save Images

  • OpenCV (C++) CvBridge: پل زدن تصاویر بین OpenCV و ROS OpenCV (C++) 
CvBridge: Bridging Images between OpenCV and ROS

  • پروژه بینایی کامپیوتر: ردیابی توپ با OpenCV و ROS Computer Vision Project: Ball Tracking with OpenCV and ROS

Perception II: Laser Range Finders (Scanner Laser) Perception II: Laser Range Finders (Laser Scanner)

  • برد یاب لیزری چیست؟ What is a Laser Range Finder?

  • ویژگی های برد یاب لیزری Laser Range Finders Characteristics

  • آزمون فاصله یاب لیزری Laser Range Finders Quiz

  • دستگاه های برد یاب لیزری تجاری Commercial Laser Range Finder Devices

  • دستگاه های اسکنر لیزری مورد استفاده در تظاهرات Laser Scanner Devices used in Demonstrations

  • دوربین Asus Live Pro RGBD را به عنوان اسکنر لیزری وصل کنید Connect Asus Live Pro RGBD Camera as a Laser Scanner

  • اسکنر لیزری Hokuyo URG 4LX را با ROS وصل کنید Connect Hokuyo URG 4LX Laser Scanner with ROS

  • پیام های اسکن لیزری را در یک فایل کیف ذخیره کنید و آنها را دوباره پخش کنید Save Laser Scan Messages into a Bag File and Replay Them

  • یک گره ROS (پایتون) را به عنوان مشترک یک اسکنر لیزری بنویسید Write a ROS Node (Python) as a Subscriber to a Laser Scanner

  • یک گره ROS (C++) به عنوان مشترک یک اسکنر لیزری بنویسید Write a ROS Node (C++) as a Subscriber to a Laser Scanner

  • Hands on-Activity در اسکنر لیزری Hands on-Activity on Laser Scanner

rosserial: اتصال سخت افزار جدید (Arduino) با ROS rosserial: Connecting new Hardware (Arduino) with ROS

  • روسریال چیست؟ What is rosserial?

  • آردوینو چیست؟ What is Arduino?

  • برد آردوینو Uno Arduino Uno Board

  • نمای کلی آردوینو IDE Arduino IDE Overview

  • Arduino IDE را نصب و راه اندازی کنید Install and Setup Arduino IDE

  • سنسور برد و تنظیم اتصال Range Sensor and Connection Setup

  • برنامه نویسی سنسور اولتراسونیک با آردوینو Programming The Ultrasonic Sensor with Arduino

  • کتابخانه های rosserial را نصب کنید Install rosserial libraries

  • برنامه rosserial Hello World: Arduino ROS Publisher rosserial Hello World application: Arduino ROS Publisher

  • برنامه rosserial Blink: مشترک آردوینو ROS rosserial Blink application: Arduino ROS Subscriber

  • روسریال با استفاده از سنسور برد آلتراسونیک آردوینو rosserial using Arduino Ultrasonic Range Sensor

جایزه Bonus

  • بعدی چیه؟ What is next?

ضمیمه: حرکت در ROS (ویدیوهای قدیمی - اما همچنان قابل اجرا است) Appendix: Motion in ROS (old videos - but still applicable)

  • بررسی اجمالی برنامه تمیز کردن Cleaning Application Overview

  • حرکت در یک خط مستقیم Moving in a Straight Line

  • به چپ و راست بچرخانید Rotate Left and Right

  • به مکان هدف بروید Go to Goal Location

  • برنامه کنترل و پاکسازی مارپیچ Spiral Control and Clearning Application

  • Turtlesim Motion در پایتون Turtlesim Motion in Python

  • راه حل تکلیف: حرکت خطی در ROS (پایتون) Assignment Solution: Linear Motion in ROS (Python)

  • راه حل تکلیف: حرکت چرخشی در ROS (پایتون) Assignment Solution: Rotation Motion in ROS (Python)

  • راه حل تکلیف: حرکت به سمت هدف در ROS (پایتون) Assignment Solution: Go-to-Goal Motion in ROS (Python)

  • Turtlebot 2 Robot Motion Turtlebot 2 Robot Motion

نمایش نظرات

نظری ارسال نشده است.

آموزش ROS برای مبتدیان: مبانی، حرکت و OpenCV
خرید اشتراک و دانلود خرید تکی و دانلود | 160,000 تومان (5 روز مهلت دانلود) زمان تقریبی آماده سازی لینک دانلود این دوره آموزشی حدود 5 تا 24 ساعت می باشد.
جزییات دوره
13.5 hours
152
Udemy (یودمی) udemy-small
04 دی 1401 (آخرین آپدیت رو دریافت می‌کنید، حتی اگر این تاریخ بروز نباشد.)
20,283
4.2 از 5
دارد
دارد
دارد
Anis Koubaa

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Anis Koubaa Anis Koubaa

استاد علوم کامپیوتر

Udemy (یودمی)

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

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