Skip to content

Repository files navigation

ABB IRB 120 Robot Kinematics Analysis

This project provides a comprehensive analysis of the forward and inverse kinematics for the ABB IRB 120 industrial robot using Python. The code leverages symbolic computation, numerical evaluation, and visualization to explore the robot's workspace, reach, and kinematic solutions. Console output includes detailed results for forward kinematics, workspace statistics, joint positions, inverse kinematics solutions, and validation tests.

Features

  • Symbolic Forward Kinematics:
    • Uses Denavit-Hartenberg (DH) parameters to compute the transformation matrix from base to end-effector.
    • Symbolic computation with sympy for general solutions.
  • Numeric Forward Kinematics:
    • Evaluates the end-effector position for several test joint configurations.
  • Workspace Analysis:
    • Randomly samples joint angles to visualize the robot's reachable workspace.
    • Provides statistics on reach and workspace dimensions.
  • Inverse Kinematics (2D Planar Approximation):
    • Solves for joint angles given a target position in a simplified 2D plane.
    • Validates IK solutions and prints errors.
  • Validation:
    • Tests the FK → IK → FK cycle for accuracy.

Output

  • Console Output:
    • Detailed results for forward kinematics, workspace statistics, joint positions, inverse kinematics solutions, and validation tests.
  • Figures:
    • If plotting code is enabled, figures such as 3D workspace plots and 2D IK analysis can be generated and saved (e.g., Figure_FK_Analysis.png, Figure_3_IK_Analysis.png).

How to Interpret Console Output

  • The script prints transformation matrices, joint positions, workspace statistics (reach, X/Y/Z ranges), and results of inverse kinematics and validation tests.
  • Warnings are printed if a target is unreachable in the 2D IK section.
  • Validation tests show the accuracy of the FK → IK → FK cycle.

Requirements

  • Python 3.x
  • numpy
  • sympy
  • matplotlib

Install dependencies with:

pip install numpy sympy matplotlib

Usage

  1. Place ABBIRB120.py in your working directory.
  2. Run the script:
python ABBIRB120.py
  1. View the console output for analysis results. If plotting is enabled, check the generated figures in your working directory.

File Overview

  • ABBIRB120.py: Main script containing all kinematics computations, plotting, and analysis.

Notes

  • The inverse kinematics section uses a simplified 2D planar model for demonstration purposes.
  • The code is well-commented for educational and research use.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages