WEBVTT

00:00.950 --> 00:08.720
I will try to give you a simple example to help you understand the power of Ros2 and its enormous advantages.

00:09.460 --> 00:15.760
At the end of this course, you will have a manipulator robot that you can use to develop and test your

00:15.760 --> 00:20.440
new algorithms for object grasping and trajectory planning.

00:20.980 --> 00:27.310
Let's assume that you decide to add a camera to the robot and want to use it to develop a computer vision

00:27.310 --> 00:32.470
algorithm that detects and gestures and moves the robot accordingly.

00:32.980 --> 00:38.800
Let's also assume that to implement this functionality you decide not to use ros2.

00:38.980 --> 00:44.380
And so to directly interface your script with the robot's motors and the camera.

00:45.070 --> 00:50.410
You are proud and satisfied with your work to the point that you show it to your friend and colleagues,

00:50.410 --> 00:55.930
and you even receive a job offer from a robotics company in your new job.

00:55.960 --> 01:02.350
They ask you to implement the same functionality, but on a larger and more advanced robot that uses

01:02.350 --> 01:04.840
also a different camera and different motors.

01:05.320 --> 01:11.590
You try to reuse the same module that you developed, but you quickly realize that you need to extensively

01:11.590 --> 01:14.860
modify it to interface with the new robot.

01:15.160 --> 01:22.030
You realize that it might be better to rewrite the entire code rather than trying to modify what you

01:22.030 --> 01:22.930
already wrote.

01:22.960 --> 01:27.730
Even though the main functionality remains the same as you already implemented.

01:29.910 --> 01:37.080
Later on, your company decides to launch a new robot on the market with different motors and a different

01:37.080 --> 01:37.650
camera.

01:38.070 --> 01:44.160
Once again, you will try to reuse the module you previously developed, but you realize that you need

01:44.160 --> 01:50.160
to extensively modify it to interface with the new motors and the new camera they added to the robot.

01:50.430 --> 01:55.440
Once again, you decide that it is better to rewrite the code for the new robot.

01:56.430 --> 02:02.190
And now let's see what would have happened if you had used Roscoe in a robotics project.

02:03.300 --> 02:08.880
At the end of this course, you still decide to overwrite your software modules and you interface it

02:08.880 --> 02:09.900
with Ros to.

02:10.780 --> 02:17.440
In this way, It's Ross true responsibility to manage the drivers and the communication with the robot's

02:17.470 --> 02:18.010
hardware.

02:19.150 --> 02:25.690
In your new company where you are asked to implement the same functionality, Rustu is also being used.

02:25.990 --> 02:33.220
So once again, Rustu is handling the hardware interface, so you can use the same module that you developed

02:33.220 --> 02:35.840
for your prototype also in your job.

02:35.860 --> 02:38.440
Even though the robot is completely different.

02:39.180 --> 02:45.120
Furthermore, when your company decides to launch a new robot on the market roast, you will still be

02:45.120 --> 02:51.810
in charge of interfacing the new robot's hardware and your module can be reused without the need for

02:51.810 --> 02:52.890
modifications.

02:53.980 --> 03:00.910
I hope this example has been enough to motivate you to learn and use Ros2 in your robotics projects.

03:00.940 --> 03:07.570
In the upcoming lessons, we will discuss the features of Ros2 and why it is defined as an operating

03:07.570 --> 03:08.170
system.
