Robot Operating System
(ROS)
What is ROS and its benefits?
- General purpose mechanism for robot modules
- Provides unified high-level protocols
- Code reuse and package management
- Loose-coupling between different modules
- Allows developers to focus on their robot logic rather than reinventing the wheel
How does it work?
- Nodes: modules/processes that perform computations
- Messages: a data structure that nodes use to communicate
- Topics: message transport layer with subscribe/public methods
How does it work?
- Services: message transport layer with
request/response interactions
- Master: stores connections
- Parameters: global variables
Gazebo
- 3D world simulator compatible with ROS
- Use your own robot model
- Create worlds to simulate the robot in it
- Test the physics of the robot
Video 1: Nodes, Topics, Parameters with Turtlesim and TurtleBot
https://www.youtube.com/watch?
v=HqBwPUnwxsM&list=PL_2PosskAdC0lfoecAPKBV4GJ0oZv7W_X&index=2
Video 1: Services, Actions with Turtlesim and TurtleBot
https://www.youtube.com/watch?
v=DW5CtASlAJo&list=PL_2PosskAdC0lfoecAPKBV4GJ0oZv7W_X&index=2