Skip to content

This is a a repository dedicated for the Final Project in the course MEXE 409 - Robotics 2.

License

Notifications You must be signed in to change notification settings

t1pen/Robotics2_JacobianandPT_Group7_SPHERICAL_2024

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

82 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Robotics2: Jacobian and Path & Trajectory Planning

Group 7 - Spherical Manipulator - 2024


Table of Contents



I. Abstract

       This final project focuses on the full analysis and implementation of Jacobian matrices for path and trajectory planning in a spherical manipulator. The spherical manipulator, with its three rotational degrees of freedom, presents a unique challenge for kinematic analysis and control. Our study begins with the derivation of the Jacobian matrix, which is critical for understanding the link between joint and end-effector velocities. It is also use to investigate singularities and manipulability, assuring efficient and accurate manipulator control. This core element makes it easier to analyze the manipulator's kinematic behavior and dynamic response. Following that, we concentrate on path planning, which aims to create a viable route for the manipulator's end-effector from a starting point to a destination location in a three-dimensional workspace. This includes preventing collisions, optimizing the trajectory for efficiency, and adhering to the manipulator's kinematic limitations. Trajectory planning is then handled, and time-parameterized motion profiles are created to assure smooth and continuous traverse along the intended path.

       Furthermore, the jacobian matrix helps with tasks like obstacle avoidance, path optimization, and trajectory tracking by facilitating motion planning and trajectory development for spherical manipulators. Engineers can use the Jacobian matrix to generate viable and smooth trajectories that will satisfy specific task criteria through the use of numerical techniques and optimization algorithms.

II. Introduction

       This project delves into the fascinating world of mechanical manipulators, specifically spherical manipulators which can perform complex movements within a spherical workspace. The objective of this project is to comprehend the relationship between control, motion planning, and the manipulator's fundamental properties.

       The project begins with exploring the Jacobian Matrix, a fundamental tool for connecting the end-effector's movement to the spherical manipulator's joint rotations. We'll look at how this matrix reflects the spherical nature of the workspace, allowing us to precisely control the manipulator's orientation and position. Next, we'll venture into the realm of Differential Equations and how it becomes a robot or a mechanical manipulator. According to Osorio, Carlos (MathWorks, MATLAB, 2017), We'll use Lagrangian mechanics or Newtonian methods to derive the complex equations that control the manipulator's movements. These equations will take into consideration the joint positions, velocities, and accelerations, as well as manipulator parameters such as link masses and inertia. Because of the spherical design and multiple joints of our manipulator, these equations frequently contain non-linear components, creating a distinct challenge when compared to simpler robots. A critical aspect of the project is understanding Singularities. These occur when the Jacobian matrix loses its invertibility, essentially taking away a degree-of-freedom from the manipulator. In a spherical manipulator, singularity implies the manipulator loses a degree-of-freedom at a specific configuration, hindering its ability to move in certain directions. We'll explore how careful design and control strategies can prevent the manipulator from reaching these limiting configurations. Finally, we'll delve into Path and Trajectory Planning. A spherical manipulator's path refers to the sequence of positions its end-effector traces in space, while the trajectory includes both the path and the timing information (velocity and acceleration) associated with that path. Due to the spherical workspace, planning paths for these manipulators often involves spherical interpolation techniques to ensure smooth and efficient motion within the reachable workspace.

       By delving into these areas, this project aims to provide a comprehensive understanding of how the Jacobian matrix, differential equations, singularity, and path and trajectory planning work together to orchestrate the intricate movements of a spherical manipulator. This knowledge is crucial for effectively controlling and utilizing these robots in various applications.


III. Jacobian Matrix

       The Jacobian Matrix is the matrix that relates the end-effector velocities to joint velocities. It is also a partial derivative of the forward kinematics equation. The Jacobian matrix is a fundamental term in robotics that refers to the kinematics of robotic manipulators. It is essential for understanding and directing the movements of robotic arms. The Jacobian matrix is a mathematical depiction of the link between the velocities of a robot's joints and the velocity of its end-effector (tool or hand). It is a partial derivative matrix that transforms joint velocities into linear and angular velocities for the end-effector.


       The following are the different type of velocity in Calculus:

