Hi robotic enthusiast.
Finally, we now have a real manipulator robot in the simulated environment of gazebo that we can control
using the Ros2 Control library.
However, with the functionalities developed so far in the course, we can only individually control
the robot's joint.
With such an activation system, it becomes extremely difficult to perform complex movements that require
the actuation and the coordination of multiple joints, for example, for picking place applications.
In this section, we will study the mathematics that allows us to control and move the robot without
worrying about the angle of its joint, but focusing only on the position and the orientation of the
robot's gripper.
In the three dimensional space, let me give you an example to justify the study of some mathematics
in this section of the course, specifically a branch of the mathematics called kinematics and will
help us to solve robotics problems.
With the current system.
Actually, we are already able to move the robot by directly and separately controlling its joints.
Now let's assume that we want to use this actuation system so this logic to grasp an object that is
located within the robot's workspace.
To complete this simple operation, we will need to coordinate the movement of the robot's joint to
bring the gripper to the desired position from where it is possible to grasp the object.
Additionally, we also need to coordinate the opening and closing of the gripper to grasp the object.
Indeed, this is a very complex operation, even for a human operator, as it is not trivial to understand
how the robot's gripper is going to move in response to a common sense to its joints.
I invite you to try moving the slider yourself to bring the robot's gripper to a specific position.
But why is this operation so complex?
This happened because the relationship between the cause, which is the rotation of a joint and the
effect which is the movement of the gripper in the space, is a complex relationship and we are not
capable of processing it in real time.
That is, we are not able to calculate in real time whether by moving the joint to, for example, it
will cause a movement of the gripper up or down.
Nor we can determine with certainty how many centimeters it will move.
Moreover, this relationship becomes even more complicated as we increase the number of joints of the
robot.
In this case, it becomes even more complex to understand how the robot's gripper is going to move when
one of its joint rotates.
This also happen?
Because in our minds we are all we used to think in Cartesian frames.
That is, we are used to think about how to move the gripper forward upward, right or left.
However, the overall motion of the gripper in space is due to the composition of the motion of each
arm of the robot that is, of each rotation of each joint.
Fortunately, this relationship is defined by a series of mathematical equations that allows us to relate
the motion of each joint of the robot to the motion of the gripper, and vice versa to relate the motion
of the gripper to the joints that produced it.
This branch of mechanics and mathematics is called kinematics, which is the study of the motion of
a body in the space and deals with calculating the position, velocity and acceleration of a body in
a specific reference frame.
In robotics for manipulator robot.
We use this tool, this kinematic equation for two part process.
The first one is to determine the position of the gripper in the space based on the angle of each joint,
and thus based on the position of each arm.
In this case, we are talking about forward kinematics, referring to the system of equations that specify
this relationship.
For this mathematical problem.
The values of the angle of each joint are known, and we want to calculate the value of the position
of the gripper in the space.
The second purpose for which we use kinematics in robotics manipulator is to determine the angle of
each joint of the robot.
Knowing the position of the gripper in the space, in this case we are talking about inverse kinematics.
And in this mathematical problem we know the position of the gripper in Cartesian coordinates.
And from this we want to know the value of each of the joint angles that have brought the gripper to
that position.
Once we have this tool in our robotics toolbox, we can use it to control the robot in a simpler and
more user friendly way by directly moving the gripper in the Cartesian space.
Automatically the mathematics.
And so the kinematics will calculate the angle by which each joint must rotate to ensure that their
coordinated motion brings the gripper in the desired position.