Home Subscribe

5. Introduction to Robot Arm Kinematics

Robot arm kinematics is the study of how robotic arms move in space. It provides the mathematical tools needed to understand and control robotic arms. This guide explains the basics using a simple 2-link robotic arm, which is an ideal example for learning the core ideas of robotic movement.

Basic configuration of a 2-link robotic arm

The 2-link robotic arm consists of two rigid links connected by revolute joints, with lengths l₁ and l₂ respectively. The motion of this system is controlled by two joint angles: θ₁ at the base and θ₂ at the intermediate joint.

5.1. Forward Kinematics Analysis

Forward kinematics determines the end-effector position given the joint angles. For the 2-link manipulator, we begin by expressing the position of each joint in terms of the joint angles.

The position of the first joint (P₁) is determined by the angle θ₁ and the first link length:

\[P_1 = \begin{pmatrix} l_1 \cos(\theta_1) \\ l_1 \sin(\theta_1) \end{pmatrix}\]

The end-effector position (P₂) depends on both joint angles and link lengths:

\[P_2 = \begin{pmatrix} l_1 \cos(\theta_1) + l_2 \cos(\theta_1 + \theta_2) \\ l_1 \sin(\theta_1) + l_2 \sin(\theta_1 + \theta_2) \end{pmatrix}\]

These equations yield our forward kinematics solution:

\[\begin{aligned} x &= l_1 \cos(\theta_1) + l_2 \cos(\theta_1 + \theta_2) \\ y &= l_1 \sin(\theta_1) + l_2 \sin(\theta_1 + \theta_2) \end{aligned}\]

5.1.1. Example 1

Consider a robotic arm with joint angles θ₁ = 30° and θ₂ = 45°. The end-effector position can be found as follows:

Click to see solution

Starting with our forward kinematics equations and substituting the given angles:

\[\begin{aligned} x &= l_1 \cos(30°) + l_2 \cos(75°) \\ y &= l_1 \sin(30°) + l_2 \sin(75°) \end{aligned}\]

Using standard trigonometric values:

\[\begin{aligned} x &= l_1(\frac{\sqrt{3}}{2}) + l_2(\frac{\sqrt{2 + \sqrt{2}}}{2}) \\ y &= l_1(\frac{1}{2}) + l_2(\frac{\sqrt{2 - \sqrt{2}}}{2}) \end{aligned}\]

5.1.2. Example 2

For a configuration with θ₁ = 60° and θ₂ = 30°:

Click to see solution

Applying the same equations:

\[\begin{aligned} x &= l_1 \cos(60°) + l_2 \cos(90°) \\ y &= l_1 \sin(60°) + l_2 \sin(90°) \end{aligned}\]

This simplifies to:

\[\begin{aligned} x &= \frac{l_1}{2} \\ y &= \frac{l_1\sqrt{3}}{2} + l_2 \end{aligned}\]

5.2. Inverse Kinematics Analysis

Inverse kinematics determines the joint angles required to achieve a desired end-effector position. This process is fundamental to robot control but presents several challenges. The non-linear nature of the equations often leads to multiple possible solutions, requiring careful consideration of the robot’s configuration space.

For our 2-link manipulator, the inverse kinematics solution involves solving for θ₁ and θ₂ given position (x,y):

\[\begin{aligned} \theta_2 &= \pm \arccos\left(\frac{x^2 + y^2 - l_1^2 - l_2^2}{2l_1l_2}\right) \\ \theta_1 &= \arctan2(y,x) - \arctan2\left(\frac{l_2\sin(\theta_2)}{l_1 + l_2\cos(\theta_2)}\right) \end{aligned}\]

5.2.1. Example 1

Consider a 2-link robot with l₁ = l₂ = 2 units, and we want the end-effector to reach position (2, 2).

Click to see solution
  • First calculate θ₂ using the cosine law:

\[\begin{aligned} \cos(\theta_2) &= \frac{x^2 + y^2 - l_1^2 - l_2^2}{2l_1l_2} \\ &= \frac{(2)^2 + (2)^2 - (2)^2 - (2)^2}{2(2)(2)} \\ &= \frac{8 - 8}{8} = 0 \end{aligned}\]

Therefore, θ₂ = ±90° (we’ll use the positive solution)

  • Then calculate θ₁:

\[\begin{aligned} \theta_1 &= \arctan2(2,2) - \arctan2\left(\frac{2\sin(90°)}{2 + 2\cos(90°)}\right) \\ &= 45° - \arctan2(2,0) \\ &= 45° - 90° \\ &= -45° \end{aligned}\]

Therefore, one valid solution is θ₁ = -45°, θ₂ = 90°

5.2.2. Example 2

For a robot with l₁ = 3 and l₂ = 2 units, find the joint angles to reach position (4, 0).

Click to see solution
  • Calculate θ₂:

\[\begin{aligned} \cos(\theta_2) &= \frac{x^2 + y^2 - l_1^2 - l_2^2}{2l_1l_2} \\ &= \frac{(4)^2 + (0)^2 - (3)^2 - (2)^2}{2(3)(2)} \\ &= \frac{16 - 13}{12} = \frac{1}{4} \end{aligned}\]