Type of Velocity Definition Formula
Constant Velocity It is the displacement over time (t). It also implies that the end-effector of the robot moves at a steady rate in a specified direction. $$V = \frac{D}{t}$$
Average Velocity It is the change in time (t). It helps in evaluating how effectively a robot completes its movements over a given period, ensuring smooth and predictable performance in applications like assembly lines, where consistent timing is essential. $$V = \frac{{D_{2}}-{D_{1}}}{{t_{2}}-{t_{1}}}$$ $$V = \frac{∆D}{∆t}$$
Instantaneous Velocity It is the rate of change in displacement with respect to time (t). It describes how quickly and in which direction the end-effector is moving at any given instant. $$V = \frac{dD}{dt}$$ $$V = D˙$$

       Jacobian Matrix, particularly in robotics and kinematics, the instantaneous velocity is a key concept. The Jacobian matrix relates the velocities of the joints of a robotic manipulator (or a similar mechanical system) to the velocities of the end effector.


Type of Instantaneous Velocity:

       - Angular Velocity: The angular velocity is from the displacement due to rotation, its differential is angular velocity, then we will write it as theta prime. Angular velocity is particularly relevant for rotary joints and rotating end-effectors.

       - Linear Velocity: The linear velocity is from the linear displacement, its differential is linear velocity , and this is the linear velocities, the xprime yprime zprime and the d prime. Linear velocity is crucial for understanding and controlling the movement of the robot's end-effector.


       The Jacobian matrix is named after the eminent German mathematician Carl Gustav Jacob Jacobi, who first developed this important concept in the nineteenth century. Jacobi was a towering figure in the field of mathematics during his time, making substantial contributions to a wide array of mathematical disciplines. His work extended far beyond the Jacobian matrix, impacting areas such as elliptic functions, where he developed fundamental theories that are still in use today.

       In addition, Jacobi made significant strides in the realm of dynamics, where his research provided deeper insights into the behavior of physical systems in motion. His pioneering efforts in differential equations were also groundbreaking, offering new methods and solutions that have been instrumental in the advancement of both pure and applied mathematics.

       Jacobi's contributions were not limited to theoretical pursuits; he was also known for his work in applied mathematics, where his findings had practical implications for engineering and the physical sciences. His comprehensive approach to mathematical problems and his ability to connect various branches of mathematics demonstrated his profound understanding and innovative thinking.

       Overall, Carl Gustav Jacob Jacobi's legacy is a testament to his profound impact on mathematics, with the Jacobian matrix being just one of the many tools and theories that he developed, which continue to influence contemporary mathematical research and applications.



Methods of Obtaining Jacobian Matrix

       1. Partial Derivative Method: The Partial Derivative Method entails directly computing the Jacobian matrix by taking the partial derivatives of the position and orientation functions in relation to the joint variables.

       2. Propagation Method: The Propagation Method entails systematically propagating the effects of each joint variable along the robot's kinematic chain to identify their contributions to the end-effector's velocity.

       3. Linear Algebra Method: The Linear Algebra Method derives the Jacobian matrix using linear algebra concepts, which frequently include transformation matrices as well as rotation and translation features.

       4. More


Overview of the Jacobian Matrix

For a three-dimensional robot, the Jacobian matrix converts joint velocities into end effector velocities using the equation below:

  • q prime or q with the dot on top represents the joint velocities.
  • J is the Jacobian matrix.
  • The left matrix represents the end effector's velocities.
  • $\dot x$ $\dot y$ and $\dot z$ signify linear velocities, it is how fast the end effector moves in the x, y, and z directions relative to the base frame of a robotic arm.
  • $\omega x$ $\omega y$ and $\omega z$ are the angular velocities of a robotic arm's end effector.



       The dimension of the Jacobian matrix is composed of rows and columns, the number of rows depends on the number of rows of the end effector velocity vector and the column of the velocity vector is always 6. Then for the column in the jacobian matrix is equal to the number of rows in DH Parametric table.



Methods of Obtaining Jacobian Matrix

       1. Partial Derivative Method: The Partial Derivative Method entails directly computing the Jacobian matrix by taking the partial derivatives of the position and orientation functions in relation to the joint variables.

       2. Propagation Method: The Propagation Method entails systematically propagating the effects of each joint variable along the robot's kinematic chain to identify their contributions to the end-effector's velocity.

       3. Linear Algebra Method: The Linear Algebra Method derives the Jacobian matrix using linear algebra concepts, which frequently include transformation matrices as well as rotation and translation features.

       4. More


Linear Algebra Method


