Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
ros [2015/10/28 13:42] nfave Created a basic form for the ROS page |
ros [2019/04/25 14:08] (current) |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Robot Operating system ====== | + | ====== Robot Operating System ====== |
+ | {{tag>software}} | ||
- | The Robot Operating System (ROS) is a set of software libraries and tools that help you build robot applications. It is organised in nodes, topic and services. Each node can subscribe or publish on a topic, allowing the node to communicate. The nodes can also proposed services that can be used by others nodes. For example, a node can have the addition service, if another node send a request to this service with two number, the node will answer with the sum of this numbers. | + | The Robot Operating System (ROS) is a set of software libraries and tools that help you build robot applications. It is organised in nodes, topic and services. Each node can subscribe or publish on a topic, allowing the node to communicate. The nodes can also proposed services that can be used by others nodes. For example, a node can have the addition service, if another node send a request to this service with two number, the node will answer with the sum of this numbers.http://wiki.ros.org/ |
===== Version ===== | ===== Version ===== | ||
- | The version of ROS used is the **Indigo distro** with the **Catkin format** for the packages. | + | The version of ROS used is the **Kinetic distro** with the **Catkin format** for the packages. |
===== Tutorials ===== | ===== Tutorials ===== | ||
Line 11: | Line 12: | ||
You can find some tutorials on the official website. It is advised to do the beginner level in order to understand how ROS works. Do not forget to check the distro and the type of package used. http://wiki.ros.org/ROS/Tutorials | You can find some tutorials on the official website. It is advised to do the beginner level in order to understand how ROS works. Do not forget to check the distro and the type of package used. http://wiki.ros.org/ROS/Tutorials | ||
- | {{tag>soft tool ros}} | + | ===== Packages ===== |
+ | Here is a list of the different packages used on the previous projects | ||
+ | |||
+ | {{topic>ros_package}} | ||
+ | |||
+ | [[openai_ros]] | ||
+ | ==== What is ROS ==== | ||
+ | |||
+ | http://www.ros.org/core-components/ | ||
+ | |||
+ | http://www.clearpathrobotics.com/2014/01/how-to-guide-ros-101 : "a particular sensor’s driver might be implemented as a node, which publishes sensor data in a stream of messages. These messages could be consumed by any number of other nodes, including filters, loggers, and also higher-level systems such as guidance, pathfinding, etc." | ||
+ | |||
+ | http://www.generationrobots.com/en/content/55-ros-robot-operating-system | ||
+ | |||
+ | ===== Best practice ===== | ||
+ | |||
+ | Still thinking about how to write this part. In the meantime, here are some good links on that topic: | ||
+ | |||
+ | https://github.com/ethz-asl/ros_best_practices/wiki | ||
+ | |||
+ | http://wiki.ros.org/ROS/Patterns/Communication#Topics_vs_Services_vs_Actionlib%E2%80%A6 | ||
+ | |||
+ | http://wiki.ros.org/CppStyleGuide | ||
+ | |||
+ | http://wiki.ros.org/DevelopersGuide#Standardization | ||
+ | |||
+ | http://wiki.ros.org/ROS/Patterns/Conventions#Naming_ROS_Resources | ||
+ | |||
+ | ===== Advices ===== | ||
+ | * It is advice to add the line "source path_to_your/catkin_ws/devel/setup.bash" to ~/.bashrc | ||
+ | |||
+ | ===== Projects using ROS in our lab ===== | ||
+ | |||
+ | {{topic>ROS}} |