آموزش ROS برای مبتدیان (ROS Noetic، Melodic، Kinetic)

ROS For Beginners (ROS Noetic, Melodic, Kinetic)

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

[به روز شده با ROS Noetic! این دوره اکنون برای ROS Kinetic، ROS Melodic و ROS Noetic معتبر است]

یادگیری ROS سخت است و شما آن را می دانید. اما چرا باید اینطور باشد؟

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

به همین دلیل است که من این دوره را ایجاد کرده ام، که ای کاش وقتی شروع کردم داشتم. بنابراین شما می توانید ROS را بسیار سریعتر از من یاد بگیرید.

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

این دوره عبارت است از:

  • به گونه ای ساختار یافته است که برای مبتدیان به راحتی قابل پیگیری است

  • بررسی تمام مفاهیم اصلی ROS که نیاز دارید، گام به گام

  • رفتن به نقطه . هیچ چیز بی فایده و بیش از حد پیچیده ای که به هر حال از آن استفاده نخواهید کرد.

  • پر از تمرین و چالش برای پیشرفت سریع‌تر شما

حالا، چرا باید رشته من را انتخاب کنید؟

در گذشته من یک نرم افزار ROS کامل برای یک بازوی روباتیک 6 محوره توسعه داده ام. من به شما می گویم که چون با توسعه این ربات، آنچه را که واقعاً برای ساختن چیزهایی که واقعاً کار می کنند، باید بدانم (به روش سخت) یاد گرفتم.

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

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

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

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

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

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

توجه داشته باشید که تمام کدهای نوشته شده در این دوره هم در پایتون و هم به زبان C++ خواهد بود، بنابراین می توانید تصمیم بگیرید که ROS را با آن 2 زبان یا فقط یکی از آنها یاد بگیرید.

بنابراین… امروز یادگیری خود را شروع کنید و با ROS برنامه های رباتیک عالی بسازید!

پس از نصب ROS در سیستم عامل اوبونتو، مفاهیم کلیدی ROS زیر را یاد خواهید گرفت:

  • گره ها

  • موضوعات

  • خدمات

  • تعاریف Msg و Srv

  • پارامترها

  • فایل ها را راه اندازی کنید

  • و خیلی بیشتر!

با تسلط بر این مفاهیم، ​​100% آماده خواهید بود تا هر برنامه رباتیک دیگری را راه اندازی کنید و با استفاده از سیستم عامل ربات، نرم افزار کامل را از ابتدا بسازید.

همچنین خواهید آموخت که چگونه :

را انجام دهید
  • برنامه خود را اشکال زدایی کنید

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

  • برنامه خود را بسازید

  • ساختار پروژه خود را به درستی تنظیم و مدیریت کنید

و از آنجایی که می‌خواهم شما را وادار به توسعه برنامه‌های روباتیک عالی (نه فقط خوب، زیرا «خوب» به اندازه کافی خوب نیست) و مقیاس‌پذیر توسعه دهم، بهترین روش‌هایی را که از تجربه خودم آموخته‌ام با شما به اشتراک می‌گذارم.

به روز رسانی:

توجه: این دوره اولین نسخه ROS یا "ROS1" را هدف قرار می دهد. این یک دوره ROS2 نیست.

-- آیا باید ROS1 یا ROS2 را یاد بگیرید؟

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

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

در نهایت، هنگامی که اصول اولیه ROS1 و چند پروژه را در دست دارید، تغییر به ROS2 در واقع چندان سخت نخواهد بود. اکثر مفاهیم برای 2 نسخه یکسان هستند.

بهترین گزینه یادگیری ROS1 و ROS2 خواهد بود. بنابراین می توانید با هر پروژه ROS موجود و همچنین با چارچوب جدید کار کنید.

در مجموع، زیاد درنگ نکنید: بهترین کاری که می توانید انجام دهید این است که از امروز شروع به یادگیری ROS کنید، چه ROS1 و چه ROS2.


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

معرفی Introduction

  • خوش آمدی ! Welcome !

  • ROS چیست، چه زمانی از آن استفاده کنیم و چرا؟ What is ROS, When to use it, and Why ?

  • چگونه از این دوره بیشترین بهره را ببرید How to get the most out of this course

ROS را نصب کنید و محیط خود را راه اندازی کنید Install ROS and Setup Your Environment

  • مقدمه Intro

  • [به روز رسانی] یادداشت سریع در مورد نسخه ها - لطفا بخوانید [UPDATE] Quick note on versions - please read

  • از کدام نسخه ROS استفاده کنیم؟ جنبشی، ملودیک، نوتیک؟ در مورد ROS2 چطور؟ Which ROS Version to Use ? Kinetic, Melodic, Noetic ? What about ROS2?

  • [اگر از ROS Noetic استفاده می کنید] اوبونتو 20.04 را روی یک ماشین مجازی نصب کنید [If you use ROS Noetic] Install Ubuntu 20.04 on a Virtual Machine

  • [اگر از ROS Noetic استفاده می کنید] ROS Noetic را در اوبونتو 20.04 نصب کنید [If you use ROS Noetic] Install ROS Noetic on Ubuntu 20.04

  • [اگر از ROS Melodic استفاده می کنید] اوبونتو 18.04 را روی یک ماشین مجازی نصب کنید [If you use ROS Melodic] Install Ubuntu 18.04 on a Virtual Machine

  • [اگر از ROS Melodic استفاده می کنید] ROS Melodic را در اوبونتو 18.04 نصب کنید [If you use ROS Melodic] Install ROS Melodic on Ubuntu 18.04

  • اولین ROS Master خود را راه اندازی کنید Launch Your First ROS Master

  • بخش نتیجه گیری Section Conclusion

