WEBVTT

00:00.400 --> 00:07.070
The Rose to Control library is amazing, as you will see in your career as a robotic software developer.

00:07.090 --> 00:13.900
Almost every robot you will work with will use this library in some way as it solves a fundamental problem

00:13.900 --> 00:18.250
in robotics and does so in a modular and flexible manner.

00:19.150 --> 00:26.080
This library also allows us to activate our simple manipulator robot with only three degrees of freedom,

00:26.230 --> 00:34.240
but it is also used to actuate and coordinate the movement of the wheels of mobile robots and to obtain

00:34.240 --> 00:38.410
feedback to calculate their odometry and so to localize the robots.

00:38.590 --> 00:45.640
And in general it can be used for any other type of robot, regardless of its complexity or the number

00:45.640 --> 00:51.520
of joints that it has and the type of sensors and also independently of the control logic.

00:52.460 --> 00:59.060
This is possible thanks to the configurability and flexibility offered by this library, which can be

00:59.060 --> 01:05.600
configured in many different ways to meet the requirement and the needs of each robot, no matter how

01:05.600 --> 01:07.340
different and unique it is.

01:07.940 --> 01:13.190
In the previous section of the course, we learned how to interact with the parameters of a Ros two

01:13.190 --> 01:18.980
node and how to assign a value to each parameter through the command line interface.

01:18.980 --> 01:22.940
So through the Ubuntu terminal and through the launch files.

01:23.750 --> 01:30.560
However, when I notice so many configurable parameters, we need an easier and more user friendly way

01:30.560 --> 01:36.620
to set all those parameters and also to have an overview of of which values we are setting for each

01:36.620 --> 01:37.400
parameter.

01:38.300 --> 01:41.500
This is where Yaml configuration file comes in.

01:41.510 --> 01:48.860
In Rust two, they allow us to define all the configuration parameters of a node or an application in

01:48.860 --> 01:55.100
a comprehensible, simple and quick format and set all those parameters in one go.

01:55.100 --> 02:00.500
So with a single command so that they are available to a node at runtime.

02:01.740 --> 02:10.590
With the Yaml format variables, object of a class vectors and so on can be represented in a human readable

02:10.590 --> 02:11.160
way.

02:11.550 --> 02:18.450
This allows the values of each parameters to be easily modified and also provides a quick and complete

02:18.450 --> 02:22.410
overview of the configuration parameter that each node is using.

02:23.590 --> 02:28.480
These configuration files for a node starts with the name of the node itself.

02:28.480 --> 02:31.210
That in this case is the controller manager.

02:31.480 --> 02:37.320
Then the Ross parameter tag is used to indicate that we intend to configure this node.

02:37.330 --> 02:41.100
So to set the Ros two parameters of this node.

02:41.110 --> 02:48.400
And then there are the actual parameters of the node, which consists of a name as declared by the node,

02:48.400 --> 02:52.420
and then the value that we want to assign to configure this parameter.
