Kuzhivila Pannickottu Nivya

Inverse Kinematics for UR5 Pick and Place task

Tags:

Overview and Motivation

Move and Place is a very common industrial application of robotic arms. In my first semester in Robotics at JHU, I worked with two other graduate students to implement inverse kinematics solution for move and place application of UR5 arm.

Approach

For a start and target location input,trajectory was planned using Inverse Kinematics Control,Resolved Rate Control and Transpose Jacobian Control.

For the inverse kinematics control, we designed a path by calculating a screw path from the starting position to the end position, and calculating frames along this path at specified intervals. Inverse kinematics was used to get the joint positions at each interval, which were then passed to the ur5_interface object to command the robot to each joint position.

The inverse kinematics problem deals with solving the equation \(g_{st}\ =\ g_{d}\) where \(g_{st}\) can be obtained from the forward kinematics map and \(g_d\) is the desired configuration. Both \(g_{st}\) and \(g_{d}\ \in\ SE(3)\). The problem might have a single solution, multiple solutions or no solution. A function was then written that gives 8 possible solutions of the generalized coordinates for any given homogeneous transformation. The algorithm followed to find the transformation required to move gradually from the start configuration to the final configuration is as follows:

Rviz was used to visualize the control algorithm.

Result

Moving to target location Moving back to start location

Challenges

The solution proposed is not a robust way to check for singularities in joint angle solutions