ROS (операционная система)
ROS (Robot Operating System) — Операционная система для роботов — это экосистема для программирования роботов, предоставляющий функциональность для распределённой работы. ROS был первоначально разработан в 2007 году под названием switchyard в Лаборатории Искусственного Интеллекта Стэнфордского Университета для проекта (STAIR[1]).
В 2008 году развитие продолжается в Willow Garage, научно-исследовательском институте/инкубаторе робототехники, совместно с более чем двадцатью сотрудничающими институтами.[2][3]
ROS | |
---|---|
| |
Тип | робототехника, ОС, библиотека |
Автор | Keenan Wyrobek[d][4] |
Разработчики | Willow Garage, Stanford Artificial Intelligence Laboratory |
Написана на | C++, Python |
Операционная система | Linux, Mac OS X |
Первый выпуск | 2007 |
Последняя версия | Noetic Ninjemys[5] (23 мая 2020 ) |
Лицензия | BSD |
Сайт | ros.org (англ.) |
Медиафайлы на Викискладе |
Особенности
ROS обеспечивает стандартные службы операционной системы, такие как: аппаратную абстракцию, низкоуровневый контроль устройств, реализацию часто используемых функций, передачу сообщений между процессами, и управление пакетами. ROS основан на архитектуре графов, где обработка данных происходит в узлах, которые могут получать и передавать сообщения между собой. Библиотека ориентирована на Unix-подобные системы (Ubuntu Linux включен в список «поддерживаемых», в то время как другие варианты, такие как Fedora и Mac OS X, считаются «экспериментальными»).
ROS имеет две основные «стороны»: стороны операционной системы ros, как описано выше и ros-pkg, набор поддерживаемых пользователями пакетов (организованных в наборы, которые называются стек), которые реализуют различные функции робототехники: SLAM, планирование, восприятие, моделирование и др.
ROS выпускается в соответствии с условиями BSD-лицензии и c открытым исходным кодом. ROS бесплатен для использования, как в исследовательских, так и в коммерческих целях. Пакеты из ros-pkg распространяются на условиях различных открытых лицензий.
Поддерживаемые роботы
- PR2
- TurtleBot
- PR1
- HERB
- STAIR I и II
- Nao: Nao
- Husky A200
- iRobot Create
- Lego Mindstorms NXT
- Z-Robotics MultiBOTv2
- Hwashi (экспериментально)
Версии
Поставщик | Дата выпуска | Постер | Дата End-of-life | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Noetic Ninjemys (последний ROS 1 выпуск) |
23 мая, 2020 | Май 2025 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Melodic Morenia | Май, 2018 | Май, 2023 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Lunar Loggerhead | 23 мая, 2017 | Май, 2019 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kinetic Kame | 23 мая, 2016 | 2021-05-30 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Jade | 23 мая, 2015 | 2017-05-30 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Indigo | 22 июля, 2014 | 2019-04-30 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Hydro | 4 сентября, 2013 | 2014-05-31 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Groovy Galapagos | 31 декабря, 2012 | 2014-07-31 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Fuerte Turtle | 23 апреля, 2012 | -- | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Electric Emys | 30 августа, 2011 | -- | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Diamondback | 2 марта, 2011 | -- | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
C Turtle | 2 августа, 2010 | -- | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Box Turtle | 2 марта, 2010 | -- | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Старая версия, не поддерживается Старая поддерживаемая версия Текущая версия Будущая версия |
Примечания
- Morgan Quigley, Eric Berger, Andrew Y. Ng (2007), STAIR: Hardware and Software Architecture, AAAI 2007 Robotics Workshop, <http://www.aaai.org/Papers/Workshops/2007/WS-07-15/WS07-15-008.pdf>
- Repositories (недоступная ссылка). ROS.org. Дата обращения: 7 июня 2011. Архивировано 2 сентября 2012 года.
- Morgan Quigley, Brian Gerkey, Ken Conley, Josh Faust, Tully Foote, Jeremy Leibs, Eric Berger, Rob Wheeler, Andrew Ng. ROS: an open-source Robot Operating System (недоступная ссылка). Дата обращения: 3 апреля 2010. Архивировано 2 сентября 2012 года.
- https://spectrum.ieee.org/automaton/robotics/robotics-software/wizards-of-ros-willow-garage-and-the-making-of-the-robot-operating-system
- - ROS Wiki
- STAIR: The STanford Artificial Intelligence Robot project, Andrew Y. Ng, Stephen Gould, Morgan Quigley, Ashutosh Saxena, Eric Berger. Snowbird, 2008.
Литература
- Lentin Joseph. Robot Operating System (ROS) for Absolute Beginners: Robotics Programming Made Easy. — Apress, 2018. — ISBN 9781484234051.
- William D. Smart, Brian Gerkey, Morgan Quigley. Programming Robots with ROS. — O'Reilly Media, Inc., 2015. — ISBN 9781449323899.
- Wyatt Newman. A Systematic Approach to Learning Robot Programming with ROS. — Chapman and Hall/CRC, 2017. — ISBN 9781498777872.