Jacobian Matrix of a Spherical Manipulator

       Now, let's solve the Jacobian Matrix of a Spherical Manipulator.


       Here is the equation with the Jacobian matrix:

       Notice that the q’s were replaced with d’s, which represent “displacement” of the prismatic joint


       Next fill in the Jacobian Matrix. remeber that each column represents a single joint.

       The R in the matrix above stands for "rotation matrix." For instance, $R_{1}^{0}$ represents the rotation matrix from frame 0 to frame 1.


       To solve for spherical manipulators, we need to find the rotational matrices for each column. Remeber that any 3x3 matrix that you will multiply to 001 vector, the answer will be the 3rd column of our 3x3 matrix.


       $R_{0}^{0}$ means the projection and the reference is 0. So our rotation matrix is an identity matrix. This is the identity matrix of $R_{0}^{0}$:



       Next is getting the $R_{1}^{0}$.


       Then to solve for $R_{2}^{0}$, we will multiply the $R_{1}^{0}$ to $R_{2}^{1}$.


       This is the Jacobian Matrix of a Spherical Manipulator.


Jacobian Matrix of a Spherical Manipulator Video Tutorial

Jacobian Matrix of Spherical Manipulator Thumb

IV. Differential Equation

      The differential equation of a mechanical manipulator is a mathematical equation that describes the relationship between the manipulator's joint positions, velocities, and accelerations and the forces and torques acting on them. These equations describe the complex dynamics of the manipulator's motion. Moreover, from the Jacobian Matrix that we have derived, we can obtain the differential equation of the Spherical Manipulator.

       To obtain the differential equation of a Spherical Manipulator, we will multiply the Jacobian matrix to Joint Velocity Vector.


       This is the Differential Equation of a Spherical manipulator


Differential Equation of a Spherical Manipulator Video Tutorial

Differential Equation of Spherical Manipulator


Singularities of a Spherical Manipulator Video Tutorial

Singularities of a Spherical Manipulator

V. Path and Trajectory Planning

       For a spherical manipulator, Path and Trajectory planning are critical components of ensuring efficient and precise movements within its spherical workspace. The following descriptions are the breakdown of these concepts:

> Path Planning: Imagine drawing a line in space; that's essentially what path planning does for a spherical manipulator. It determines the sequence of positions the end-effector will traverse within the reachable sphere. This planning considers factors like obstacles, desired waypoints, and workspace limitations.

> Trajectory Planning: Path planning defines the "where," but trajectory planning adds the "how." It determines the timing information (velocity and acceleration) for the end-effector along the planned path. This ensures the manipulator moves smoothly and efficiently, considering factors like joint limitations, speed constraints, and desired arrival time. Moreover, the trajectory describes how to follow a path as a function of time (Castro, S., MATLAB, 2019).


The Planning Process

1. Task: This defines the overall goal, like picking up an object or reaching a specific point.

2. Task Planning: from Point A to Point B

3. Path Planning: This determines the sequence of positions within the spherical workspace for the end-effector to follow. (figure the set of points)

4. Trajectory Planning: This defines the velocity and acceleration profiles for the end-effector along the planned path.

5. Programming: This translates the planned trajectory into control signals for the manipulator's joints.

5. Final Output: The manipulator executes the planned motion.


Path Generation Methods:

1. Joint Space Scheme: This method focuses on the joint variables (angles) of the manipulator. It uses functions like Cubic Polynomials, Fifth-Order polynomials, or Parabolic Blend to generate a continuous joint trajectory between start and end configurations. This approach is computationally efficient but may not directly translate to the desired end-effector path in the workspace.

2. Cartesian Scheme: This method focuses on the end-effector's position vectors (X, Y, Z) within the workspace. It generates a path directly in Cartesian space, ensuring a more intuitive understanding of the end-effector's movement. However, it may require additional calculations to translate the path into joint commands for the manipulator.


Path and Trajectory Planning of a Spherical Manipulator (Forward and Inverse):

This is the Forward Path and Trajectory Planning of a Spherical Manipulator


This is the Inverse Path and Trajectory Planning of a Spherical Manipulator



This is the Path and Trajectory Planning of a Spherical Manipulator for Pick and Place



This is the Path and Trajectory Planning of a Spherical Manipulator for Welding



Path and Trajectory Planning of a Spherical Manipulator Video Tutorial

Path and Trajectory Planning Vid

Path and Trajectory Planning (GUI Calculator) of a Spherical Manipulator Video Tutorial

Path and Trajectory Planning Using GUI Vid

VI. References


VII. Group Members:

  • Alojado, Stephen Gabriel S.
  • Apostol, Jan Benedict D.
  • Cardenas, Sofia Bianca J.
  • Catapang, Jamil Darrius S.
  • Umali, Ariane Mae D.

About

This is a a repository dedicated for the Final Project in the course MEXE 409 - Robotics 2.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published