سیستم عامل ربات ( به انگلیسی: Robot Operating System ) یا ROS یک میان افزار رباتیک ( یعنی مجموعه ای از چارچوب های نرم افزاری برای توسعه نرم افزار ربات ) است. اگر چه ROS یک سیستم عامل نیست اما سرویس هایی را فراهم می کند که برای خوشه ای از کامپیوترهای همگون طراحی شده اند مثل فراهم کردن یک لایه انتزاعی برای سخت افزار، کنترل دستگاه در سطح پایین، پیاده سازی عملیات های معمول رباتیک، انتقال پیام بین فرایندها، و مدیریت بسته. علی رغم اهمیت واکنشی بودن و زمان تأخیر کم در کنترل ربات، ROS یک سیستم عاملی بی درنگ نیست، گرچه امکان ادغام کدهای بی درنگ با ROS وجود دارد. [ ۲] مشکل عدم پشتیبانی سیستم عامل بی درنگ در نسخه ROS 2. 0 حل شده است. [ ۳]
نرم افزارها در اکوسیستم ROS[ ۴] را می توان به سه گروه مجزا تقسیم بندی کرد:
• ابزارهای مستقل از زبان و مستقل از پلتفرم برای ساخت و توزیع نرم افزارهای برپایه ROS
• پیاده سازی کتابخانه کلاینت ROS مثل roscpp با[ ۵] rospy با[ ۶] و roslisp; [ ۷]
• بسته حاوی کدهای مرتبط با نرم افزار که از یک یا چند کتابخانه کلاینت ROS استفاده می نماید. [ ۸]
هر دو ابزار مستقل از زبان و کتابخانه های کلاینت اصلی ( C++، پایتون و Lisp ) تحت مجوز BSD منتشر شده اند و بنابراین متن باز هستند و برای استفاده تجاری و تحقیقاتی رایگان می باشند. اغلب سایر بسته های تحت سایر مجوزهای متن باز هستند که عملیات های معمول و کاربردهایی مثل درایورهای سخت افزار، مدل های ربات، انواع داده ای، طرح ریزی، ادراک، محلی سازی و نقشه برداری همزمان ( Simultaneous localization and mapping ) ، ابزارهای شبیه سازی، و سایر الگوریتم ها را پیاده سازی می کنند.
کتابخانه های کلاینت اصلی ( C++, Python و Lisp ) بیشتر به دلیل وابستگی شان به مجموعه بزرگی از نرم افزاهای متن باز، منطبق با سیستم های شبه - یونیکس هستند. برای این کتابخانه های کلاینت، اوبونتو به عنوان «پشتیبانی شده» لیست شده است در حالی که سایر سیستم عامل ها مثل فدورا، مک اواس، و ماکروسافت ویندوز «آزمایش» هستند و به وسیلهٔ جامعه متن باز پشتیبانی می شوند. [ ۹] کتابخانه مشتری ROS جاوا نیتیو، rosjava، این محدودیت ها را ندارد و امکان نوشتن نرم افزارهای برپایه ROS برای اندروید را فراهم کرده است. [ ۱۰]
این نوشته برگرفته از سایت ویکی پدیا می باشد، اگر نادرست یا توهین آمیز است، لطفا گزارش دهید: گزارش تخلفنرم افزارها در اکوسیستم ROS[ ۴] را می توان به سه گروه مجزا تقسیم بندی کرد:
• ابزارهای مستقل از زبان و مستقل از پلتفرم برای ساخت و توزیع نرم افزارهای برپایه ROS
• پیاده سازی کتابخانه کلاینت ROS مثل roscpp با[ ۵] rospy با[ ۶] و roslisp; [ ۷]
• بسته حاوی کدهای مرتبط با نرم افزار که از یک یا چند کتابخانه کلاینت ROS استفاده می نماید. [ ۸]
هر دو ابزار مستقل از زبان و کتابخانه های کلاینت اصلی ( C++، پایتون و Lisp ) تحت مجوز BSD منتشر شده اند و بنابراین متن باز هستند و برای استفاده تجاری و تحقیقاتی رایگان می باشند. اغلب سایر بسته های تحت سایر مجوزهای متن باز هستند که عملیات های معمول و کاربردهایی مثل درایورهای سخت افزار، مدل های ربات، انواع داده ای، طرح ریزی، ادراک، محلی سازی و نقشه برداری همزمان ( Simultaneous localization and mapping ) ، ابزارهای شبیه سازی، و سایر الگوریتم ها را پیاده سازی می کنند.
کتابخانه های کلاینت اصلی ( C++, Python و Lisp ) بیشتر به دلیل وابستگی شان به مجموعه بزرگی از نرم افزاهای متن باز، منطبق با سیستم های شبه - یونیکس هستند. برای این کتابخانه های کلاینت، اوبونتو به عنوان «پشتیبانی شده» لیست شده است در حالی که سایر سیستم عامل ها مثل فدورا، مک اواس، و ماکروسافت ویندوز «آزمایش» هستند و به وسیلهٔ جامعه متن باز پشتیبانی می شوند. [ ۹] کتابخانه مشتری ROS جاوا نیتیو، rosjava، این محدودیت ها را ندارد و امکان نوشتن نرم افزارهای برپایه ROS برای اندروید را فراهم کرده است. [ ۱۰]
wiki: سیستم عامل روبات