Content deleted Content added
add j turtle name |
Frankg0n1627 (talk | contribs) m →ROS 2 |
||
(44 intermediate revisions by 26 users not shown) | |||
Line 8:
| author = [[Willow Garage]]<br/>[[Stanford Artificial Intelligence Laboratory]]<br/>[[Open Robotics]]
| released = {{Start date and age|2007}}
| latest release version =
| latest release date = {{Start date and age|df=yes|
| latest preview version =
| operating system = [[Linux]], [[macOS]] (experimental), [[Windows 10]] (experimental)
| genre = [[Robotics suite]], [[operating system|OS]], [[Library (computing)|library]]
| license = [[Apache License 2.0|Apache 2.0]]
| website = {{URL|www.ros.org}}
| AsOf =
| repo = {{URL|https://github.com/ros2/ros2}}
| programming language = [[C++]], [[Python (programming language)|Python]], and [[Lisp (programming language)|Lisp]]
}}
'''Robot Operating System''' ('''ROS''' or '''ros''') is an [[Open-source software|open-source]] [[robotics middleware]] suite. Although ROS is not an [[operating system]] (OS) but a set of [[software framework]]s for [[robot software]] [[software development| development]], it provides services designed for a heterogeneous [[computer cluster]] such as [[hardware abstraction]], low-level [[Device driver|device control]], implementation of commonly used functionality, [[Inter-process communication|message-passing between processes]], and [[Package manager|package management]]. Running sets of ROS-based processes are represented in a [[graph theory|graph]] architecture where processing takes place in nodes that may receive, post, and [[Multiplexing|multiplex]] sensor data, control, state, planning, actuator, and other messages. Despite the importance of reactivity and [[low latency]] in robot control, ROS is ''not'' a [[real-time operating system]] (RTOS). However, it is possible to integrate ROS with [[real-time computing]] code.<ref>{{Cite web|title=ROS/Introduction – ROS Wiki|url=http://wiki.ros.org/ROS/Introduction|access-date=2021-07-30|website=ROS.org|publisher=Open Robotics}}</ref> The lack of support for real-time systems has been addressed in the creation of ROS 2,<ref>{{cite web|last=Kay|first=Jackie|date=January 2016|title=Proposal for Implementation of Real-time Systems in ROS 2|url=http://design.ros2.org/articles/realtime_proposal.html|website=ROS.org|publisher=Open Robotics|access-date=23 January 2023}}</ref><ref>{{cite web|last=Kay|first=Jackie|date=January 2016|title=Realtime Design Guidelines For ROS 2|url=http://design.ros2.org/articles/realtime_background.html#design-guidelines-for-ros-2|website=ROS.org|publisher=Open Robotics|access-date=23 January 2023}}</ref><ref>{{cite web|title=ROS 2 For Realtime Applications|url=https://discourse.ros.org/t/ros2-for-real-time-applications/6493|website=ROS.org|publisher=Open Robotics|date=17 October 2018|access-date=22 November 2018}}</ref> a major revision of the ROS API which will take advantage of modern libraries and technologies for core ROS functions and add support for real-time code and [[embedded system]] hardware.
Software in the ROS [[Software ecosystem|Ecosystem]]<ref>{{cite web|url=http://www.ros.org/browse/list.php|title=Browsing packages for melodic|website=ROS.org|publisher=Open Robotics|access-date=21 February 2016|archive-date=24 September 2015|archive-url=https://web.archive.org/web/20150924092030/http://www.ros.org/browse/list.php|url-status=dead}}</ref> can be separated into three groups:
* language- and platform-independent tools used for building and distributing ROS-based software;
* ROS client library implementations such as {{Not a typo|roscpp}},<ref>{{cite web|title=Package Summary|url=http://wiki.ros.org/roscpp|website=ROS.org|publisher=Open Robotics|access-date=21 February 2016}}</ref> {{Not a typo|rospy}},<ref>{{cite web|title=Package SUmmary|url=http://wiki.ros.org/rospy|website=ROS.org|publisher=Open Robotics|access-date=21 February 2016}}</ref> and {{Not a typo|roslisp}};<ref>{{cite web|title=Package Summary|url=http://wiki.ros.org/roslisp|website=ROS.org|publisher=Open Robotics|access-date=21 February 2016}}</ref>
* packages containing application-related code
Both the language-independent tools and the main client libraries ([[C++]], [[Python (programming language)|Python]], and [[Lisp (programming language)|Lisp]]) are released under the terms of the [[BSD license]], and as such are [[open-source software]] and free for both commercial and research use. The majority of other packages are licensed under a variety of [[Open-source license|open-source licenses]]. These other packages implement commonly used functionality and applications such as hardware drivers, robot models, datatypes, planning, [[Robotic sensing|perception]], [[simultaneous localization and mapping]] (SLAM), [[Robotics simulator|simulation tools]], and other
The main ROS client libraries are geared toward a [[Unix-like]] system, mostly because of their dependence on large sets of open-source software dependencies. For these client libraries, [[Ubuntu (operating system)|Ubuntu Linux]] is listed as "Supported" while other variants such as [[Fedora (operating system)|Fedora Linux]], [[macOS]], and [[Microsoft Windows]] are designated "experimental" and are supported by the community.<ref>{{cite web|url=http://wiki.ros.org/ROS/Installation |title=ROS/Installation – ROS Wiki |website=ROS.org |publisher=Open Robotics |date=2013-09-29 |access-date=2014-07-12}}</ref> The native Java ROS client library, {{Not a typo|rosjava}},<ref>{{Cite web|url=http://wiki.ros.org/rosjava|title=rosjava – ROS Wiki|website=ROS.org|publisher=Open Robotics|access-date=2019-04-29}}</ref> however, does not share these limitations and has enabled ROS-based software to be written for the [[Android (operating system)|Android OS]].<ref>{{cite web|url=http://wiki.ros.org/android |title=android – ROS Wiki |website=ROS.org |publisher=Open Robotics |date=2014-04-12 |access-date=2014-07-12}}</ref> {{Not a typo|rosjava}} has also enabled ROS to be integrated into an officially supported [[MATLAB]] toolbox which can be used on [[Linux]], [[macOS]], and Microsoft Windows.<ref>{{cite web|url=http://www.mathworks.com/hardware-support/robot-operating-system.html |title=Robot Operating System (ROS) Support from MATLAB – Hardware Support |publisher=Mathworks.com |access-date=2014-07-12}}</ref> A [[JavaScript]] client library, {{Not a typo|roslibjs}}<ref>{{Cite web|url=http://wiki.ros.org/roslibjs|title=roslibjs – ROS Wiki|website=ROS.org|publisher=Open Robotics|access-date=2019-04-29}}</ref> has also been developed which enables integration of software into a ROS system via any standards-compliant web browser.
Line 32:
=== Early days at Stanford (2007 and earlier) ===
Sometime before 2007, the first pieces of what eventually would become ROS began coalescing at [[Stanford University]].<ref name=":0">{{Cite web|url=https://spectrum.ieee.org
In their first steps towards this unifying system, the two built the [[PR1 (robot)|PR1]] as a hardware prototype and began to work on software from it, borrowing the best practices from other early open-source robotic software frameworks, particularly switchyard, a system that Morgan Quigley, another Stanford PhD student, had been working on in support of the STanford Artificial Intelligence Robot (STAIR)<ref>{{cite web|url=https://news.stanford.edu/2019/01/16/stanfords-robot-makers-andrew-ng/ |title=Stanford's Robot Makers |date=16 January 2019}}</ref><ref>{{cite web|url=http://stair.stanford.edu/papers.php |title=STAIR: The STanford Artificial Intelligence Robot project |year=2008 |publisher=Snowbird Workshop|last1=Ng|first1=Andrew|first2=Stephen|last2=Gould|first3=Morgan|last3=Quigley|first4=Ashutosh|last4=Saxena|first5=Eric|last5=Berger}}</ref><ref>{{cite web|url=http://stair.stanford.edu/|title=STAIR|website=stair.Stanford.edu|access-date=12 December 2017}}</ref><ref>{{citation|last1=Quigley|first1=Morgan|title=STAIR: Hardware and Software Architecture|url=http://www.aaai.org/Papers/Workshops/2007/WS-07-15/WS07-15-008.pdf|year=2007|publisher=AAAI 2007 Robotics Workshop|last2=Berger|first2=Eric|last3=Ng|first3=Andrew Y.|author3-link=Andrew Ng}}</ref> by the [[Stanford Artificial Intelligence Laboratory]]. Early funding of US$50,000 was provided by [[Joanna Hoffman]] and [[Alain Rossmann]], which supported the development of the PR1. While seeking funding for further development,<ref>{{Cite
=== Willow Garage (
[[Willow Garage]] began developing the PR2 robot as a follow-up to the PR1, and ROS as the software to run it. Groups from more than twenty institutions made contributions to ROS, both the core software and the growing number of packages
In December 2008, Willow Garage met the first of
Following this, Willow Garage achieved one of its longest
[[File:ROS Antarctica sunset.jpg|thumb|An image of Robot Operating System (ROS) running in Antarctica
2011 was a banner year for ROS with the launch of ROS Answers, a Q/A forum for ROS users, on 15 February;<ref>{{cite web|url=http://www.ros.org/news/2011/02/announcing-ros-answers.html|title=Announcing ROS Answers – ROS robotics news|website=ROS.org|publisher=Open Robotics|access-date=12 December 2017}}</ref> the introduction of the highly successful [[TurtleBot]] robot kit on 18 April;<ref>{{cite web|url=http://www.willowgarage.com/blog/2011/04/18/turtlebots-available-preorder|title=ROS on the Move: TurtleBots available for preorder |website=Willow Garage|access-date=12 December 2017}}</ref> and the total number of ROS repositories passing 100 on 5 May.<ref>{{cite web|url=http://www.ros.org/news/2011/05/100-repositories.html|title=100 Repositories – ROS robotics news|website=ROS.org|publisher=Open Robotics|access-date=12 December 2017}}</ref> Willow Garage began 2012 by creating the [[Open Robotics |Open Source Robotics Foundation]] (OSRF)<ref>{{Cite web|url=http://www.willowgarage.com/blog/2012/04/16/open-source-robotics-foundation|title=Willow Garage Spins Out OSRF|access-date=13 October 2017|archive-date=6 November 2017|archive-url=https://web.archive.org/web/20171106081726/http://www.willowgarage.com/blog/2012/04/16/open-source-robotics-foundation|url-status=dead}}</ref> in April. The OSRF was immediately awarded a software contract by the [[DARPA|Defense Advanced Research Projects Agency]] (DARPA).<ref>{{Cite news|url=https://spectrum.ieee.org
In February 2013, the OSRF became the primary software maintainers for ROS,<ref>{{cite web|url=http://osrfoundation.org/blog/ros-at-osrf.html|title=Osrf – Ros @ Osrf|date=2013-02-11|publisher=Osrfoundation.org|access-date=2014-07-12}}</ref> foreshadowing the announcement in August that Willow Garage would be absorbed by its founders, [[Suitable Technologies]].<ref>{{cite web|url=http://www.willowgarage.com/blog/2013/08/21/willow-garage-employees-join-suitable-technologies|title=employees join Suitable Technologies|publisher=Willow Garage|access-date=2014-07-12|archive-date=8 October 2017|archive-url=https://web.archive.org/web/20171008140941/http://www.willowgarage.com/blog/2013/08/21/willow-garage-employees-join-suitable-technologies|url-status=dead}}</ref> At this point, ROS had released seven major versions (up to ROS Groovy),<ref name=":1">{{Cite web|url=http://wiki.ros.org/Distributions|title=Distributions – ROS Wiki|website=ROS.org|publisher=Open Robotics|access-date=2019-04-29}}</ref> and had users all over the globe. This chapter of ROS development would be finalized when [[Clearpath Robotics]] took over support responsibilities for
=== OSRF and Open Robotics (2013–present) ===
In the years since OSRF took over the primary development of ROS, a new version has been released every year,<ref name=":1"/> while interest in ROS continues to grow. ROSCons have occurred every year since 2012, co-located with either [[International Conference on Robotics and Automation|ICRA]] or [[International Conference On Intelligent Robots and Systems|IROS]], two flagship robotics conferences. Meetups of ROS developers have been organized in a variety of countries,<ref>{{Cite web|title=Notes from the first Korean ROS Users Meetup – ROS robotics news|url=https://www.ros.org/news/2015/01/notes-from-the-first-korean-ros-users-meetup.html|access-date=2021-07-30|website=ROS.org|publisher=Open Robotics}}</ref><ref>{{Cite web|url=http://www.ros.org/news/2016/01/invitation-to-the-first-danish-ros-meetup.html|title=First Danish ROS Meetup}}</ref><ref>{{Cite web|url=http://www.ros.org/news/2017/03/invitation-to-the-first-ukrainian-ros-meetup.html|title=First Ukrainian ROS Meetup}}</ref> a number of ROS books have been published,<ref>{{cite web|url=http://shop.oreilly.com/product/0636920024736.do|title=Programming Robots with ROS: A Practical Introduction to the Robot Operating System|website=OReilly.com|access-date=12 December 2017}}</ref> and many educational programs initiated.<ref>{{Cite web|url=http://www.ros.org/news/2015/08/report-from-first-ros-summer-school-in-china.html|title=Report from first ROS Summer School in China – ROS robotics news|website=ROS.org|publisher=Open Robotics|access-date=2018-11-24}}</ref><ref>{{Cite web|url=http://www.theconstructsim.com/construct-learn-develop-robots-using-ros/robotigniteacademy_learnros/|title=ROS Robot Ignite Academy}}</ref> On 1 September 2014, [[NASA]] announced the first robot to run ROS in space: [[Robonaut|Robotnaut 2]], on the [[International Space Station]].<ref>{{cite web|url=http://www.ros.org/news/2014/09/ros-running-on-iss.html|title=ROS running on ISS – ROS robotics news|website=ROS.org|publisher=Open Robotics|access-date=12 December 2017}}</ref> In 2017, the OSRF changed its name to [[Open Robotics]]. Tech giants [[Amazon (company)|Amazon]] and [[Microsoft]] began to take an interest in ROS during this time, with Microsoft porting core ROS to Windows in September 2018,<ref>{{Cite web|url=https://ros-win.visualstudio.com/ros-win|title=Summary|website=ros-win.visualstudio.com|access-date=2019-04-29}}</ref> followed by Amazon Web Services releasing RoboMaker in November 2018.<ref>{{Cite web|url=https://aws.amazon.com/about-aws/whats-new/2018/11/announcing-aws-robomaker-a-new-cloud-robotics-service/|title=Announcing AWS RoboMaker|website=Amazon Web Services, Inc.|language=en-US|access-date=2019-04-29}}</ref>
Perhaps the most important development of the OSRF/Open Robotics years thus far (not to discount the explosion of robot platforms
==Design==
Line 58:
=== Philosophy ===
[[File:Ros Equation.png|thumb|An image depicting the ROS equation: Plumbing + Tools + Capabilities + Ecosystem = ROS!|alt=An image depicting the ROS equation: Plumbing + Tools + Capabilities + Ecosystem = ROS!|500x500px]]
ROS was designed to be open source, intending that users would be able to choose the configuration of tools and libraries
=== Computation graph model ===
ROS processes are represented as nodes in a graph structure, connected by edges called topics.<ref name=":3">{{Cite web|url=http://wiki.ros.org/ROS/Tutorials/UnderstandingNodes|title=ROS/Tutorials/UnderstandingNodes – ROS Wiki|website=ROS.org|publisher=Open Robotics|access-date=2019-04-29}}</ref> ROS nodes can pass messages to one another through topics, make service calls to other nodes, provide a service for other nodes, or set or retrieve shared data from a communal database called the parameter server. A process called the
==== Nodes ====
A node represents one process running the ROS graph. Every node has a name, which
==== Topics ====
Line 70:
==== Services ====
A node may also advertise services.<ref name=":4">{{Cite web|url=http://wiki.ros.org/ROS/Tutorials/UnderstandingServicesParams|title=ROS/Tutorials/UnderstandingServicesParams – ROS Wiki|website=ROS.org|publisher=Open Robotics|access-date=2019-04-29}}</ref> A service represents an action that a node can take which will have a single result. As such, services are often used for actions
==== Parameter server ====
The parameter server<ref name=":4"/> is a database shared between nodes which allows for communal access to static or semi-static information. Data
==Tools==
ROS's core functionality is augmented by a variety of tools
=== {{Not a typo|rviz}} ===
{{Not a typo|rviz}}<ref>{{Cite web|url=http://wiki.ros.org/rviz|title=rviz – ROS Wiki|website=ROS.org|publisher=Open Robotics|access-date=2019-04-23}}</ref> (Robot Visualization tool) is a three-dimensional visualizer used to visualize robots, the environments they work in, and sensor data. It is a highly configurable tool, with many different types of visualizations and plugins. Unified Robot Description Format ([[URDF]]) is an [[XML]] file format for robot model description.
==={{Not a typo|rosbag}}===
{{Not a typo|rosbag}}<ref>{{Cite web|url=http://wiki.ros.org/rosbag|title=rosbag – ROS Wiki|website=ROS.org|publisher=Open Robotics|access-date=2019-04-23}}</ref> is a command line tool used to record and playback ROS message data. {{Not a typo|rosbag}} uses a file format called bags,<ref>{{Cite web|url=http://wiki.ros.org/Bags|title=Bags – ROS Wiki|website=ROS.org|publisher=Open Robotics|access-date=2019-04-23}}</ref> which log ROS messages by listening to topics and recording messages as they come in. Playing messages back from a bag is largely the same as having the original nodes
=== catkin ===
catkin<ref>{{Cite web|url=http://wiki.ros.org/catkin|title=catkin – ROS Wiki|website=ROS.org|publisher=Open Robotics|access-date=2019-04-29}}</ref> is the ROS build system, having replaced {{Not a typo|rosbuild}}<ref>{{Cite web|url=http://wiki.ros.org/rosbuild|title=rosbuild – ROS Wiki|website=ROS.org|publisher=Open Robotics|access-date=2019-04-29}}</ref> as of ROS Groovy. catkin is based on [[CMake]]
==={{Not a typo|rosbash}}===
The {{Not a typo|rosbash}}<ref>{{Cite web|url=http://wiki.ros.org/rosbash|title=rosbash – ROS Wiki|website=ROS.org|publisher=Open Robotics|access-date=2019-04-23}}</ref> package provides a suite of tools which augment the functionality of the [[Bash (Unix shell)|bash shell]]. These tools include {{Not a typo|rosls}}, {{Not a typo|roscd}}, and {{Not a typo|roscp}}, which replicate the functionalities of [[ls]], [[Cd (command)|cd]], and [[Cp (Unix)|cp]] respectively. The ROS versions of these tools allow users to use {{Not a typo|ros}} package names in place of the file path where the package is located. The package also adds tab-completion to most ROS utilities
==={{Not a typo|roslaunch}}===
{{Not a typo|roslaunch}}<ref>{{Cite web|url=http://wiki.ros.org/roslaunch|title=roslaunch – ROS Wiki|website=ROS.org|publisher=Open Robotics|access-date=2019-04-23}}</ref> is a tool used to launch multiple ROS nodes both locally and remotely, as well as setting parameters on the ROS parameter server. {{Not a typo|roslaunch}} configuration files, which are written using [[XML]] can easily automate a complex startup and configuration process into a single command. {{Not a typo|roslaunch}} scripts can include other {{Not a typo|roslaunch}} scripts, launch nodes on specific machines, and even restart processes
== Packages of note ==
ROS contains many open-source implementations of common robotics functionality and algorithms. These open-source implementations are organized into packages. Many packages are included as part of ROS distributions, while others may be developed by individuals and distributed through code
=== Systems and tools ===
Line 112:
* ''navigation''<ref>{{Cite web|url=http://wiki.ros.org/navigation|title=navigation – ROS Wiki|website=ROS.org|publisher=Open Robotics|access-date=2019-04-29}}</ref> provides the capability of navigating a mobile robot in a planar environment.
=== Manipulation ===
* ''MoveIt!''<ref>{{Cite web |title=MoveIt Motion Planning Framework |url=https://moveit.ros.org/ |website=ROS MoveIt!}}</ref> provides motion planning capabilities for [[Manipulator (device)|robot manipulators]]. Its default planning library is the [https://ompl.kavrakilab.org/ Open Motion Planning Library (OMPL)].<ref>{{Cite web |title=MoveIt Documentation: Rolling |url=https://moveit.picknik.ai/main/doc/concepts/motion_planning.html}}</ref>
=== Perception ===
Line 128 ⟶ 132:
==Versions and releases==
ROS releases may be incompatible with other releases and are often referred to by code name rather than version number. ROS 2 currently releases a version every year in May, following the release of Ubuntu LTS versions.<ref>{{Cite web|url=https://discourse.ros.org/t/proposed-changes-to-the-ros-releases/4736|title=ROS Release Schedule Changes|date=9 May 2018}}</ref><ref>{{Cite
===ROS 1===
Line 148 ⟶ 152:
|Melodic Morenia
|23 May 2018
|
|{{Version|o|2023-05-30}}
|5 years
Line 243 ⟶ 247:
|N/A
|-
|Kilted Kaiju
|Jazzy Jalisco<ref name="jazzy" />▼
|23 May
|[[File:Kilted-kaiju.png|75px|Kilted Kaiju Logo]]
|{{Version|p|
|1.5 years
|-
|23 May 2024<ref name="jazzy release">{{cite web | url=https://discourse.ros.org/t/ros-2-jazzy-jalisco-released/37862 | title=ROS 2 Jazzy Jalisco Released! | date=23 May 2024 }}</ref>
|[[File:ROS2 Jazzy Jalisco poster.png|75px|The release poster for ROS 2 Jazzy Jalisco.]]
|{{Version|c|May 2029}}
|5 years
|-
Line 252 ⟶ 262:
|23 May 2023<ref>{{cite web | url=https://discourse.ros.org/t/ros-2-iron-irwini-released/31553 | title=ROS 2 Iron Irwini Released! | date=23 May 2023 }}</ref>
|[[File:ROS2 Iron Irwini poster.png|75px|The release poster for ROS 2 Iron Irwini.]]
|{{Version|
|1.5 years
|-
Line 258 ⟶ 268:
|23 May 2022<ref>{{cite web | url=https://discourse.ros.org/t/ros-2-humble-hawksbill-released/25729 | title=ROS 2 Humble Hawksbill Released! | date=23 May 2022 }}</ref>
|[[File:ROS2 Humble Hawksbill poster.png|75px|The release poster for ROS 2 Humble Hawksbill.]]
|{{Version|co|
|5 years
|-
Line 264 ⟶ 274:
|23 May 2021<ref>{{Cite web|url=https://discourse.ros.org/t/ros-2-galactic-geochelone-released/20559|title=ROS Galactic Geochelone Released |date=23 May 2021 |access-date=2021-07-10}}</ref>
|[[File:ROS2 Galactic Geochelone poster.jpg|75px|The release poster for ROS 2 Galactic Geochelone.]]
|{{Version|o|
|1.5 years
|-
Line 270 ⟶ 280:
|5 June 2020<ref>{{Cite web|url=https://discourse.ros.org/t/ros-foxy-fitzroy-released/14495|title=ROS Foxy Fitzroy Released |date=5 June 2020 |access-date=2020-06-24}}</ref>
|[[File:ROS2_Foxy_Fitzroy_poster.png|75px|The release poster ROS 2 Foxy Fitzroy.]]
|{{Version|o|
|3 years
|-
Line 340 ⟶ 350:
|-
|(batch CI jobs for ROS 2<br/>and http://design.ros2.org)
|referenced in Q&A<br/>6 May 2015<ref>{{Cite web|url=https://answers.ros.org/question/208560/is-there-a-release-date-of-ros-2-or-more-informations-about-it/|title=Is there a release date of ros 2 or more
|N/A
|N/A
Line 361 ⟶ 371:
=== ROS-Industrial ===
ROS-Industrial<ref>{{cite web|url=https://rosindustrial.org/about/description/|title=ROS-Industrial About|website=rosindustrial.org|access-date=12 December 2017}}</ref> is an open-source project (BSD (legacy)/Apache 2.0 (preferred) license) that extends the advanced abilities of ROS to manufacturing automation and robotics. In the industrial environment, there are two different approaches to programming a robot: either through an external proprietary controller, typically implemented using ROS, or via the respective native programming language of the robot. ROS can therefore be seen as the software-based approach to
The ROS-Industrial repository includes interfaces for common industrial manipulators, grippers, sensors, and device networks. It also provides software libraries for automatic 2D/3D sensor calibration, process path/motion planning, applications like Scan-N-Plan, developer tools like the Qt Creator ROS Plugin, and training
The Consortia supports the global ROS-Industrial community by conducting ROS-I training, providing technical support and setting the future roadmap for ROS-I, as well as conducting
=== Space ROS ===
In November 2020, NASA announced Blue Origin had been selected through the Space Technology Mission Directorate’s Announcement of Collaboration Opportunity (ACO) to co-develop [[Space Robot Operating System]] (Space ROS) together with three NASA centers.<ref>{{Cite web |date=2020-11-09 |title=2020 NASA Announcement of Collaboration Opportunity (ACO) Selections - NASA |url=https://www.nasa.gov/missions/station/2020-nasa-announcement-of-collaboration-opportunity-aco-selections/ |access-date=2024-10-31 |language=en-US}}</ref> The purpose of Space ROS is to provide a reusable and modular software framework for robotic and autonomous space systems predicated on ROS 2 that is compliant to aerospace mission and safety assurance requirements (such as NPR 7150.2 and DO-178C). The project was formulated and led by [[S. Will Chambers|Will Chambers]],<ref>{{Cite AV media |url=https://www.youtube.com/watch?v=HtjYBQ8gZkc |title=RDP120: Space ROS |date=2023-03-13 |last=The Construct |access-date=2024-10-31 |via=YouTube}}</ref> Blue Origin's principal technologist of robotics at the time. In 2021, Blue Origin subcontracted software development workload to Open Robotics who remained on the team until the program ended in 2022. Space ROS is currently an open community project.<ref>{{Cite web |title=Home |url=https://space.ros.org |access-date=2024-10-31 |website=space.ros.org}}</ref><ref>{{Cite web |title=Space ROS |url=https://github.com/space-ros |access-date=2024-10-31 |website=GitHub |language=en}}</ref> [[PickNik Robotics]] and Open Source Robotics Foundation currently lead the Space ROS effort.<ref>{{Cite web |title=Space ROS {{!}} Space Robotics Operating System |url=https://picknik.ai/space-ros |access-date=2024-10-31 |website=PickNik |language=en}}</ref>
==ROS-compatible robots and hardware ==
Line 374 ⟶ 387:
*[[Baxter (robot)|Baxter]]<ref>{{Cite web|date=2014-07-24|title=Baxter Research Robots Q&A {{!}} Rethink Robotics|url=http://www.rethinkrobotics.com/products/baxter-research-robot/baxter-research-robot-qa/|access-date=2021-07-30|archive-url=https://web.archive.org/web/20140724092354/http://www.rethinkrobotics.com/products/baxter-research-robot/baxter-research-robot-qa/|archive-date=24 July 2014}}</ref> at [[Rethink Robotics]], Inc.
*CK-9: robotics development kit by Centauri Robotics, supports ROS.<ref>{{Cite web|title=CK-9 {{!}} Centauri Robotics|url=https://centaurirobotics.in/dev/|access-date=2021-07-30|website=centaurirobotics.in|language=en}}</ref>
* GoPiGo3: Raspberry Pi-based educational robot, supports ROS.<ref>{{Cite web|title=Robots/gopigo3 – ROS Wiki|url=http://wiki.ros.org/Robots/gopigo3|website=ROS.org|publisher=Open Robotics|access-date=2021-07-30}}</ref>▼
*HERB<ref>{{cite web|url=http://personalrobotics.intel-research.net/|title=CMU Personal Robotics Lab|website=personalrobotics.Intel-Research.net|access-date=12 December 2017}}</ref> developed at [[Carnegie Mellon University]] in Intel's personal robotics program
* Husky A200: robot developed (and integrated into ROS) by [[Clearpath Robotics]]<ref>{{cite web|url=http://www.clearpathrobotics.com/husky|title=Husky UGV – Outdoor Field Research Robot by Clearpath|website=ClearPathRobotics.com|access-date=12 December 2017}}</ref>
* Nao<ref>{{cite web|url=http://www.ros.org/wiki/nao|title=nao – ROS Wiki|date=2013-10-28|website=ROS.org|publisher=Open Robotics|access-date=2014-07-12}}</ref> humanoid: [[University of Freiburg]]'s Humanoid Robots Lab<ref>{{Cite web|title=Welcome to the Humanoid Robots Lab at the University of Bonn!|url=https://www.hrl.uni-bonn.de/|access-date=2021-07-30|website=Humanoid Robots Lab – University of Bonn|language=en}}</ref> developed a ROS integration for the [[Nao (robot)|Nao humanoid]] based on an initial port by Brown University<ref>{{Cite web|date=2013-01-28|title=Brown University Robotics|url=http://brown-robotics.org/wp/|access-date=2021-07-30|archive-url=https://web.archive.org/web/20130128102401/http://brown-robotics.org/wp/|archive-date=28 January 2013}}</ref><ref>{{Cite web|date=2013-10-29|title=[ros-users] ROS NAO Driver|url=http://code.ros.org/lurker/message/20091101.232446.5217521d.gl.html|access-date=2021-07-30|archive-url=https://web.archive.org/web/20131029185136/http://code.ros.org/lurker/message/20091101.232446.5217521d.gl.html|archive-date=29 October 2013}}</ref>▼
* PR1: personal robot developed in Ken Salisbury's lab at Stanford<ref>{{cite web|url=http://personalrobotics.stanford.edu/|title=Stanford Personal Robotics Program|website=personalrobotics.Stanford.edu|access-date=12 December 2017}}</ref>
* PR2: personal robot being developed at Willow Garage<ref>{{Cite web|date=2010-06-20|title=Featured |website=Willow Garage|url=http://www.willowgarage.com/pages/robots|access-date=2021-07-30|archive-url=https://web.archive.org/web/20100620075853/http://www.willowgarage.com/pages/robots|archive-date=20 June 2010}}</ref>
* Raven II Surgical Robotic Research Platform<ref>B. Hannaford, J. Rosen, Diana CW Friedman, H. King, P. Roan, L. Cheng, D. Glozman, J. Ma, S.N. Kosari, L. White, 'Raven-II: AN Open Platform for Surgical Robotics Research,' IEEE Transactions on Biomedical Engineering, vol. 60, pp. 954-959, April 2013.</ref><ref>{{cite web|url=http://brl.ee.washington.edu/laboratory/|title=BioRobotics Laboratory | Biorobotics Laboratory – University of Washington|publisher=Brl.ee.washington.edu|access-date=2014-07-12|archive-date=14 July 2014|archive-url=https://web.archive.org/web/20140714210830/http://brl.ee.washington.edu/laboratory/|url-status=dead}}</ref>
* ROSbot: autonomous robot platform by Husarion<ref>{{Cite web|title=ROSbot 2.0 & ROSbot 2.0 PRO · Husarion Docs|url=https://husarion.com/|access-date=2021-07-30|website=husarion.com|language=en}}</ref>▼
* Shadow Robot Hand:<ref>{{Cite web|title=Dexterous Hand Series – Shadow Robot Company|url=https://www.shadowrobot.com/dexterous-hand-series/|access-date=2021-07-30}}</ref> a fully dexterous humanoid hand.
* STAIR I and II:<ref>{{Cite web|title=STAIR|url=http://stair.stanford.edu/index.php|access-date=2021-07-30|website=stair.stanford.edu}}</ref> robots developed in [[Andrew Ng]]'s lab at Stanford
* Stretch: an integrated mobile manipulator by Hello Robot targeting assistive applications.<ref>{{Cite web|title=Hello Robot|url=https://hello-robot.com}}</ref><ref>{{Cite web|title=This Robot Could Be The Key To Empowering People With Disabilities|url=https://spectrum.ieee.org/stretch-assistive-robot}}</ref>
* SummitXL:<ref>{{cite web|url=http://www.robotnik.eu/mobile-robots/summit-xl/|title=Summit XL – Robotnik|publisher=Robotnik.es|access-date=2014-07-12}}</ref> mobile robot developed by [[Robotnik Automation|Robotnik]], an engineering company specialized in mobile robots, robotic arms, and industrial solutions with ROS architecture.
* UBR1:<ref>{{cite web|url=http://unboundedrobotics.com/ubr-1/specification/|title=Specification|publisher=Unbounded Robotics|access-date=2014-07-12|archive-date=28 April 2015|archive-url=https://web.archive.org/web/20150428054222/http://unboundedrobotics.com/ubr-1/specification/|url-status=dead}}</ref><ref>{{cite web|url=https://spectrum.ieee.org
▲* Nao<ref>{{cite web|url=http://www.ros.org/wiki/nao|title=nao – ROS Wiki|date=2013-10-28|website=ROS.org|publisher=Open Robotics|access-date=2014-07-12}}</ref> humanoid: [[University of Freiburg]]'s Humanoid Robots Lab<ref>{{Cite web|title=Welcome to the Humanoid Robots Lab at the University of Bonn!|url=https://www.hrl.uni-bonn.de/|access-date=2021-07-30|website=Humanoid Robots Lab – University of Bonn|language=en}}</ref> developed a ROS integration for the [[Nao (robot)|Nao humanoid]] based on an initial port by Brown University<ref>{{Cite web|date=2013-01-28|title=Brown University Robotics|url=http://brown-robotics.org/wp/|access-date=2021-07-30|archive-url=https://web.archive.org/web/20130128102401/http://brown-robotics.org/wp/|archive-date=28 January 2013}}</ref><ref>{{Cite web|date=2013-10-29|title=[ros-users] ROS NAO Driver|url=http://code.ros.org/lurker/message/20091101.232446.5217521d.gl.html|access-date=2021-07-30|archive-url=https://web.archive.org/web/20131029185136/http://code.ros.org/lurker/message/20091101.232446.5217521d.gl.html|archive-date=29 October 2013}}</ref>
▲* UBR1:<ref>{{cite web|url=http://unboundedrobotics.com/ubr-1/specification/|title=Specification|publisher=Unbounded Robotics|access-date=2014-07-12|archive-date=28 April 2015|archive-url=https://web.archive.org/web/20150428054222/http://unboundedrobotics.com/ubr-1/specification/|url-status=dead}}</ref><ref>{{cite web|url=https://spectrum.ieee.org/automaton/robotics/industrial-robots/unbounded-robotics-revolutionizes-affordable-mobile-manipulation-with-ubr1|title=UBR-1 Robot From Unbounded Robotics Revolutionizes Affordable Mobile Manipulation |last=Ackerman|first=Evan|date=2013-10-21|publisher=IEEE Spectrum|access-date=2014-07-12}}</ref> developed by Unbounded Robotics, a spin-off of Willow Garage.
▲* ROSbot: autonomous robot platform by Husarion<ref>{{Cite web|title=ROSbot 2.0 & ROSbot 2.0 PRO · Husarion Docs|url=https://husarion.com/|access-date=2021-07-30|website=husarion.com|language=en}}</ref>
*[[Webots]]: robot simulator integrating a complete ROS programming interface.<ref>{{cite web|url=https://www.cyberbotics.com/doc/guide/using-ros|title=Using ROS with Webots|access-date=2018-05-18}}</ref>
▲* GoPiGo3: Raspberry Pi-based educational robot, supports ROS.<ref>{{Cite web|title=Robots/gopigo3 – ROS Wiki|url=http://wiki.ros.org/Robots/gopigo3|website=ROS.org|publisher=Open Robotics|access-date=2021-07-30}}</ref>
=== SBCs and hardware ===
* BeagleBoard: the robotics lab of the [[Katholieke Universiteit Leuven]], [[Belgium]]<ref>{{Cite web|date=2013-10-29|title=Koen Buys|url=http://people.mech.kuleuven.be/~u0062536/embsensor.html|access-date=2021-07-30|archive-url=https://web.archive.org/web/20131029192925/http://people.mech.kuleuven.be/~u0062536/embsensor.html|archive-date=29 October 2013}}</ref> has ported ROS to the [[Beagleboard]].
* Raspberry Pi: image of Ubuntu Mate with ROS<ref>{{cite web|url=https://downloads.ubiquityrobotics.com/ |title=Ubiquity Robotics Downloads |access-date=29 January 2018}}</ref> by Ubiquity Robotics; installation guide for Raspbian
*[[Sitara ARM Processor|Sitara ARM Processors]] have support for the ROS package as part of the official Linux SDK.<ref>{{Cite web|title=5.3.6. ROS and Radar – Processor SDK Linux Documentation|url=http://software-dl.ti.com/processor-sdk-linux/esd/docs/latest/linux/Examples_and_Demos/Application_Demos/ROS_Radar.html|website=software-dl.ti.com|access-date=2020-05-01}}</ref>
▲* Raspberry Pi: image of Ubuntu Mate with ROS<ref>{{cite web|url=https://downloads.ubiquityrobotics.com/ |title=Ubiquity Robotics Downloads |access-date=29 January 2018}}</ref> by Ubiquity Robotics; installation guide for Raspbian.<ref>{{cite web|url=http://wiki.ros.org/ROSberryPi/Installing%20ROS%20Kinetic%20on%20the%20Raspberry%20Pi |title=ROSberryPi/Installing ROS Kinetic on the Raspberry Pi |access-date=29 January 2018}}</ref>
==See also==
{{Portal|Free and open-source software}}
* [[Open-source hardware]]
* [[Robotics middleware]]▼
* [[Open-source software]]
▲* [[Robotics middleware]]
*[[List of free and open-source software packages]]
|