Therefore, θ₂ = ±arccos(1/4) = ±75.5°

  • Using the positive solution for θ₂, calculate θ₁:

\[\begin{aligned} \theta_1 &= \arctan2(0,4) - \arctan2\left(\frac{2\sin(75.5°)}{3 + 2\cos(75.5°)}\right) \\ &= 0° - (-14.5°) \\ &= 14.5° \end{aligned}\]

Therefore, one solution is θ₁ = 14.5°, θ₂ = 75.5°

The alternative solution with negative θ₂ is: θ₁ = 90.5°, θ₂ = -75.5°

5.2.3. Workspace Verification

For any inverse kinematics solution, it’s crucial to verify that the target position is within the robot’s workspace. The reachable workspace is bounded by:

\[|l_1 - l_2| \leq \sqrt{x^2 + y^2} \leq l_1 + l_2\]
Click to see Example 2 verification
\[\begin{aligned} |3 - 2| &\leq \sqrt{4^2 + 0^2} \leq 3 + 2 \\ 1 &\leq 4 \leq 5 \end{aligned}\]

This confirms the position is reachable.

5.2.4. Multiple Solutions

The existence of two solutions (elbow-up and elbow-down configurations) is a fundamental characteristic of the 2-link manipulator. The choice between solutions often depends on:

  • Current robot configuration (to minimize joint movement)

  • Obstacle avoidance requirements

  • Joint limit constraints

For Example 2, the elbow-up solution (θ₂ > 0) might be preferred if the workspace above the arm is clear, while the elbow-down solution (θ₂ < 0) might be better if obstacles exist above the arm.

5.2.5. Motion Tracking and Safety

For practical implementation, we must track the total angle rotated by each joint from their minimum positions:

\[\begin{aligned} \Delta\theta_1 &= \theta_1 - \theta_{1_{\text{min}}} \\ \Delta\theta_2 &= \theta_2 - \theta_{2_{\text{min}}} \end{aligned}\]

5.3. End-Effector Orientation

The orientation angle φ of the end-effector represents its angular position relative to the horizontal axis. For a 2-link manipulator:

\[\phi = \theta_1 + \theta_2\]

This orientation can be verified using the inverse tangent function:

\[\phi = \text{atan2}(y,x)\]

5.4. Redundancy in Robotic Manipulation

Redundancy in robotic systems occurs when there are more degrees of freedom than necessary to complete a given task. In the context of our 2-link manipulator, redundancy manifests when multiple joint configurations can achieve the same end-effector position. This characteristic provides flexibility in motion planning and obstacle avoidance but introduces complexity in control systems.

The presence of redundancy can be advantageous for obstacle avoidance and optimization of secondary objectives, such as minimizing joint movement or energy consumption. However, it also presents challenges in determining optimal configurations, particularly in real-time applications.

Consider a practical scenario where a 2-link manipulator must reach a point while avoiding an obstacle. The redundant nature of the system allows for multiple solutions, but the optimal solution depends on factors such as:

\[\text{Cost} = w_1(\text{joint movement}) + w_2(\text{energy}) + w_3(\text{obstacle clearance})\]

where w₁, w₂, and w₃ are weighting factors based on task requirements.

5.5. Advanced Applications

The principles covered here can extend to more complex robotic systems. For instance, the orientation control of the end-effector becomes crucial in tasks such as:

  • Precision assembly operations

  • Surface following with constant tool orientation

  • Complex manipulation tasks requiring specific approach angles

The forward and inverse kinematics equations can be extended to include orientation constraints:

\[\begin{bmatrix} x \\ y \\ \phi \end{bmatrix} = f(\theta_1, \theta_2)\]

This relationship forms the basis for advanced trajectory planning and control strategies in robotic manipulation.



Add Comment

* Required information
1000
Drag & drop images (max 3)
How many letters are in the word two?

Comments (4)

Avatar
New
Dr. Sam

Using the knowledge of spatial mechanics and computer programming introduced in this course, you can go on to perform advanced kinematic analysis of 3D mechanisms.

These skills apply to robotics systems design, research, and development.

Avatar
New
Joe Disamalu

The notes are on point. I've gained alot of skill and visualization from the unit.

Avatar
New
Aggrey

Does it mean the inverse of a 3x3 matrix same as its transpose

Upload
Avatar
New
Dr. Sam

In spatial mechanics, the inverse and transpose of a 3x3 matrix are not the same, but they can be related in specific cases. The inverse (A⁻¹) is a matrix that, when multiplied by A, results in the identity matrix (A * A⁻¹ = I). The transpose (Aᵀ) is obtained by interchanging the rows and columns of A.

For 3x3 orthogonal matrices, often used to represent rotations, the transpose is equal to the inverse (A⁻¹ = Aᵀ) because they satisfy Aᵀ * A = I. This property is unique to orthogonal matrices, and for general 3x3 matrices, the inverse and transpose are not the same.