اولین برنامه ROS خود را اجرا کنید Run Your First ROS Program

  • مقدمه Intro

  • یک فضای کاری Catkin ایجاد کنید Create a Catkin Workspace

  • نکته اضافی در مورد راه اندازی محیط ROS شما Additional Note about Setting Up your ROS Environment

  • یک بسته ROS ایجاد کنید Create a ROS Package

  • گره چیست؟ What is a Node ?

  • اولین گره پایتون شما Your First Python Node

  • اولین گره C++ شما Your First C++ Node

  • گره های خود را با ابزارهای خط فرمان اشکال زدایی کنید Debug Your Nodes With Command Line Tools

  • نمودار ROS خود را با rqt_graph تجسم کنید Visualize Your ROS Graph With rqt_graph

  • روی Nodes با Turtlesim آزمایش کنید Experiment on Nodes With Turtlesim

  • بخش نتیجه گیری Section Conclusion

با موضوعات ROS ارتباط برقرار کنید Communicate With ROS Topics

  • مقدمه Intro

  • موضوع چیست؟ What is a Topic ?

  • یک ناشر پایتون ایجاد کنید Create a Python Publisher

  • یک مشترک پایتون ایجاد کنید Create a Python Subscriber

  • یک ناشر C++ ایجاد کنید Create a C++ Publisher

  • یک مشترک C++ ایجاد کنید Create a C++ Subscriber

  • از گره های ناشناس برای راه اندازی چند ناشر/مشترک استفاده کنید Use Anonymous Nodes to Launch Multiple Publishers/Subscribers

  • اشکال زدایی موضوعات با ابزارهای خط فرمان Debug Topics With Command Line Tools

  • تجسم موضوعات با rqt_graph Visualize Topics With rqt_graph

  • روی موضوعات با Turtlesim آزمایش کنید Experiment on Topics With Turtlesim

  • فعالیت موضوعی Topic Activity

  • فعالیت موضوعی - حل Topic Activity - Solution

  • بخش نتیجه گیری Section Conclusion

با خدمات ROS ارتباط برقرار کنید Communicate With ROS Services

  • مقدمه Intro

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

  • یک سرور سرویس پایتون ایجاد کنید Create a Python Service Server

  • یک سرویس گیرنده پایتون ایجاد کنید Create a Python Service Client

  • سرور و کلاینت سرویس C++ ایجاد کنید Create a C++ Service Server & Client

  • اشکال زدایی خدمات با ابزارهای خط فرمان Debug Services With Command Line Tools

  • خدمات با Turtlesim را آزمایش کنید Experiment on Services With Turtlesim

  • فعالیت خدماتی Service Activity

  • فعالیت خدمات - راه حل Service Activity - Solution

  • بخش نتیجه گیری Section Conclusion

برنامه خود را با فایل های Msg و Srv سفارشی کنید Customize Your Application With Msg and Srv Files

  • مقدمه Intro

  • تعاریف Msg و Srv چیست؟ What are Msg and Srv Definitions ?

  • پیام سفارشی خود را ایجاد و بسازید Create and Build Your Own Custom Msg

  • از پیام سفارشی خود در کد خود استفاده کنید Use Your Custom Msg in Your Code

  • Srv سفارشی خود را ایجاد کنید Create Your Own Custom Srv

  • اشکال زدایی پیام و Srv با ابزارهای خط فرمان Debug Msg and Srv With Command Line Tools

  • فعالیت Msg & Srv Msg & Srv Activity

  • Msg & Srv Activity - Solution Msg & Srv Activity - Solution

  • بخش نتیجه گیری Section Conclusion

برنامه خود را با پارامترهای ROS مقیاس پذیر کنید و فایل ها را راه اندازی کنید Make Your Application Scalable With ROS Params and Launch Files

  • مقدمه Intro

  • مقدمه Intro

  • پارامتر ROS چیست؟ What is a ROS Parameter ?

  • دستکاری پارامترها با ابزارهای خط فرمان Manipulate Parameters With Command Line Tools

  • کنترل پارامترها با پایتون Handle Parameters With Python

  • کنترل پارامترها با C++ Handle Parameters With C++

  • فایل راه اندازی چیست؟ What is a Launch File ?

  • یک فایل راه اندازی برای شروع تمام پارامترها و گره های خود ایجاد کنید Create a Launch File to Start all Your Parameters and Nodes

  • بخش نتیجه گیری Section Conclusion

  • بخش نتیجه گیری Section Conclusion

اضافی Extra

  • بازپخش یک موضوع با کیسه های ROS Replay a Topic With ROS Bags

  • از OOP با ROS - Python استفاده کنید Use OOP With ROS - Python

  • از OOP با ROS - C++ استفاده کنید Use OOP With ROS - C++

  • با چندین فضای کاری Catkin کار کنید Work With Multiple Catkin Workspaces

نتیجه Conclusion

  • آنچه شما آموخته اید What You've Learned

  • کار بعدی چیه ؟ What to Do Next ?

  • منابع مفید Useful Resources

  • سخنرانی پاداش Bonus Lecture

نمایش نظرات

آموزش ROS برای مبتدیان (ROS Noetic، Melodic، Kinetic)
جزییات دوره
6 hours
71
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
7,462
4.6 از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Edouard Renard Edouard Renard

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