In the next laboratory lesson, we will create our first application and our first package for Ros2.
So let's clarify the terminology we will use to define all the components and how they interact with
each other.
When we installed Ros two, we automatically installed several packages that offer numerous functionalities
for developing robotics applications.
Some of these packages are developed directly by the Open Source Robotics Foundation, but there are
also many others that are developed by independent entities such as universities or innovative companies
and are offered in an open source format and also are included in the default Ros two installation due
to their success.
In addition to these resources that will be very useful throughout the course to speed up the development
of our robot.
We will also implement new functionalities, so new packages that will add capabilities to our robot.
We will implement these software packages.
So these functionalities inside our folder of our PC that is called workspace.
The folder where we installed Ros two and saw the standard packages is called Underlay.
While our workspace where we will develop all the new robot code is called overlay.
The overlay will have access to all the packages that are provided by the standard installation of Ros2,
plus all the new software or the new packages that we will be developing during the course and is placed
in a folder that is called workspace.
Furthermore, the overlay not only contains all the new packages that are developed for a specific robot,
for a specific application, but can also include some of the packages that are already available in
the standard Ros two installation.
In this case, we can see, for example, that the package that I named Robot Vision with a fictional
name has been automatically installed with the installation and also it is present within the Ros two
overlay.
So within our workspace in this case, since this package exists both in the underlay and in the overlay,
the version that is used will be the one in the overlay because as the name suggests, the package is
in the overlay override those in the underlay that have the same name.
Finally.
Then, within each package that makes up our workspace, several files can be included that implement
the action functionalities of the robot or also can be configuration and startup files for all those
functionalities.